17 Oct, 2008

11 commits

  • Way too often, I have a machine that exhibits some kind of crappy
    behavior. The CPU looks wedged in the kernel or it is spending way too
    much system time and I wonder what is responsible.

    I try to run readprofile. But, of course, Ubuntu doesn't enable it by
    default. Dang!

    The reason we boot-time enable it is that it takes a big bufffer that we
    generally can only bootmem alloc. But, does it hurt to at least try and
    runtime-alloc it?

    To use:
    echo 2 > /sys/kernel/profile

    Then run readprofile like normal.

    This should fix the compile issue with allmodconfig. I've compile-tested
    on a bunch more configs now including a few more architectures.

    Signed-off-by: Dave Hansen
    Acked-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Hansen
     
  • It's somewhat unlikely that it happens, but right now a race window
    between interrupts or machine checks or oopses could corrupt the tainted
    bitmap because it is modified in a non atomic fashion.

    Convert the taint variable to an unsigned long and use only atomic bit
    operations on it.

    Unfortunately this means the intvec sysctl functions cannot be used on it
    anymore.

    It turned out the taint sysctl handler could actually be simplified a bit
    (since it only increases capabilities) so this patch actually removes
    code.

    [akpm@linux-foundation.org: remove unneeded include]
    Signed-off-by: Andi Kleen
    Cc: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andi Kleen
     
  • is_sync_wait() is used to distinguish between sync and async waits.
    Basically sync waits are the ones initialized with init_waitqueue_entry()
    and async ones with init_waitqueue_func_entry(). The sync/async
    distinction is used only in prepare_to_wait[_exclusive]() and its only
    function is to skip setting the current task state if the wait is async.
    This has a few problems.

    * No one uses it. None of func_entry users use prepare_to_wait()
    functions, so the code path never gets executed.

    * The distinction is bogus. Maybe back when func_entry is used only
    by aio but it's now also used by epoll and in future possibly by 9p
    and poll/select.

    * Taking @state as argument and ignoring it silenly depending on how
    @wait is initialized is just a bad error-prone API.

    * It prevents func_entry waits from using wait->private for no good
    reason.

    This patch kills is_sync_wait() and the associated code paths from
    prepare_to_wait[_exclusive](). As there was no user of these code paths,
    this patch doesn't cause any behavior difference.

    Signed-off-by: Tejun Heo
    Acked-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tejun Heo
     
  • Use the '%pF' format to get rid of an "#ifdef DEBUG" and make some printks
    atomic.

    This removes the last in-tree uses of print_fn_descriptor_symbol(). I
    marked print_fn_descriptor_symbol() deprecated and scheduled it for
    removal next year to give time for out-of-tree modules to be updated.

    parisc's print_fn_descriptor_symbol() is currently broken there (it needs
    to dereference the function pointer similar to ia64 and power). This
    patch shouldn't make anything worse, but it means we need to fix
    dereference_function_descriptor() instead of print_fn_descriptor_symbol()
    to get meaningful initcall_debug output.

    Signed-off-by: Bjorn Helgaas
    Cc: Jesse Barnes
    Cc: Kyle McMartin
    Cc: "Rafael J. Wysocki"
    Cc: Kay Sievers
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bjorn Helgaas
     
  • This macro appears to have been unused for ages, and there are no
    invocations of it anywhere in the source tree.

    Signed-off-by: Robert P. J. Day
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robert P. J. Day
     
  • Remove a CVS keyword that wasn't updated for a long time from a comment.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • __FUNCTION__ is gcc-specific, use __func__

    Signed-off-by: Harvey Harrison
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • We currently use a PM notifier to disable user mode helpers before suspend
    and hibernation and to re-enable them during resume. However, this is not
    an ideal solution, because if any drivers want to upload firmware into
    memory before suspend, they have to use a PM notifier for this purpose and
    there is no guarantee that the ordering of PM notifiers will be as
    expected (ie. the notifier that disables user mode helpers has to be run
    after the driver's notifier used for uploading the firmware).

    For this reason, it seems better to move the disabling and enabling of
    user mode helpers to separate functions that will be called by the PM core
    as necessary.

    [akpm@linux-foundation.org: remove unneeded ifdefs]
    Signed-off-by: Rafael J. Wysocki
    Cc: Alan Stern
    Acked-by: Pavel Machek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Rafael J. Wysocki
     
  • New timer handler files.

    Signed-off-by: Yoshinori Sato
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yoshinori Sato
     
  • This patch adds an additional field to the mm_owner callbacks. This field
    is required to get to the mm that changed. Hold mmap_sem in write mode
    before calling the mm_owner_changed callback

    [hugh@veritas.com: fix mmap_sem deadlock]
    Signed-off-by: Balbir Singh
    Cc: Sudhir Kumar
    Cc: YAMAMOTO Takashi
    Cc: Paul Menage
    Cc: Li Zefan
    Cc: Pavel Emelianov
    Cc: Balbir Singh
    Cc: KAMEZAWA Hiroyuki
    Cc: David Rientjes
    Cc: Vivek Goyal
    Signed-off-by: Hugh Dickins
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Balbir Singh
     
  • A series of patches introduce a generic header file for the software
    IO/TLB implementation in lib/swiotlb.c. Currently each architecture using
    this code defines the prototypes itself. The prototypes are moved to
    include/linux/swiotlb.h and this file is included in architecture specific
    code for X86 and IA64.

    This patch:

    Create include/linux/swiotlb.h file which contains all function prototypes
    for the lib/swiotlb.c file.

    (akpm: the dependent patches will be trickled through arch trees)

    Signed-off-by: Joerg Roedel
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Cc: "Luck, Tony"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Joerg Roedel
     

16 Oct, 2008

1 commit

  • * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
    MIPS: Kill unused inclusions
    MIPS: IP32: Add platform device for CMOS RTC; remove dead code
    RTC: M48T35: new RTC driver
    MIPS: IP27: Switch over to RTC class driver
    MIPS: DS1286: New RTC driver
    MIPS: IP22/28: Switch over to RTC class driver
    MIPS: PCI: Scan busses when they are registered
    MIPS: WGT634U: Add reset button support
    MIPS: BCM47xx: Use the new SSB GPIO API
    MIPS: BCM47xx: Remove references to BCM947XX
    MIPS: WGT634U: Add machine detection message
    MIPS: Align .data.cacheline_aligned based on CONFIG_MIPS_L1_CACHE_SHIFT
    MIPS: show_cpuinfo prints the type of the calling CPU
    MIPS: Fix wrong branch target in new spin_lock code.
    MIPS: Have a heart for a lonely, lost header file ...

    Linus Torvalds
     

15 Oct, 2008

28 commits