1. Jan 16, 2009
  2. Jan 15, 2009
    • Ingo Molnar's avatar
      tracing: trace_stat.c cleanup · 55922173
      Ingo Molnar authored
      
      
      Impact: cleanup
      
      - whitespace / code alignment cleanups
      - avoid unnecessary forward prototype by reordering functions
      
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      55922173
    • Li Zefan's avatar
      tracing/ftrace: add missing unlock in register_stat_tracer() · 42fab4b2
      Li Zefan authored
      
      
      We should unlock all_stat_sessions_mutex before returning failure.
      
      Signed-off-by: default avatarLi Zefan <lizf@cn.fujitsu.com>
      Signed-off-by: default avatarSteven Rostedt <srostedt@redhat.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      42fab4b2
    • Frederic Weisbecker's avatar
      tracing/function-graph-tracer: fix a regression while suspend to disk · 4a2b8dda
      Frederic Weisbecker authored
      
      
      Impact: fix a crash while kernel image restore
      
      When the function graph tracer is running and while suspend to disk, some racy
      and dangerous things happen against this tracer.
      
      The current task will save its registers including the stack pointer which
      contains the return address hooked by the tracer. But the current task will
      continue to enter other functions after that to save the memory, and then
      it will store other return addresses, and finally loose the old depth which
      matches the return address saved in the old stack (during the registers saving).
      
      So on image restore, the code will return to wrong addresses.
      And there are other things: on restore, the task will have it's "current"
      pointer overwritten during registers restoring....switching from one task to
      another... That would be insane to try to trace function graphs at these
      stages.
      
      This patch makes the function graph tracer listening on power events, making
      it's tracing disabled for the current task (the one that performs the
      hibernation work) while suspend/resume to disk, making the tracing safe
      during hibernation.
      
      Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
      Signed-off-by: default avatarSteven Rostedt <srostedt@redhat.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      4a2b8dda
    • Steven Rostedt's avatar
      trace: stop all recording to ring buffer on ftrace_dump · 0ee6b6cf
      Steven Rostedt authored
      
      
      Impact: limit ftrace dump output
      
      Currently ftrace_dump only calls ftrace_kill that is a fast way
      to prevent the function tracer functions from being called (just sets
      a flag and clears the function to call, nothing else). It is better
      to also turn off any recording to the ring buffers as well.
      
      Signed-off-by: default avatarSteven Rostedt <srostedt@redhat.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      0ee6b6cf
    • Lai Jiangshan's avatar
      ring_buffer: reset write when reserve buffer fail · 6f3b3440
      Lai Jiangshan authored
      
      
      Impact: reset struct buffer_page.write when interrupt storm
      
      if struct buffer_page.write is not reset, any succedent committing
      will corrupted ring_buffer:
      
      static inline void
      rb_set_commit_to_write(struct ring_buffer_per_cpu *cpu_buffer)
      {
      	......
      		cpu_buffer->commit_page->commit =
      			cpu_buffer->commit_page->write;
      	......
      }
      
      when "if (RB_WARN_ON(cpu_buffer, next_page == reader_page))", ring_buffer
      is disabled, but some reserved buffers may haven't been committed.
      we need reset struct buffer_page.write.
      
      when "if (unlikely(next_page == cpu_buffer->commit_page))", ring_buffer
      is still available, we should not corrupt it.
      
      Signed-off-by: default avatarLai Jiangshan <laijs@cn.fujitsu.com>
      Signed-off-by: default avatarSteven Rostedt <srostedt@redhat.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      6f3b3440
    • Steven Rostedt's avatar
      trace: print ftrace_dump at KERN_EMERG log level · 428aee14
      Steven Rostedt authored
      
      
      Impact: fix to print out ftrace_dump when expected
      
      I was debugging a hard race condition to only find out that
      after I hit the race, my log level was not at level to show
      KERN_INFO. The time it took to trigger the race was wasted because
      I did not capture the trace.
      
      Since ftrace_dump is only called from kernel oops (and only when
      it is set in the kernel command line to do so), or when a
      developer adds it to their own local tree, the log level of
      the print should be at KERN_EMERG to make sure the print appears.
      
      ftrace_dump is not called by a normal user setup, and will not
      add extra unwanted print out to the console. There is no reason
      it should be at KERN_INFO.
      
      Signed-off-by: default avatarSteven Rostedt <srostedt@redhat.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      428aee14
  3. Jan 14, 2009
  4. Jan 11, 2009
  5. Jan 10, 2009
    • Linus Torvalds's avatar
      Merge branch 'x86-fixes-for-linus' of... · 3d14bdad
      Linus Torvalds authored
      Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (36 commits)
        x86: fix section mismatch warnings in mcheck/mce_amd_64.c
        x86: offer frame pointers in all build modes
        x86: remove duplicated #include's
        x86: k8 numa register active regions later
        x86: update Alan Cox's email addresses
        x86: rename all fields of mpc_table mpc_X to X
        x86: rename all fields of mpc_oemtable oem_X to X
        x86: rename all fields of mpc_bus mpc_X to X
        x86: rename all fields of mpc_cpu mpc_X to X
        x86: rename all fields of mpc_intsrc mpc_X to X
        x86: rename all fields of mpc_lintsrc mpc_X to X
        x86: rename all fields of mpc_iopic mpc_X to X
        x86: irqinit_64.c init_ISA_irqs should be static
        Documentation/x86/boot.txt: payload length was changed to payload_length
        x86: setup_percpu.c fix style problems
        x86: irqinit_64.c fix style problems
        x86: irqinit_32.c fix style pro...
      3d14bdad
    • Linus Torvalds's avatar
      Merge branch 'cpus4096-for-linus' of... · 4e9b1c18
      Linus Torvalds authored
      Merge branch 'cpus4096-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'cpus4096-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
        [IA64] fix typo in cpumask_of_pcibus()
        x86: fix x86_32 builds for summit and es7000 arch's
        cpumask: use work_on_cpu in acpi-cpufreq.c for read_measured_perf_ctrs
        cpumask: use work_on_cpu in acpi-cpufreq.c for drv_read and drv_write
        cpumask: use cpumask_var_t in acpi-cpufreq.c
        cpumask: use work_on_cpu in acpi/cstate.c
        cpumask: convert struct cpufreq_policy to cpumask_var_t
        cpumask: replace CPUMASK_ALLOC etc with cpumask_var_t
        x86: cleanup remaining cpumask_t ops in smpboot code
        cpumask: update pci_bus_show_cpuaffinity to use new cpumask API
        cpumask: update local_cpus_show to use new cpumask API
        ia64: cpumask fix for is_affinity_mask_valid()
      4e9b1c18
    • Linus Torvalds's avatar
      btrfs: fix for write_super_lockfs/unlockfs error handling · 0176260f
      Linus Torvalds authored
      Commit c4be0c1d
      
       added the ability for
      write_super_lockfs to return errors, and renamed them to match.  But
      btrfs didn't get converted.
      
      Do the minimal conversion to make it compile again.
      
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0176260f
    • Artem Bityutskiy's avatar
      rbtree: add const qualifier to some functions · f4b477c4
      Artem Bityutskiy authored
      
      
      The 'rb_first()', 'rb_last()', 'rb_next()' and 'rb_prev()' calls
      take a pointer to an RB node or RB root. They do not change the
      pointed objects, so add a 'const' qualifier in order to make life
      of the users of these functions easier.
      
      Indeed, if I have my own constant pointer &const struct my_type *p,
      and I call 'rb_next(&p->rb)', I get a GCC warning:
      
      warning: passing argument 1 of ‘rb_next’ discards qualifiers from pointer target type
      
      Signed-off-by: default avatarArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
      Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f4b477c4
    • Eric Piel's avatar
      LIS3LV02D: separate the core from HP ACPI API · cfce41a6
      Eric Piel authored
      
      
      The sensor can be accessed via various buses.  In particular, SPI, I²C
      and, on HP laptops, via a specific ACPI API (the only one currently
      supported).  Separate this latest platform from the core of the sensor
      driver to allow support for the other bus type.  The second, and more
      direct goal is actually to be able to merge this part with the
      hp-disk-leds driver, which has the same ACPI PNP number.
      
      Signed-off-by: default avatarPavel Machek <pavel@suse.cz>
      Signed-off-by: default avatarEric Piel <eric.piel@tremplin-utc.net>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      cfce41a6
    • Takashi Sato's avatar
      filesystem freeze: remove XFS specific ioctl interfaces for freeze feature · 8e961870
      Takashi Sato authored
      
      
      It removes XFS specific ioctl interfaces and request codes
      for freeze feature.
      
      This patch has been supplied by David Chinner.
      
      Signed-off-by: default avatarDave Chinner <dgc@sgi.com>
      Signed-off-by: default avatarTakashi Sato <t-sato@yk.jp.nec.com>
      Cc: Dave Chinner <david@fromorbit.com>
      Cc: <xfs-masters@oss.sgi.com>
      Cc: <linux-ext4@vger.kernel.org>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Dave Kleikamp <shaggy@austin.ibm.com>
      Cc: Alasdair G Kergon <agk@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8e961870
    • Takashi Sato's avatar
      filesystem freeze: implement generic freeze feature · fcccf502
      Takashi Sato authored
      
      
      The ioctls for the generic freeze feature are below.
      o Freeze the filesystem
        int ioctl(int fd, int FIFREEZE, arg)
          fd: The file descriptor of the mountpoint
          FIFREEZE: request code for the freeze
          arg: Ignored
          Return value: 0 if the operation succeeds. Otherwise, -1
      
      o Unfreeze the filesystem
        int ioctl(int fd, int FITHAW, arg)
          fd: The file descriptor of the mountpoint
          FITHAW: request code for unfreeze
          arg: Ignored
          Return value: 0 if the operation succeeds. Otherwise, -1
          Error number: If the filesystem has already been unfrozen,
                        errno is set to EINVAL.
      
      [akpm@linux-foundation.org: fix CONFIG_BLOCK=n]
      Signed-off-by: default avatarTakashi Sato <t-sato@yk.jp.nec.com>
      Signed-off-by: default avatarMasayuki Hamaguchi <m-hamaguchi@ys.jp.nec.com>
      Cc: <xfs-masters@oss.sgi.com>
      Cc: <linux-ext4@vger.kernel.org>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Dave Kleikamp <shaggy@austin.ibm.com>
      Cc: Dave Chinner <david@fromorbit.com>
      Cc: Alasdair G Kergon <agk@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      fcccf502
    • Takashi Sato's avatar
      filesystem freeze: add error handling of write_super_lockfs/unlockfs · c4be0c1d
      Takashi Sato authored
      Currently, ext3 in mainline Linux doesn't have the freeze feature which
      suspends write requests.  So, we cannot take a backup which keeps the
      filesystem's consistency with the storage device's features (snapshot and
      replication) while it is mounted.
      
      In many case, a commercial filesystem (e.g.  VxFS) has the freeze feature
      and it would be used to get the consistent backup.
      
      If Linux's standard filesystem ext3 has the freeze feature, we can do it
      without a commercial filesystem.
      
      So I have implemented the ioctls of the freeze feature.
      I think we can take the consistent backup with the following steps.
      1. Freeze the filesystem with the freeze ioctl.
      2. Separate the replication volume or create the snapshot
         with the storage device's feature.
      3. Unfreeze the filesystem with the unfreeze ioctl.
      4. Take the backup from the separated replication volume
         or the snapshot.
      
      This patch:
      
      VFS:
      Changed the type of write_super_lockfs and unlockfs...
      c4be0c1d
    • Harvey Harrison's avatar
      memstick: annotate endianness of attribute structs · 69347a23
      Harvey Harrison authored
      
      
      The code was shifting the endianness appropriately everywhere, annotate
      the structs to avoid the sparse warnings when assigning the endian types
      to the struct members, or passing them to be[16|32]_to_cpu:
      
      drivers/memstick/core/mspro_block.c:331:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:333:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:335:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:337:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:341:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:347:4: warning: cast to restricted __be32
      drivers/memstick/core/mspro_block.c:356:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:358:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:364:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:367:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:369:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:371:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:377:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:478:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:480:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:482:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:484:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:486:4: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:689:22:    expected unsigned int [unsigned] [assigned] data_address
      drivers/memstick/core/mspro_block.c:689:22:    got restricted __be32 [usertype] <noident>
      drivers/memstick/core/mspro_block.c:697:3: warning: cast to restricted __be32
      drivers/memstick/core/mspro_block.c:960:17: warning: incorrect type in initializer (different base types)
      drivers/memstick/core/mspro_block.c:960:17:    expected unsigned short [unsigned] data_count
      drivers/memstick/core/mspro_block.c:960:17:    got restricted __be16 [usertype] <noident>
      drivers/memstick/core/mspro_block.c:993:6: warning: cast to restricted __be16
      drivers/memstick/core/mspro_block.c:995:28: warning: cast to restricted __be16
      
      Signed-off-by: default avatarHarvey Harrison <harvey.harrison@gmail.com>
      Cc: Alex Dubov <oakad@yahoo.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      69347a23