commit b635acec48bcaa9183fcbf4e3955616b0d4119b5
Merge: 9921b25... ca6d1b1...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Aug 13 20:50:10 2008 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (47 commits)
      usb: musb: pass configuration specifics via pdata
      usb: musb: fix hanging when rmmod gadget driver
      USB: Add MUSB and TUSB support
      USB: serial: remove CONFIG_USB_DEBUG from sierra and option drivers
      USB: Add vendor/product id of ZTE MF628 to option
      USB: quirk PLL power down mode
      USB: omap_udc: fix compilation with debug enabled
      usb: cdc-acm: drain writes on close
      usb: cdc-acm: stop dropping tx buffers
      usb: cdc-acm: bugfix release()
      usb gadget: issue notifications from ACM function
      usb gadget: remove needless struct members
      USB: sh: r8a66597-hcd: fix disconnect regression
      USB: isp1301: fix compilation
      USB: fix compiler warning fix
      usb-storage: unusual_devs entry for Nokia 5300
      USB: cdc-acm.c: Fix compile warnings
      USB: BandRich BandLuxe C150/C250 HSPA Data Card Driver
      USB: ftdi_sio: add support for PHI Fisco data cable (FT232BM based, VID/PID 0403:e40b)
      usb: isp1760: don't be noisy about short packets.
      ...

commit 9921b256bb7402143a5bf0b722582562b6485eb8
Merge: 7a49efa... 9e2b2dc...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Aug 13 20:49:37 2008 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:
      CRED: Introduce credential access wrappers

commit 7a49efae71397cf7e9299bbb22b2d12f7cf12428
Merge: 0ff8285... 877aced...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Aug 13 20:48:46 2008 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (56 commits)
      netns: Fix crash by making igmp per namespace
      bnx2x: Version update
      bnx2x: Checkpatch compliance
      bnx2x: Spelling mistakes
      bnx2x: Minor code improvements
      bnx2x: Driver info
      bnx2x: 1G LED does not turn off
      bnx2x: 8073 PHY changes
      bnx2x: Change GPIO for any port
      bnx2x: Pause settings
      bnx2x: Link order with external PHY
      bnx2x: No LRO without Rx checksum
      bnx2x: Wrong structure size
      bnx2x: WoL capability
      bnx2x: Clearing MAC addresses filters
      bnx2x: Delay in while loops
      bnx2x: PBA Table Page Alignment Workaround
      bnx2x: Self-test false positive
      bnx2x: Memory allocation
      bnx2x: HW attention lock
      ...

commit 0ff8285075a1242dbc969b6b4b1719d692931a02
Merge: 8d0968a... 6f63e78...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Aug 13 20:48:25 2008 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
      sparc64: Handle stack trace attempts before irqstacks are setup.
      sparc64: Implement IRQ stacks.
      sparc: remove include of linux/of_device.h from asm/of_device.h
      sparc64: Fix recursion in stack overflow detection handling.
      sparc/drivers: use linux/of_device.h instead of asm/of_device.h
      sparc64: Don't MAGIC_SYSRQ ifdef smp_fetch_global_regs and support code.

commit ca6d1b1333bc2e61e37982de1f28d8604c232414
Author: Felipe Balbi <felipe.balbi@nokia.com>
Date:   Fri Aug 8 12:40:54 2008 +0300

    usb: musb: pass configuration specifics via pdata
    
    Use platform_data to pass musb configuration-specific
    details to musb driver.
    
    This patch will prevent that other platforms selecting
    HAVE_CLK and enabling musb won't break tree building.
    
    The other parts of it will come when linux-omap merge
    up more omap2/3 board-files.
    
    Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com>
    Acked-by: Paul Mundt <lethal@linux-sh.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit f362a47560070ec0aaf68ac6b45901eeed1c844f
Author: Felipe Balbi <felipe.balbi@nokia.com>
Date:   Mon Aug 4 13:53:52 2008 +0300

    usb: musb: fix hanging when rmmod gadget driver
    
    If we try to modprobe a second gadget driver before
    rmmoding the first one, the reference for the first
    gadget driver would get NULLed avoiding usb to change
    gadget drivers later.
    
    Cc: David Brownell <david-b@pacbell.net>
    Cc: Tony Lindgren <tony@atomide.com>
    Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 550a7375fe720924241f0eb76e4a5c1a3eb8c32f
Author: Felipe Balbi <felipe.balbi@nokia.com>
Date:   Thu Jul 24 12:27:36 2008 +0300

    USB: Add MUSB and TUSB support
    
    This patch adds support for MUSB and TUSB controllers
    integrated into omap2430 and davinci. It also adds support
    for external tusb6010 controller.
    
    Cc: David Brownell <dbrownell@users.sourceforge.net>
    Cc: Tony Lindgren <tony@atomide.com>
    Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit f331e40ee8e4861e1d82310b1af7cf75de7370ac
Author: Greg Kroah-Hartman <gregkh@suse.de>
Date:   Tue Aug 12 12:04:50 2008 +0700

    USB: serial: remove CONFIG_USB_DEBUG from sierra and option drivers
    
    These drivers should not be relying on CONFIG_USB_DEBUG.  By doing this,
    it prevents users of kernels that do not enable this option from
    enabling debugging in these drivers, unlike all other usb-serial
    drivers.
    
    Cc: Matthias Urlichs <smurf@smurf.noris.de>
    Cc: Kevin Lloyd <klloyd@sierrawireless.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 6188a83f7264edebe9b8ee10ad7b2136d3531ea6
Author: Oliver Martin <oliver.martin@student.tuwien.ac.at>
Date:   Sat Aug 9 04:49:26 2008 +0200

    USB: Add vendor/product id of ZTE MF628 to option
    
    This adds the vendor and product id (19d2:0015) of the ZTE MF628 HSDPA
    modem to the option driver. It still needs a mode switch command issued
    beforehand, this is currently handled by a userspace tool.
    
    Signed-off-by: Oliver Martin <oliver.martin@student.tuwien.ac.at>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit ab1666c1364a209e6141d7c14e47a42b5f00eca2
Author: Libin Yang <Libin.Yang@amd.com>
Date:   Fri Aug 8 15:03:31 2008 +0800

    USB: quirk PLL power down mode
    
    On some AMD 700 series southbridges, ISO OUT transfers (such as audio
    playback through speakers) on the USB OHCI controller may be corrupted
    when an A-Link express power saving feature is active.
    
    PLL power down mode in conjunction with link power management feature
    L1 being enabled is the bad combination ... this patch prevents them
    from being enabled when ISO transfers are pending.
    
    Signed-off-by: Crane Cai <crane.cai@amd.com>
    Signed-off-by: Libin Yang <libin.yang@amd.com>
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit e12cc34527dcd945597c860c25aba92883a4a6a4
Author: Dmitry Baryshkov <dbaryshkov@gmail.com>
Date:   Thu Aug 7 16:29:25 2008 +0400

    USB: omap_udc: fix compilation with debug enabled
    
    Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit e5fbab51b4219fbd1dab28666affe38a920b5f7e
Author: David Brownell <dbrownell@users.sourceforge.net>
Date:   Wed Aug 6 18:46:10 2008 -0700

    usb: cdc-acm: drain writes on close
    
    Add a mechanism to let the write queue drain naturally before
    closing the TTY, rather than always losing that data.  There
    is a timeout, so it can't wait too long.
    
    Provide missing locking inside acm_wb_is_avail(); it matters
    more now.  Note, this presumes an earlier patch was applied,
    removing a call to this routine where the lock was held.
    
    Slightly improved diagnostics on write URB completion, so we
    can tell when a write URB gets killed and, if so, how much
    data it wrote first ... and so that I/O path is normally
    silent (and can't much change timings).
    
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 934da4635c2d05cef474e5243ef05df95b2ad264
Author: David Brownell <dbrownell@users.sourceforge.net>
Date:   Wed Aug 6 18:44:12 2008 -0700

    usb: cdc-acm: stop dropping tx buffers
    
    The "increase cdc-acm write throughput" patch left in place two
    now-obsolete mechanisms, either of which can make the cdc-acm
    driver drop TX data (nasty!).  This patch removes them:
    
      - The write_ready flag ... if an URB and buffer were found,
        they can (and should!) always be used.
    
      - TX path acm_wb_is_used() ... used when the buffer was just
        allocated, so that check is pointless.
    
    Also fix a won't-yet-matter leak of a write buffer on a disconnect path.
    
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Cc:  David Engraf <david.engraf@netcom.eu>
    Acked-by: Oliver Neukum <oneukum@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 672c4e1843c54227ff1bdf1fdd96f9c45c56aa85
Author: David Brownell <dbrownell@users.sourceforge.net>
Date:   Wed Aug 6 18:41:12 2008 -0700

    usb: cdc-acm: bugfix release()
    
    Bugfixes to the usb_driver_release_interface() usage;
    
      (a) make sure releasing *either* interface first will release
          the other, instead of insisting it be the control interface;
    
      (b) remove the recently-added self-deadlock.
    
    (The "fix disconnect bug in cdc-acm" patch was incomplete and incorrect.)
    
    Plus a small "sparse" fix:  rename a local variable so it doesn't
    shadow a function parameter.
    
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Acked-by: Oliver Neukum <oneukum@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 1f1ba11b64947051fc32aa15fcccef6463b433f7
Author: David Brownell <dbrownell@users.sourceforge.net>
Date:   Wed Aug 6 18:49:57 2008 -0700

    usb gadget: issue notifications from ACM function
    
    Update the CDC-ACM gadget code to support the peripheral-to-host
    notifications when the tty is opened or closed, or issues a BREAK.
    The serial framework code calls new generic hooks; right now only
    CDC-ACM uses those hooks.  This resolves several REVISIT comments
    in the code.  (Based on a patch from Felipe Balbi.)
    
    Note that this doesn't expose USB_CDC_CAP_BRK to the host, since
    this code still rejects USB_CDC_REQ_SEND_BREAK control requests
    for host-to-peripheral BREAK signaling (received via /dev/ttyGS*).
    
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Cc: Felipe Balbi <felipe.balbi@nokia.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 630c7aa80152881980e45c11584f22476f71959b
Author: David Brownell <dbrownell@users.sourceforge.net>
Date:   Wed Aug 6 18:48:52 2008 -0700

    usb gadget: remove needless struct members
    
    This removes some unused members from the various USB functions.
    
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 54d0be9e3af1e20c3d0c3cc3eba50d33da24229c
Author: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
Date:   Fri Jul 11 18:53:45 2008 +0900

    USB: sh: r8a66597-hcd: fix disconnect regression
    
    fix the regression in commit 29fab0cd897519be9009ba8c898410ab83b378e9
    that this driver executed reconnection processing when disconnected
    some devices.
    
    Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit cbbcb9b0c7e4d1fd90cf54427382dae525773dc2
Author: Dmitry Baryshkov <dbaryshkov@gmail.com>
Date:   Thu Aug 7 16:29:24 2008 +0400

    USB: isp1301: fix compilation
    
    Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 9ff78433f0aeb1f731a22a90206b685df4eaf52e
Author: Alan Stern <stern@rowland.harvard.edu>
Date:   Thu Aug 7 13:04:51 2008 -0400

    USB: fix compiler warning fix
    
    This patch (as1123b) fixes a compiler warning: do_unbind_rebind() is
    defined but not used if CONFIG_PM=n.
    
    Problem originally found and initial patch submitted by Alexander
    Beregalov <a.beregalov@gmail.com>.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit d28525f8866244a77b677c0470d4859cb2b6c2a8
Author: Alan Stern <stern@rowland.harvard.edu>
Date:   Thu Aug 7 13:02:40 2008 -0400

    usb-storage: unusual_devs entry for Nokia 5300
    
    This patch (as1120) adds an unusual_devs entry for the Nokia 5300.
    Maybe once Nokia releases the Symbian code we'll be able to fix all
    the problems it has with the USB mass-storage protocol.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Tested-by: Cedric Godin <cedric@belbone.be>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 81eb8adfcec210a820ad9872ffb242482c976b8d
Author: Takashi Iwai <tiwai@suse.de>
Date:   Thu Jul 31 19:06:13 2008 +0200

    USB: cdc-acm.c: Fix compile warnings
    
    The irq flags should be unsigned long.
    
      CC [M]  drivers/usb/class/cdc-acm.o
    drivers/usb/class/cdc-acm.c: In function 'acm_waker':
    drivers/usb/class/cdc-acm.c:527: warning: comparison of distinct pointer types lacks a cast
    drivers/usb/class/cdc-acm.c:529: warning: comparison of distinct pointer types lacks a cast
    
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit bf3fc82895f4f501da9daef44d057749fe900c3e
Author: Leon Leong <upleong@bandrich.com>
Date:   Fri Aug 1 11:40:12 2008 +0800

    USB: BandRich BandLuxe C150/C250 HSPA Data Card Driver
    
    This patch adds the Product ID for the BandLuxe C150/C250 3.5G data
    card series from BandRich Inc.
    After detection, the data card works fine.
    
    It was patched against kernel 2.6.27-rc1 with -mm patch
    
    Signed-off-by: Leon Leong <upleong@bandrich.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit a5f6239949de78a9f33120d76f084928cb234a15
Author: Lex Ross <lross@mail.ru>
Date:   Wed Aug 6 16:25:08 2008 +0400

    USB: ftdi_sio: add support for PHI Fisco data cable (FT232BM based, VID/PID 0403:e40b)
    
    Support for PHI Fisco USB to Serial data cable (FTDI FT232BM based).
    PHI Fisco cable is supplied for connecting Philips Xenium 9@9++ mobile phones.
    PIDs were missing.
    
    Tested successfully with PHI Fisco Data Cable (VID/PID 0403:e40b)
    
    Signed-off-by: Lex V. Ross <lross@mail.ru>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 7839b5162d7d6c100f70a036be1e1f2b072857bc
Author: Sebastian Siewior <sebastian@breakpoint.cc>
Date:   Thu Jul 17 20:09:29 2008 +0200

    usb: isp1760: don't be noisy about short packets.
    
    According to Alan Stern, short packets are quite normal under
    certain circumstances. This printk was triggered by usb to
    serial converters on every packet and some usb sticks triggered
    a few of those while plugging the stick.
    This printks are now hidden unless USB debug mode is activated.
    
    Cc: Alan Stern <stern@rowland.harvard.edu>
    Signed-off-by: Sebastian Siewior <sebastian@breakpoint.cc>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 3f02a957d5eb0eeb01207a799086f2b347077f71
Author: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Date:   Thu Jul 17 20:09:30 2008 +0200

    usb: ISP1760: improve pre-fetch timing
    
    ISP1760 requires a delay of 90ns between programming the address and
    reading the data.  Current driver solves this by a mdelay(1) which is
    very heavy weighted and slow.  This patch applies the workaround from
    the ISP1760 FAQ by using two different banks for PTD and payload data
    and using a common wait for them.  This wait is done by an additional
    ISP1760 access (whose timing constraints guarantee the 90ns delay).
    This improves speed when reading from an USB stick from:
    
      $ time dd if=/dev/sda of=/dev/zero bs=65536 count=1638
      real    1m 15.43s
      user    0m 0.44s
      sys     0m 39.46s
    
    to
    
      $ time dd if=/dev/sda of=/dev/zero bs=65536 count=1638
      real    0m 18.53s
      user    0m 0.16s
      sys     0m 12.97s
    
    [bigeasy@linutronix.de: fixed comment formating, moved define into
       header file, obey 80 char rule]
    
    Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
    Signed-off-by: Sebastian Siewior <bigeasy@linutronix.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit a36c27dfd1003e6d6842fe77faaf868e3e6e9062
Author: Sebastian Siewior <sebastian@breakpoint.cc>
Date:   Thu Jul 17 20:09:28 2008 +0200

    usb: return error code instead of 0 in the enqueue function.
    
    if the enqueue function returns -ESHUTDOWN or -ENOMEM then
    we return 0 instead of an error. This leads to a timeout and
    then to a dequeue request of an not enqueued urb.
    
    Signed-off-by: Sebastian Siewior <sebastian@breakpoint.cc>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 937ef73d5075997a8d1777abf217a48bef2ce029
Author: David Brownell <dbrownell@users.sourceforge.net>
Date:   Mon Jul 7 12:16:08 2008 -0700

    USB: serial gadget: rx path data loss fixes
    
    Update RX path handling in new serial gadget code to cope better with
    RX blockage:  queue every RX packet until its contents can safely be
    passed up to the ldisc.  Most of the RX path work is now done in the
    RX tasklet, instead of just the final "push to ldisc" step.  This
    addresses some cases of data loss:
    
      - A longstanding serial gadget bug: when tty_insert_flip_string()
        didn't copy the entire buffer, the rest of the characters were
        dropped!  Now that packet stays queued until the rest of its data
        is pushed to the ldisc.
    
      - Another longstanding issue:  in the unlikely case that an RX
        transfer returns data and also reports a fault, that data is
        no longer discarded.
    
      - In the recently added RX throttling logic:  it needs to stop
        pushing data into the TTY layer, instead of just not submitting
        new USB read requests.  When the TTY is throttled long enough,
        backpressure will eventually make the OUT endpoint NAK.
    
    Also: an #ifdef is removed (no longer necessary); and start switching
    to a better convention for debug messages (prefix them with tty name).
    
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit e8b24450a635bbbd3a2b4c2649eef060c742ebc0
Author: Dmitry Baryshkov <dbaryshkov@gmail.com>
Date:   Sun Jul 6 14:26:30 2008 +0400

    USB: Hook start_hnp into ohci struct
    
    Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 1133cd8adf34709e1857d1491e9fae5597b51ad5
Author: Dmitry Baryshkov <dbaryshkov@gmail.com>
Date:   Sun Jul 6 23:35:01 2008 +0400

    USB: ohci: make distrust_firmware a quirk
    
    Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Cc: Alan Stern <stern@rowland.harvard.edu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit f0fa74634c0c686618b5318748bde233772a1a8d
Author: Oliver Neukum <oliver@neukum.org>
Date:   Fri Jul 4 10:10:53 2008 +0200

    USB: update to Documentation
    
    this mentions a new deadlock due to advanced power management.
    
    Signed-off-by: Oliver Neukum <oneukum@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 230ffc75b7b842db5710d30d3a2fc61f9d6f50df
Author: Simon Arlott <simon@fire.lp0.eu>
Date:   Sat Jul 12 22:19:48 2008 +0100

    USB: cxacru: Fix printk format flag in error message
    
    "#%x" should have been "%#x"
    
    Signed-off-by: Simon Arlott <simon@fire.lp0.eu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 51cdc1c103dcb7cf1ca280843308a2e32847f9ce
Author: Jost Diederichs <jost@qdusa.com>
Date:   Sat Jul 12 22:37:05 2008 -0700

    USB: usb-storage Motorola Phone Razr v3xx US_FL_FIX_CAPACITY patch
    
    add razr v3xx US_FL_FIX_CAPACITY flag to unusual_devs.h in usb-storage
    
    This is another Motorola phone that incorrectly reports the sector count
    (off by one).
    
    Problem Description: io errors when mounting phone's sd-card via the
    phones usb port
    
    Steps to reproduce: mount Motorola Razr v3xx phones sd-card on Linux Desktop
    via usb cable. Phones USB port must be in memory card mode.
    
    DEBUG output:
    Jul 9 19:32:41 micky kernel: Buffer I/O error on device sdd, logical block 3970048
    Jul 9 19:32:41 micky kernel: sd 11:0:0:0: [sdd] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE,SUGGEST_OK
    Jul 9 19:32:41 micky kernel: sd 11:0:0:0: [sdd] Sense Key : Medium Error [current]
    Jul 9 19:32:41 micky kernel: sd 11:0:0:0: [sdd] Add. Sense: No additional sense information
    Jul 9 19:32:41 micky kernel: end_request: I/O error, dev sdd, sector 3970048
    
    
    From: Jost Diederichs <jost@qdusa.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 32fe5e393455d87db4988af03915634304870fb4
Author: Kevin Lloyd <klloyd@sierrawireless.com>
Date:   Thu Jul 10 14:14:57 2008 -0700

    USB Storage Sierra: TRU-Install feature update
    
    This patch upgrades the support for the Sierra Wireless TRU-Install
    feature (i.e. zeroCD) to allow for future support of Linux enabled
    TRU-Install devices.
    
    By default all devices that do not have a Linux enabled TRU-Install
    device (i.e. the device does not have a Linux package on the virtual CD
    partition) will be switched into "modem mode." Devices that do contain a
    Linux package in the TRU-Install virtual CD will be allowed to enumerate
    as a CD-Rom so that either (a) a user can install the packaged software
    or (b) a user-space application (e.g. udev) can switch it to modem mode.
    
    This patch does allow for manual override by adding a usb-storage module
    parameter 'swi_tru_install' which can force the modem into either mode
    regardless of what packages it contains.
    
    Signed-off-by: Kevin Lloyd <klloyd@sierrawireless.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 0585e4dfe5670d3ccb77bf86551a657699e9e52e
Author: Kevin Lloyd <klloyd@sierrawireless.com>
Date:   Thu Jul 10 14:14:54 2008 -0700

    USB Serial Sierra: TRU-Install feature update
    
    Moves responsbility of TRU-Install (i.e. ZeroCD) to the usb-storage
    driver. See patch 04/04 of this set.
    
    Signed-off-by: Kevin Lloyd <klloyd@sierrawireless.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit e3173b22eb7b50a23af60e12bab7a29d4b24f284
Author: Kevin Lloyd <klloyd@sierrawireless.com>
Date:   Thu Jul 10 14:14:51 2008 -0700

    USB Serial Sierra: Dynamic interface detection
    
    This patch changes the method by which the number of ports per interface is
    assigned so that it is more dynamic and calculated on the fly (as opposed to
    hard coding it). This will allow for faster and easier addition of products.
    
    Signed-off-by: Kevin Lloyd <klloyd@sierrawireless.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 4e0fee82619937acb13806ffc901d3920b947286
Author: Kevin Lloyd <klloyd@sierrawireless.com>
Date:   Thu Jul 10 14:14:47 2008 -0700

    USB Serial Sierra: clean-up
    
    Very minor changes to clean up sierra code. Adds a prefix to debug messages so
    that Sierra messages are easily recognized. Removes extraneous code.
    
    This targets kernel 2.6.26-rc9
    
    Signed-off-by: Kevin Lloyd <klloyd@sierrawireless.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 8c809681ba0289afd0ed7bbb63679a0568dd441d
Author: Tollef Fog Heen <tfheen@err.no>
Date:   Tue Jul 22 09:28:05 2008 +0200

    USB: pl2023: Remove USB id (4348:5523) handled by ch341
    
    USB ID 4348:5523 is handled by the ch341 driver.  Remove it from the
    pl2023 driver.
    
    Reverts 002e8f2c80c6be76bb312940bc278fc10b2b2487.
    
    Signed-off-by: Tollef Fog Heen <tfheen@err.no>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 368ee6469c327364ea10082a348f91c1f5ba47f7
Author: Alan Stern <stern@rowland.harvard.edu>
Date:   Mon Jul 21 10:08:28 2008 -0400

    usb-storage: unusual_devs entries for iRiver T10 and Datafab CF+SM reader
    
    This patch (as1115) adds unusual_devs entries with the IGNORE_RESIDE
    flag for the iRiver T10 and the Simple Tech/Datafab CF+SM card
    reader.  Apparently these devices provide reasonable residue values
    for READ and WRITE operations, but not for others like INQUIRY or READ
    CAPACITY.
    
    This fixes the iRiver T10 problem reported in Bugzilla #11125.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 3bea302d6aa61f2371a63e9ad81eaa373fd66441
Author: Simon Arlott <simon@fire.lp0.eu>
Date:   Mon Jul 21 20:44:50 2008 +0100

    USB: Move usb/mon/ up to misc options in Kconfig
    
    This makes "USB Monitor" appear under "Miscellaneous USB options"
    section instead of in the middle of device specific drivers in the
    "USB Imaging devices" section.
    
    Signed-off-by: Simon Arlott <simon@fire.lp0.eu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 59f4ff2ecff4cef36378928cec891785b402e80c
Author: Alan Stern <stern@rowland.harvard.edu>
Date:   Tue Jul 29 11:58:06 2008 -0400

    usb-storage: automatically recognize bad residues
    
    This patch (as1119) will help to reduce the clutter of usb-storage's
    unusual_devs file by automatically detecting some devices that need
    the IGNORE_RESIDUE flag.  The idea is that devices should never return
    a non-zero residue for an INQUIRY or a READ CAPACITY command unless
    they failed to transfer all the requested data.  So if one of these
    commands transfers a standard amount of data but there is a positive
    residue, we know that the residue is bogus and we can set the flag.
    
    This fixes the problems reported in Bugzilla #11125.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 1a21175a615ed346e8043f5e9d60a672266b84b4
Author: Alan Stern <stern@rowland.harvard.edu>
Date:   Wed Jul 30 11:31:50 2008 -0400

    USB: fix interface unregistration logic
    
    This patch (as1122) fixes a bug: When an interface is unregistered,
    its children (sysfs files and endpoint devices) are unregistered after
    it instead of before.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Tested-by: Kay Sievers <kay.sievers@vrfy.org>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 0282b7f2a874e72c18fcd5a112ccf67f71ba7f5c
Author: Alan Stern <stern@rowland.harvard.edu>
Date:   Tue Jul 29 12:01:04 2008 -0400

    usb-serial: don't release unregistered minors
    
    This patch (as1121) fixes a bug in the USB serial core.  When a device
    is unregistered, the core will give back its minors -- even if the
    device hasn't been assigned any!
    
    The patch reserves the highest minor value (255) to mean that no minor
    was assigned.  It also removes some dead code and does a small style
    fixup.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit e67d70f2f55d90c79dcb384ad5b798f0f9a68085
Author: Felipe Balbi <felipe.balbi@nokia.com>
Date:   Thu Jul 17 17:26:49 2008 +0300

    usb: gadget: protect gadget_chips.h from been included twice
    
    Without it, we might have trouble when trying to write
    some composite gadget drivers.
    
    Cc: David Brownell <dbrownell@users.sourceforge.net>
    Cc: Greg KH <greg@kroah.com>
    Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit b9a097f26e55968cbc52e30a4a2e73d32d7604ce
Author: Dave Jones <davej@redhat.com>
Date:   Mon Jul 14 13:28:34 2008 -0400

    USB: usb-storage: quirk around v1.11 firmware on Nikon D4
    
    usb-storage: quirk around v1.11 firmware on Nikon D40
    
    https://bugzilla.redhat.com/show_bug.cgi?id=454028
    Just as in earlier firmware versions, we need to perform this
    quirk for the latest version too.
    
    Speculatively do the entry for the D80 too, as they seem to
    have the same firmware problems historically.
    
    Signed-off-by: Dave Jones <davej@redhat.com>
    Cc: Johannes Berg <johannes@sipsolutions.net>
    Cc: Alan Stern <stern@rowland.harvard.edu>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 38b375d9610e2467cb793a84d17c6f65e44cdb39
Author: Alan Stern <stern@rowland.harvard.edu>
Date:   Mon Jul 21 09:56:26 2008 -0400

    USB: OHCI: fix system hang caused by earlier patch
    
    This patch (as1114) fixes a problem that was revealed by an earlier
    patch (as1069b).  Some broken controllers seem never to turn off their
    RHCS interrupt status bit, even when told to do so.  As a result they
    generate an interrupt storm and hang the system.
    
    The patch avoids enabling RHSC interrupt requests when the RHCS status
    bit is already set.  This should have no adverse affects on normal
    controllers, since they won't set the status bit until a root-hub
    status change actually occurs, in which case we wouldn't enable RHSC
    interrupt requests anyway -- we would wait until the status change had
    been processed and cleared.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Tested by: Andrey Borzenkov <arvidjaar@mail.ru>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit fa41019c7aa172fde075849834409d23eb49f582
Author: Alexander Beregalov <a.beregalov@gmail.com>
Date:   Tue Jul 29 05:54:31 2008 +0400

    usb/core/driver: fix warning
    
    usb/core/driver: fix warning:
    drivers/usb/core/driver.c:834: warning: 'do_unbind_rebind' defined but not used
    
    Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
    Acked-by: Alan Stern <stern@rowland.harvard.edu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit f4f4d58734916e816d4b4a7cf61b3fc22ce02683
Author: Alan Stern <stern@rowland.harvard.edu>
Date:   Mon Jul 28 10:39:28 2008 -0400

    USB: add missing kerneldoc line for "needs_binding"
    
    This patch (as1117) adds a kerneldoc line for the "needs_binding"
    field in struct usb_interface.  It was accidentally omitted when the
    field was added.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit a00c3cadc2bf50b3c925acdb3d0e5789b1650498
Author: Frederik Kriewitz <frederik@kriewitz.eu>
Date:   Wed Jul 30 16:53:41 2008 +0200

    USB: ftdi_sio: add support for Luminance Stellaris Evaluation/Development Kits
    
    The Patch adds support for Luminance Stellaris Evaluation/Development
    Kits (FTDI 2232C based).
    The PIDs were missing.
    
    Successfully tested with a Stellaris LM3S8962 Evaluation kit.
    
    Signed-off-by: Frederik Kriewitz <frederik@kriewitz.eu>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit b5894a500127fce1db1309db5f9ca8b77a2ac266
Author: André Schenk <andre@melior.s.bawue.de>
Date:   Mon Jul 28 15:48:46 2008 +0200

    USB: ftdi_sio: Add USB Product Id for ELV HS485
    
    USB product id registration for the ELV HS485 USB adapter (www.elv.de) to
    their home automation bus system. Applies to 2.6.26.
    
    Signed-off-by: Andre Schenk <andre@melior.s.bawue.de>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit c728df70ab0dd59b8ccdc3c611ea88925e6697db
Author: David Brownell <dbrownell@users.sourceforge.net>
Date:   Sat Jul 26 08:06:24 2008 -0700

    USB: fix USB boot crash, ecm_do_notify(), list_add corruption. prev->next should be next (ffff88003b8f82f8)
    
    This fixes a BUG() turned up by Ingo via randconfig testing, where
    CONFIG_LIST_DEBUG turned up list corruption.  The corruption was
    caused by the dummy_hcd (single-machine test harness for gadget and
    HCD code) trashing the request queue when driven by the new CDC
    composite gadget an I/O pattern that was previously uncommon.
    Fix suggested by Alan Stern.
    
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Tested-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 88d987d6db2a14b191f4eb21cc623dae31e28e9d
Author: Wolfgang Mües <wolfgang@iksw-muees.de>
Date:   Tue Jul 29 11:54:43 2008 +0200

    usb: auerswald: remove driver (obsolete)
    
    This patch removes the auerswald USB driver from the linux kernel
    2.6.26.
    
    This driver was included into the kernel mainly to connect to the ISDN
    framework. This was done in linux 2.4.x. For 2.6.x, due to the fragile
    and moving ISDN support, this connection was never realized, and the
    only use of this driver was for device configuration. In the age of DSL,
    the demand of ISDN support is getting very low.
    
    Meanwhile, with the advent of libusb, an userspace driver was done for
    the device configuration which works fine for linux and mac. (Thanks to
    the libusb developers!). The userspace driver is downloadable from the
    auerswald web site.
    
    So this driver is obsolete now and has to be removed. Many thanks to all
    developers which helped me to bring this driver up and working.
    
    Signed-off-by: Wolfgang Muees <wolfgang@iksw-muees.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 6f63e781eaf6a741fc65f773017154b20ed4ce3b
Author: David S. Miller <davem@davemloft.net>
Date:   Wed Aug 13 17:17:52 2008 -0700

    sparc64: Handle stack trace attempts before irqstacks are setup.
    
    Things like lockdep can try to do stack backtraces before
    the irqstack blocks have been setup.  So don't try to match
    their ranges so early on.
    
    Also, remove unused variable in save_stack_trace().
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 9e2b2dc4133f65272a6d3c5dcb2ce63f8a87cae9
Author: David Howells <dhowells@redhat.com>
Date:   Wed Aug 13 16:20:04 2008 +0100

    CRED: Introduce credential access wrappers
    
    The patches that are intended to introduce copy-on-write credentials for 2.6.28
    require abstraction of access to some fields of the task structure,
    particularly for the case of one task accessing another's credentials where RCU
    will have to be observed.
    
    Introduced here are trivial no-op versions of the desired accessors for current
    and other tasks so that other subsystems can start to be converted over more
    easily.
    
    Wrappers are introduced into a new header (linux/cred.h) for UID/GID,
    EUID/EGID, SUID/SGID, FSUID/FSGID, cap_effective and current's subscribed
    user_struct.  These wrappers are macros because the ordering between header
    files mitigates against making them inline functions.
    
    linux/cred.h is #included from linux/sched.h.
    
    Further, XFS is modified such that it no longer defines and uses parameterised
    versions of current_fs[ug]id(), thus getting rid of the namespace collision
    otherwise incurred.
    
    Signed-off-by: David Howells <dhowells@redhat.com>
    Signed-off-by: James Morris <jmorris@namei.org>

commit 877acedc0d3ea07f7b36573ed2f1f479c2c1eefd
Author: Daniel Lezcano <dlezcano@fr.ibm.com>
Date:   Wed Aug 13 16:15:57 2008 -0700

    netns: Fix crash by making igmp per namespace
    
    This patch makes the multicast socket to be per namespace.
    
    When a network namespace is created, other than the init_net and a
    multicast packet is received, the kernel goes to a hang or a kernel panic.
    
    How to reproduce ?
    
     * create a child network namespace
     * create a pair virtual device veth
        * ip link add type veth
     * move one side to the pair network device to the child namespace
        * ip link set netns <childpid> dev veth1
     * ping -I veth0 224.0.0.1
    
    The bug appears because the function ip_mc_init_dev does not initialize
    the different multicast fields as it exits because it is not the init_net.
    
    BUG: soft lockup - CPU#0 stuck for 61s! [avahi-daemon:2695]
    Modules linked in:
    irq event stamp: 50350
    hardirqs last  enabled at (50349): [<c03ee949>] _spin_unlock_irqrestore+0x34/0x39
    hardirqs last disabled at (50350): [<c03ec639>] schedule+0x9f/0x5ff
    softirqs last  enabled at (45712): [<c0374d4b>] ip_setsockopt+0x8e7/0x909
    softirqs last disabled at (45710): [<c03ee682>] _spin_lock_bh+0x8/0x27
    
    Pid: 2695, comm: avahi-daemon Not tainted (2.6.27-rc2-00029-g0872073 #3)
    EIP: 0060:[<c03ee47c>] EFLAGS: 00000297 CPU: 0
    EIP is at __read_lock_failed+0x8/0x10
    EAX: c4f38810 EBX: c4f38810 ECX: 00000000 EDX: c04cc22e
    ESI: fb0000e0 EDI: 00000011 EBP: 0f02000a ESP: c4e3faa0
     DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
    CR0: 8005003b CR2: 44618a40 CR3: 04e37000 CR4: 000006d0
    DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
    DR6: ffff0ff0 DR7: 00000400
     [<c02311f8>] ? _raw_read_lock+0x23/0x25
     [<c0390666>] ? ip_check_mc+0x1c/0x83
     [<c036d478>] ? ip_route_input+0x229/0xe92
     [<c022e2e4>] ? trace_hardirqs_on_thunk+0xc/0x10
     [<c0104c9c>] ? do_IRQ+0x69/0x7d
     [<c0102e64>] ? restore_nocheck_notrace+0x0/0xe
     [<c036fdba>] ? ip_rcv+0x227/0x505
     [<c0358764>] ? netif_receive_skb+0xfe/0x2b3
     [<c03588d2>] ? netif_receive_skb+0x26c/0x2b3
     [<c035af31>] ? process_backlog+0x73/0xbd
     [<c035a8cd>] ? net_rx_action+0xc1/0x1ae
     [<c01218a8>] ? __do_softirq+0x7b/0xef
     [<c0121953>] ? do_softirq+0x37/0x4d
     [<c035b50d>] ? dev_queue_xmit+0x3d4/0x40b
     [<c0122037>] ? local_bh_enable+0x96/0xab
     [<c035b50d>] ? dev_queue_xmit+0x3d4/0x40b
     [<c012181e>] ? _local_bh_enable+0x79/0x88
     [<c035fcb8>] ? neigh_resolve_output+0x20f/0x239
     [<c0373118>] ? ip_finish_output+0x1df/0x209
     [<c0373364>] ? ip_dev_loopback_xmit+0x62/0x66
     [<c0371db5>] ? ip_local_out+0x15/0x17
     [<c0372013>] ? ip_push_pending_frames+0x25c/0x2bb
     [<c03891b8>] ? udp_push_pending_frames+0x2bb/0x30e
     [<c038a189>] ? udp_sendmsg+0x413/0x51d
     [<c038a1a9>] ? udp_sendmsg+0x433/0x51d
     [<c038f927>] ? inet_sendmsg+0x35/0x3f
     [<c034f092>] ? sock_sendmsg+0xb8/0xd1
     [<c012d554>] ? autoremove_wake_function+0x0/0x2b
     [<c022e6de>] ? copy_from_user+0x32/0x5e
     [<c022e6de>] ? copy_from_user+0x32/0x5e
     [<c034f238>] ? sys_sendmsg+0x18d/0x1f0
     [<c0175e90>] ? pipe_write+0x3cb/0x3d7
     [<c0170347>] ? do_sync_write+0xbe/0x105
     [<c012d554>] ? autoremove_wake_function+0x0/0x2b
     [<c03503b2>] ? sys_socketcall+0x176/0x1b0
     [<c01085ea>] ? syscall_trace_enter+0x6c/0x7b
     [<c0102e1a>] ? syscall_call+0x7/0xb
    
    Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 1bb5bd2c713cdf19794996fafd7b48da4c4b0113
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:59:45 2008 -0700

    bnx2x: Version update
    
    Version update
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 6378c0253175e400525ac0efac9dd29f4e573cbf
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:59:25 2008 -0700

    bnx2x: Checkpatch compliance
    
    Checkpatch compliance
    The latest version of checkpatch found the following style errors in the
    code
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 3347162995d23bc13f6f99c02ae89814babcaec2
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:59:08 2008 -0700

    bnx2x: Spelling mistakes
    
    Spelling mistakes
    Spelling has to L's in it...
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 3196a88a8593748bad24824ef5eb8e5aa99698c9
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:58:49 2008 -0700

    bnx2x: Minor code improvements
    
    Minor code improvements
    Small changes to make the code a little bit more efficient and mostly
    more readable:
    - Using unified macros for EMAC_RD/WR which looks like normal REG_RD/WR
    - Removing the NIG_WR since it did nothing and was only confusing
    - On bnx2x_panic_dump, print only the used parts of the rings
    - define parameters only on the branch they are needed and not at the
      beginning of the function
    - using NETIF_MSG_INTR and not private BNX2X_MSG_SP for debug prints
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit f0e53a847a4435f3226f5e385503f792f5f99ce2
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:58:30 2008 -0700

    bnx2x: Driver info
    
    Driver info
    The internal FW which is downloaded by the driver should not be
    displayed - it is only causing confusion and it is redundant since it
    can be concluded from the driver version. Display only FW which is
    burned on the board nvram
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 345b5d52b93113d3ce82f97c2a783319fbf0fdfd
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:58:12 2008 -0700

    bnx2x: 1G LED does not turn off
    
    1G LED does not turn off
    The 1G LED was not switched to off when the link was lost
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 6bbca910e621d82b3ca93a99af9b59eb1ff3cbcd
Author: Yaniv Rosner <yanivr@broadcom.com>
Date:   Wed Aug 13 15:57:28 2008 -0700

    bnx2x: 8073 PHY changes
    
    8073 PHY changes
    The initial support we had for this PHY needs some serious changing. The
    major change is that this PHY should be initialized only when the first
    function is loaded and not for each function. The official SPI-ROM of
    this PHY was released and it requires some changes in the initialization
    code as well
    
    Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 17de50b7f71d176375e9d4d67ffce42482e5515f
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:56:59 2008 -0700

    bnx2x: Change GPIO for any port
    
    Change GPIO for any port
    The set GPIO function should receive the port index to allow changing
    the GPIO of another port. This is needed for the common init phase (one
    the first driver is loaded for the chip)
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 8c99e7b0436473593a68e740d1032909bc5335a1
Author: Yaniv Rosner <yanivr@broadcom.com>
Date:   Wed Aug 13 15:56:17 2008 -0700

    bnx2x: Pause settings
    
    Pause settings
    - 1G pause was not working due to missing write to the emac block
      (TX_MODE_FLOW_EN)
    - The flow control should use the negotiated result (after autoneg) so
      we should save both the requested autoneg and the result
    - The HW credits with flow control at 1G speed were not optimized and
      caused low throughput
    - It is recommended to turn off flow control if the MTU is bigger than
      5000B due to internal buffers size
    
    Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 57963ed94c27e94a7533434da5943195ea072a35
Author: Yaniv Rosner <yanivr@broadcom.com>
Date:   Wed Aug 13 15:55:28 2008 -0700

    bnx2x: Link order with external PHY
    
    Link order with external PHY
    When external PHY exists (second chip with the PHY to translate to
    another physical medium) the link with the eternal PHY and the network
    should be established before setting the link between the 5771x and the
    PHY. This is the right order and it is important when using autoneg -
    the link to the network should use the autoneg and the link between the
    two chips should be forced to the network result.
    
    Signed-off-by: Yaniv Rosner <yanivr@broadcom.com>
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit df0f23439a69eb5ca30668612f1c4e20041b5341
Author: Vladislav Zolotarov <vladz@broadcom.com>
Date:   Wed Aug 13 15:53:38 2008 -0700

    bnx2x: No LRO without Rx checksum
    
    No LRO without Rx checksum
    Disabling LRO when Rx checksum is disabled
    
    Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 353029896a5ed6cf42f4ce45729851b23c94d874
Author: Yitchak Gertner <gertner@broadcom.com>
Date:   Wed Aug 13 15:53:12 2008 -0700

    bnx2x: Wrong structure size
    
    Wrong structure size
    The wrong structure was used in the sizeof to clear (luckily both
    structures have the same size in this version...)
    
    Signed-off-by: Yitchak Gertner <gertner@broadcom.com>
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 72ce58c328d7131d96280135f8be858603522911
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:52:46 2008 -0700

    bnx2x: WoL capability
    
    WoL capability
    All designs reported WoL capability regardless of HW limitations - check
    if this device is actually capable of WoL
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 3101c2bc9043c1499158837648a29dd79ee2f5e7
Author: Yitchak Gertner <gertner@broadcom.com>
Date:   Wed Aug 13 15:52:28 2008 -0700

    bnx2x: Clearing MAC addresses filters
    
    Clearing MAC addresses filters
    When the driver unloads, it should clear the MAC addresses filters in
    the HW - this prevents packets from entering the chip when the driver is
    re-loaded before initializing the right filters
    
    Signed-off-by: Yitchak Gertner <gertner@broadcom.com>
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 12469401bc5aebb1c1482db1253c986cf8221281
Author: Yitchak Gertner <gertner@broadcom.com>
Date:   Wed Aug 13 15:52:08 2008 -0700

    bnx2x: Delay in while loops
    
    Delay in while loops
    The delay in the loop should be after the change. This has very little
    effect (can save one delay) but it is the right thing to do
    
    Signed-off-by: Yitchak Gertner <gertner@broadcom.com>
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 5c862848172846a7aa88d0a564eb8998ecac2f0d
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:51:48 2008 -0700

    bnx2x: PBA Table Page Alignment Workaround
    
    PBA Table Page Alignment Workaround
    The PBA table starts on the middle of the page and that's causing very
    low performance with virtualization. The solution is not to update via
    the BAR directly but via chip access to the same memory
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 9dabc4242f7e51d98a71af7ee11a36e637897f9e
Author: Yitchak Gertner <gertner@broadcom.com>
Date:   Wed Aug 13 15:51:28 2008 -0700

    bnx2x: Self-test false positive
    
    Self-test false positive
    - The memory test should use a mask according to the chip type
    - In the register test, check the port only once and not inside the for
      loop (not causing a failure - just ugly)
    
    Signed-off-by: Yitchak Gertner <gertner@broadcom.com>
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 326262307bad2391a6393bb1968ed9a9a16fc617
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:51:07 2008 -0700

    bnx2x: Memory allocation
    
    Memory allocation
    - The CQE ring was allocated to the max size even for a chip that does
      not support it. Fixed to allocate according to the chip type to save
      memory
    - The rx_page_ring was not freed on driver unload
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 3fcaf2e566b9cf8ccd16bcda3440717236de163d
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:50:45 2008 -0700

    bnx2x: HW attention lock
    
    HW attention lock
    Making sure that only one function will handle the HW attention. This
    makes the device parameter aeu_mask redundant so it is removed
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 4a37fb660c5505e0ee7ae16d80a06e85affe3055
Author: Yitchak Gertner <gertner@broadcom.com>
Date:   Wed Aug 13 15:50:23 2008 -0700

    bnx2x: HW lock mechanism
    
    HW lock mechanism
    Enhancing the HW lock to work per function and not only per port - this
    is needed for the next patch that protects races over HW attention
    detection between the different functions. At this chance, changing the
    functions names to be more inline with the current naming convention
    
    Signed-off-by: Yitchak Gertner <gertner@broadcom.com>
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit da5a662a2326931bef25f0e534c9c1702f862399
Author: Vladislav Zolotarov <vladz@broadcom.com>
Date:   Wed Aug 13 15:50:00 2008 -0700

    bnx2x: Load/Unload under traffic
    
    Load/Unload under traffic
    Few issues were found when loading and unloading under traffic:
    - When receiving Tx interrupt call netif_wake_queue if the queue is
      stopped but the state is open
    - Check that interrupts are enabled before doing anything else on the
      msix_fp_int function
    - In nic_load, enable the interrupts only when needed and ready for it
    - Function stop_leading returns status since it can fail
    - Add 1ms delay when unloading the driver to validate that there are no
      open transactions that already started by the FW
    - Splitting the "has work" function into Tx and Rx so the same function
      will be used on unload and interrupts
    - Do not request for WoL if only resetting the device (save the time
      that it takes the FW to set the link after reset)
    - Fixing the device reset after iSCSI boot and before driver load - all
      internal buffers must be cleared before the driver is loaded
    
    Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 471de716b782fb55ae0fdc040cf2722caffeeb94
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:49:35 2008 -0700

    bnx2x: FW Internal Memory structure
    
    FW Internal Memory structure
    The FW uses data structures on the chip internal memory to aggregate the
    connections when TPA is enabled. The driver was clearing the wrong offsets
    and therefore one function could cause another function to loose packets.
    Changing the initialization of the chip internal memory to clear only the
    relevant memory for each function which is being loaded
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 66e855f3f5197fec1162c5235fdb5f92b956d618
Author: Yitchak Gertner <gertner@broadcom.com>
Date:   Wed Aug 13 15:49:05 2008 -0700

    bnx2x: Statistics
    
    Statistics
    - Making sure that each drop is accounted for in the driver statistics
    - Clearing the FW statistics when driver is loaded to prevent
      inconsistency with HW statistics
    - Once error is detected (bnx2x_panic_dump), stop the statistics
      before other actions (currently it is stopped last and can corrupt
      the data) - Adding HW checksum error counter to the statistics
    - Removing unused variable stats_ticks
    - Using macros instead of magic numbers to indicate which statistics are
      shared per port and which are per function
    
    Signed-off-by: Yitchak Gertner <gertner@broadcom.com>
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 1adcd8bee37f494e22aee856467e994ae086ae45
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:48:29 2008 -0700

    bnx2x: Not dropping packets with L3/L4 checksum error
    
    Not dropping packets with L3/L4 checksum error
    Those packets should be passed to the OS. The problem is clear in
    forwarding mode.
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 19680c4850c1e5c2b4371388637c7ce86b8570b6
Author: Eilon Greenstein <eilong@broadcom.com>
Date:   Wed Aug 13 15:47:33 2008 -0700

    bnx2x: FW (bootcode) interface fixes
    
    FW (bootcode) interface fixes
    - Making sure that the device will not cause kernel panic of the
      bootcode is corrupted or missing
    - Removing module debug parameter "nomcp" since no one should work
      without the bootcode (this is a left over from the chip bring up days)
    - Instead of waiting fix amount of time for bootcode response, sample it
      every 10ms (usually the answer is ready after less than 10ms)
    
    Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 8d0968abd03ec6b407df117adc773562386702fa
Merge: 9ea319b... e491401...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Aug 13 15:24:35 2008 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
      crypto: padlock - fix VIA PadLock instruction usage with irq_ts_save/restore()
      crypto: hash - Add missing top-level functions
      crypto: hash - Fix digest size check for digest type
      crypto: tcrypt - Fix AEAD chunk testing
      crypto: talitos - Add handling for SEC 3.x treatment of link table

commit d4766692e72422f3b0f0e9ac6773d92baad07d51
Author: Jarek Poplawski <jarkao2@gmail.com>
Date:   Wed Aug 13 15:20:24 2008 -0700

    pkt_sched: Protect gen estimators under est_lock.
    
    gen_kill_estimator() required rtnl_lock() protection, but since it is
    moved to an RCU callback __qdisc_destroy() let's use est_lock instead.
    
    Signed-off-by: Jarek Poplawski <jarkao2@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit b9a3b1102bc80b4044224494100f67de132d5448
Author: David S. Miller <davem@davemloft.net>
Date:   Wed Aug 13 15:18:38 2008 -0700

    pkt_sched: Fix queue quiescence testing in dev_deactivate().
    
    Based upon discussions with Jarek P. and Herbert Xu.
    
    First, we're testing the wrong qdisc.  We just reset the device
    queue qdiscs to &noop_qdisc and checking it's state is completely
    pointless here.
    
    We want to wait until the previous qdisc that was sitting at
    the ->qdisc pointer is not busy any more.  And that would be
    ->qdisc_sleeping.
    
    Because of how we propagate the samples qdisc pointer down into
    qdisc_run and friends via per-cpu ->output_queue and netif_schedule,
    we have to wait also for the __QDISC_STATE_SCHED bit to clear as
    well.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 9ea319b61613085f501a79cf8d405cb221d084f3
Merge: 3e11acd... c6a7b0f...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Aug 13 15:17:49 2008 -0700

    Merge git://oss.sgi.com:8090/xfs/linux-2.6
    
    * git://oss.sgi.com:8090/xfs/linux-2.6: (45 commits)
      [XFS] Fix use after free in xfs_log_done().
      [XFS] Make xfs_bmap_*_count_leaves void.
      [XFS] Use KM_NOFS for debug trace buffers
      [XFS] use KM_MAYFAIL in xfs_mountfs
      [XFS] refactor xfs_mount_free
      [XFS] don't call xfs_freesb from xfs_unmountfs
      [XFS] xfs_unmountfs should return void
      [XFS] cleanup xfs_mountfs
      [XFS] move root inode IRELE into xfs_unmountfs
      [XFS] stop using file_update_time
      [XFS] optimize xfs_ichgtime
      [XFS] update timestamp in xfs_ialloc manually
      [XFS] remove the sema_t from XFS.
      [XFS] replace dquot flush semaphore with a completion
      [XFS] replace inode flush semaphore with a completion
      [XFS] extend completions to provide XFS object flush requirements
      [XFS] replace the XFS buf iodone semaphore with a completion
      [XFS] clean up stale references to semaphores
      [XFS] use get_unaligned_* helpers
      [XFS] Fix compile failure in xfs_buf_trace()
      ...

commit 26b284de54a5ca3dfbe2fd9a51ac1923e80085a2
Author: Jarek Poplawski <jarkao2@gmail.com>
Date:   Wed Aug 13 15:16:43 2008 -0700

    pkt_sched: Fix oops in htb_delete.
    
    Recent changes introduced a bug in htb_delete(): cl->parent->children
    counter update misses checking cl->parent for NULL, which is used for
    root classes, so deleting them causes an oops.
    
    Signed-off-by: Jarek Poplawski <jarkao2@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 3e11acd4306d558249c31cf6cac09f218f2de52e
Merge: 758db3f... 5140934...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Aug 13 15:16:10 2008 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:
      dlm: rename structs
      dlm: add missing kfrees

commit 64c00d81b5c2491bd140b3c8eb2e8c351513f971
Author: Andrew Gallatin <gallatin@myri.com>
Date:   Wed Aug 13 15:16:00 2008 -0700

    pktgen: prevent pktgen from using bad tx queue
    
    With the new multi-queue transmit code, it is possible to accidentally
    make pktgen pick a non-existing tx queue simply by using a stale
    script to drive pktgen.  Access to this non-existing tx queue will
    then trigger a bad memory access and kill the machine.
    
    For example, setting "queue_map_max 2" will cause my machine to die
    when accessing a garbage spinlock in the non-existing tx queue:
    
    BUG: spinlock bad magic on CPU#0, kpktgend_0/564
      lock: ffff88001ddf6718, .magic: ffffffff, .owner: /-1, .owner_cpu: 0
    Pid: 564, comm: kpktgend_0 Not tainted 2.6.27-rc3 #35
    
    Call Trace:
      [<ffffffff803a1228>] spin_bug+0xa4/0xac
      [<ffffffff803a1253>] _raw_spin_lock+0x23/0x123
      [<ffffffff8055b06f>] _spin_lock_bh+0x17/0x1b
      [<ffffffff804cb57d>] pktgen_thread_worker+0xa97/0x1002
      [<ffffffff8022874d>] ? finish_task_switch+0x38/0x97
      [<ffffffff80242077>] ? autoremove_wake_function+0x0/0x36
      [<ffffffff80242077>] ? autoremove_wake_function+0x0/0x36
      [<ffffffff804caae6>] ? pktgen_thread_worker+0x0/0x1002
      [<ffffffff80241a40>] kthread+0x44/0x6d
      [<ffffffff8020c399>] child_rip+0xa/0x11
      [<ffffffff802419fc>] ? kthread+0x0/0x6d
      [<ffffffff8020c38f>] ? child_rip+0x0/0x11
    
    The attached patch adds some sanity checking to prevent
    these sorts of configuration errors.
    
    Signed-off-by: Andrew Gallatin <gallatin@myri.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 758db3f2118703a1e36374dae5d58bed963e7e0d
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Aug 13 14:26:22 2008 -0700

    [h8300] move include/asm-h8300 to arch/h8300/include/asm
    
    Done as a script (well, a single "git mv" actually) on request from
    Yoshinori Sato as a way to avoid a huge diff.
    
    Requested-by: Yoshinori Sato <ysato@users.sourceforge.jp>
    Cc: Sam Ravnborg <sam@ravnborg.org>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 3e8a0a559c66ee9e7468195691a56fefc3589740
Author: Arnaldo Carvalho de Melo <acme@redhat.com>
Date:   Wed Aug 13 13:48:39 2008 -0700

    dccp: change L/R must have at least one byte in the dccpsf_val field
    
    Thanks to Eugene Teo for reporting this problem.
    
    Signed-off-by: Eugene Teo <eugenete@kernel.sg>
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit c1e24df27fb1058739789126db6ad1b1ef719346
Author: Jean-Christophe DUBOIS <jcd@tribudubois.net>
Date:   Wed Aug 13 13:35:37 2008 -0700

    xfrm: remove unnecessary variable in xfrm_output_resume() 2nd try
    
    Small fix removing an unnecessary intermediate variable.
    
    Signed-off-by: Jean-Christophe DUBOIS <jcd@tribudubois.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 51409340d240dabe66adb49f645588c3a802d055
Author: David Teigland <teigland@redhat.com>
Date:   Thu Jul 31 09:31:53 2008 -0500

    dlm: rename structs
    
    Add a dlm_ prefix to the struct names in config.c.  This resolves a
    conflict with struct node in particular, when include/linux/node.h
    happens to be included.
    
    Reported-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: David Teigland <teigland@redhat.com>

commit cb980d9a3ec3d39e30e0a4c473df528c09e0dcf3
Author: David Teigland <teigland@redhat.com>
Date:   Tue Jul 29 15:21:19 2008 -0500

    dlm: add missing kfrees
    
    A couple of unlikely error conditions were missing a kfree on the error
    exit path.
    
    Reported-by: Juha Leppanen <juha_motorsportcom@luukku.com>
    Signed-off-by: David Teigland <teigland@redhat.com>

commit e49140120c88eb99db1a9172d9ac224c0f2bbdd2
Author: Suresh Siddha <suresh.b.siddha@intel.com>
Date:   Wed Aug 13 22:02:26 2008 +1000

    crypto: padlock - fix VIA PadLock instruction usage with irq_ts_save/restore()
    
    Wolfgang Walter reported this oops on his via C3 using padlock for
    AES-encryption:
    
    ##################################################################
    
    BUG: unable to handle kernel NULL pointer dereference at 000001f0
    IP: [<c01028c5>] __switch_to+0x30/0x117
    *pde = 00000000
    Oops: 0002 [#1] PREEMPT
    Modules linked in:
    
    Pid: 2071, comm: sleep Not tainted (2.6.26 #11)
    EIP: 0060:[<c01028c5>] EFLAGS: 00010002 CPU: 0
    EIP is at __switch_to+0x30/0x117
    EAX: 00000000 EBX: c0493300 ECX: dc48dd00 EDX: c0493300
    ESI: dc48dd00 EDI: c0493530 EBP: c04cff8c ESP: c04cff7c
     DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068
    Process sleep (pid: 2071, ti=c04ce000 task=dc48dd00 task.ti=d2fe6000)
    Stack: dc48df30 c0493300 00000000 00000000 d2fe7f44 c03b5b43 c04cffc8 00000046
           c0131856 0000005a dc472d3c c0493300 c0493470 d983ae00 00002696 00000000
           c0239f54 00000000 c04c4000 c04cffd8 c01025fe c04f3740 00049800 c04cffe0
    Call Trace:
     [<c03b5b43>] ? schedule+0x285/0x2ff
     [<c0131856>] ? pm_qos_requirement+0x3c/0x53
     [<c0239f54>] ? acpi_processor_idle+0x0/0x434
     [<c01025fe>] ? cpu_idle+0x73/0x7f
     [<c03a4dcd>] ? rest_init+0x61/0x63
     =======================
    
    Wolfgang also found out that adding kernel_fpu_begin() and kernel_fpu_end()
    around the padlock instructions fix the oops.
    
    Suresh wrote:
    
    These padlock instructions though don't use/touch SSE registers, but it behaves
    similar to other SSE instructions. For example, it might cause DNA faults
    when cr0.ts is set. While this is a spurious DNA trap, it might cause
    oops with the recent fpu code changes.
    
    This is the code sequence  that is probably causing this problem:
    
    a) new app is getting exec'd and it is somewhere in between
       start_thread() and flush_old_exec() in the load_xyz_binary()
    
    b) At pont "a", task's fpu state (like TS_USEDFPU, used_math() etc) is
       cleared.
    
    c) Now we get an interrupt/softirq which starts using these encrypt/decrypt
       routines in the network stack. This generates a math fault (as
       cr0.ts is '1') which sets TS_USEDFPU and restores the math that is
       in the task's xstate.
    
    d) Return to exec code path, which does start_thread() which does
       free_thread_xstate() and sets xstate pointer to NULL while
       the TS_USEDFPU is still set.
    
    e) At the next context switch from the new exec'd task to another task,
       we have a scenarios where TS_USEDFPU is set but xstate pointer is null.
       This can cause an oops during unlazy_fpu() in __switch_to()
    
    Now:
    
    1) This should happen with or with out pre-emption. Viro also encountered
       similar problem with out CONFIG_PREEMPT.
    
    2) kernel_fpu_begin() and kernel_fpu_end() will fix this problem, because
       kernel_fpu_begin() will manually do a clts() and won't run in to the
       situation of setting TS_USEDFPU in step "c" above.
    
    3) This was working before the fpu changes, because its a spurious
       math fault  which doesn't corrupt any fpu/sse registers and the task's
       math state was always in an allocated state.
    
    With out the recent lazy fpu allocation changes, while we don't see oops,
    there is a possible race still present in older kernels(for example,
    while kernel is using kernel_fpu_begin() in some optimized clear/copy
    page and an interrupt/softirq happens which uses these padlock
    instructions generating DNA fault).
    
    This is the failing scenario that existed even before the lazy fpu allocation
    changes:
    
    0. CPU's TS flag is set
    
    1. kernel using FPU in some optimized copy  routine and while doing
    kernel_fpu_begin() takes an interrupt just before doing clts()
    
    2. Takes an interrupt and ipsec uses padlock instruction. And we
    take a DNA fault as TS flag is still set.
    
    3. We handle the DNA fault and set TS_USEDFPU and clear cr0.ts
    
    4. We complete the padlock routine
    
    5. Go back to step-1, which resumes clts() in kernel_fpu_begin(), finishes
    the optimized copy routine and does kernel_fpu_end(). At this point,
    we have cr0.ts again set to '1' but the task's TS_USEFPU is stilll
    set and not cleared.
    
    6. Now kernel resumes its user operation. And at the next context
    switch, kernel sees it has do a FP save as TS_USEDFPU is still set
    and then will do a unlazy_fpu() in __switch_to(). unlazy_fpu()
    will take a DNA fault, as cr0.ts is '1' and now, because we are
    in __switch_to(), math_state_restore() will get confused and will
    restore the next task's FP state and will save it in prev tasks's FP state.
    Remember, in __switch_to() we are already on the stack of the next task
    but take a DNA fault for the prev task.
    
    This causes the fpu leakage.
    
    Fix the padlock instruction usage by calling them inside the
    context of new routines irq_ts_save/restore(), which clear/restore cr0.ts
    manually in the interrupt context. This will not generate spurious DNA
    in the  context of the interrupt which will fix the oops encountered and
    the possible FPU leakage issue.
    
    Reported-and-bisected-by: Wolfgang Walter <wolfgang.walter@stwm.de>
    Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

commit 318e5313923197e71a94f7b18835151649384b7f
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date:   Tue Aug 5 13:34:30 2008 +0800

    crypto: hash - Add missing top-level functions
    
    The top-level functions init/update/final were missing for ahash.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

commit dbaaba1d0abf6871c7db6e3d15a46206bc386db1
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date:   Sun Aug 3 21:19:43 2008 +0800

    crypto: hash - Fix digest size check for digest type
    
    The changeset ca786dc738f4f583b57b1bba7a335b5e8233f4b0
    
    	crypto: hash - Fixed digest size check
    
    missed one spot for the digest type.  This patch corrects that
    error.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

commit f176e632efad33aeb2d3c5ddfa86861c0d60553c
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date:   Wed Jul 30 16:23:51 2008 +0800

    crypto: tcrypt - Fix AEAD chunk testing
    
    My changeset 4b22f0ddb6564210c9ded7ba25b2a1007733e784
    
    	crypto: tcrpyt - Remove unnecessary kmap/kunmap calls
    
    introduced a typo that broke AEAD chunk testing.  In particular,
    axbuf should really be xbuf.
    
    There is also an issue with testing the last segment when encrypting.
    The additional part produced by AEAD wasn't tested.  Similarly, on
    decryption the additional part of the AEAD input is mistaken for
    corruption.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

commit f3c85bc1bc72b4cc8d58664a490a9d42bdb6565a
Author: Lee Nipper <lee.nipper@freescale.com>
Date:   Wed Jul 30 16:26:57 2008 +0800

    crypto: talitos - Add handling for SEC 3.x treatment of link table
    
    Later SEC revision requires the link table (used for scatter/gather)
    to have an extra entry to account for the total length in descriptor [4],
    which contains cipher Input and ICV.
    This only applies to decrypt, not encrypt.
    Without this change, on 837x, a gather return/length error results
    when a decryption uses a link table to gather the fragments.
    This is observed by doing a ping with size of 1447 or larger with AES,
    or a ping with size 1455 or larger with 3des.
    
    So, add check for SEC compatible "fsl,3.0" for using extra link table entry.
    
    Signed-off-by: Lee Nipper <lee.nipper@freescale.com>
    Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

commit 36723873b664fb6b5cfe06d291df948126e43f50
Author: Jamal Hadi Salim <hadi@cyberus.ca>
Date:   Wed Aug 13 02:41:45 2008 -0700

    net-sched: fix Action flushing return code
    
    Flushing must consistently return ENOMEM on failure of any allocation
    
    Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit f97017cdefefdb6a0e19266024b0c6f9fd411eeb
Author: Jamal Hadi Salim <hadi@cyberus.ca>
Date:   Wed Aug 13 02:41:22 2008 -0700

    net-sched: Fix actions flushing
    
    Flushing of actions has been broken since we changed
    the semantics of netlink parsed tb[X] to mean X is an attribute type.
    This makes the flushing work.
    
    Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 34093d055e09d1bb549efc11c8d448373437bbe4
Author: Julien Brunel <brunel@diku.dk>
Date:   Wed Aug 13 02:40:48 2008 -0700

    net/rxrpc: Use an IS_ERR test rather than a NULL test
    
    In case of error, the function rxrpc_get_transport returns an ERR
    pointer, but never returns a NULL pointer. So after a call to this
    function, a NULL test should be replaced by an IS_ERR test.
    
    A simplified version of the semantic patch that makes this change is
    as follows:
    (http://www.emn.fr/x-info/coccinelle/)
    
    // <smpl>
    @correct_null_test@
    expression x,E;
    statement S1, S2;
    @@
    x =  rxrpc_get_transport(...)
    <... when != x = E
    if (
    (
    - x@p2 != NULL
    + ! IS_ERR ( x )
    |
    - x@p2 == NULL
    + IS_ERR( x )
    )
     )
    S1
    else S2
    ...>
    ? x = E;
    // </smpl>
    
    Signed-off-by: Julien Brunel <brunel@diku.dk>
    Signed-off-by: Julia Lawall <julia@diku.dk>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 317900cb010f4aca0e3cb14a02d0ddcc44ddafa7
Author: Jamal Hadi Salim <hadi@cyberus.ca>
Date:   Wed Aug 13 02:39:56 2008 -0700

    wext: Send name on events
    
    In the minimal the wireless extensions oughta send at least
    the name in addition to the ifindex.
    
    Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 6bf90b2bf4084a64bbcf96a0b93dc64c77288028
Author: Rami Rosen <ramirose@gmail.com>
Date:   Wed Aug 13 02:35:39 2008 -0700

    ipv6: Kill unused ip6_prohibit_entry and ip6_blk_hole_entry declarations.
    
    This patch removes ip6_prohibit_entry and ip6_blk_hole_entry
    declarations from include/net/ip6_route.h as they are unused.
    
    Signed-off-by: Rami Rosen <ramirose@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 83ac794f15d2311d8e9e641c73618011f2f7f0a1
Author: Rami Rosen <ramirose@gmail.com>
Date:   Wed Aug 13 02:34:39 2008 -0700

    ipv6: ip6_route.h cleanup.
    
    This patch removes rt6_lock declaration from include/net/ip6_route.h
    as it is unused.
    
    Signed-off-by: Rami Rosen <ramirose@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 6ced0b3f1e1c089caf8798485423a093744b6a48
Author: Andrew Morton <akpm@linux-foundation.org>
Date:   Wed Aug 13 02:32:06 2008 -0700

    net/tipc/subscr.c: don't use ___constant_swab32
    
    It's an internal implementation detail which we _should_ be free to change.
    So we did, and it promptly broke.
    
    The compiler shold be able to work out when to use the __constant version
    anyway.
    
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 83f36f3f35f4f83fa346bfff58a5deabc78370e5
Author: David S. Miller <davem@davemloft.net>
Date:   Wed Aug 13 02:13:34 2008 -0700

    pkt_sched: Add queue stopped test back to qdisc_run().
    
    Based upon a bug report by Andrew Gallatin on netdev
    with subject "CPU utilization increased in 2.6.27rc"
    
    In commit 37437bb2e1ae8af470dfcd5b4ff454110894ccaf
    ("pkt_sched: Schedule qdiscs instead of netdev_queue.")
    the test of the queue being stopped was erroneously
    removed from qdisc_run().
    
    When the TX queue of the device fills up, this omission
    causes lots of extraneous useless work to be queued up
    to softirq context, where we'll just return immediately
    because the device is still stuffed up.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 5e0115e500fe9dd2ca11e6f92db9123204f1327a
Author: Brian Haley <brian.haley@hp.com>
Date:   Wed Aug 13 01:58:57 2008 -0700

    ipv6: Fix OOPS, ip -f inet6 route get fec0::1, linux-2.6.26, ip6_route_output, rt6_fill_node+0x175
    
    Alexey Dobriyan wrote:
    > On Thu, Aug 07, 2008 at 07:00:56PM +0200, John Gumb wrote:
    >> Scenario: no ipv6 default route set.
    >
    >> # ip -f inet6 route get fec0::1
    >>
    >> BUG: unable to handle kernel NULL pointer dereference at 00000000
    >> IP: [<c0369b85>] rt6_fill_node+0x175/0x3b0
    >> EIP is at rt6_fill_node+0x175/0x3b0
    >
    > 0xffffffff80424dd3 is in rt6_fill_node (net/ipv6/route.c:2191).
    > 2186                    } else
    > 2187    #endif
    > 2188                            NLA_PUT_U32(skb, RTA_IIF, iif);
    > 2189            } else if (dst) {
    > 2190                    struct in6_addr saddr_buf;
    > 2191      ====>         if (ipv6_dev_get_saddr(ip6_dst_idev(&rt->u.dst)->dev,
    >					       ^^^^^^^^^^^^^^^^^^^^^^^^
    >											NULL
    >
    > 2192                                           dst, 0, &saddr_buf) == 0)
    > 2193                            NLA_PUT(skb, RTA_PREFSRC, 16, &saddr_buf);
    > 2194            }
    
    The commit that changed this can't be reverted easily, but the patch
    below works for me.
    
    Fix NULL de-reference in rt6_fill_node() when there's no IPv6 input
    device present in the dst entry.
    
    Signed-off-by: Brian Haley <brian.haley@hp.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit c6a7b0f8a49aa71792dd108efc535435f462bf79
Author: Lachlan McIlroy <lachlan@sgi.com>
Date:   Wed Aug 13 16:52:50 2008 +1000

    [XFS] Fix use after free in xfs_log_done().
    
    The ticket allocation code got reworked in 2.6.26 and we now free tickets
    whereas before we used to cache them so the use-after-free went
    undetected.
    
    SGI-PV: 985525
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31877a
    
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
    Signed-off-by: David Chinner <david@fromorbit.com>

commit c94312de223644e2f18e7064ae8cafa14e5c6ef6
Author: Ruben Porras <ruben.porras@linworks.de>
Date:   Wed Aug 13 16:52:25 2008 +1000

    [XFS] Make xfs_bmap_*_count_leaves void.
    
    xfs_bmap_count_leaves and xfs_bmap_disk_count_leaves always return always
    0, make them void.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31844a
    
    Signed-off-by: Ruben Porras <ruben.porras@linworks.de>
    Signed-off-by: Donald Douwsma <donaldd@sgi.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 5695ef46ef02ba1c6658daa46e6879a2d4f52f5f
Author: Lachlan McIlroy <lachlan@sgi.com>
Date:   Wed Aug 13 16:51:57 2008 +1000

    [XFS] Use KM_NOFS for debug trace buffers
    
    Use KM_NOFS to prevent recursion back into the filesystem which can cause
    deadlocks.
    
    In the case of xfs_iread() we hold the lock on the inode cluster buffer
    while allocating memory for the trace buffers. If we recurse back into XFS
    to flush data that may require a transaction to allocate extents which
    needs log space. This can deadlock with the xfsaild thread which can't
    push the tail of the log because it is trying to get the inode cluster
    buffer lock.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31838a
    
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
    Signed-off-by: David Chinner <david@fromorbit.com>

commit d62c251fe4a06144255291cffd68cbadf3bf002f
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:51:29 2008 +1000

    [XFS] use KM_MAYFAIL in xfs_mountfs
    
    Use KM_MAYFAIL for the m_perag allocation, we can deal with the error
    easily and blocking forever during mount is not a good idea either.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31837a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit ff4f038c6bbb27044a84adbcd27bc237d7237e66
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:50:47 2008 +1000

    [XFS] refactor xfs_mount_free
    
    xfs_mount_free mostly frees the perag data, which is something that is
    duplicated in the mount error path.
    
    Move the XFS_QM_DONE call to the caller and remove the useless
    mutex_destroy/spinlock_destroy calls so that we can re-use it for the
    mount error path. Also rename it to xfs_free_perag to reflect what it
    does.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31836a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 6203300e5e9121440b27d3ed0b9fe2a64cb62b53
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:50:21 2008 +1000

    [XFS] don't call xfs_freesb from xfs_unmountfs
    
    xfs_readsb is called before xfs_mount so xfs_freesb should be called after
    xfs_unmountfs, too. This means it now happens after a few things during
    the of xfs_unmount which all have nothing to do with the superblock.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31835a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 41b5c2e77a0221cf07ac127afa122add67ac5418
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:49:57 2008 +1000

    [XFS] xfs_unmountfs should return void
    
    xfs_unmounts can't and shouldn't return errors so declare it as returning
    void.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31833a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 4249023a5d14f28d4e68ba15d24d25c0e5be71a6
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:49:32 2008 +1000

    [XFS] cleanup xfs_mountfs
    
    Remove all the useless flags and code keyed off it in xfs_mountfs.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31831a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 77508ec8e6ed72c9ba8ca74248a7aabd664e3f57
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:49:04 2008 +1000

    [XFS] move root inode IRELE into xfs_unmountfs
    
    The root inode is allocated in xfs_mountfs so it should be release in
    xfs_unmountfs. For the unmount case that means we do it after the the
    xfs_sync(mp, SYNC_WAIT | SYNC_CLOSE) in the forced shutdown case and the
    dmapi unmount event. Note that both reference the rip variable which might
    be freed by that time in case inode flushing has kicked in, so strictly
    speaking this might count as a bug fix
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31830a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 3a76c1ea07ee4e9da7c8e476e43be7e1b2bf24fb
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:48:12 2008 +1000

    [XFS] stop using file_update_time
    
    xfs_ichtime updates the xfs_inode and Linux inode timestamps just fine, no
    need to call file_update_time and then copy the values over to the XFS
    inode. The only additional thing in file_update_time are checks not
    applicable to the write path.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31829a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
    Signed-off-by: David Chinner <david@fromorbit.com>

commit 8e5975c82f66bce36955f38e9abc259d5143a72a
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:45:13 2008 +1000

    [XFS] optimize xfs_ichgtime
    
    Port a little optmization from file_update_time to xfs_ichgtime, and only
    update the timestamp and mark the inode dirty if the timestamp actually
    changes in the timer tick resultion supported by the running kernel.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31827a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit dff35fd41f252476cba7f761d7204dd9f47d739e
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:44:15 2008 +1000

    [XFS] update timestamp in xfs_ialloc manually
    
    In xfs_ialloc we just want to set all timestamps to the current time. We
    don't need to mark the inode dirty like xfs_ichgtime does, and we don't
    need nor want the opimizations in xfs_ichgtime that I will introduce in
    the next patch.
    
    So just opencode the timestamp update in xfs_ialloc, and remove the new
    unused XFS_ICHGTIME_ACC case in xfs_ichgtime.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31825a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit ab4a9b04a33c97dd17495f943447f5a15ecf2b51
Author: David Chinner <david@fromorbit.com>
Date:   Wed Aug 13 16:42:10 2008 +1000

    [XFS] remove the sema_t from XFS.
    
    Now that all users of the sema_t are gone from XFS we can finally kill it.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31823a
    
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit e1f49cf20cea18e3d1963939fe8612a75e319fbd
Author: David Chinner <david@fromorbit.com>
Date:   Wed Aug 13 16:41:43 2008 +1000

    [XFS] replace dquot flush semaphore with a completion
    
    Use the new completion flush code to implement the dquot flush lock.
    Removes one of the final users of semaphores in the XFS code base.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31822a
    
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit c63942d3eeffb98219e05d0976862ab9907d297d
Author: David Chinner <david@fromorbit.com>
Date:   Wed Aug 13 16:41:16 2008 +1000

    [XFS] replace inode flush semaphore with a completion
    
    Use the new completion flush code to implement the inode flush lock.
    Removes one of the final users of semaphores in the XFS code base.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31817a
    
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 39d2f1ab2a36ac527a6c41cfe689f50c239eaca3
Author: David Chinner <david@fromorbit.com>
Date:   Wed Aug 13 16:40:43 2008 +1000

    [XFS] extend completions to provide XFS object flush requirements
    
    XFS object flushing doesn't quite match existing completion semantics.  It
    mixed exclusive access with completion.  That is, we need to mark an object as
    being flushed before flushing it to disk, and then block any other attempt to
    flush it until the completion occurs.  We do this but adding an extra count to
    the completion before we start using them.  However, we still need to
    determine if there is a completion in progress, and allow no-blocking attempts
    fo completions to decrement the count.
    
    To do this we introduce:
    
    int try_wait_for_completion(struct completion *x)
    	returns a failure status if done == 0, otherwise decrements done
    	to zero and returns a "started" status. This is provided
    	to allow counted completions to begin safely while holding
    	object locks in inverted order.
    
    int completion_done(struct completion *x)
    	returns 1 if there is no waiter, 0 if there is a waiter
    	(i.e. a completion in progress).
    
    This replaces the use of semaphores for providing this exclusion
    and completion mechanism.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31816a
    
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit b4dd330b9e0c9c78ebff754e72563b148f05e9e0
Author: David Chinner <david@fromorbit.com>
Date:   Wed Aug 13 16:36:11 2008 +1000

    [XFS] replace the XFS buf iodone semaphore with a completion
    
    The xfs_buf_t b_iodonesema is really just a semaphore that wants to be a
    completion. Change it to a completion and remove the last user of the
    sema_t from XFS.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31815a
    
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 12017faf387437c01ff63bbe46b629550b15bd70
Author: David Chinner <david@fromorbit.com>
Date:   Wed Aug 13 16:34:31 2008 +1000

    [XFS] clean up stale references to semaphores
    
    A lot of code has been converted away from semaphores, but there are still
    comments that reference semaphore behaviour. The log code is the worst
    offender. Update the comments to reflect what the code really does now.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31814a
    
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 597bca6378e0273a5d16346c941cab1ec2e0116d
Author: Harvey Harrison <harvey.harrison@gmail.com>
Date:   Wed Aug 13 16:29:21 2008 +1000

    [XFS] use get_unaligned_* helpers
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31813a
    
    Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit d63f154a36c4ec7c2826874371887cecae375ebb
Author: Lachlan McIlroy <lachlan@sgi.com>
Date:   Wed Aug 13 16:28:40 2008 +1000

    [XFS] Fix compile failure in xfs_buf_trace()
    
    SGI-PV: 957103
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31804a
    
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 169d6227a71da125913c69c381643a8ae89da62d
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:25:27 2008 +1000

    [XFS] Use the same btree_cur union member for alloc and inobt trees.
    
    The alloc and inobt btree use the same agbp/agno pair in the btree_cur
    union. Make them use the same bc_private.a union member so that code for
    these two short form btree implementations can be shared.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31788a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Tim Shimmin <tes@sgi.com>
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit cdcf43335cbb2380e533441e007e0c4ec42634d5
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:23:50 2008 +1000

    [XFS] small cleanups in xfs_btree.c
    
    Remove unneeded xfs_btree_get_block forward declaration. Move
    xfs_btree_firstrec next to xfs_btree_lastrec.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31787a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Tim Shimmin <tes@sgi.com>
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 41be8bed1f3168f34386f3a15d63682cfd586b8e
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:23:13 2008 +1000

    [XFS] sanitize xfs_initialize_vnode
    
    Sanitize setting up the Linux indode.
    
    Setting up the xfs_inode <-> inode link is opencoded in xfs_iget_core now
    because that's the only place it needs to be done, xfs_initialize_vnode is
    renamed to xfs_setup_inode and loses all superflous paramaters. The check
    for I_NEW is removed because it always is true and the di_mode check moves
    into xfs_iget_core because it's only needed there.
    
    xfs_set_inodeops and xfs_revalidate_inode are merged into xfs_setup_inode
    and the whole things is moved into xfs_iops.c where it belongs.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31782a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 5ec7f8c7d14a3ea6bf920b3350f5c5d3527cb837
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:22:40 2008 +1000

    [XFS] kill bhv_vnode_t
    
    All remaining bhv_vnode_t instance are in code that's more or less Linux
    specific. (Well, for xfs_acl.c that could be argued, but that code is on
    the removal list, too). So just do an s/bhv_vnode_t/struct inode/ over the
    whole tree. We can clean up variable naming and some useless helpers
    later.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31781a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit df80c933f9eb01a7af3812bbe437e38205386304
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:22:09 2008 +1000

    [XFS] remove some easy bhv_vnode_t instances
    
    In various places we can just move a VFS_I call into the argument list of
    called functions/macros instead of having a local bhv_vnode_t.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31776a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit e1cccd917be7364f81b5dc4e33ee3a6e0db21a99
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:18:07 2008 +1000

    [XFS] kill xfs_lock_dir_and_entry
    
    When multiple inodes are locked in XFS it happens in order of the inode
    number, with the everything but the first inode trylocked if any of the
    previous inodes is in the AIL.
    
    Except for the sorting of the inodes this logic is implemented in
    xfs_lock_inodes, but also partially duplicated in xfs_lock_dir_and_entry
    in a particularly stupid way adds a lock roundtrip if the inode ordering
    is not optimal.
    
    This patch adds a new helper xfs_lock_two_inodes that takes two inodes and
    locks them in the most optimal way according to the above locking protocol
    and uses it for all places that want to lock two inodes.
    
    The only caller of xfs_lock_inodes is xfs_rename which might lock up to
    four inodes.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31772a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Donald Douwsma <donaldd@sgi.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 1550d0b0b08bc34c0c37a86bd884b1a70782104e
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:17:37 2008 +1000

    [XFS] kill INDUCE_IO_ERROR
    
    All the error injection is already enabled through ifdef DEBUG, so kill
    the never set second cpp symbol to activate it without the rest of the
    debugging infrastructure.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31771a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 907f49a8f552acc5d75635e86d567f05daf5c0d8
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:13:45 2008 +1000

    [XFS] implement IHOLD/IRELE directly
    
    Now that all direct calls to VN_HOLD/VN_RELE are gone we can implement
    IHOLD/IRELE directly.
    
    For the IHOLD case also replace igrab with a direct increment of i_count
    because we are guaranteed to already have a live and referenced inode by
    the VFS. Also remove the vn_hold statistic because it's been rather
    meaningless for some time with most references done by other callers.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31764a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 0b1f917730dc2276fadbd9813ac3666abd7b1cbd
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:13:09 2008 +1000

    [XFS] remove remaining VN_HOLD calls
    
    Use IHOLD(ip) instead of VN_HOLD(VFS_I(ip)).
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31765a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 604323ca760beebf00a07153706dcbe7128324e0
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:12:37 2008 +1000

    [XFS] remove spurious VN_HOLD/VN_RELE calls from xfs_acl.c
    
    All the ACL routines are called from inode operations which are guaranteed
    to have a referenced inode by the VFS, so there's no need for the ACL code
    to grab another temporary one.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31763a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 863890cd90e8b213f7028036c6e2200d93223527
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:12:05 2008 +1000

    [XFS] kill vn_to_inode
    
    bhv_vnode_t is just a typedef for struct inode, so there's
    no need for a helper to convert between the two.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31761a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit a19d033cd2cc66120f01b370ec081d67b59b7924
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:11:26 2008 +1000

    [XFS] Remove vn_from_inode()
    
    bhv_vnode_t is just a typedef for struct inode, so there's
    no need for a helper to convert between the two.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31760a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 39dab9d7daf5f664a3569378107a2cb284c8a594
Author: Eric Sandeen <sandeen@sandeen.net>
Date:   Wed Aug 13 16:10:52 2008 +1000

    [XFS] remove shouting-indirection macros from xfs_trans.h
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31758a
    
    Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit db7a2c71d287686eef1d4df1565fa32f89a9fe68
Author: Eric Sandeen <sandeen@sandeen.net>
Date:   Wed Aug 13 16:09:25 2008 +1000

    [XFS] convert xfs to use ERR_CAST
    
    Looks like somehow xfs got missed in the conversion that took place in
    e231c2ee64eb1c5cd3c63c31da9dac7d888dcf7f, "Convert ERR_PTR(PTR_ERR(p))
    instances to ERR_CAST(p)
    <http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit
    diff;h=e231c2ee64eb1c5cd3c63c31da9dac7d888dcf7f>"
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31757a
    
    Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
    Acked-by: David Howells <dhowells@redhat.com>
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: David Howells <dhowells@redhat.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit cdeb380aa2ca3b8f8ba3736f2469f5818eadb9aa
Author: Eric Sandeen <sandeen@sandeen.net>
Date:   Wed Aug 13 16:07:53 2008 +1000

    [XFS] remove INT_GET and friends
    
    Thanks to hch's endian work, INT_GET etc are no longer used, and may as
    well be removed. INT_SET is still used in the acl code, though.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31756a
    
    Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 322ff6b8cd54feb1c4c0426630f3642ab1dd2176
Author: Niv Sardi <xaiki@sgi.com>
Date:   Wed Aug 13 16:05:49 2008 +1000

    [XFS] Move xfs_attr_rolltrans to xfs_trans_roll
    
    Move it from the attr code to the transaction code and make
    the attr code call the new function.
    
    We rolltrans is really usefull whenever we want to use rolling
    transaction, should be generic, it isn't dependent on any part
    of the attr code anyway.
    
    We use this excuse to change all the:
    
    if ((error = xfs_attr_rolltrans()))
    
    calls into:
    
    error = xfs_trans_roll();
    
    if (error)
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31729a
    
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit a738159df2b97398f960978272944cbdd8f726ef
Author: Christoph Hellwig <hch@infradead.org>
Date:   Wed Aug 13 16:04:05 2008 +1000

    [XFS] don't leak m_fsname/m_rtname/m_logname
    
    Add a helper to free the m_fsname/m_rtname/m_logname allocations and use
    it properly for all mount failure cases. Also switch the allocations for
    these to kstrdup while we're at it.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31728a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 5e9da7b7a1edfc75a839b0269935393fa347f38b
Author: Niv Sardi <xaiki@sgi.com>
Date:   Wed Aug 13 16:03:35 2008 +1000

    [XFS] Move attr log alloc size calculator to another function.
    
    We will need that to be able to calculate the size of log we need for a
    specific attr (for Create+EA). The local flag is needed so that we can
    fail if we run into ENOSPC when trying to alloc blocks.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31727a
    
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Tim Shimmin <tes@sgi.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 6785073ba138a2f0dc575c332c1812b713670b6a
Author: David Chinner <david@fromorbit.com>
Date:   Wed Aug 13 16:02:51 2008 +1000

    [XFS] Use KM_NOFS for incore inode extent tree allocation V2
    
    If we allow incore extent tree allocations to recurse into the
    filesystem under memory pressure, new delayed allocations through
    xfs_iomap_write_delay() can deadlock on themselves if memory
    reclaim tries to write back dirty pages from that inode.
    
    It will deadlock in xfs_iomap_write_allocate() trying to take the
    ilock we already hold. This can also show up as complex ABBA deadlocks
    when multiple threads are triggering memory reclaim when trying to
    allocate extents.
    
    The main cause of this is the fact that delayed allocation is not done in
    a transaction, so KM_NOFS is not automatically added to the allocations to
    prevent this recursion.
    
    Mark all allocations done for the incore inode extent tree as KM_NOFS to
    ensure they never recurse back into the filesystem.
    
    Version 2: o KM_NOFS implies KM_SLEEP, so just use KM_NOFS
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31726a
    
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit e6064d30c3407db7f8c19d5538ec847b29e47e30
Author: David Chinner <david@fromorbit.com>
Date:   Wed Aug 13 16:01:45 2008 +1000

    [XFS] XFS: Kill xfs_vtoi()
    
    xfs_vtoi() is redundant and only unsed in small sections of code.
    Replace them with widely used XFS_I() inline and kill xfs_vtoi().
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31725a
    
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit e4f7529108d01bf66af8ebecd6be2b98d8db30ce
Author: David Chinner <david@fromorbit.com>
Date:   Wed Aug 13 16:00:45 2008 +1000

    [XFS] Kill shouty XFS_ITOV() macro
    
    Replace XFS_ITOV() with the new VFS_I() inline.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31724a
    
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 705db4a24e0576f30d736de3c49623b4686ce473
Author: David Chinner <david@fromorbit.com>
Date:   Wed Aug 13 15:47:43 2008 +1000

    [XFS] kill shouty XFS_ITOV_NULL macro
    
    Replace XFS_ITOV_NULL() with the new VFS_I() inline.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31722a
    
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 016516462575d28fab3354f762cad16c86c09116
Author: David Chinner <david@fromorbit.com>
Date:   Wed Aug 13 15:45:15 2008 +1000

    [XFS] Avoid directly referencing the VFS inode.
    
    In several places we directly convert from the XFS inode
    to the linux (VFS) inode by a simple deference of ip->i_vnode.
    We should not do this - a helper function should be used to
    extract the VFS inode from the XFS inode.
    
    Introduce the function VFS_I() to extract the VFS inode
    from the XFS inode. The name was chosen to match XFS_I() which
    is used to extract the XFS inode from the VFS inode.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31720a
    
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Niv Sardi <xaiki@sgi.com>
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 3790689fa3c771bba6bafb7dee3e8389dd0b55bc
Author: Lachlan McIlroy <lachlan@sgi.com>
Date:   Wed Aug 13 15:42:10 2008 +1000

    [XFS] Do not access buffers after dropping reference count
    
    We should not access a buffer after dropping it's reference count
    otherwise we could race with another thread that releases the final
    reference count and frees the buffer causing us to access potentially
    unmapped memory. The bug this change fixes only occured on DEBUG XFS since
    the offending code was in an ASSERT.
    
    SGI-PV: 984429
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31715a
    
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
    Signed-off-by: David Chinner <david@fromorbit.com>

commit 79071eb0b2f142b9cc6531d04fa2915943938b5e
Author: David Chinner <david@fromorbit.com>
Date:   Wed Aug 13 15:41:12 2008 +1000

    [XFS] Use the generic bitops rather than implementing them ourselves.
    
    This keeps xfs_lowbit64 as it was since there aren't good generic helpers
    there ... Patch inspired by Andi Kleen.
    
    SGI-PV: 981498
    
    SGI-Modid: xfs-linux-melb:xfs-kern:31472a
    
    Signed-off-by: David Chinner <david@fromorbit.com>
    Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
    Signed-off-by: Donald Douwsma <donaldd@sgi.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>

commit 4f70f7a91bffdcc39f088748dc678953eb9a3fbd
Author: David S. Miller <davem@davemloft.net>
Date:   Tue Aug 12 18:33:56 2008 -0700

    sparc64: Implement IRQ stacks.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit e34456825de0d3ac4c4e8fe0bdc6b599404ea06f
Author: Stephen Rothwell <sfr@canb.auug.org.au>
Date:   Tue Aug 12 17:45:23 2008 -0700

    sparc: remove include of linux/of_device.h from asm/of_device.h
    
    Now that all the direct includes of asm/of_device.h are gone, this is
    safe to do.
    
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit c7498081a6f5d96c9f3243b6b5e020352903bfd2
Author: David S. Miller <davem@davemloft.net>
Date:   Tue Aug 12 02:03:49 2008 -0700

    sparc64: Fix recursion in stack overflow detection handling.
    
    The calls down into prom_printf() when we detect an overflowed stack
    can recurse again since the overflow stack will be "below" the current
    kernel stack limit.
    
    Prevent this by just returning straight if we are on the stack
    overflow safe stack already.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 987c402ac31988f7ecdb38b657bcfeea5831d479
Author: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Date:   Mon Aug 11 18:17:17 2008 -0700

    skbuff: Code readability NiT
    
    Inserting a space between the `-' improved the C readability (some languages
    allow hyphens within functions and variable names, which is confusing).
    
    Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 1cfa26661a85549063e369e2b40275eeaa7b923c
Author: Jarek Poplawski <jarkao2@gmail.com>
Date:   Mon Aug 11 18:11:06 2008 -0700

    pkt_sched: Add BH protection for qdisc_stab_lock.
    
    Since qdisc_stab_lock is used in qdisc_put_stab(), which is called in
    BH context from __qdisc_destroy() RCU callback, softirq safe locking
    is needed.
    
    Signed-off-by: Jarek Poplawski <jarkao2@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 0a37c10ed460872d41259659f7f589edebdc42b7
Merge: 37cc678... e93615d...
Author: David S. Miller <davem@davemloft.net>
Date:   Mon Aug 11 18:04:35 2008 -0700

    Merge branch 'stealer/ipvs/for-davem' of git://git.stealer.net/linux-2.6

commit 37cc6780170f6f4fc3f9746d6a9bb2da1d999d7b
Author: Simon Horman <horms@verge.net.au>
Date:   Mon Aug 11 14:33:40 2008 -0700

    ipvs: add lvs-devel as a list contact
    
    Signed-off-by: Simon Horman <horms@verge.net.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit c6ed413ddcfb66e9d3e1318060271391c7659dd3
Author: Stephen Rothwell <sfr@canb.auug.org.au>
Date:   Mon Aug 11 14:30:53 2008 -0700

    sparc/drivers: use linux/of_device.h instead of asm/of_device.h
    
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit e93615d0866a974afc7148172f8382e2af48c985
Author: Simon Horman <horms@verge.net.au>
Date:   Mon Aug 11 17:19:14 2008 +1000

    ipvs: Explictly clear ip_vs_stats members
    
    In order to align the coding styles of ip_vs_zero_stats() and
    its child-function ip_vs_zero_estimator(), clear ip_vs_stats
    members explicitlty rather than doing a limited memset().
    
    This was chosen over modifying ip_vs_zero_estimator() to use
    memset() as it is more robust against changes in members
    in the relevant structures. memset() would be prefered if
    all members of the structure were to be cleared.
    
    Cc: Sven Wegener <sven.wegener@stealer.net>
    Signed-off-by: Simon Horman <horms@verge.net.au>
    Signed-off-by: Sven Wegener <sven.wegener@stealer.net>

commit 519e49e888458649dde453d36c08b7f3432525dc
Author: Sven Wegener <sven.wegener@stealer.net>
Date:   Sun Aug 10 18:24:41 2008 +0000

    ipvs: No need to zero out ip_vs_stats during initialization
    
    It's a global variable and automatically initialized to zero. And now we can
    also initialize the lock at compile time.
    
    Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
    Acked-by: Simon Horman <horms@verge.net.au>

commit 3a14a313f9b406c37ab7e3f855b060eb8587b8c7
Author: Sven Wegener <sven.wegener@stealer.net>
Date:   Sun Aug 10 18:24:41 2008 +0000

    ipvs: Embed estimator object into stats object
    
    There's no reason for dynamically allocating an estimator object for every
    stats object. Directly embed an estimator object into every stats object and
    switch to using the kernel-provided list implementation. This makes the code
    much simpler and faster, as we do not need to traverse the list of all
    estimators to find the one belonging to a stats object. There's no need to use
    an rwlock, as we only have one reader. Also reorder the members of the
    estimator structure slightly to avoid padding overhead. This can't be done
    with the stats object as the members are currently copied to our user space
    object via memcpy() and changing it would break ABI.
    
    Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
    Acked-by: Simon Horman <horms@verge.net.au>

commit 5587da55fbf332ab8d1b37637536f94bc373867f
Author: Sven Wegener <sven.wegener@stealer.net>
Date:   Sun Aug 10 18:24:40 2008 +0000

    ipvs: Mark net_vs_ctl_path const
    
    Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
    Acked-by: Simon Horman <horms@verge.net.au>

commit 048cf48b897bcae9e6fa8b46b6976dab5e710e3c
Author: Sven Wegener <sven.wegener@stealer.net>
Date:   Sun Aug 10 18:24:35 2008 +0000

    ipvs: Annotate init functions with __init
    
    Being able to discard these functions saves a couple of bytes at runtime. The
    cleanup functions can't be annotated with __exit as they are also called from
    init functions.
    
    Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
    Acked-by: Simon Horman <horms@verge.net.au>

commit d149ccc9cf85cdf089c1b2189ade111305712b0c
Author: Sven Wegener <sven.wegener@stealer.net>
Date:   Sun Aug 10 09:18:02 2008 +0000

    ipvs: Initialize schedulers' struct list_head at compile time
    
    No need to do it at runtime and this saves a couple of bytes in the text
    section.
    
    Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
    Acked-by: Simon Horman <horms@verge.net.au>

commit 66a0be47200fff30f8c482ea584052c6affb08cb
Author: Sven Wegener <sven.wegener@stealer.net>
Date:   Sun Aug 10 09:18:02 2008 +0000

    ipvs: Use list_empty() instead of open-coding the same functionality
    
    Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
    Acked-by: Simon Horman <horms@verge.net.au>

commit afdd614071aef652f5a3e2a06965de049dd8339b
Author: Sven Wegener <sven.wegener@stealer.net>
Date:   Sun Aug 10 09:18:01 2008 +0000

    ipvs: Use ARRAY_SIZE()
    
    Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
    Acked-by: Simon Horman <horms@verge.net.au>

commit 8ab19ea36c5c5340ff598e4d15fc084eb65671dc
Author: Sven Wegener <sven.wegener@stealer.net>
Date:   Sun Aug 10 09:17:59 2008 +0000

    ipvs: Fix possible deadlock in estimator code
    
    There is a slight chance for a deadlock in the estimator code. We can't call
    del_timer_sync() while holding our lock, as the timer might be active and
    spinning for the lock on another cpu. Work around this issue by using
    try_to_del_timer_sync() and releasing the lock. We could actually delete the
    timer outside of our lock, as the add and kill functions are only every called
    from userspace via [gs]etsockopt() and are serialized by a mutex, but better
    make this explicit.
    
    Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
    Cc: stable <stable@kernel.org>
    Acked-by: Simon Horman <horms@verge.net.au>

commit bc0fde2fad007a81ecffceb25a893a6c3f1ed767
Author: Sven Wegener <sven.wegener@stealer.net>
Date:   Sun Aug 10 09:14:05 2008 +0000

    ipvs: Fix possible deadlock in sync code
    
    Commit 998e7a76804b7a273a0460c2cdd5a51fa9856717 ("ipvs: Use kthread_run()
    instead of doing a double-fork via kernel_thread()") introduced a possible
    deadlock in the sync code. We need to use the _bh versions for the lock, as the
    lock is also accessed from a bottom half.
    
    Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
    Acked-by: Simon Horman <horms@verge.net.au>

commit b6b7922fbda63040946cac8251d5618ee7880e8a
Author: David S. Miller <davem@davemloft.net>
Date:   Sat Aug 9 16:25:26 2008 -0700

    sparc64: Don't MAGIC_SYSRQ ifdef smp_fetch_global_regs and support code.
    
    Based upon a report and initial patch by Friedrich Oslage.
    
    The intention is to provide this facility for
    __trigger_all_cpu_backtrace even if MAGIC_SYSRQ is not set.
    
    The only part that should have MAGIC_SYSRQ ifdef protection is the
    sparc_globalreg_op sysrq regitration and immediate code.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit d97106ea52aa57e63ff40d04479016836bbb5a4e
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date:   Sat Aug 9 00:35:05 2008 -0700

    udp: Drop socket lock for encapsulated packets
    
    The socket lock is there to protect the normal UDP receive path.
    Encapsulation UDP sockets don't need that protection.  In fact
    the locking is deadly for them as they may contain another UDP
    packet within, possibly with the same addresses.
    
    Also the nested bit was copied from TCP.  TCP needs it because
    of accept(2) spawning sockets.  This simply doesn't apply to UDP
    so I've removed it.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 8123b421e8ed944671d7241323ed3198cccb4041
Author: David S. Miller <davem@davemloft.net>
Date:   Fri Aug 8 23:23:39 2008 -0700

    pkt_sched: Fix ingress deletion and filter attachment.
    
    Based upon bug reports by Stephen Hemminger.
    
    We still had some cases using ->qdisc instead of ->qdisc_sleeping.
    
    Also, qdisc_lookup() should return ingress qdiscs.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>