Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tag: v2.6.20

Feb 04, 2007

  1. Linux 2.6.20

    Linus Torvalds authored
  2. [PATCH] EFI x86: pass firmware call parameters on the stack

    When calling into the EFI firmware, the parameters need to be passed on
    the stack. The recent change to use -mregparm=3 breaks x86 EFI support.
    This patch is needed to allow the new Intel-based Macs to suspend to ram
    (efi.get_time is called during the suspend phase).
    Signed-off-by: Frederic Riss <>
    Signed-off-by: Linus Torvalds <>
    Frédéric Riss authored Linus Torvalds committed
  3. [PATCH] fix rtl8150

    That code doesn't do what its author apparently thought it would do...
    Signed-off-by: Al Viro <>
    Signed-off-by: Linus Torvalds <>
    Al Viro authored Linus Torvalds committed

Feb 03, 2007

  1. Merge

      [SCSI] sd: udev accessing an uninitialized scsi_disk field results in a crash
      [SCSI] st: A MTIOCTOP/MTWEOF within the early warning will cause the file number to be incorrect
      [SCSI] qla4xxx: bug fixes
      [SCSI] Fix scsi_add_device() for async scanning
    Linus Torvalds authored
  2. [PATCH] x86-64: define dma noncoherent API functions

    x86-64 is missing these:
    Signed-off-by: Jeff Garzik <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Linus Torvalds <>
    Jeff Garzik authored Linus Torvalds committed
  3. [PATCH] Altix: more ACPI PRT support

    The SN Altix platform does not conform to the IOSAPIC IRQ routing model.
    Add code in acpi_unregister_gsi() to check if (acpi_irq_model ==
    ACPI_IRQ_MODEL_PLATFORM) and return.
    Due to an oversight, this code was not added previously when
    similar code was added to acpi_register_gsi().
    Signed-off-by: John Keller <>
    Acked-by: Len Brown <>
    Cc: "Luck, Tony" <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Linus Torvalds <>
    John Keller authored Linus Torvalds committed
  4. [PATCH] revert blockdev direct io back to 2.6.19 version

    Andrew Vasquez is reporting as-iosched oopses and a 65% throughput
    slowdown due to the recent special-casing of direct-io against
    blockdevs.  We don't know why either of these things are occurring.
    The patch minimally reverts us back to the 2.6.19 code for a 2.6.20
    Cc: Andrew Vasquez <>
    Cc: Ken Chen <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Linus Torvalds <>
    Andrew Morton authored Linus Torvalds committed
  5. Mike Frysinger

    [PATCH] alpha: fix epoll syscall enumerations

    We went and named them __NR_sys_foo instead of __NR_foo.
    It may be too late to change this, but we can at least add the proper names
    Signed-off-by: Mike Frysinger <>
    Cc: Richard Henderson <>
    Cc: Ivan Kokshaysky <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Linus Torvalds <>
    vapier authored Linus Torvalds committed
  6. [PATCH] net/smc911x: match up spin lock/unlock

    smc911x_phy_configure's error handling unconditionally unlocks the
    spinlock even if it wasn't locked. Patch fixes it.
    Signed-off-by: Peter Korsgaard <>
    Cc: Jeff Garzik <>
    Cc: <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Linus Torvalds <>
    Peter Korsgaard authored Linus Torvalds committed
  7. [PATCH] kexec: Avoid migration of already disabled irqs (ia64)

    This patch fixes up ia64 kexec support for HP rx2620 hardware.  It does
    this by skipping migration of already disabled irqs.  This is most likely a
    problem on other ia64 platforms as well, but I've only been able to
    reproduce it on one machine so far.
    The full story is that handle_bad_irq() gets invoked before starting the
    new kernel without this patch.  This seems to happen when fixup_irqs()
    calls generic_handle_irq() on already migrated (and disabled) irqs.  So by
    avoiding migration of disabled irqs we stay away of handle_bad_irq().
    The code has been tested on three different ia64 machines, all with good
    results.  It is possible to trigger the same bug by offlining a processor
    using echo 0 > /sys/devices/system/cpu/cpuX/online.
    More detailed information is available in the following mail thread:
    Signed-off-by: Magnus Damm <>
    Acked-by: Simon Horman <>
    Acked-by: Zou, Nanhai <>
    Acked-by: Jay Lan <>
    Acked-by: "Luck, Tony" <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Linus Torvalds <>
    Magnus Damm authored Linus Torvalds committed
  8. [PATCH] aio: fix buggy put_ioctx call in aio_complete - v2

    An AIO bug was reported that sleeping function is being called in softirq
    BUG: warning at kernel/mutex.c:132/__mutex_lock_common()
    Call Trace:
         [<a000000100577b00>] __mutex_lock_slowpath+0x640/0x6c0
         [<a000000100577ba0>] mutex_lock+0x20/0x40
         [<a0000001000a25b0>] flush_workqueue+0xb0/0x1a0
         [<a00000010018c0c0>] __put_ioctx+0xc0/0x240
         [<a00000010018d470>] aio_complete+0x2f0/0x420
         [<a00000010019cc80>] finished_one_bio+0x200/0x2a0
         [<a00000010019d1c0>] dio_bio_complete+0x1c0/0x200
         [<a00000010019d260>] dio_bio_end_aio+0x60/0x80
         [<a00000010014acd0>] bio_endio+0x110/0x1c0
         [<a0000001002770e0>] __end_that_request_first+0x180/0xba0
         [<a000000100277b90>] end_that_request_chunk+0x30/0x60
         [<a0000002073c0c70>] scsi_end_request+0x50/0x300 [scsi_mod]
         [<a0000002073c1240>] scsi_io_completion+0x200/0x8a0 [scsi_mod]
         [<a0000002074729b0>] sd_rw_intr+0x330/0x860 [sd_mod]
         [<a0000002073b3ac0>] scsi_finish_command+0x100/0x1c0 [scsi_mod]
         [<a0000002073c2910>] scsi_softirq_done+0x230/0x300 [scsi_mod]
         [<a000000100277d20>] blk_done_softirq+0x160/0x1c0
         [<a000000100083e00>] __do_softirq+0x200/0x240
         [<a000000100083eb0>] do_softirq+0x70/0xc0
    See report:
    flush_workqueue() is not allowed to be called in the softirq context.
    However, aio_complete() called from I/O interrupt can potentially call
    put_ioctx with last ref count on ioctx and triggers bug.  It is simply
    incorrect to perform ioctx freeing from aio_complete.
    The bug is trigger-able from a race between io_destroy() and aio_complete().
    A possible scenario:
    cpu0                               cpu1
    io_destroy                         aio_complete
      wait_for_all_aios {                __aio_put_req
         ...                                 ctx->reqs_active--;
         if (!ctx->reqs_active)
                                              bam! Bug trigger!
    The real problem is that the condition check of ctx->reqs_active in
    wait_for_all_aios() is incorrect that access to reqs_active is not
    being properly protected by spin lock.
    This patch adds that protective spin lock, and at the same time removes
    all duplicate ref counting for each kiocb as reqs_active is already used
    as a ref count for each active ioctx.  This also ensures that buggy call
    to flush_workqueue() in softirq context is eliminated.
    Signed-off-by: "Ken Chen" <>
    Cc: Zach Brown <>
    Cc: Suparna Bhattacharya <>
    Cc: Benjamin LaHaise <>
    Cc: Badari Pulavarty <>
    Cc: <>
    Acked-by: Jeff Moyer <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Linus Torvalds <>
    Ken Chen authored Linus Torvalds committed
  9. AdrianBunk

    [NETFILTER]: nf_conntrack_h323: fix compile error with CONFIG_IPV6=m,…

    Fix this by letting NF_CONNTRACK_H323 depend on (IPV6 || IPV6=n).
    Signed-off-by: Adrian Bunk <>
    Signed-off-by: David S. Miller <>
    AdrianBunk authored davem330 committed
  10. Patrick McHardy

    [NETFILTER]: ctnetlink: fix compile failure with NF_CONNTRACK_MARK=n

      CC      net/netfilter/nf_conntrack_netlink.o
    net/netfilter/nf_conntrack_netlink.c: In function 'ctnetlink_conntrack_event':
    net/netfilter/nf_conntrack_netlink.c:392: error: 'struct nf_conn' has no member named 'mark'
    make[3]: *** [net/netfilter/nf_conntrack_netlink.o] Error 1
    Signed-off-by: Patrick McHardy <>
    Signed-off-by: David S. Miller <>
    kaber authored davem330 committed
  11. [SCSI] sd: udev accessing an uninitialized scsi_disk field results in…

    … a crash
    	sd_probe() calls class_device_add() even before initializing the
    sdkp->device variable. class_device_add() eventually results in the user mode
    udev program to be called. udev program can read the the allow_restart
    attribute of the newly created scsi device. This is resulting in a crash as
    the show function for allow_restart (i.e sd_show_allow_restart) returns the
    attribute value by reading the sdkp->device->allow_restart variable. As the
    sdkp->device is not initialized before calling the user mode hotplug helper,
    this results in a crash.
    	The patch below solves it by calling class_device_add() only after the
    necessary fields in the scsi_disk structure are initialized properly.
    Signed-off-by: Nagendra Singh Tomar <>
    Signed-off-by: James Bottomley <>
    Nagendra Singh Tomar authored James Bottomley committed

Feb 02, 2007

  1. Merge branch 'upstream-linus' of…

    * 'upstream-linus' of
      libata: Initialize nbytes for internal sg commands
      libata: Fix ata_busy_wait() kernel docs
      pata_via: Correct missing comments
      pata_atiixp: propogate cable detection hack from drivers/ide to the new driver
      ahci/pata_jmicron: fix JMicron quirk
    Linus Torvalds authored
  2. libata: Initialize nbytes for internal sg commands

    Some LLDDs, like ipr, use nbytes and pad_len to determine
    the total data transfer length of a command. Make sure
    nbytes gets initialized for internally generated commands.
    Signed-off-by: Brian King <>
    Signed-off-by: Jeff Garzik <>
    Brian King authored Jeff Garzik committed
  3. Alan-Cox

    libata: Fix ata_busy_wait() kernel docs

    > Looks like you should use ata_busy_wait() here, rather than reproducing
    > the same code again.
    It waits in 10uS chunks while 1uS chunks were used in the workaround.
    Could indeed do that once I know the fix is right. While I'm at it the
    ata_busy_wait kerneldoc is borked so here's a fix
    Signed-off-by: Alan Cox <>
    Signed-off-by: Jeff Garzik <>
    Alan-Cox authored Jeff Garzik committed
  4. Alan-Cox

    pata_via: Correct missing comments

    The 8237S was added to the chipsets but not to the comments. Fix this
    Signed-off-by: Alan Cox <>
    Signed-off-by: Jeff Garzik <>
    Alan-Cox authored Jeff Garzik committed
  5. Alan-Cox

    pata_atiixp: propogate cable detection hack from drivers/ide to the n…

    …ew driver
    Signed-off-by: Alan Cox <>
    Signed-off-by: Jeff Garzik <>
    Alan-Cox authored Jeff Garzik committed
  6. htejun

    ahci/pata_jmicron: fix JMicron quirk

    For all JMicrons except for 361 and 368, AHCI mode enable bits in the
    Control(1) should be set.  This used to be done in both ahci and
    pata_jmicron but while moving programming to PCI quirk, it was removed
    from ahci part while still left in pata_jmicron.
    The implemented JMicron PCI quirk was incorrect in that it didn't
    program AHCI mode enable bits.  If pata_jmicron is loaded first and
    programs those bits, the ahci ports work; otherwise, ahci device
    detection fails miserably.
    This patch makes JMicron PCI quirk clear SATA IDE mode bits and set
    AHCI mode bits and remove the respective part from pata_jmicron.
    Tested on JMB361, 363 and 368.
    Signed-off-by: Tejun Heo <>
    Signed-off-by: Jeff Garzik <>
    htejun authored Jeff Garzik committed
  7. Merge branch 'upstream-linus' of…

    * 'upstream-linus' of
      spidernet : fix memory leak in spider_net_stop
      e100: fix napi ifdefs removing needed code
      netxen patches
    Linus Torvalds authored
  8. Merge

      [BNX2]: PHY workaround for 5709 A0.
    Linus Torvalds authored
  9. Merge

      [NET_SCHED]: act_ipt: fix regression in ipt action
    Linus Torvalds authored
  10. Merge

      [SPARC32]: Fix over-optimization by GCC near ip_fast_csum.
    Linus Torvalds authored
  11. Evgeniy Dushistov

    [PATCH] MAINTAINERS: ufs entry

    Mark ufs file system as maintainable, and add me as maintainer,
    to help people find appropriate person to assign bugs.
    Signed-off-by: Evgeniy Dushistov <>
    Signed-off-by: Linus Torvalds <>
    Dushistov authored Linus Torvalds committed
  12. Revert "[PATCH] fix typo in geode_configre()@cyrix.c"

    This reverts commit e4f0ae0.
    It's not wrong, but it's not right either, and everybody seems to agree
    that the right fix is probably to do the ccr3 write after the ccr4 one
    (and that we also should clean it up a bit).  And after that we need to
    really validate that all the bits that we write to ccr4 actually do
    The old 2.6.19 code was insane, and basically didn't change ccr4 at all
    (even though it certainly looks like it was the *intent* to do so).  So
    let's revert the change that may fix things, just because it's not what
    was actually ever tested when the code was written, even if it _was_ the
    There's a discussion on that was
    started by the patch that now gets reverted, and that discussion may
    well contain the proper long-term fix.
    Suggested-by: Adrian Bunk <>
    Acked-by: Andrew Morton <>
    Signed-off-by: Linus Torvalds <>
    Linus Torvalds authored
  13. spidernet : fix memory leak in spider_net_stop

    We forget to call spider_net_free_rx_chain_contents which does the
    actual dev_kfree_skb. New skbs are allocated from skbuff_head_cache
    on each "ifconfig up" letting the cache grow infinitely.
    This patch fixes it.
    Signed-off-by: Jens Osterkamp <>
    Signed-off-by: Jeff Garzik <>
    Jens Osterkamp authored Jeff Garzik committed
  14. Auke Kok

    e100: fix napi ifdefs removing needed code

    e100: fix napi ifdefs removing needed code
    From: Auke Kok <>
    The e100 driver is NAPI mode only. We need to netif_poll_disable
    during suspend and shutdown. The non-NAPI driver code was removed
    and is only avaiable in the out-of-tree e100 kernel driver.
    Signed-off-by: Auke Kok <>
    Signed-off-by: Jeff Garzik <>
    sofar authored Jeff Garzik committed
  15. Merge ../linux-2.6

    Jeff Garzik authored
  16. [BNX2]: PHY workaround for 5709 A0.

    5709 A0 copper devices will not link up with some link partners
    without this workaround.
    Update driver to 1.5.5.
    Signed-off-by: Michael Chan <>
    Signed-off-by: David S. Miller <>
    Michael Chan authored davem330 committed
  17. Patrick McHardy

    [NET_SCHED]: act_ipt: fix regression in ipt action

    The x_tables patch broke target module autoloading in the ipt action
    by replacing the ipt_find_target call (which does autoloading) by
    xt_find_target (which doesn't do autoloading). Additionally xt_find_target
    may return ERR_PTR values in case of an error, which are not handled.
    Use xt_request_find_target, which does both autoloading and ERR_PTR
    handling properly. Also don't forget to drop the target module reference
    again when xt_check_target fails.
    Signed-off-by: Patrick McHardy <>
    Signed-off-by: David S. Miller <>
    kaber authored davem330 committed
  18. Bob Breuer

    [SPARC32]: Fix over-optimization by GCC near ip_fast_csum.

    In some cases such as:
    	iph->check = 0;
    	iph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
    GCC may optimize out the previous store.
    Observed as a failure of NFS over udp (bad checksums on ip fragments)
    when compiled with GCC 3.4.2.
    Signed-off-by: Bob Breuer <>
    Signed-off-by: David S. Miller <>
    breuerr authored davem330 committed
  19. [PATCH] Remove from MAINTAINERS is a technical support address and is not really
    appropriate for sending patches. Lots of annoying automatics getting
    in the way.
    I'm still the maintainer of all the entries touched by this patch, so
    nothing changes with regard to the "Supported" status of the AVR32
    architecture or the macb driver.
    Signed-off-by: Haavard Skinnemoen <>
    Signed-off-by: Linus Torvalds <>
    Haavard Skinnemoen authored Linus Torvalds committed
  20. bzolnier

    [PATCH] via82cxxx: fix typo ("cx7000" should be corrected to "cx700")

    Noticed by
    Signed-off-by: Bartlomiej Zolnierkiewicz <>
    Signed-off-by: Linus Torvalds <>
    bzolnier authored Linus Torvalds committed
  21. [PATCH] sysrq: showBlockedTasks is sysrq-W

    Change SysRq showBlockedTasks from sysrq-X to sysrq-W and show that in the
    Help message.
    It was previously done via X, but X is already used for Xmon on ppc & powerpc
    platforms and this collision needs to be avoided.
    All callers of register_sysrq_key() are now marked in the sysrq op/key table.
    I didn't mark 'h' as Help because Help is just printed for any unknown key,
    such as '?'.
    Added some omitted sysrq key entries in the sysrq.txt file.
    Signed-off-by: Randy Dunlap <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Linus Torvalds <>
    Randy Dunlap authored Linus Torvalds committed
Something went wrong with that request. Please try again.