01 Aug, 2006

30 commits

  • Update hotplug cpu documentation to clearly state when to use
    register_cpu_notifier() and register_hotcpu_notifier.

    Signed-off-by: Chandra Seetharaman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Chandra Seetharaman
     
  • Few of the callback functions and notifier blocks that are associated with cpu
    notifications incorrectly have __devinit and __devinitdata. They should be
    __cpuinit and __cpuinitdata instead.

    It makes no functional difference but wastes text area when CONFIG_HOTPLUG is
    enabled and CONFIG_HOTPLUG_CPU is not.

    This patch fixes all those instances.

    Signed-off-by: Chandra Seetharaman
    Cc: Ashok Raj
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Chandra Seetharaman
     
  • This patch is part of an effort to unify the panic_on_oops behaviour across
    all architectures that implement it.

    It was pointed out to me by Andi Kleen that if an oops has occured in
    interrupt context, then calling sleep() in the oops path will only cause a
    panic, and that it would be really better for it not to be in the path at
    all.

    This patch removes the ssleep() call and reworks the console message
    accordinly. I have a slght concern that the resulting console message is
    too long, feedback welcome.

    For powerpc it also unifies the 32bit and 64bit behaviour.

    Fror x86_64, this patch only updates the console message, as ssleep() is
    already not present.

    Signed-off-by: Horms
    Acked-by: Paul Mackerras
    Cc: Russell King
    Cc: "Luck, Tony"
    Cc: Andi Kleen
    Cc: Chris Zankel
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Horms
     
  • Reduce the likelihood of someone accidentally introducing namespace
    collisions.

    Signed-off-by: Yoichi Yuasa
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yoichi Yuasa
     
  • When reading from nbd device, we need to receive all the data after
    receiving reply packet from the server - otherwise such request will never
    be ended.

    If socket is closed right after accepting reply control packet and in the
    middle of waiting for read data, nbd_read_stat() returns NULL and
    nbd_end_request() is not called.

    This patch fixes it.

    Signed-off-by: Michal Feix
    Acked-by: Paul Clements
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michal Feix
     
  • We should check magic sequence in reply packet before trying to find
    request with it's request handle. This also solves the problem with
    "Unexpected reply" message beeing logged, when packet with invalid magic is
    received.

    Signed-off-by: Michal Feix
    Acked-by: Paul Clements
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michal Feix
     
  • The pkt_*_dev functions operate on not-this-blockdevice, and that is
    sufficiently checked at setup time. As a result there is a natural
    hierarchy, which needs nesting annotations

    Signed-off-by: Arjan van de Ven
    Cc: Peter Osterlund
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arjan van de Ven
     
  • When resuming from suspend-to-RAM, the NMI watchdog detects a lockup in
    ide_wait_not_busy. Here's a screenshot of the trace taken by a digital
    camera: http://www.uamt.feec.vutbr.cz/rizeni/pom/DSC03510-2.JPG

    Let's touch the NMI watchdog in ide_wait_not_busy. The system then resumes
    correctly from STR.

    [akpm@osdl.org: modular build fix]
    Signed-off-by: Michal Schmidt
    Acked-by: Alan Cox
    Cc: Bartlomiej Zolnierkiewicz
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michal Schmidt
     
  • We can immediately bail from invalidate_bdev() if the blockdev has no
    pagecache.

    This solves the huge IPI storms which hald is causing on the big ia64
    machines when it polls CDROM drives.

    Acked-by: Jes Sorensen
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Signed-off-by: Miles Bader
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Miles Bader
     
  • Signed-off-by: Miles Bader
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Miles Bader
     
  • Kprobe inserts breakpoint instruction in probepoint and then jumps to
    instruction slot when breakpoint is hit, the instruction slot icache must
    be consistent with dcache. Here is the patch which invalidates instruction
    slot icache area.

    Without this patch, in some machines there will be fault when executing
    instruction slot where icache content is inconsistent with dcache.

    Signed-off-by: bibo,mao
    Acked-by: "Luck, Tony"
    Acked-by: Keshavamurthy Anil S
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    bibo, mao
     
  • Use ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0]) and remove a
    duplicate of the macro. Also remove some trailing whitespaces and needless
    braces.

    Signed-off-by: Tobias Klauser
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tobias Klauser
     
  • It is described as being experimental, but doesn't actually depend on
    EXPERIMENTAL. Change the text.

    Signed-off-by: Arthur Othieno
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arthur Othieno
     
  • The kprobe-booster's safety check against preemption does not work well
    now, because the preemption count has been modified by read_rcu_lock() in
    atomic_notifier_call_chain() before we check it. So, I'd like to prevent
    boosting kprobe temporarily if the kernel is preemptable.

    Now we are searching for the good solution.

    Signed-off-by: Masami Hiramatsu
    Cc: Ananth N Mavinakayanahalli
    Cc: Prasanna S Panchamukhi
    Cc: Anil S Keshavamurthy
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Masami Hiramatsu
     
  • One of my original comments in machine_kexec was unclear
    and this should fix it.

    Signed-off-by: Eric W. Biederman
    Cc: Andi Kleen
    Acked-by: Horms
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Eric W. Biederman
     
  • - Move the tsc synchronisation variables into a struct, mark it __initdata

    - local `realdelta' wants to be 64-bit

    - Print the skew for negative skews, as well as for positive ones

    - remove dead code

    Cc: john stultz
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Initializes newcontext sooner to allow for its destruction in all cases.

    Signed-off-by: Venkat Yekkirala
    Signed-off-by: Stephen Smalley
    Acked-by: James Morris
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Venkat Yekkirala
     
  • This patch fixes a memory leak when a policydb structure is destroyed.

    Signed-off-by: Darrel Goeddel
    Signed-off-by: Stephen Smalley
    Acked-by: James Morris
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Darrel Goeddel
     
  • A recent commit (7fc90ec93a5eb71f4b08403baf5ba7176b3ec6b1) moved the
    call to nfsd_setuser out of the 'find a dentry for a filehandle' branch
    of fh_verify so that it would always be called.

    This had the unfortunately side-effect of moving *after* the call to
    decode_fh, so the prober fsuid was not set when nfsd_acceptable was called,
    the 'permission' check did the wrong thing.

    This patch moves the nfsd_setuser call back where it was, and add as call
    in the other branch of the if.

    Cc: "J. Bruce Fields"
    Signed-off-by: Neil Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    NeilBrown
     
  • mce_disabled cannot be __initdata - we access it during APM resume.

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

    Andrew Morton
     
  • The recent zlib update (commit 4f3865fb57a04db7cca068fed1c15badc064a302)
    broke ppc32 zImage decompression as it tries to decompress to address zero
    and the updated zlib_inflate checks that strm->next_out isn't a null
    pointer.

    This little patch fixes it.

    [rpurdie@rpsys.net: add comment]
    Signed-off-by: Peter Korsgaard
    Acked-by: Tom Rini
    Signed-off-by: Richard Purdie
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Peter Korsgaard
     
  • Enable delay accounting by default so that feature gets coverage testing
    without requiring special measures.

    Earlier, it was off by default and had to be enabled via a boot time param.
    This patch reverses the default behaviour to improve coverage testing. It
    can be removed late in the kernel development cycle if its believed users
    shouldn't have to incur any cost if they don't want delay accounting. Or
    it can be retained forever if the utility of the stats is deemed common
    enough to warrant keeping the feature on.

    Signed-off-by: Shailabh Nagar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Shailabh Nagar
     
  • Add a missing freeing of skb in the case there are no listeners at all.
    Also remove the returning of error values by the function as it is unused
    by the sole caller.

    Signed-off-by: Shailabh Nagar
    Signed-off-by: Chandra Seetharaman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Shailabh Nagar
     
  • Complete the separation of delay accounting and taskstats by ignoring the
    return value of delay accounting functions that fill in parts of taskstats
    before it is sent out (either in response to a command or as part of a task
    exit).

    Also make delayacct_add_tsk return silently when delay accounting is turned
    off rather than treat it as an error.

    Signed-off-by: Shailabh Nagar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Shailabh Nagar
     
  • IRQs need refcounting and a state flag to track whether the the IRQ should
    be enabled or disabled as a "normal IRQ" source after a series of calls to
    {en,dis}able_irq(). For shared IRQs, the IRQ must be enabled so long as at
    least one driver needs it active.

    Likewise, IRQs need the same support to track whether the IRQ should be
    enabled or disabled as a "wakeup event" source after a series of calls to
    {en,dis}able_irq_wake(). For shared IRQs, the IRQ must be enabled as a
    wakeup source during sleep so long as at least one driver needs it. But
    right now they _don't have_ that refcounting ... which means sharing a
    wakeup-capable IRQ can't work correctly in some configurations.

    This patch adds the refcount and flag mechanisms to set_irq_wake() -- which
    is what {en,dis}able_irq_wake() call -- and minimal documentation of what
    the irq wake mechanism does.

    Drivers relying on the older (broken) "toggle" semantics will trigger a
    warning; that'll be a handful of drivers on ARM systems.

    Signed-off-by: David Brownell
    Acked-by: Ingo Molnar
    Acked-by: Thomas Gleixner
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     
  • A static struct mustn't be exported.

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

    Adrian Bunk
     
  • Events sent by Process Events Connector from a 64-bit kernel are not binary
    compatible with a 32-bit userspace program because the "timestamp" field
    (struct timespec) is not arch independent. This affects the fields that
    follow "timestamp" as they will be be off by 8 bytes.

    This is a problem for 32-bit userspace programs running with 64-bit kernels
    on ppc64, s390, x86-64.. any "biarch" system.

    Matt had submitted a different solution to lkml as an RFC earlier. We have
    since switched to a solution recommended by Evgeniy Polyakov.

    This patch fixes the problem by changing the timestamp to be a __u64, which
    stores the number of nanoseconds.

    Tested on a x86_64 system with both 32 bit application and 64 bit
    application and on a i386 system.

    Signed-off-by: Chandra Seetharaman
    Signed-off-by: Matt Helsley
    Cc: Evgeniy Polyakov
    Cc: Guillaume Thouvenin
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Chandra Seetharaman
     
  • The inode number out of an NFS file handle gets passed eventually to
    ext3_get_inode_block() without any checking. If ext3_get_inode_block()
    allows it to trigger an error, then bad filehandles can have unpleasant
    effect - ext3_error() will usually cause a forced read-only remount, or a
    panic if `errors=panic' was used.

    So remove the call to ext3_error there and put a matching check in
    ext3/namei.c where inode numbers are read off storage.

    [akpm@osdl.org: fix off-by-one error]
    Signed-off-by: Neil Brown
    Signed-off-by: Jan Kara
    Cc: Marcel Holtmann
    Cc:
    Cc: "Stephen C. Tweedie"
    Cc: Eric Sandeen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Neil Brown
     
  • Use the correct groups while initializing sched groups power for
    allnodes_domain. This fixes the crash observed while creating exclusive
    cpusets.

    Signed-off-by: Suresh Siddha
    Reported-and-tested-by: Paul Jackson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Siddha, Suresh B
     

30 Jul, 2006

10 commits

  • Linus Torvalds
     
  • * master.kernel.org:/home/rmk/linux-2.6-arm:
    [ARM] 3734/1: Fix the unused variable warning in __iounmap()
    [ARM] 3737/1: Export ARM copy/clear_user_page symbols
    [ARM] 3736/1: xscale: don't mis-report 80219 as an iop32x
    [ARM] 3733/2: S3C24XX: Remove old IDE registers in Anubis
    [ARM] 3732/1: S3C24XX: tidy syntax in osiris and anubis machines
    [ARM] Fix SMP booting
    [ARM] 3731/1: Allow IRQ definitions of IQ80331 and IQ80332 to co-exist
    [ARM] 3730/1: ep93xx: enable usb ohci driver in the defconfig
    [ARM] Fix cats build

    Linus Torvalds
     
  • For some reason it triggers always with NFS root and spams the kernel
    logs of my nfs root boxes a lot.

    Signed-off-by: Andi Kleen
    Acked-by: Trond Myklebust
    Signed-off-by: Linus Torvalds

    Andi Kleen
     
  • I didn't test all compilation combinations. Shame on me.
    And fix a missing option in the boot option following x86-64 (Jan Beulich)

    Signed-off-by: Andi Kleen
    Signed-off-by: Linus Torvalds

    Andi Kleen
     
  • It was broken before. But having it is important as possible hardware
    bug workaround.

    And previously there was no way to force swiotlb if there is another IOMMU.
    Side effect is that iommu=force won't force swiotlb anymore even if there
    isn't another IOMMU.

    Signed-off-by: Andi Kleen
    Signed-off-by: Linus Torvalds

    Andi Kleen
     
  • As Travis Betak points out it accesses the wrong northbridge subfunction
    now. Switch back to the old code.

    Cc: "Travis Betak"
    Signed-off-by: Andi Kleen
    Signed-off-by: Linus Torvalds

    Andi Kleen
     
  • Calgary hits a NULL pointer dereference when booting in a multi-chassis
    NUMA system. See Redhat bugzilla number 198498, found by Konrad
    Rzeszutek (konradr@redhat.com).

    There are many issues that had to be resolved to fix this problem.
    Firstly when I originally wrote the code to handle NUMA systems, I
    had a large misunderstanding that was not corrected until now. That was
    that I thought the "number of nodes online" referred to number of
    physical systems connected. So that if NUMA was disabled, there
    would only be 1 node and it would only show that node's PCI bus.
    In reality if NUMA is disabled, the system displays all of the
    connected chassis as one node but is only ignorant of the delays
    in accessing main memory. Therefore, references to num_online_nodes()
    and MAX_NUMNODES are incorrect and need to be set to the maximum
    number of nodes that can be accessed (which are 8). I created a
    variable, MAX_NUM_CHASSIS, and set it to 8 to fix this.

    Secondly, when walking the PCI in detect_calgary, the code only
    checked the first "slot" when looking to see if a device is present.
    This will work for most cases, but unfortunately it isn't always the
    case. In the NUMA MXE drawers, there are USB devices present on the
    3rd slot (with slot 1 being empty). So, to work around this, all
    slots (up to 8) are scanned to see if there are any devices present.

    Lastly, the bus is being enumerated on large systems in a different
    way the we originally thought. This throws the ugly logic we had
    out the window. To more elegantly handle this, I reorganized the
    kva array to be sparse (which removed the need to have any bus number
    to kva slot logic in tce.c) and created a secondary space array to
    contain the bus number to phb mapping.

    With these changes Calgary boots on an x460 with 4 nodes with and
    without NUMA enabled.

    Signed-off-by: Jon Mason
    Signed-off-by: Muli Ben-Yehuda
    Signed-off-by: Andi Kleen
    Signed-off-by: Linus Torvalds

    Jon Mason
     
  • Fixed off-by-one error in detect_calgary and calgary_init which will
    cause arrays to overflow. Also, removed impossible to hit BUG_ON.

    Signed-off-by: Jon Mason
    Signed-off-by: Muli Ben-Yehuda
    Signed-off-by: Andi Kleen
    Signed-off-by: Linus Torvalds

    Muli Ben-Yehuda
     
  • On Intel systems generally the TSC stops in C3 or deeper,
    so don't use it there. Follows similar logic on i386.

    This should fix problems on Meroms.

    Signed-off-by: Andi Kleen
    Signed-off-by: Linus Torvalds

    Andi Kleen
     
  • Update defconfig

    Signed-off-by: Andi Kleen
    Signed-off-by: Linus Torvalds

    Andi Kleen