Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Sep 1, 2007
  1. Linux 2.6.23-rc5

    Linus Torvalds authored
  2. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    Linus Torvalds authored
    …/git/hpa/linux-2.6-x86setup
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup:
      [x86 setup] Don't rely on the VESA BIOS being register-clean
  3. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    Linus Torvalds authored
    …/git/roland/infiniband
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
      IB/ehca: SRQ fixes to enable IPoIB CM
      IB/ehca: Fix Small QP regressions
  4. NFS: Fix the mount regression

    Trond Myklebust authored Linus Torvalds committed
    This avoids the recent NFS mount regression (returning EBUSY when
    mounting the same filesystem twice with different parameters).
    
    The best I can do given the constraints appears to be to have the kernel
    first look for a superblock that matches both the fsid and the
    user-specified mount options, and then spawn off a new superblock if
    that search fails.
    
    Note that this is not the same as specifying nosharecache everywhere
    since nosharecache will never attempt to match an existing superblock.
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
    Tested-by: Hua Zhong <hzhong@gmail.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  5. x86: be even more careful about checking the stack frame on dumping

    Linus Torvalds authored
    lguest didn't initialize the kernel stack the way a real i386 kernel
    does, and ended up triggering a corner-case in the stack frame checking
    that doesn't happen on naive i386, and that the stack dumping didn't
    handle quite right.
    
    This makes the frame handling more correct, and tries to clarify the
    code at the same time so that it's a bit more obvious what is going on.
    
    Thanks to Rusty Russell for debugging the lguest failure-
    
    Cc: Rusty Russell <rusty@rustcorp.com.au>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  6. Do not use the ia64 clocksource on non-ia64 architectures

    Linus Torvalds authored
    The HPET clocksource in drivers/char/hpet.c was written as generic code
    for ia64, but it is not yet ready to replace the native HPET clocksource
    implementations that the i386/x86-64 architectures use.
    
    On x86[-64], trying to register this clocksource results in potentially
    multiple hpet-based clocksources being registered, and if the ia64 one
    is chosen on x86_64 some users have experienced hangs.
    
    Eventually all three architectures may end up using the same code, but
    that is not the case right now.
    
    Cc: John Stultz <johnstul@us.ibm.com>
    Cc: Tony Luck <tony.luck@intel.com>
    Cc: Paolo Ornati <ornati@fastwebnet.it>
    Cc: Bob Picco <bob.picco@hp.com>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  7. Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/ker…

    Linus Torvalds authored
    …nel/git/jgarzik/netdev-2.6
    
    * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:
      - cxgb3 engine microcode load
      cxgb3 - Fix dev->priv usage
      qeth: Drop ARP packages on HiperSockets interface with NOARP attribute.
      qeth: provide specific message for OSA-adapters exclusively used
      qeth: crash during reboot after failing online setting
      qeth: Announce tx checksumming for qeth devices in TSO/EDDP mode
      qeth: dont return the return values of void functions.
      qeth: enforce a rate limit for inbound scatter gather messages
      qeth: ungrouping a device must not be interruptible
      netxen: fix crashes during module unload
      netxen: Avoid firmware load in PCI probe
      PS3: fix the bug that 'ifconfig down' would hang
      IOC3: Program UART predividers.
Commits on Aug 31, 2007
  1. IB/ehca: SRQ fixes to enable IPoIB CM

    Joachim Fenkes authored Roland Dreier committed
    Fix ehca SRQ support so that IPoIB connected mode works:
    
     - Report max_srq > 0 if SRQ is supported
     - Report "last wqe reached" asynchronous event when base QP dies;
       this is required by the IB spec and IPoIB CM relies on receiving it
       when cleaning up.
    
    Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com>
    Signed-off-by: Roland Dreier <rolandd@cisco.com>
  2. IB/ehca: Fix Small QP regressions

    Stefan Roscher authored Roland Dreier committed
    The new Small QP code had a few bugs that would also make it trigger
    for non-Small QPs.  Fix them.
    
    Signed-off-by: Joachim Fenkes <fenkes@de.ibm.com>
    Signed-off-by: Roland Dreier <rolandd@cisco.com>
  3. [x86 setup] Don't rely on the VESA BIOS being register-clean

    H. Peter Anvin authored
    The VESA BIOS is specified to be register-clean.  However, we have now
    found at least one system which violates that.  Thus, be as paranoid
    about VESA calls as about everything else.
    
    Huge thanks to Will Simoneau for reporting, diagnosing, and testing
    this out on Dell Inspiron 5150.
    
    Cc: Will Simoneau <simoneau@ele.uri.edu>
    Signed-off-by: H. Peter Anvin <hpa@zytor.com>
  4. Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-s…

    Linus Torvalds authored
    …ched
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched:
      sched: clean up task_new_fair()
      sched: small schedstat fix
      sched: fix wait_start_fair condition in update_stats_wait_end()
      sched: call update_curr() in task_tick_fair()
      sched: make the scheduler converge to the ideal latency
      sched: fix sleeper bonus limit
  5. Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/ker…

    Linus Torvalds authored
    …nel/git/jgarzik/libata-dev
    
    * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
      [libata] Bump driver versions
      ata_piix: implement IOCFG bit18 quirk
      libata: implement BROKEN_HPA horkage and apply it to affected drives
      sata_promise: FastTrack TX4200 is a second-generation chip
      pata_marvell: Add more identifiers
      ata_piix: add Satellite U200 to broken suspend list
      ata: add ATA_MWDMA* and ATA_SWDMA* defines
      ata_piix: IDE mode SATA patch for Intel Tolapai
      libata-core: Allow translation setting to fail
  6. - cxgb3 engine microcode load

    Divy Le Ray authored Jeff Garzik committed
    Load the engine microcode when an interface
    is brought up, instead of of doing it when the module
    is loaded.
    Loosen up tight binding between the driver and the
    engine microcode version.
    There is no need for microcode update with T3A boards.
    Fix the file naming.
    Do a better job at logging the loading activity.
    
    Signed-off-by: Divy Le Ray <divy@chelsio.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  7. cxgb3 - Fix dev->priv usage

    Divy Le Ray authored Jeff Garzik committed
    cxgb3 used netdev_priv() and dev->priv for different purposes.
    In 2.6.23, netdev_priv() == dev->priv, cxgb3 needs a fix.
    This patch is a partial backport of Dave Miller's changes in the
    net-2.6.24 git branch.
    
    Without this fix, cxgb3 crashes on 2.6.23.
    
    Signed-off-by: Divy Le Ray <divy@chelsio.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  8. qeth: Drop ARP packages on HiperSockets interface with NOARP attribute.

    Klaus D. Wacker authored Jeff Garzik committed
    A network interface can get ARP packets even when the interface has
    NOARP specified. In a HiperSockets environment this disturbs receiving
    systems when packets are sent on the multicast queue. (E.g. TCP/IP on
    z/VM issues messages reporting invalid data on the HiperSockets
    interface.)
    Qeth will no longer send ARP packets on HiperSockets interface when
    interface has the NOARP attribute.
    
    Signed-off-by: Klaus D. Wacker <kdwacker@de.ibm.com>
    Signed-off-by: Ursula Braun <braunu@de.ibm.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  9. qeth: provide specific message for OSA-adapters exclusively used

    Ursula Braun authored Jeff Garzik committed
    Exclusive usage of OSA-cards has been introduced. Even though Linux
    does not make use of it, qeth should be prepared to receive a bad RC
    for some initialization steps. A meaningful message is now given,
    if an OSA-device is set online, even though the OSA-adapter is already
    exclusively used by another host.
    
    Signed-off-by: Ursula Braun <braunu@de.ibm.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  10. qeth: crash during reboot after failing online setting

    Ursula Braun authored Jeff Garzik committed
    Online setting of a qeth device may fail for instance because of:
    - out-of-memory condition when allocating qdio queues
    - IDX ACTIVATE problem
    - ...
    Such a device is still returned in a driver_for_each_device loop
    processed in qeth_reboot_event(), which calls
    qeth_clear_qdio_buffers(). Make sure qeth_clear_output_buffer() is
    called only, if the qdio queues have been successfully allocated
    during initialization of a qeth device.
    
    Signed-off-by: Ursula Braun <braunu@de.ibm.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  11. qeth: Announce tx checksumming for qeth devices in TSO/EDDP mode

    Frank Blaschka authored Jeff Garzik committed
    TSO requires tx checksumming. For non GSO frames in TSO/EDDP mode we
    have to manually calculate the checksum.
    
    Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com>
    Signed-off-by: Ursula Braun <braunu@de.ibm.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  12. qeth: dont return the return values of void functions.

    Heiko Carstens authored Jeff Garzik committed
    Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
    Signed-off-by: Ursula Braun <braunu@de.ibm.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  13. qeth: enforce a rate limit for inbound scatter gather messages

    Frank Blaschka authored Jeff Garzik committed
    under memory pressure scatter gather mode switching messages must be
    rate limited.
    
    Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com>
    Signed-off-by: Ursula Braun <braunu@de.ibm.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  14. qeth: ungrouping a device must not be interruptible

    Ursula Braun authored Jeff Garzik committed
    Problem:
    A recovery thread must not be active when device is removed.
    In qeth_remove_device() an interruptible wait operation is used
    to wait until a qeth recovery thread is finished. If a user really
    interrupts the ungroup operation of a qeth device while a recovery
    is running, cio and qeth are out of sync (device already removed
    from cio, but kept in qeth). A following module unload of qeth
    results in a kernel OOPS here.
    
    Solution:
    Do not allow interruption of ungroup operation to guarantee
    finishing of a potentially running qeth recovery thread.
    
    Signed-off-by: Ursula Braun <braunu@de.ibm.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  15. netxen: fix crashes during module unload

    dhananjay@netxen.com authored Jeff Garzik committed
    This patch fixes two problems during driver unload. The pci_disable_device()
    call is before firmware reload, causing reads and writes across PCI bus after
    disabling device. Second problem is the register window was wrong during
    firmware reload
    
    Signed-off by: Dhananjay Phadke <dhananjay@netxen.com>
    
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  16. netxen: Avoid firmware load in PCI probe

    dhananjay@netxen.com authored Jeff Garzik committed
    Loading firmware during PCI probe can lead to incorrect initialization,
    rendering the card unusable until next reboot.  This was introduced a while
    ago as a workaround for firmware bug, a better workaround was submitted for
    this a while ago. So removing original hack that loads firmware during probe.
    
    Signed-off by: Dhananjay Phadke <dhananjay@netxen.com>
    
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  17. PS3: fix the bug that 'ifconfig down' would hang

    Masakazu Mokuno authored Jeff Garzik committed
    Fix the bug that 'ifconfig eth0 down' would hang up, reported by Stefan
    Assmann <sassmann@suse.de>.
    As we removed netif_poll_enable() from dev->open(), we should not use
    netif_poll_disable() in dev->stop().
    
    Signed-off-by: Masakazu Mokuno <mokuno@sm.sony.co.jp>
    CC: Geoff Levand <geoffrey.levand@am.sony.com>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  18. @ralfbaechle

    IOC3: Program UART predividers.

    ralfbaechle authored Jeff Garzik committed
    The IOC3 driver's UART detection bits used to rely on the the firmware
    setting the UART pre-divider in a way that's apropriate for the 8250
    driver which doesn't currently program this register.  This happens
    to work for the console but not rarely for additional ports.
    
    While at it, also program the UART to RS-232 PIO mode; it the UART might
    have been in mac-serial and/or DMA mode though that hasn't actually been
    observed in practice.
    
    Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  19. [libata] Bump driver versions

    Jeff Garzik authored
    Bump the versions for drivers that were modified, but had not already
    had a version number bump.
    
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
  20. Page migration: Do not accept invalid nodes in the target nodeset

    Christoph Lameter authored Linus Torvalds committed
    Page migration currently does not check if the target of the move contains
    nodes that that are invalid (if root attempts to migrate pages)
    and may try to allocate from invalid nodes if these are specified
    leading to oopses.
    
    Return -EINVAL if an offline node is specified.
    
    Signed-off-by: Christoph Lameter <clameter@sgi.com>
    Cc: Shaohua Li <shaohua.li@intel.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  21. @dgibson

    hugepage: fix broken check for offset alignment in hugepage mappings

    dgibson authored Linus Torvalds committed
    For hugepage mappings, the file offset, like the address and size, needs to
    be aligned to the size of a hugepage.
    
    In commit 68589bc, the check for this was
    moved into prepare_hugepage_range() along with the address and size checks.
     But since BenH's rework of the get_unmapped_area() paths leading up to
    commit 4b1d892, prepare_hugepage_range()
    is only called for MAP_FIXED mappings, not for other mappings.  This means
    we're no longer ever checking for an aligned offset - I've confirmed that
    mmap() will (apparently) succeed with a misaligned offset on both powerpc
    and i386 at least.
    
    This patch restores the check, removing it from prepare_hugepage_range()
    and putting it back into hugetlbfs_file_mmap().  I'm putting it there,
    rather than in the get_unmapped_area() path so it only needs to go in one
    place, than separately in the half-dozen or so arch-specific
    implementations of hugetlb_get_unmapped_area().
    
    Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
    Cc: Adam Litke <agl@us.ibm.com>
    Cc: Andi Kleen <ak@suse.de>
    Cc: "David S. Miller" <davem@davemloft.net>
    Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  22. @jirislaby

    MAINTAINERS, order NETERION alphabetically

    jirislaby authored Linus Torvalds committed
    MAINTAINERS, order NETERION alphabetically
    
    Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  23. i2c-piix4: Fix SB700 PCI device ID

    Shane Huang authored Linus Torvalds committed
    We find that SB700 and SB800 use the same SMBus device ID as SB600, which is
    0x4385, instead of the already submitted 0x4395.
    
    Besides removing the wrong SB700 device ID, add SB800 support to kernel, by
    renaming the PCI_DEVICE_ID_ATI_IXP600_SMBUS into
    PCI_DEVICE_ID_ATI_SBX00_SMBUS.
    
    Signed-off-by: Shane Huang <shane.huang@amd.com>
    Signed-off-by: Jean Delvare <khali@linux-fr.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  24. MAINTAINERS: update DCO info

    Randy Dunlap authored Linus Torvalds committed
    Drop the URL for DCO (URL is invalid).  Also, point to SubmittingPatches
    for the current DCO.
    
    Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  25. sigqueue_free: fix the race with collect_signal()

    Oleg Nesterov authored Linus Torvalds committed
    Spotted by taoyue <yue.tao@windriver.com> and Jeremy Katz <jeremy.katz@windriver.com>.
    
    collect_signal:				sigqueue_free:
    
    	list_del_init(&first->list);
    						if (!list_empty(&q->list)) {
    							// not taken
    						}
    						q->flags &= ~SIGQUEUE_PREALLOC;
    
    	__sigqueue_free(first);			__sigqueue_free(q);
    
    Now, __sigqueue_free() is called twice on the same "struct sigqueue" with the
    obviously bad implications.
    
    In particular, this double free breaks the array_cache->avail logic, so the
    same sigqueue could be "allocated" twice, and the bug can manifest itself via
    the "impossible" BUG_ON(!SIGQUEUE_PREALLOC) in sigqueue_free/send_sigqueue.
    
    Hopefully this can explain these mysterious bug-reports, see
    
    	http://marc.info/?t=118766926500003
    	http://marc.info/?t=118466273000005
    
    Alexey Dobriyan reports this patch makes the difference for the testcase, but
    nobody has an access to the application which opened the problems originally.
    
    Also, this patch removes tasklist lock/unlock, ->siglock is enough.
    
    Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
    Cc: taoyue <yue.tao@windriver.com>
    Cc: Jeremy Katz <jeremy.katz@windriver.com>
    Cc: Sukadev Bhattiprolu <sukadev@us.ibm.com>
    Cc: Alexey Dobriyan <adobriyan@sw.ru>
    Cc: Ingo Molnar <mingo@elte.hu>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Roland McGrath <roland@redhat.com>
    Cc: <stable@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  26. userns: don't leak root user

    Alexey Dobriyan authored Linus Torvalds committed
    Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru>
    Acked-by: Cedric Le Goater <clg@fr.ibm.com>
    Acked-by: Serge Hallyn <serue@us.ibm.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  27. request_irq: fix DEBUG_SHIRQ handling

    Jarek Poplawski authored Linus Torvalds committed
    Mariusz Kozlowski reported lockdep's warning:
    
    > =================================
    > [ INFO: inconsistent lock state ]
    > 2.6.23-rc2-mm1 #7
    > ---------------------------------
    > inconsistent {in-hardirq-W} -> {hardirq-on-W} usage.
    > ifconfig/5492 [HC0[0]:SC0[0]:HE1:SE1] takes:
    >  (&tp->lock){+...}, at: [<de8706e0>] rtl8139_interrupt+0x27/0x46b [8139too]
    > {in-hardirq-W} state was registered at:
    >   [<c0138eeb>] __lock_acquire+0x949/0x11ac
    >   [<c01397e7>] lock_acquire+0x99/0xb2
    >   [<c0452ff3>] _spin_lock+0x35/0x42
    >   [<de8706e0>] rtl8139_interrupt+0x27/0x46b [8139too]
    >   [<c0147a5d>] handle_IRQ_event+0x28/0x59
    >   [<c01493ca>] handle_level_irq+0xad/0x10b
    >   [<c0105a13>] do_IRQ+0x93/0xd0
    >   [<c010441e>] common_interrupt+0x2e/0x34
    ...
    > other info that might help us debug this:
    > 1 lock held by ifconfig/5492:
    >  #0:  (rtnl_mutex){--..}, at: [<c0451778>] mutex_lock+0x1c/0x1f
    >
    > stack backtrace:
    ...
    >  [<c0452ff3>] _spin_lock+0x35/0x42
    >  [<de8706e0>] rtl8139_interrupt+0x27/0x46b [8139too]
    >  [<c01480fd>] free_irq+0x11b/0x146
    >  [<de871d59>] rtl8139_close+0x8a/0x14a [8139too]
    >  [<c03bde63>] dev_close+0x57/0x74
    ...
    
    This shows that a driver's irq handler was running both in hard interrupt
    and process contexts with irqs enabled. The latter was done during
    free_irq() call and was possible only with CONFIG_DEBUG_SHIRQ enabled.
    This was fixed by another patch.
    
    But similar problem is possible with request_irq(): any locks taken from
    irq handler could be vulnerable - especially with soft interrupts. This
    patch fixes it by disabling local interrupts during handler's run. (It
    seems, disabling softirqs should be enough, but it needs more checking
    on possible races or other special cases).
    
    Reported-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
    Signed-off-by: Jarek Poplawski <jarkao2@o2.pl>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  28. @konis

    eCryptfs: fix possible fault in ecryptfs_sync_page

    konis authored Linus Torvalds committed
    This will avoid a possible fault in ecryptfs_sync_page().
    
    In the function, eCryptfs calls sync_page() method of a lower filesystem
    without checking its existence.  However, there are many filesystems that
    don't have this method including network filesystems such as NFS, AFS, and
    so forth.  They may fail when an eCryptfs page is waiting for lock.
    
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
    Acked-by: Michael Halcrow <mhalcrow@us.ibm.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Something went wrong with that request. Please try again.