commit bf9127c36341573dc47a9c2fc003dcf13bbbf246
Merge: b620754... b89cbb8...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Thu Jul 3 21:29:08 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:
      USB: adding comment for ipaq forcing number of ports
      USB: fix Oops on loading ipaq module since 2.6.26
      USB: add a pl2303 device id
      USB: another option device id
      USB: don't lose disconnections during suspend
      USB: fix interrupt disabling for HCDs with shared interrupt handlers
      USB: New device ID for ftdi_sio driver
      sisusbvga: Fix oops on disconnect.
      USB: mass storage: new id for US_SC_CYP_ATACB
      USB: ohci - record data toggle after unlink
      USB: ehci - fix timer regression
      USB: fix cdc-acm resume()
      OHCI: Fix problem if SM501 and another platform driver is selected

commit b89cbb81aec2015b4020221564ced1569e1a8900
Author: Oliver Neukum <oliver@neukum.org>
Date:   Thu Jul 3 17:14:16 2008 +0200

    USB: adding comment for ipaq forcing number of ports
    
    The reason for forcing a number of ports should be documented.
    
    Signed-off-by: Oliver Neukum <oneukum@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 4edb966b375dfbabfc96b580a164c5ae90584aa0
Author: Oliver Neukum <oliver@neukum.org>
Date:   Thu Jul 3 10:05:57 2008 +0200

    USB: fix Oops on loading ipaq module since 2.6.26
    
    Fixes bugzilla.kernel.org #10868
    
    Signed-off-by: Oliver Neukum <oneukum@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 727df3569b358ef440683787c2b9fe8cc55a0954
Author: Greg Kroah-Hartman <gregkh@suse.de>
Date:   Wed Jul 2 15:25:41 2008 -0500

    USB: add a pl2303 device id
    
    As reported by Ken A Scott <kscott9@sent.com>
    
    Cc: Ken A Scott <kscott9@sent.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit d2e2affba4a3619df203d3be8d655ec48d00e3ec
Author: Greg Kroah-Hartman <gregkh@suse.de>
Date:   Tue Jul 1 13:11:56 2008 +0530

    USB: another option device id
    
    Thanks to umesh b <umesh.kollam@gmail.com> for the information here.
    
    Cc: umesh b <umesh.kollam@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 1236edf1c70107a0d31b3fba0b2a8783615d0d24
Author: Alan Stern <stern@rowland.harvard.edu>
Date:   Tue Jul 1 10:45:51 2008 -0400

    USB: don't lose disconnections during suspend
    
    This patch (as1111) fixes a bug in the hub driver.  When a hub
    resumes, disconnections that occurred while the hub was suspended are
    lost.
    
    A completely different fix for this problem has already been accepted
    for 2.6.27; however the problem still needs to be handled in 2.6.26.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Tested-by: Lukas Hejtmanek <xhejtman@ics.muni.cz>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit de85422b94ddb23c021126815ea49414047c13dc
Author: Stefan Becker <Stefan.Becker@nokia.com>
Date:   Tue Jul 1 19:19:22 2008 +0300

    USB: fix interrupt disabling for HCDs with shared interrupt handlers
    
    USB: fix interrupt disabling for HCDs with shared interrupt handlers
    
    As has been discussed several times on LKML, IRQF_SHARED | IRQF_DISABLED
    doesn't work reliably, i.e. a shared interrupt handler CAN'T be certain to
    be called with interrupts disabled. Most USB HCD handlers use IRQF_DISABLED
    and therefore havoc can break out if they share their interrupt with a
    handler that doesn't use it.
    
    On my test machine the yenta_socket interrupt handler (no IRQF_DISABLED)
    was registered before ehci_hcd and one uhci_hcd instance. Therefore all
    usb_hcd_irq() invocations for ehci_hcd and for one uhci_hcd instance
    happened with interrupts enabled. That led to random lockups as USB core
    HCD functions that acquire the same spinlock could be called twice
    from interrupt handlers.
    
    This patch updates usb_hcd_irq() to always disable/restore interrupts.
    usb_add_hcd() will silently remove any IRQF_DISABLED requested from HCD code.
    
    Signed-off-by: Stefan Becker <stefan.becker@nokia.com>
    Cc: stable <stable@kernel.org>
    Acked-by: David Brownell <david-b@pacbell.net>
    Acked-by: Alan Stern <stern@rowland.harvard.edu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 2542335ccf34cfb442d3fd842d7e78ca5e649951
Author: Jon K Hellan <hellan@acm.org>
Date:   Tue Jun 24 11:43:13 2008 +0200

    USB: New device ID for ftdi_sio driver
    
    Here's a new device ID for the ftdio_sio driver.
    The diff is with linus's tree as of this morning.
    
    The device is the RigExpert Tiny USB Soundcard Transceiver Interface for ham
    radio.
    
    (I didn't actually test this. A fellow ham couldn't get the device to work, and
    I suggested binding the device ID using sysfs - see
    "http://jk.ufisa.uninett.no/usb/". However, he had had moved on to other things
    by then. I guess adding the device ID to the kernel "on spec" won't hurt.
    The relevant part of cat /proc/bus/usb/devices shows:
    
    T:  Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=12  MxCh= 0
    D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
    P:  Vendor=0403 ProdID=ed22 Rev= 5.00
    S:  Manufacturer=FTDI
    S:  Product=MixW RigExpert Tiny
    S:  SerialNumber=00000000
    C:* #Ifs= 2 Cfg#= 1 Atr=80 MxPwr=100mA
    I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
    E:  Ad=81(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
    E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
    I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
    E:  Ad=83(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
    E:  Ad=04(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
    )
    
    From: Jon K Hellan <hellan@acm.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit f15e39739a1d7dfaa2173a91707a74c11a246648
Author: Will Newton <will.newton@gmail.com>
Date:   Fri Jun 27 13:08:08 2008 +0100

    sisusbvga: Fix oops on disconnect.
    
    Remove dev_info call on disconnect. The sisusb_dev pointer may have been
    set to zero by sisusb_delete at this point causing an oops.
    
    The message does not provide any extra information over the standard USB
    subsystem output so removing it does not affect functionality.
    
    Signed-off-by: Will Newton <will.newton@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit e72616f429a6aaa720a2d90b8fe94869f3c3ff4b
Author: matthieu castet <castet.matthieu@free.fr>
Date:   Mon Jun 16 19:49:06 2008 +0200

    USB: mass storage: new id for US_SC_CYP_ATACB
    
    CY7C68310 chip also support cypress atacb "ATA command" pass_thru.
    
    
    Signed-off-by: Matthieu CASTET <castet.matthieu@free.fr>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 29c8f6a727a683b5988877dd80dbdefd49e64a51
Author: David Brownell <dbrownell@users.sourceforge.net>
Date:   Fri Jun 13 23:59:54 2008 -0700

    USB: ohci - record data toggle after unlink
    
    This patch fixes a problem with OHCI where canceling bulk or
    interrupt URBs may lose track of the right data toggle.  This
    seems to be a longstanding bug, possibly dating back to the
    Linux 2.4 kernel, which stayed hidden because
    
     (a) about half the time the data toggle bit was correct;
     (b) canceling such URBs is unusual; and
     (c) the few drivers which cancel these URBs either
          [1] do it only as part of shutting down, or
          [2] have fault recovery logic, which recovers.
    
    For those transfer types, the toggle is normally written back
    into the ED when each TD is retired.  But canceling bypasses
    the mechanism used to retire TDs ... so on average, half the
    time the toggle bit will be invalid after cancelation.
    
    The fix is simple:  the toggle state of any canceled TDs are
    propagated back to the ED in the finish_unlinks function.
    
    (Issue found by leonidv11@gmail.com ...)
    
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Cc: Leonid <leonidv11@gmail.com>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 056761e55c8687ddf3db14226213f2e8dc2689bc
Author: David Brownell <david-b@pacbell.net>
Date:   Fri Jun 13 23:56:48 2008 -0700

    USB: ehci - fix timer regression
    
    This patch fixes a regression in the EHCI driver's TIMER_IO_WATCHDOG
    behavior.  The patch "USB: EHCI: add separate IAA watchdog timer" changed
    how that timer is handled, so that short timeouts on the remaining
    timer (unfortunately, overloaded) would never be used.
    
    This takes a more direct approach, reorganizing the code slightly to
    be explicit about only the I/O watchdog role now being overridable.
    It also replaces a now-obsolete comment describing older timer behavior.
    
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Cc: Alan Stern <stern@rowland.harvard.edu>
    Cc: Leonid <leonidv11@gmail.com>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 4b828abed217527ca815727a1a251334bd8e5e04
Author: Oliver Neukum <oliver@neukum.org>
Date:   Tue Jun 17 22:30:48 2008 +0200

    USB: fix cdc-acm resume()
    
    cdc-acm has
    - a memory leak in resume()
    - will fail to reactivate the read code path if this is needed.
    his corrects it by deleting the useless relict code.
    
    Signed-off-by: Oliver Neukum <oneukum@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 3ee38d8bf46b364b1ca364ddb7c379a4afcd8bbb
Author: Ben Dooks <ben-linux@fluff.org>
Date:   Sun Jun 8 17:20:11 2008 +0100

    OHCI: Fix problem if SM501 and another platform driver is selected
    
    If the SM501 and another platform driver, such as the SM501
    then we end up defining PLATFORM_DRIVER twice. This patch
    seperated the SM501 onto a seperate define of SM501_OHCI_DRIVER
    so that it can be selected without overwriting the original
    definition.
    
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit b620754bfeb8b0e0c6622b03d5ee2f1af1d3082f
Author: J. Bruce Fields <bfields@citi.umich.edu>
Date:   Thu Jul 3 15:26:35 2008 -0400

    svcrpc: fix handling of garbage args
    
    To return garbage_args, the accept_stat must be 0, and we must have a
    verifier.  So we shouldn't be resetting the write pointer as we reject
    the call.
    
    Also, we must add the two placeholder words here regardless of success
    of the unwrap, to ensure the output buffer is left in a consistent state
    for svcauth_gss_release().
    
    This fixes a BUG() in svcauth_gss.c:svcauth_gss_release().
    
    Thanks to Aime Le Rouzic for bug report, debugging help, and testing.
    
    Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
    Tested-by: Aime Le Rouzic <aime.le-rouzic@bull.net>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 97055a915720fe1aff9ac71c17fae60e929d4ed6
Merge: ee3ece8... 8986d2f...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Thu Jul 3 11:37:19 2008 -0700

    Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
    
    * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
      [MIPS] cevt-txx9: Reset timer counter on initialization
      [MIPS] IP22: Fix crashes due to wrong L1_CACHE_BYTES
      [MIPS] IP32: Fix unexpected irq 71

commit ee3ece830f6db9837f7ac67008f532a8c1e755f4
Author: Steven Rostedt <rostedt@goodmis.org>
Date:   Thu Jul 3 14:31:26 2008 -0400

    hrtimer: prevent migration for raising softirq
    
    Due to a possible deadlock, the waking of the softirq was pushed outside
    of the hrtimer base locks. See commit 0c96c5979a522c3323c30a078a70120e29b5bdbc
    
    Unfortunately this allows the task to migrate after setting up the softirq
    and raising it. Since softirqs run a queue that is per-cpu we may raise the
    softirq on the wrong CPU and this will keep the queued softirq task from
    running.
    
    To solve this issue, this patch disables preemption around the releasing
    of the hrtimer lock and raising of the softirq.
    
    Signed-off-by: Steven Rostedt <srostedt@redhat.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 8986d2f50e1a9ba63f64ccbf59181886aa7898c3
Author: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Date:   Tue Jun 24 23:26:38 2008 +0900

    [MIPS] cevt-txx9: Reset timer counter on initialization
    
    The txx9_tmr_init() will not clear a timer counter register in a certain
    case.  The counter register is cleared on 1->0 transition of TCE bit if
    CRE=1.  So just clearing the TCE bit is not enough.
    
    Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
    Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

commit 7e3297dc280f88ec0c6619a895f3d449776f952e
Author: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Date:   Fri Jun 27 23:52:26 2008 +0200

    [MIPS] IP22: Fix crashes due to wrong L1_CACHE_BYTES
    
    The introduction of a real dma cache invalidate makes it important
    to have a correct cache line size, otherwise the kernel will gives
    out two memory segment, which might share one cache line. The R4400
    Indy/Indigo2 CPU modules are using a second level cache line size
    of 128 bytes, so MIPS_L1_CACHE_SHIFT needs to be bumped up to 7 for
    IP22.
    
    Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
    Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

commit 1faf7f25b2aa4fcd2ae0ec2fd2e9fb9ff4bfee10
Author: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Date:   Tue Jun 24 00:48:05 2008 +0200

    [MIPS] IP32: Fix unexpected irq 71
    
    It's possible that the crime interrupt handler is called without
    pending interrupts (probably a hardware issue). To avoid irritating
    "unexpected irq 71" messages, we now just ignore the spurious crime
    interrupts.
    
    Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
    Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

commit 6beef7eb0c16b5216814148b04838cfa963d2cb4
Merge: 494de90... 2e4bef4...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Thu Jul 3 09:28:44 2008 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
      9p: fix O_APPEND in legacy mode

commit 494de90098784b8e2797598cefdd34188884ec2e
Author: Mel Gorman <mel@csn.ul.ie>
Date:   Thu Jul 3 05:27:51 2008 +0100

    Do not overwrite nr_zones on !NUMA when initialising zlcache_ptr
    
    The non-NUMA case of build_zonelist_cache() would initialize the
    zlcache_ptr for both node_zonelists[] to NULL.
    
    Which is problematic, since non-NUMA only has a single node_zonelists[]
    entry, and trying to zero the non-existent second one just overwrote the
    nr_zones field instead.
    
    As kswapd uses this value to determine what reclaim work is necessary,
    the result is that kswapd never reclaims.  This causes processes to
    stall frequently in low-memory situations as they always direct reclaim.
    This patch initialises zlcache_ptr correctly.
    
    Signed-off-by: Mel Gorman <mel@csn.ul.ie>
    Tested-by: Dan Williams <dan.j.williams@intel.com>
    [ Simplified patch a bit ]
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 2e4bef41a0f7df31be140ef354b9c12f2299016a
Author: Eric Van Hensbergen <ericvh@gmail.com>
Date:   Tue Jun 24 17:39:39 2008 -0500

    9p: fix O_APPEND in legacy mode
    
    The legacy protocol's open operation doesn't handle an append operation
    (it is expected that the client take care of it).  We were incorrectly
    passing the extended protocol's flag through even in legacy mode.  This
    was reported in bugzilla report #10689.  This patch fixes the problem
    by disallowing extended protocol open modes from being passed in legacy
    mode and implemented append functionality on the client side by adding
    a seek after the open.
    
    Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>

commit c461a973118346d5c103aaaddd62e53939fd7c67
Merge: 9ad4107... a13307c...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 19:29:16 2008 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:
      PCI: acpiphp: cleanup notify handler on all root bridges
      PCI: Limit VPD read/write lengths for Broadcom 5706, 5708, 5709 rev.
      PCI: Restrict VPD read permission to root

commit 9ad4107ba137f743fc531f9f4ceb81b122f9ff25
Merge: 0e77a07... d150a4b...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 19:26:38 2008 -0700

    Merge branch 'i2c-fix' of git://aeryn.fluff.org.uk/bjdooks/linux
    
    * 'i2c-fix' of git://aeryn.fluff.org.uk/bjdooks/linux:
      I2C: S3C2410: Add MODULE_ALIAS() for s3c2440 device.
      I2C: S3C2410: Fixup error codes returned rom a transfer.
      I2C: S3C2410: Check ACK on byte transmission

commit 0e77a07ff9d18cdfc6c1fdd5b3c667ae79895489
Merge: 23c0e4a... 18ce375...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 19:25:36 2008 -0700

    Merge branch 'for-2.6.26' of git://git.kernel.dk/linux-2.6-block
    
    * 'for-2.6.26' of git://git.kernel.dk/linux-2.6-block:
      Properly notify block layer of sync writes
      block: Fix the starving writes bug in the anticipatory IO scheduler

commit 23c0e4a2257051113a99e1377c49af224bd27bc8
Merge: 3a57a78... 3a677d2...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 19:24:48 2008 -0700

    Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
    
    * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
      [IA64] export account_system_vtime
      [IA64] Bugfix for system with 32 cpus

commit 3a57a788757738b8f80a82d4f5101fefb8fd7a58
Merge: a16b4bc... 06f3ed23...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 19:23:52 2008 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb:
      V4L/DVB (8178): uvc: Fix compilation breakage for the other drivers, if uvc is selected
      V4L/DVB (8145a): USB Video Class driver

commit a16b4bcd31a73a81b6d2b8ffa6b5f6ed01cf6d64
Merge: 15895b9... 4283e1b...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 19:22:54 2008 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:
      ide: fix /proc/ide/ide?/mate reporting
      Revert "BAST: Remove old IDE driver"

commit 15895b932b8a047a1db7006a4f9ca74485d5a826
Merge: 3e2a078... 08383ef...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 19:22:25 2008 -0700

    Merge master.kernel.org:/home/rmk/linux-2.6-arm
    
    * master.kernel.org:/home/rmk/linux-2.6-arm:
      [ARM] 5131/1: Annotate platform_secondary_init with trace_hardirqs_off
      [ARM] 5117/1: pxafb: fix __devinit/exit annotations
      [ARM] Export dma_sync_sg_for_device()
      [ARM] 5109/1: Mark rtc sa1100 driver as wakeup source before registering it
      [ARM] 5116/1: pxafb: cleanup and fix order of failure handling
      [ARM] 5115/1: pxafb: fix ifdef for command line option handling
      ARM: OMAP: Correcting the gpmc prefetch control register address
      ARM: OMAP: DMA: Don't mark channel active in omap_enable_channel_irq

commit 3e2a078ca6a0d3122bbf2b904cd7ccf21a5ca21d
Author: Alan Cox <alan@redhat.com>
Date:   Mon Jun 30 17:40:08 2008 +0100

    tty: Fix inverted logic in send_break
    
    Not sure how this came to get inverted but it appears to have been my
    mess up.
    
    Signed-off-by: Alan Cox <alan@redhat.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit b2a4a7ce3a995b83f59792ec9981d20ac550ccb0
Merge: f7572da... 619b048...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 19:12:53 2008 -0700

    Merge branch 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      sched: fix divide error when trying to configure rt_period to zero

commit f7572da502916e6abac06d698c0b6a7119cea0c1
Merge: c000131... 8e29da9...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 19:00:29 2008 -0700

    Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
    
    * 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
      i2c: Fix bad hint about irqs in i2c.h
      i2c: Documentation: fix device matching description

commit c000131c711f68cb68712e6553ddce5fa6ad5c5c
Merge: 041924e... 8558f8f...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 18:59:45 2008 -0700

    Merge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      rcu: fix hotplug vs rcu race

commit 041924ec2f40efa6a3163144a5481a000804199d
Merge: f36b7a2... efac418...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 18:58:56 2008 -0700

    Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      x86: fix NODES_SHIFT Kconfig range

commit f36b7a2c170ff1dbbb38d235817e04020b196950
Merge: cefcade... ec5e69f...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 18:57:33 2008 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6:
      [SCSI] esp: tidy up target reference counting
      [SCSI] esp: Fix OOPS in esp_reset_cleanup().
      [SCSI] ses: Fix timeout

commit cefcade9e7b2331110fdd709b5871ebcc5f9a40f
Merge: c6b96d1... c7f1b20...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 18:55:17 2008 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm:
      dm crypt: use cond_resched

commit c6b96d195a0fd132d6e8c783216d1d3f686e5ba8
Merge: 79ff1ad... 9bbbca3...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 18:47:10 2008 -0700

    Merge branch 'for-2.6.26' of git://neil.brown.name/md
    
    * 'for-2.6.26' of git://neil.brown.name/md:
      Fix error paths if md_probe fails.
      Don't acknowlege that stripe-expand is complete until it really is.
      Ensure interrupted recovery completed properly (v1 metadata plus bitmap)

commit 79ff1ad2eec1c106962241f6346958b9641e34f3
Merge: 821b03f... 781c74b...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 18:45:29 2008 -0700

    Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
    
    * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
      powerpc/mpc5200: Fix lite5200b suspend/resume
      powerpc/legacy_serial: Bail if reg-offset/shift properties are present
      powerpc/bootwrapper: update for initrd with simpleImage

commit 821b03ffac8851d6bc1d5530183d2ed25adae35d
Merge: 3d25802... 2fe195c...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Jul 2 18:43:16 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: (55 commits)
      net: fib_rules: fix error code for unsupported families
      netdevice: Fix wrong string handle in kernel command line parsing
      net: Tyop of sk_filter() comment
      netlink: Unneeded local variable
      net-sched: fix filter destruction in atm/hfsc qdisc destruction
      net-sched: change tcf_destroy_chain() to clear start of filter list
      ipv4: fix sysctl documentation of time related values
      mac80211: don't accept WEP keys other than WEP40 and WEP104
      hostap: fix sparse warnings
      hostap: don't report useless WDS frames by default
      textsearch: fix Boyer-Moore text search bug
      netfilter: nf_conntrack_tcp: fixing to check the lower bound of valid ACK
      ipv6 route: Convert rt6_device_match() to use RT6_LOOKUP_F_xxx flags.
      netlabel: Fix a problem when dumping the default IPv6 static labels
      net/inet_lro: remove setting skb->ip_summed when not LRO-able
      inet fragments: fix race between inet_frag_find and inet_frag_secret_rebuild
      CONNECTOR: add a proc entry to list connectors
      netlink: Fix some doc comments in net/netlink/attr.c
      tcp: /proc/net/tcp rto,ato values not scaled properly (v2)
      include/linux/netdevice.h: don't export MAX_HEADER to userspace
      ...

commit 3d25802e3ba7c82457b5c12bbfeefe391d8a333e
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date:   Tue Jul 1 12:32:52 2008 -0700

    DRM/i915: only use tiled blits on 965+
    
    When scheduled swaps occur, we need to blit between front & back
    buffers.  If the buffers are tiled, we need to set the appropriate
    XY_SRC_COPY tile bit, but only on 965 chips, since it will cause
    corruption on pre-965 (e.g. 945).
    
    Bug reported by and fix tested by Tomas Janousek <tomi@nomi.cz>.
    
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
    Acked-by: Dave Airlie <airlied@linux.ie>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 83680cdbcecd1fd284ad4df060d12bf214bb63a8
Author: Geert Uytterhoeven <geert@linux-m68k.org>
Date:   Tue Jul 1 13:55:25 2008 +0200

    drivers/input/ff-core.c needs <linux/sched.h>
    
    Commit 656acd2bbc4ce7f224de499ee255698701396c48 ("Input: fix locking in
    force-feedback core") causes the following regression on m68k:
    
    | linux/drivers/input/ff-core.c: In function 'input_ff_upload':
    | linux/drivers/input/ff-core.c:172: error: dereferencing pointer to incomplete type
    | linux/drivers/input/ff-core.c: In function 'erase_effect':
    | linux/drivers/input/ff-core.c:197: error: dereferencing pointer to incomplete type
    | linux/drivers/input/ff-core.c:204: error: dereferencing pointer to incomplete type
    | make[4]: *** [drivers/input/ff-core.o] Error 1
    
    As the incomplete type is `struct task_struct', including <linux/sched.h> fixes
    it.
    
    Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
    Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 781c74b1e660d045c2e380b4ada02534f415685c
Merge: 1e6d1f2... 18d76ac...
Author: Paul Mackerras <paulus@samba.org>
Date:   Thu Jul 3 10:05:59 2008 +1000

    Merge branch 'for-2.6.26' of git://git.secretlab.ca/git/linux-2.6-mpc52xx into merge

commit a13307cef8bf51990ef1d525b1cbdcc2cfe07e2a
Author: Alex Chiang <achiang@hp.com>
Date:   Tue Jul 1 20:02:23 2008 -0600

    PCI: acpiphp: cleanup notify handler on all root bridges
    
    During the development of the physical PCI slot patch series, Gary Hade
    kept on reporting strange oopses due to interactions between pci_slot
    and acpiphp.
    
    	http://lkml.org/lkml/2007/11/28/319
    
    find_root_bridges() unconditionally installs
    handle_hotplug_event_bridge() as an ACPI_SYSTEM_NOTIFY handler for all
    root bridges.
    
    However, during module cleanup, remove_bridge() will only remove the
    notify handler iff the root bridge had a hot-pluggable slot directly
    underneath. That is:
    
    	root bridge -> hotplug slot
    
    But, if the topology looks like either of the following:
    
    	root bridge -> non-hotplug slot
    	root bridge -> p2p bridge -> hotplug slot
    
    Then we currently do not remove the notify handler from that root
    bridge.
    
    This can cause a kernel oops if we modprobe acpiphp later and it gets
    loaded somewhere else in memory. If the root bridge then receives a
    hotplug event, it will then attempt to call a stale, non-existent notify
    handler and we blow up.
    
    Much thanks goes to Gary Hade for his persistent debugging efforts.
    
    Signed-off-by: Alex Chiang <achiang@hp.com>
    Signed-off-by: Gary Hade <garyhade@us.ibm.com>
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

commit 99cb233d60cbe644203f19938c729ea2bb004d70
Author: Benjamin Li <benli@broadcom.com>
Date:   Wed Jul 2 10:59:04 2008 -0700

    PCI: Limit VPD read/write lengths for Broadcom 5706, 5708, 5709 rev.
    
    For Broadcom 5706, 5708, 5709 rev. A nics, any read beyond the
    VPD end tag will hang the device.  This problem was initially
    observed when a vpd entry was created in sysfs
    ('/sys/bus/pci/devices/<id>/vpd').   A read to this sysfs entry
    will dump 32k of data.  Reading a full 32k will cause an access
    beyond the VPD end tag causing the device to hang.  Once the device
    is hung, the bnx2 driver will not be able to reset the device.
    We believe that it is legal to read beyond the end tag and
    therefore the solution is to limit the read/write length.
    
    A majority of this patch is from Matthew Wilcox who gave code for
    reworking the PCI vpd size information.  A PCI quirk added for the
    Broadcom NIC's to limit the read/write's.
    
    Signed-off-by: Benjamin Li <benli@broadcom.com>
    Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

commit 06f3ed23b1e1038da649c4836b51fe035f5536bd
Author: Mauro Carvalho Chehab <mchehab@infradead.org>
Date:   Wed Jul 2 11:03:33 2008 -0300

    V4L/DVB (8178): uvc: Fix compilation breakage for the other drivers, if uvc is selected
    
    UVC makefile defines obj as:
    	obj-$(CONFIG_USB_VIDEO_CLASS) := uvcvideo.o
    Instead of:
    	obj-$(CONFIG_USB_VIDEO_CLASS) += uvcvideo.o
    
    Due to that, if uvc is selected, all obj-y or obj-m that were added to
    compilation were forget. This breaks a proper kernel build.
    
    Acked-by: Laurent Pinchart <laurent.pinchart@skynet.be>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit c7f1b2044191a82e7f0a1a674751ed582289e2e0
Author: Milan Broz <mbroz@redhat.com>
Date:   Wed Jul 2 09:34:28 2008 +0100

    dm crypt: use cond_resched
    
    Add cond_resched() to prevent monopolising CPU when processing large bios.
    
    dm-crypt processes encryption of bios in sector units.  If the bio request
    is big it can spend a long time in the encryption call.
    
    Signed-off-by: Milan Broz <mbroz@redhat.com>
    Tested-by: Yan Li <elliot.li.tech@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>

commit 2fe195cfe3e53c144d247b2768e37732e8eae4d8
Author: Patrick McHardy <kaber@trash.net>
Date:   Tue Jul 1 19:59:37 2008 -0700

    net: fib_rules: fix error code for unsupported families
    
    The errno code returned must be negative.
    
    Fixes "RTNETLINK answers: Unknown error 18446744073709551519".
    
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 93b3cff9915322d6fa36bac0064714a7076230e4
Author: Wang Chen <wangchen@cn.fujitsu.com>
Date:   Tue Jul 1 19:57:19 2008 -0700

    netdevice: Fix wrong string handle in kernel command line parsing
    
    v1->v2: Use strlcpy() to ensure s[i].name be null-termination.
    
    1. In netdev_boot_setup_add(), a long name will leak.
       ex. : dev=21,0x1234,0x1234,0x2345,eth123456789verylongname.........
    2. In netdev_boot_setup_check(), mismatch will happen if s[i].name
       is a substring of dev->name.
       ex. : dev=...eth1 dev=...eth11
    
    [ With feedback from Ben Hutchings. ]
    
    Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 8fde8a076940969d32805b853efdce8b988d7dda
Author: Wang Chen <wangchen@cn.fujitsu.com>
Date:   Tue Jul 1 19:55:40 2008 -0700

    net: Tyop of sk_filter() comment
    
    Parameter "needlock" no long exists.
    
    Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 8487460720fd03a0f4ecd032f017b0a8468028da
Author: Wang Chen <wangchen@cn.fujitsu.com>
Date:   Tue Jul 1 19:55:09 2008 -0700

    netlink: Unneeded local variable
    
    We already have a variable, which has the same capability.
    
    Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit a4aebb83cf0da0363684f1c339f7e6149a3e74c1
Author: Patrick McHardy <kaber@trash.net>
Date:   Tue Jul 1 19:53:09 2008 -0700

    net-sched: fix filter destruction in atm/hfsc qdisc destruction
    
    Filters need to be destroyed before beginning to destroy classes
    since the destination class needs to still be alive to unbind the
    filter.
    
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit ff31ab56c0e900235f653e375fc3b01ba2d8d6a3
Author: Patrick McHardy <kaber@trash.net>
Date:   Tue Jul 1 19:52:38 2008 -0700

    net-sched: change tcf_destroy_chain() to clear start of filter list
    
    Pass double tcf_proto pointers to tcf_destroy_chain() to make it
    clear the start of the filter list for more consistency.
    
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 77a538d5aa25a8866606a1faa4300c9aa2a59dfc
Author: Stephen Hemminger <shemminger@vyatta.com>
Date:   Tue Jul 1 17:22:48 2008 -0700

    ipv4: fix sysctl documentation of time related values
    
    These sysctl values are time related and all use the same routine
    (proc_dointvec_jiffies) that internally converts from seconds to jiffies.
    The code is fine, the documentation is just wrong.
    
    Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 18d76ac9a47742558bca3bbc2f7c41870ac744c8
Author: Tim Yamin <plasm@roo.me.uk>
Date:   Tue Jun 17 09:33:14 2008 +0100

    powerpc/mpc5200: Fix lite5200b suspend/resume
    
    Suspend/resume ("echo mem > /sys/power/state") does not work with
    vanilla kernels -- the system does not suspend correctly and just
    hangs. This patch fixes this so suspend/resume works:
    
    1) of_iomap does not map the whole 0xC000 of the MPC5200 immr so
    saving registers does not work.
    2) PCI registers need to be saved and restored.
    
    Signed-off-by: Tim Yamin <plasm@roo.me.uk>
    Signed-off-by: Grant Likely <grant.likely@secretlab.ca>

commit 1e6d1f260611387a7b4e6eae4d1dd6f62e53714d
Author: John Linn <john.linn@xilinx.com>
Date:   Tue Jul 1 10:52:41 2008 -0700

    powerpc/legacy_serial: Bail if reg-offset/shift properties are present
    
    The legacy serial driver does not work with an 8250 type UART that is
    described in the device tree with the reg-offset and reg-shift
    properties.  This change makes legacy_serial ignore these devices.
    
    Signed-off-by: John Linn <john.linn@xilinx.com>
    Signed-off-by: Grant Likely <grant.likely@secretlab.ca>

commit 8e29da9ee8958cc17e27f4053420f1c982614793
Author: Wolfram Sang <w.sang@pengutronix.de>
Date:   Tue Jul 1 22:38:18 2008 +0200

    i2c: Fix bad hint about irqs in i2c.h
    
    i2c.h mentions -1 as a not-issued irq. This false hint was taken by
    of_i2c and caused crashes. Don't give any advice as 'no irq' is not
    consistent across all architectures yet and it is not needed internally
    by the i2c-core.
    
    Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
    Signed-off-by: Jean Delvare <khali@linux-fr.org>

commit 2260e63a2f313f416b31af80d02f02ef92d20d78
Author: Ben Dooks <ben-linux@fluff.org>
Date:   Tue Jul 1 22:38:18 2008 +0200

    i2c: Documentation: fix device matching description
    
    The matching process described for new style clients in
    Documentation/i2c/writing-clients is classed as out-of-date
    as it requires the presence of an .id_table entry in the
    driver's i2c_driver entry.
    
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
    Signed-off-by: Jean Delvare <khali@linux-fr.org>

commit 5d1a04110bfc40a86e1387b5f4382addd9aa7fbb
Author: John Linn <john.linn@xilinx.com>
Date:   Tue Jul 1 14:17:18 2008 -0600

    powerpc/bootwrapper: update for initrd with simpleImage
    
    This change to the makefile corrects the build of a simpleImage with initrd.
    
    Signed-off-by: John Linn <john.linn@xilinx>
    Signed-off-by: Grant Likely <grant.likely@secretlab.ca>

commit a94c248113b86bbbc47d027a4004b70f2be298b1
Author: Ben Hutchings <bhutchings@solarflare.com>
Date:   Tue Jul 1 17:18:17 2008 +0100

    PCI: Restrict VPD read permission to root
    
    Some PCI devices will lock up if we attempt to read from VPD addresses
    beyond some device-dependent limit.  Until we can identify these
    devices and adjust the file size accordingly, only let root read VPD
    through sysfs to prevent a DoS by normal users.
    
    Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

commit d150a4bbd0e5c6427e66086b139953428680160b
Author: Ben Dooks <ben-linux@fluff.org>
Date:   Tue Jul 1 11:59:43 2008 +0100

    I2C: S3C2410: Add MODULE_ALIAS() for s3c2440 device.
    
    Add a MODULE_ALIAS() statement for the i2c-s3c2410 controller
    to ensure that it can be autoloaded on the S3C2440 systems that
    we support.
    
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>

commit 63f5c2891eae6b4dd0538ef094e5f256d6150d7b
Author: Ben Dooks <ben-linux@fluff.org>
Date:   Tue Jul 1 11:59:42 2008 +0100

    I2C: S3C2410: Fixup error codes returned rom a transfer.
    
    The driver should be returning -ENXIO for transfers that do not
    pass the initial address byte stage.
    
    Note, also small tidyups to the driver comments in the area.
    
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>

commit 2709781be6141798162f1089df728fb218a590df
Author: Ben Dooks <ben-linux@fluff.org>
Date:   Tue Jul 1 11:59:41 2008 +0100

    I2C: S3C2410: Check ACK on byte transmission
    
    We should check for the reception of an ACK after transmitting each
    data byte. The address send has been correctly checking this, but the
    data write byte state should have also been checking for these failures.
    
    As part of the same fix, we remove the ACK checking from the receive
    path where it should not have been checking for an ACK which our hardware
    was sending.
    
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>

commit 8558f8f81680a43d383abd1b5f23d3501fedfa65
Author: Gautham R Shenoy <ego@in.ibm.com>
Date:   Fri Jun 27 10:17:38 2008 +0530

    rcu: fix hotplug vs rcu race
    
    Dhaval Giani reported this warning during cpu hotplug stress-tests:
    
    | On running kernel compiles in parallel with cpu hotplug:
    |
    | WARNING: at arch/x86/kernel/smp.c:118
    | native_smp_send_reschedule+0x21/0x36()
    | Modules linked in:
    | Pid: 27483, comm: cc1 Not tainted 2.6.26-rc7 #1
    | [...]
    |  [<c0110355>] native_smp_send_reschedule+0x21/0x36
    |  [<c014fe8f>] force_quiescent_state+0x47/0x57
    |  [<c014fef0>] call_rcu+0x51/0x6d
    |  [<c01713b3>] __fput+0x130/0x158
    |  [<c0171231>] fput+0x17/0x19
    |  [<c016fd99>] filp_close+0x4d/0x57
    |  [<c016fdff>] sys_close+0x5c/0x97
    
    IMHO the warning is a spurious one.
    
    cpu_online_map is updated by the _cpu_down() using stop_machine_run().
    Since force_quiescent_state is invoked from irqs disabled section,
    stop_machine_run() won't be executing while a cpu is executing
    force_quiescent_state(). Hence the cpu_online_map is stable while we're
    in the irq disabled section.
    
    However, a cpu might have been offlined _just_ before we disabled irqs
    while entering force_quiescent_state(). And rcu subsystem might not yet
    have handled the CPU_DEAD notification, leading to the offlined cpu's
    bit being set in the rcp->cpumask.
    
    Hence cpumask = (rcp->cpumask & cpu_online_map) to prevent sending
    smp_reschedule() to an offlined CPU.
    
    Here's the timeline:
    
    CPU_A						 CPU_B
    --------------------------------------------------------------
    cpu_down():					.
    .					   	.
    .						.
    stop_machine(): /* disables preemption,		.
    		 * and irqs */			.
    .						.
    .						.
    take_cpu_down();				.
    .						.
    .						.
    .						.
    cpu_disable(); /*this removes cpu 		.
    		*from cpu_online_map 		.
    		*/				.
    .						.
    .						.
    restart_machine(); /* enables irqs */		.
    ------WINDOW DURING WHICH rcp->cpumask is stale ---------------
    .						call_rcu();
    .						/* disables irqs here */
    .						.force_quiescent_state();
    .CPU_DEAD:					.for_each_cpu(rcp->cpumask)
    .						.   smp_send_reschedule();
    .						.
    .						.   WARN_ON() for offlined CPU!
    .
    .
    .
    rcu_cpu_notify:
    .
    -------- WINDOW ENDS ------------------------------------------
    rcu_offline_cpu() /* Which calls cpu_quiet()
    		   * which removes
    		   * cpu from rcp->cpumask.
    		   */
    
    If a new batch was started just before calling stop_machine_run(), the
    "tobe-offlined" cpu is still present in rcp-cpumask.
    
    During a cpu-offline, from take_cpu_down(), we queue an rt-prio idle
    task as the next task to be picked by the scheduler. We also call
    cpu_disable() which will disable any further interrupts and remove the
    cpu's bit from the cpu_online_map.
    
    Once the stop_machine_run() successfully calls take_cpu_down(), it calls
    schedule(). That's the last time a schedule is called on the offlined
    cpu, and hence the last time when rdp->passed_quiesc will be set to 1
    through rcu_qsctr_inc().
    
    But the cpu_quiet() will be on this cpu will be called only when the
    next RCU_SOFTIRQ occurs on this CPU. So at this time, the offlined CPU
    is still set in rcp->cpumask.
    
    Now coming back to the idle_task which truely offlines the CPU, it does
    check for a pending RCU and raises the softirq, since it will find
    rdp->passed_quiesc to be 0 in this case. However, since the cpu is
    offline I am not sure if the softirq will trigger on the CPU.
    
    Even if it doesn't the rcu_offline_cpu() will find that rcp->completed
    is not the same as rcp->cur, which means that our cpu could be holding
    up the grace period progression. Hence we call cpu_quiet() and move
    ahead.
    
    But because of the window explained in the timeline, we could still have
    a call_rcu() before the RCU subsystem executes it's CPU_DEAD
    notification, and we send smp_send_reschedule() to offlined cpu while
    trying to force the quiescent states. The appended patch adds comments
    and prevents checking for offlined cpu everytime.
    
    cpu_online_map is updated by the _cpu_down() using stop_machine_run().
    Since force_quiescent_state is invoked from irqs disabled section,
    stop_machine_run() won't be executing while a cpu is executing
    force_quiescent_state(). Hence the cpu_online_map is stable while we're
    in the irq disabled section.
    
    Reported-by: Dhaval Giani <dhaval@linux.vnet.ibm.com>
    Signed-off-by: Gautham R Shenoy <ego@in.ibm.com>
    Acked-by: Dhaval Giani <dhaval@linux.vnet.ibm.com>
    Cc: Dipankar Sarma <dipankar@in.ibm.com>
    Cc: laijs@cn.fujitsu.com
    Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Cc: Rusty Russel <rusty@rustcorp.com.au>
    Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 18ce3751ccd488c78d3827e9f6bf54e6322676fb
Author: Jens Axboe <jens.axboe@oracle.com>
Date:   Tue Jul 1 09:07:34 2008 +0200

    Properly notify block layer of sync writes
    
    fsync_buffers_list() and sync_dirty_buffer() both issue async writes and
    then immediately wait on them. Conceptually, that makes them sync writes
    and we should treat them as such so that the IO schedulers can handle
    them appropriately.
    
    This patch fixes a write starvation issue that Lin Ming reported, where
    xx is stuck for more than 2 minutes because of a large number of
    synchronous IO in the system:
    
    INFO: task kjournald:20558 blocked for more than 120 seconds.
    "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this
    message.
    kjournald     D ffff810010820978  6712 20558      2
    ffff81022ddb1d10 0000000000000046 ffff81022e7baa10 ffffffff803ba6f2
    ffff81022ecd0000 ffff8101e6dc9160 ffff81022ecd0348 000000008048b6cb
    0000000000000086 ffff81022c4e8d30 0000000000000000 ffffffff80247537
    Call Trace:
    [<ffffffff803ba6f2>] kobject_get+0x12/0x17
    [<ffffffff80247537>] getnstimeofday+0x2f/0x83
    [<ffffffff8029c1ac>] sync_buffer+0x0/0x3f
    [<ffffffff8066d195>] io_schedule+0x5d/0x9f
    [<ffffffff8029c1e7>] sync_buffer+0x3b/0x3f
    [<ffffffff8066d3f0>] __wait_on_bit+0x40/0x6f
    [<ffffffff8029c1ac>] sync_buffer+0x0/0x3f
    [<ffffffff8066d48b>] out_of_line_wait_on_bit+0x6c/0x78
    [<ffffffff80243909>] wake_bit_function+0x0/0x23
    [<ffffffff8029e3ad>] sync_dirty_buffer+0x98/0xcb
    [<ffffffff8030056b>] journal_commit_transaction+0x97d/0xcb6
    [<ffffffff8023a676>] lock_timer_base+0x26/0x4b
    [<ffffffff8030300a>] kjournald+0xc1/0x1fb
    [<ffffffff802438db>] autoremove_wake_function+0x0/0x2e
    [<ffffffff80302f49>] kjournald+0x0/0x1fb
    [<ffffffff802437bb>] kthread+0x47/0x74
    [<ffffffff8022de51>] schedule_tail+0x28/0x5d
    [<ffffffff8020cac8>] child_rip+0xa/0x12
    [<ffffffff80243774>] kthread+0x0/0x74
    [<ffffffff8020cabe>] child_rip+0x0/0x12
    
    Lin Ming confirms that this patch fixes the issue. I've run tests with
    it for the past week and no ill effects have been observed, so I'm
    proposing it for inclusion into 2.6.26.
    
    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>

commit d585d0b9d73ed999cc7b8cf3cac4a5b01abb544e
Author: Divyesh Shah <dpshah@google.com>
Date:   Mon Jun 16 18:37:08 2008 +0200

    block: Fix the starving writes bug in the anticipatory IO scheduler
    
    AS scheduler alternates between issuing read and write batches. It does
    the batch switch only after all requests from the previous batch are
    completed.
    
    When switching to a write batch, if there is an on-going read request,
    it waits for its completion and indicates its intention of switching by
    setting ad->changed_batch and the new direction but does not update the
    batch_expire_time for the new write batch which it does in the case of
    no previous pending requests.
    On completion of the read request, it sees that we were waiting for the
    switch and schedules work for kblockd right away and resets the
    ad->changed_data flag.
    Now when kblockd enters dispatch_request where it is expected to pick
    up a write request, it in turn ends the write batch because the
    batch_expire_timer was not updated and shows the expire timestamp for
    the previous batch.
    
    This results in the write starvation for all the cases where there is
    the intention for switching to a write batch, but there is a previous
    in-flight read request and the batch gets reverted to a read_batch
    right away.
    
    This also holds true in the reverse case (switching from a write batch
    to a read batch with an in-flight write request).
    
    I've checked that this bug exists on 2.6.11, 2.6.18, 2.6.24 and
    linux-2.6-block git HEAD. I've tested the fix on x86 platforms with
    SCSI drives where the driver asks for the next request while a current
    request is in-flight.
    
    This patch is based off linux-2.6-block git HEAD.
    
    Bug reproduction:
    A simple scenario which reproduces this bug is:
    - dd if=/dev/hda3 of=/dev/null &
    - lilo
       The lilo takes forever to complete.
    
    This can also be reproduced fairly easily with the earlier dd and
    another test
    program doing msync().
    
    The example test program below should print out a message after every
    iteration
    but it simply hangs forever. With this bugfix it makes forward progress.
    
    ====
    Example test program using msync() (thanks to suleiman AT google DOT
    com)
    
    inline uint64_t
    rdtsc(void)
    {
             int64_t tsc;
    
             __asm __volatile("rdtsc" : "=A" (tsc));
             return (tsc);
    }
    
    int
    main(int argc, char **argv)
    {
             struct stat st;
             uint64_t e, s, t;
             char *p, q;
             long i;
             int fd;
    
             if (argc < 2) {
                     printf("Usage: %s <file>\n", argv[0]);
                     return (1);
             }
    
             if ((fd = open(argv[1], O_RDWR | O_NOATIME)) < 0)
                     err(1, "open");
    
             if (fstat(fd, &st) < 0)
                     err(1, "fstat");
    
             p = mmap(NULL, st.st_size, PROT_READ | PROT_WRITE,
    MAP_SHARED, fd, 0);
    
             t = 0;
             for (i = 0; i < 1000; i++) {
                     *p = 0;
                     msync(p, 4096, MS_SYNC);
                     s = rdtsc();
                    *p = 0;
                     __asm __volatile(""::: "memory");
                     e = rdtsc();
                     if (argc > 2)
                             printf("%d: %lld cycles %jd %jd\n",
                                    i, e - s, (intmax_t)s, (intmax_t)e);
                     t += e - s;
             }
             printf("average time: %lld cycles\n", t / 1000);
             return (0);
    }
    
    Cc: <stable@kernel.org>
    Acked-by: Nick Piggin <npiggin@suse.de>
    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>

commit efac41894df57d32b483ac622d03541b5b2692c0
Author: Thomas Gleixner <tglx@linutronix.de>
Date:   Tue Jul 1 08:56:32 2008 +0200

    x86: fix NODES_SHIFT Kconfig range
    
    commit 4323838215184f5a2f081e0d17b8d60731b03164
           x86: change size of node ids from u8 to s16
    
    set the range for NODES_SHIFT to 1..15.
    
    The possible range is 1..9
    
    Fixes Bugzilla #10726
    
    Reported-by: Dave Jones <davej@codemonkey.org.uk>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

commit 619b0488038224391e64fa03854651ca0f5efe56
Author: Raistlin <raistlin@linux.it>
Date:   Thu Jun 26 18:54:09 2008 +0200

    sched: fix divide error when trying to configure rt_period to zero
    
    Here it is another little Oops we found while configuring invalid values
    via cgroups:
    
    echo 0 > /dev/cgroups/0/cpu.rt_period_us
    or
    echo 4294967296 > /dev/cgroups/0/cpu.rt_period_us
    
    [  205.509825] divide error: 0000 [#1]
    [  205.510151] Modules linked in:
    [  205.510151]
    [  205.510151] Pid: 2339, comm: bash Not tainted (2.6.26-rc8 #33)
    [  205.510151] EIP: 0060:[<c030c6ef>] EFLAGS: 00000293 CPU: 0
    [  205.510151] EIP is at div64_u64+0x5f/0x70
    [  205.510151] EAX: 0000389f EBX: 00000000 ECX: 00000000 EDX: 00000000
    [  205.510151] ESI: d9800000 EDI: 00000000 EBP: c6cede60 ESP: c6cede50
    [  205.510151]  DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068
    [  205.510151] Process bash (pid: 2339, ti=c6cec000 task=c79be370 task.ti=c6cec000)
    [  205.510151] Stack: d9800000 0000389f c05971a0 d9800000 c6cedeb4 c0214dbd 00000000 00000000
    [  205.510151]        c6cede88 c0242bd8 c05377c0 c7a41b40 00000000 00000000 00000000 c05971a0
    [  205.510151]        c780ed20 c7508494 c7a41b40 00000000 00000002 c6cedebc c05971a0 ffffffea
    [  205.510151] Call Trace:
    [  205.510151]  [<c0214dbd>] ? __rt_schedulable+0x1cd/0x240
    [  205.510151]  [<c0242bd8>] ? cgroup_file_open+0x18/0xe0
    [  205.510151]  [<c0214fe4>] ? tg_set_bandwidth+0xa4/0xf0
    [  205.510151]  [<c0215066>] ? sched_group_set_rt_period+0x36/0x50
    [  205.510151]  [<c021508e>] ? cpu_rt_period_write_uint+0xe/0x10
    [  205.510151]  [<c0242dc5>] ? cgroup_file_write+0x125/0x160
    [  205.510151]  [<c0232c15>] ? hrtimer_interrupt+0x155/0x190
    [  205.510151]  [<c02f047f>] ? security_file_permission+0xf/0x20
    [  205.510151]  [<c0277ad8>] ? rw_verify_area+0x48/0xc0
    [  205.510151]  [<c0283744>] ? dupfd+0x104/0x130
    [  205.510151]  [<c027838c>] ? vfs_write+0x9c/0x160
    [  205.510151]  [<c0242ca0>] ? cgroup_file_write+0x0/0x160
    [  205.510151]  [<c027850d>] ? sys_write+0x3d/0x70
    [  205.510151]  [<c0203019>] ? sysenter_past_esp+0x6a/0x91
    [  205.510151]  =======================
    [  205.510151] Code: 0f 45 de 31 f6 0f ad d0 d3 ea f6 c1 20 0f 45 c2 0f 45 d6 89 45 f0 89 55 f4 8b 55 f4 31 c9 8b 45 f0 39 d3 89 c6 77 08 89 d0 31 d2 <f7> f3 89 c1 83 c4 08 89 f0 f7 f3 89 ca 5b 5e 5d c3 55 89 e5 56
    [  205.510151] EIP: [<c030c6ef>] div64_u64+0x5f/0x70 SS:ESP 0068:c6cede50
    
    The attached patch solves the issue for me.
    
    I'm checking as soon as possible for the period not being zero since, if
    it is, going ahead is useless. This way we also save a mutex_lock() and
    a read_lock() wrt doing it inside tg_set_bandwidth() or
    __rt_schedulable().
    
    Signed-off-by: Dario Faggioli <raistlin@linux.it>
    Signed-off-by: Michael Trimarchi <trimarchimichael@yahoo.it>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 3a677d216445dba3332a000063405de3fc135859
Author: Doug Chapman <doug.chapman@hp.com>
Date:   Mon Jun 30 15:06:48 2008 -0700

    [IA64] export account_system_vtime
    
    The symbol account_system_vtime is used by the kvm module but
    not exported.  This breaks building with CONFIG_VIRT_CPU_ACCOUNTING
    and CONFIG_KVM=m.
    
    Signed-off-by: Doug Chapman <doug.chapman@hp.com>
    Acked-by: Hidetosho Seto <seto.hidetoshi@jp.fujitsu.com>
    Signed-off-by: Tony Luck <tony.luck@intel.com>

commit dd4f0888f8b42a97c93a66617a4f9acaff3089d6
Author: Tony Luck <tony.luck@intel.com>
Date:   Mon Jun 30 15:03:14 2008 -0700

    [IA64] Bugfix for system with 32 cpus
    
    On a system where there are no hot pluggable cpus "additional_cpus"
    is still set to -1 at the point where we call per_cpu_scan_finalize().
    If we didn't find an SRAT table and so pick the default "32" for the
    number of cpus, when we get to:
    high_cpu = min(high_cpu + reserve_cpus, NR_CPUS);
    we will end up initializing for just 31 cpus ... and so we will
    die horribly when bringing up cpu#32.
    
    Problem introduced by: 2c6e6db41f01b6b4eb98809350827c9678996698
    "Minimize per_cpu reservations."
    
    Acked-by: Robin Holt <holt@sgi.com>
    Signed-off-by: Tony Luck <tony.luck@intel.com>

commit c0efd232929c2cd87238de2cccdaf4e845be5b0c
Author: Laurent Pinchart <laurent.pinchart@skynet.be>
Date:   Mon Jun 30 15:04:50 2008 -0300

    V4L/DVB (8145a): USB Video Class driver
    
    This driver supports video input devices compliant with the USB Video Class
    specification. This means lots of currently manufactured webcams, and probably
    most of the future ones.
    
    Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 2a64cc4b793f8a84969401afe5a28bd08bc20c9b
Merge: aebb6a8... 23976ef...
Author: David S. Miller <davem@davemloft.net>
Date:   Mon Jun 30 13:18:53 2008 -0700

    Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6

commit 23976efedd5ecb420b87455787c537eb4aed1981
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Sat Jun 28 02:50:13 2008 +0300

    mac80211: don't accept WEP keys other than WEP40 and WEP104
    
    This patch makes mac80211 refuse a WEP key whose length is not WEP40 nor
    WEP104.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 1bcca3c463e4930cef9986b05165bb0b3eb46f63
Author: Pavel Roskin <proski@gnu.org>
Date:   Fri Jun 27 16:19:58 2008 -0400

    hostap: fix sparse warnings
    
    Rewrite AID calculation in handle_pspoll() to avoid truncating bits.
    Make hostap_80211_header_parse() static, don't export it.  Avoid
    shadowing variables.
    
    Signed-off-by: Pavel Roskin <proski@gnu.org>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 15ea0ebc5b7305cc75189cb6b7924d0db5278e0c
Author: Pavel Roskin <proski@gnu.org>
Date:   Fri Jun 27 16:19:52 2008 -0400

    hostap: don't report useless WDS frames by default
    
    DEBUG_EXTRA is reported to the kernel log by default, but DEBUG_EXTRA2
    is not.  Unrelated WDS frames pollute the log unnecessarily.
    
    Signed-off-by: Pavel Roskin <proski@gnu.org>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit aebb6a849cfe7d89bcacaaecc20a480dfc1180e7
Author: Joonwoo Park <joonwpark81@gmail.com>
Date:   Mon Jun 30 12:42:23 2008 -0700

    textsearch: fix Boyer-Moore text search bug
    
    The current logic has a bug which cannot find matching pattern, if the
    pattern is matched from the first character of target string.
    for example:
    	pattern=abc, string=abcdefg
    	pattern=a,   string=abcdefg
    Searching algorithm should return 0 for those things.
    
    Signed-off-by: Joonwoo Park <joonwpark81@gmail.com>
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 84ebe1cdae56707b9aa1b40ae5aa7d817ba745f5
Author: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Date:   Mon Jun 30 12:41:30 2008 -0700

    netfilter: nf_conntrack_tcp: fixing to check the lower bound of valid ACK
    
    Lost connections was reported by Thomas Bätzler (running 2.6.25 kernel) on
    the netfilter mailing list (see the thread "Weird nat/conntrack Problem
    with PASV FTP upload"). He provided tcpdump recordings which helped to
    find a long lingering bug in conntrack.
    
    In TCP connection tracking, checking the lower bound of valid ACK could
    lead to mark valid packets as INVALID because:
    
     - We have got a "higher or equal" inequality, but the test checked
       the "higher" condition only; fixed.
     - If the packet contains a SACK option, it could occur that the ACK
       value was before the left edge of our (S)ACK "window": if a previous
       packet from the other party intersected the right edge of the window
       of the receiver, we could move forward the window parameters beyond
       accepting a valid ack. Therefore in this patch we check the rightmost
       SACK edge instead of the ACK value in the lower bound of valid (S)ACK
       test.
    
    Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 4283e1babe167e0ba856bb5d039465358e90785c
Author: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Date:   Mon Jun 30 20:14:45 2008 +0200

    ide: fix /proc/ide/ide?/mate reporting
    
    Now that we support warm-plug mate port will be registered
    even if there are no devices attached to it.
    
    Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

commit a529b59060862b36a4dae968534e090c6c77272e
Author: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Date:   Mon Jun 30 20:13:31 2008 +0200

    Revert "BAST: Remove old IDE driver"
    
    This reverts commit ac1623625c5818bbdf5c68973098ba386ba7a004.
    
    It was premature to remove it now, we will do it post-2.6.26.
    
    Thanks to Russell King for noticing the issue.
    
    Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

commit 08383ef29faa7fa247962e6b8662c8683e34da01
Author: Catalin Marinas <catalin.marinas@arm.com>
Date:   Fri Jun 27 15:15:12 2008 +0100

    [ARM] 5131/1: Annotate platform_secondary_init with trace_hardirqs_off
    
    This patch annotates the platform_secondary_init function in
    arch/arm/mach-realview/platsmp.c with trace_hardirqs_off to avoid a
    warning when LOCKDEP and TRACE_IRQFLAGS are enabled.
    
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

commit e1441b9a41c33aa9236008a7cfe49a8e723fb397
Merge: 70c8505... 656acd2...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Mon Jun 30 08:58:09 2008 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
      Input: fix locking in force-feedback core
      Input: add KEY_MEDIA_REPEAT definition

commit 70c85057e0bde35eb56352a293ecb5d1641a0334
Merge: e6100f2... d7ee560...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Mon Jun 30 08:57:43 2008 -0700

    Merge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      debugobjects: fix lockdep warning

commit e6100f23375c0c71ce595d04551fa6553b611918
Merge: bbad5d4... 79c5379...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Mon Jun 30 08:57:19 2008 -0700

    Merge branch 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      sched: fix cpu hotplug

commit bbad5d4750ab3b44a196f9bdd982972e41b7e520
Merge: 1702b52... 11dbc96...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Mon Jun 30 08:56:57 2008 -0700

    Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      ptrace GET/SET FPXREGS broken
      x86: fix cpu hotplug crash
      x86: section/warning fixes
      x86: shift bits the right way in native_read_tscp

commit 656acd2bbc4ce7f224de499ee255698701396c48
Author: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date:   Thu Jun 26 11:30:02 2008 -0400

    Input: fix locking in force-feedback core
    
    The newly added event_lock spinlock in the input core disallows sleeping
    and therefore using mutexes in event handlers. Convert force-feedback
    core to rely on event_lock instead of mutex to protect slots allocated
    for fore-feedback effects. The original mutex is still used to serialize
    uploading and erasing of effects.
    
    Reported-by: Anssi Hannula <anssi.hannula@gmail.com>
    Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

commit 4bbff7e408a54cce88d26191191e8bcda2a60d55
Author: Bastien Nocera <hadess@hadess.net>
Date:   Thu Jun 26 09:13:48 2008 -0400

    Input: add KEY_MEDIA_REPEAT definition
    
    This patch adds the Repeat key to the input layer. The usage
    in the HUT is 0xBC (listed under "15.7 Transport Controls").
    
    Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

commit 11dbc963a8f6128595d0f6ecf138dc369e144997
Author: TAKADA Yoshihito <takada@mbf.nifty.com>
Date:   Mon Jun 30 13:44:45 2008 +0900

    ptrace GET/SET FPXREGS broken
    
    When I update kernel 2.6.25 from 2.6.24, gdb does not work.
    On 2.6.25, ptrace(PTRACE_GETFPXREGS, ...) returns ENODEV.
    
    But 2.6.24 kernel's ptrace() returns EIO.
    It is issue of compatibility.
    
    I attached test program as pt.c and patch for fix it.
    
    #include <stdio.h>
    #include <stdlib.h>
    #include <unistd.h>
    #include <signal.h>
    #include <errno.h>
    #include <sys/ptrace.h>
    #include <sys/types.h>
    
    struct user_fxsr_struct {
    	unsigned short	cwd;
    	unsigned short	swd;
    	unsigned short	twd;
    	unsigned short	fop;
    	long	fip;
    	long	fcs;
    	long	foo;
    	long	fos;
    	long	mxcsr;
    	long	reserved;
    	long	st_space[32];	/* 8*16 bytes for each FP-reg = 128 bytes */
    	long	xmm_space[32];	/* 8*16 bytes for each XMM-reg = 128 bytes */
    	long	padding[56];
    };
    
    int main(void)
    {
      pid_t pid;
    
      pid = fork();
    
      switch(pid){
      case -1:/*  error */
        break;
      case 0:/*  child */
        child();
        break;
      default:
        parent(pid);
        break;
      }
      return 0;
    }
    
    int child(void)
    {
      ptrace(PTRACE_TRACEME);
      kill(getpid(), SIGSTOP);
      sleep(10);
      return 0;
    }
    int parent(pid_t pid)
    {
      int ret;
      struct user_fxsr_struct fpxregs;
    
      ret = ptrace(PTRACE_GETFPXREGS, pid, 0, &fpxregs);
      if(ret < 0){
        printf("%d: %s.\n", errno, strerror(errno));
      }
      kill(pid, SIGCONT);
      wait(pid);
      return 0;
    }
    
    /* in the kerel, at kernel/i387.c get_fpxregs() */
    
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit fcb43042ef55d2f46b0efa5d7746967cef38f056
Author: Zhang, Yanmin <yanmin_zhang@linux.intel.com>
Date:   Tue Jun 24 16:06:23 2008 +0800

    x86: fix cpu hotplug crash
    
    Vegard Nossum reported crashes during cpu hotplug tests:
    
      http://marc.info/?l=linux-kernel&m=121413950227884&w=4
    
    In function _cpu_up, the panic happens when calling
    __raw_notifier_call_chain at the second time. Kernel doesn't panic when
    calling it at the first time. If just say because of nr_cpu_ids, that's
    not right.
    
    By checking the source code, I found that function do_boot_cpu is the culprit.
    Consider below call chain:
     _cpu_up=>__cpu_up=>smp_ops.cpu_up=>native_cpu_up=>do_boot_cpu.
    
    So do_boot_cpu is called in the end. In do_boot_cpu, if
    boot_error==true, cpu_clear(cpu, cpu_possible_map) is executed. So later
    on, when _cpu_up calls __raw_notifier_call_chain at the second time to
    report CPU_UP_CANCELED, because this cpu is already cleared from
    cpu_possible_map, get_cpu_sysdev returns NULL.
    
    Many resources are related to cpu_possible_map, so it's better not to
    change it.
    
    Below patch against 2.6.26-rc7 fixes it by removing the bit clearing in
    cpu_possible_map.
    
    Signed-off-by: Zhang Yanmin <yanmin_zhang@linux.intel.com>
    Tested-by: Vegard Nossum <vegard.nossum@gmail.com>
    Acked-by: Rusty Russell <rusty@rustcorp.com.au>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 1702b52092e9a6d05398d3f9581ddc050ef00d06
Merge: 0acbbee... a178987...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Sun Jun 29 12:22:55 2008 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (42 commits)
      V4L/DVB (8108): Fix open/close race in saa7134
      V4L/DVB (8100): V4L/vivi: fix possible memory leak in vivi_fillbuff
      V4L/DVB (8097): xc5000: check device hardware state to determine if firmware download is needed
      V4L/DVB (8096): au8522: prevent false-positive lock status
      V4L/DVB (8092): videodev: simplify and fix standard enumeration
      V4L/DVB (8075): stv0299: Uncorrected block count and bit error rate fixed
      V4L/DVB (8074): av7110: OSD transfers should not be interrupted
      V4L/DVB (8073): av7110: Catch another type of ARM crash
      V4L/DVB (8071): tda10023: Fix possible kernel oops during initialisation
      V4L/DVB (8069): cx18: Fix S-Video and Compsite inputs for the Yuan MPC718 and enable card entry
      V4L/DVB (8068): cx18: Add I2C slave reset via GPIO upon initialization
      V4L/DVB (8067): cx18: Fix firmware load for case when digital capture happens first
      V4L/DVB (8066): cx18: Fix audio mux input definitions for HVR-1600 Line In 2 and FM radio
      V4L/DVB (8063): cx18: Fix unintended auto configurations in cx18-av-core
      V4L/DVB (8061): cx18: only select tuner / frontend modules if !DVB_FE_CUSTOMISE
      V4L/DVB (8048): saa7134: Fix entries for Avermedia A16d and Avermedia E506
      V4L/DVB (8044): au8522: tuning optimizations
      V4L/DVB (8043): au0828: add support for additional USB device id's
      V4L/DVB (8042): DVB-USB UMT-010 channel scan oops
      V4L/DVB (8040): soc-camera: remove soc_camera_host_class class
      ...

commit 0acbbee440fadf45164cc9537ee7d528d045f2d6
Merge: 535e49f... c4e6a2e...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Sun Jun 29 12:22:30 2008 -0700

    Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6
    
    * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
      dock: bay: Don't call acpi_walk_namespace() when ACPI is disabled.
      ACPI: don't walk tables if ACPI was disabled
      thermal: Create CONFIG_THERMAL_HWMON=n

commit 535e49f48e2fc95a6de8efb366ca8af35d424642
Merge: 0b20715... b660398...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Sun Jun 29 12:21:02 2008 -0700

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes:
      kbuild: fix a.out.h export to userspace with O= build.

commit 0b20715f3f83141ab5a2bb14b844b7c3c8bcf1aa
Merge: 7476064... 0e3e2ea...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Sun Jun 29 12:20:11 2008 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
      firewire: fw-sbp2: fix parsing of logical unit directories

commit 747606464bc1eb1a2c3588b3b06ef7538f12deac
Merge: f72e9df... 19fd426...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Sun Jun 29 12:19:02 2008 -0700

    Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6
    
    * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-udf-2.6:
      udf: Fix regression in UDF anchor block detection

commit f72e9df0e04c0ea7b5c97e6db5b114234bf3c36f
Author: Eduard - Gabriel Munteanu <eduard.munteanu@linux360.ro>
Date:   Thu Jun 26 10:54:34 2008 +0300

    Fix and clean top .gitignore
    
    Removed vmlinux* rule because it matches too many useful files, replacing
    it with rules matching filetype by filename (e.g. *.gz). Also unignored
    .mailmap from the top directory. Added a comment telling the user how to
    check for tracked files being ignored.
    
    Signed-off-by: Eduard - Gabriel Munteanu <eduard.munteanu@linux360.ro>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit db6c24fdf19bd7ee25c86ddd8021ec648b76d5ae
Merge: a4480ac... 8d0a600...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Sun Jun 29 12:16:07 2008 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6:
      Blackfin arch: fix up section mismatch warning
      Blackfin arch: fix bug - kernel boot fails when Spinlock and rw-lock debugging enabled

commit a4480ac4f966384f9d2db98bffec223e4eaf6150
Merge: 4f46acc... d8de724...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Sun Jun 29 12:15:10 2008 -0700

    Merge branch 'audit.b52' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current
    
    * 'audit.b52' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:
      [PATCH] remove useless argument type in audit_filter_user()
      [PATCH] audit: fix kernel-doc parameter notation
      [PATCH] kernel/audit.c: nlh->nlmsg_type is gotten more than once

commit 4f46accee45d74a408e417c04c0ed1543a7c51e9
Merge: 543cf4c... cdd16d0...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Sun Jun 29 12:14:37 2008 -0700

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
      [patch 2/3] vfs: dcache cleanups
      [patch 1/3] vfs: dcache sparse fixes
      [patch 3/3] vfs: make d_path() consistent across mount operations
      [patch 4/4] flock: remove unused fields from file_lock_operations
      [patch 3/4] vfs: fix ERR_PTR abuse in generic_readlink
      [patch 2/4] fs: make struct file arg to d_path const
      [patch 1/4] vfs: path_{get,put}() cleanups
      [patch for 2.6.26 4/4] vfs: utimensat(): fix write access check for futimens()
      [patch for 2.6.26 3/4] vfs: utimensat(): fix error checking for {UTIME_NOW,UTIME_OMIT} case
      [patch for 2.6.26 1/4] vfs: utimensat(): ignore tv_sec if tv_nsec == UTIME_OMIT or UTIME_NOW
      [patch for 2.6.26 2/4] vfs: utimensat(): be consistent with utime() for immutable and append-only files
      [PATCH] fix cgroup-inflicted breakage in block_dev.c

commit 79c537998d143b127c8c662a403c3356cb885f1c
Author: Dmitry Adamushko <dmitry.adamushko@gmail.com>
Date:   Sun Jun 29 00:16:56 2008 +0200

    sched: fix cpu hotplug
    
    the CPU hotplug problems (crashes under high-volume unplug+replug
    tests) seem to be related to migrate_dead_tasks().
    
    Firstly I added traces to see all tasks being migrated with
    migrate_live_tasks() and migrate_dead_tasks(). On my setup the problem
    pops up (the one with "se == NULL" in the loop of
    pick_next_task_fair()) shortly after the traces indicate that some has
    been migrated with migrate_dead_tasks()). btw., I can reproduce it
    much faster now with just a plain cpu down/up loop.
    
    [disclaimer] Well, unless I'm really missing something important in
    this late hour [/desclaimer] pick_next_task() is not something
    appropriate for migrate_dead_tasks() :-)
    
    the following change seems to eliminate the problem on my setup
    (although, I kept it running only for a few minutes to get a few
    messages indicating migrate_dead_tasks() does move tasks and the
    system is still ok)
    
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit d420895efb259a78dda50f95289571faa6e10e41
Author: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Date:   Fri Jun 27 20:14:54 2008 -0700

    ipv6 route: Convert rt6_device_match() to use RT6_LOOKUP_F_xxx flags.
    
    The commit 77d16f450ae0452d7d4b009f78debb1294fb435c ("[IPV6] ROUTE:
    Unify RT6_F_xxx and RT6_SELECT_F_xxx flags") intended to pass various
    routing lookup hints around RT6_LOOKUP_F_xxx flags, but conversion was
    missing for rt6_device_match().
    
    Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 59d88c00cafe5192b058abf4f3ce17c2e27d1c09
Author: Paul Moore <paul.moore@hp.com>
Date:   Fri Jun 27 20:12:32 2008 -0700

    netlabel: Fix a problem when dumping the default IPv6 static labels
    
    There is a missing "!" in a conditional statement which is causing entries to
    be skipped when dumping the default IPv6 static label entries.  This can be
    demonstrated by running the following:
    
     # netlabelctl unlbl add default address:::1 \
                                     label:system_u:object_r:unlabeled_t:s0
     # netlabelctl -p unlbl list
    
    ... you will notice that the entry for the IPv6 localhost address is not
    displayed but does exist (works correctly, causes collisions when attempting
    to add duplicate entries, etc.).
    
    Signed-off-by: Paul Moore <paul.moore@hp.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 251a4b320f2352598f84e4452ab538aa8064af52
Author: Eli Cohen <eli@mellanox.co.il>
Date:   Fri Jun 27 20:09:00 2008 -0700

    net/inet_lro: remove setting skb->ip_summed when not LRO-able
    
    When an SKB cannot be chained to a session, the current code attempts
    to "restore" its ip_summed field from lro_mgr->ip_summed. However,
    lro_mgr->ip_summed does not hold the original value; in fact, we'd
    better not touch skb->ip_summed since it is not modified by the code
    in the path leading to a failure to chain it.  Also use a cleaer
    comment to the describe the ip_summed field of struct net_lro_mgr.
    
    Issue raised by Or Gerlitz <ogerlitz@voltaire.com>
    
    Signed-off-by: Eli Cohen <eli@mellanox.co.il>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 9a375803feaadb6c34e0807bd9325885dcca5c00
Author: Pavel Emelyanov <xemul@openvz.org>
Date:   Fri Jun 27 20:06:08 2008 -0700

    inet fragments: fix race between inet_frag_find and inet_frag_secret_rebuild
    
    The problem is that while we work w/o the inet_frags.lock even
    read-locked the secret rebuild timer may occur (on another CPU, since
    BHs are still disabled in the inet_frag_find) and change the rnd seed
    for ipv4/6 fragments.
    
    It was caused by my patch fd9e63544cac30a34c951f0ec958038f0529e244
    ([INET]: Omit double hash calculations in xxx_frag_intern) late
    in the 2.6.24 kernel, so this should probably be queued to -stable.
    
    Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit a0a61a604c60c14accc3962ecfeee9acc7a3c08a
Author: Li Zefan <lizf@cn.fujitsu.com>
Date:   Fri Jun 27 20:03:24 2008 -0700

    CONNECTOR: add a proc entry to list connectors
    
    I got a problem when I wanted to check if the kernel supports process
    event connector, and It seems there's no way to do this check.
    
    At best I can check if the kernel supports connector or not, by looking
    into /proc/net/netlink, or maybe checking the return value of bind() to
    see if it's ENOENT.
    
    So it would be useful to add /proc/net/connector to list all supported
    connectors:
     # cat /proc/net/connector
     Name            ID
     connector       4294967295:4294967295
     cn_proc         1:1
     w1              3:1
    
    Changelog:
    - fix memory leak: s/seq_release/single_release
    - use spin_lock_bh instead of spin_lock_irqsave
    
    Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
    Acked-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 10b595aff138961b520bfed51d664fd99980f6e9
Author: Julius Volz <juliusv@google.com>
Date:   Fri Jun 27 20:02:14 2008 -0700

    netlink: Fix some doc comments in net/netlink/attr.c
    
    Fix some doc comments to match function and attribute names in
    net/netlink/attr.c.
    
    Signed-off-by: Julius Volz <juliusv@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 7be87351a1f6430426e88b4fcde353ab3330caff
Author: Stephen Hemminger <shemminger@vyatta.com>
Date:   Fri Jun 27 20:00:19 2008 -0700

    tcp: /proc/net/tcp rto,ato values not scaled properly (v2)
    
    I found another case where we are sending information to userspace
    in the wrong HZ scale.  This should have been fixed back in 2.5 :-(
    
    This means an ABI change but as it stands there is no way for an application
    like ss to get the right value.
    
    Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit c88e6f51c2154c7606f7e281bcca2d1a2c89d7b2
Author: Adrian Bunk <bunk@kernel.org>
Date:   Fri Jun 27 19:54:54 2008 -0700

    include/linux/netdevice.h: don't export MAX_HEADER to userspace
    
    Due to the CONFIG_'s the value is anyway not correct in userspace.
    
    Signed-off-by: Adrian Bunk <bunk@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit ede16af4cdbd21fa15d4178beb7c6fcbcccd07e9
Author: Adrian Bunk <bunk@kernel.org>
Date:   Fri Jun 27 19:54:05 2008 -0700

    pkt_sched: Remove CONFIG_NET_SCH_RR
    
    Commit d62733c8e437fdb58325617c4b3331769ba82d70
    ([SCHED]: Qdisc changes and sch_rr added for multiqueue)
    added a NET_SCH_RR option that was unused since the code
    went unconditionally into sch_prio.
    
    Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
    Signed-off-by: Adrian Bunk <bunk@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 01e123d79a23000f85c4cfb12a957908c0b2c3d8
Author: WANG Cong <wcong@critical-links.com>
Date:   Fri Jun 27 19:51:35 2008 -0700

    pkt_sched: ERR_PTR() ususally encodes an negative errno, not positive.
    
    Note, in the following patch, 'err' is initialized as:
    
    int err = -ENOBUFS;
    
    Signed-off-by: WANG Cong <wcong@critical-links.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 5dbaec5dc6a4895db8bf9765a867418481ed7311
Author: Wang Chen <wangchen@cn.fujitsu.com>
Date:   Fri Jun 27 19:35:16 2008 -0700

    netdevice: Fix typo of dev_unicast_add() comment
    
    Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit ec0d215f9420564fc8286dcf93d2d068bb53a07e
Author: Rainer Weikusat <rweikusat@mssgmbh.com>
Date:   Fri Jun 27 19:34:18 2008 -0700

    af_unix: fix 'poll for write'/connected DGRAM sockets
    
    For n:1 'datagram connections' (eg /dev/log), the unix_dgram_sendmsg
    routine implements a form of receiver-imposed flow control by
    comparing the length of the receive queue of the 'peer socket' with
    the max_ack_backlog value stored in the corresponding sock structure,
    either blocking the thread which caused the send-routine to be called
    or returning EAGAIN. This routine is used by both SOCK_DGRAM and
    SOCK_SEQPACKET sockets. The poll-implementation for these socket types
    is datagram_poll from core/datagram.c. A socket is deemed to be
    writeable by this routine when the memory presently consumed by
    datagrams owned by it is less than the configured socket send buffer
    size. This is always wrong for PF_UNIX non-stream sockets connected to
    server sockets dealing with (potentially) multiple clients if the
    abovementioned receive queue is currently considered to be full.
    'poll' will then return, indicating that the socket is writeable, but
    a subsequent write result in EAGAIN, effectively causing an (usual)
    application to 'poll for writeability by repeated send request with
    O_NONBLOCK set' until it has consumed its time quantum.
    
    The change below uses a suitably modified variant of the datagram_poll
    routines for both type of PF_UNIX sockets, which tests if the
    recv-queue of the peer a socket is connected to is presently
    considered to be 'full' as part of the 'is this socket
    writeable'-checking code. The socket being polled is additionally
    put onto the peer_wait wait queue associated with its peer, because the
    unix_dgram_recvmsg routine does a wake up on this queue after a
    datagram was received and the 'other wakeup call' is done implicitly
    as part of skb destruction, meaning, a process blocked in poll
    because of a full peer receive queue could otherwise sleep forever
    if no datagram owned by its socket was already sitting on this queue.
    Among this change is a small (inline) helper routine named
    'unix_recvq_full', which consolidates the actual testing code (in three
    different places) into a single location.
    
    Signed-off-by: Rainer Weikusat <rweikusat@mssgmbh.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit db43a282d3ec92ea45109c5551fff3dcc5afef02
Author: Octavian Purdila <opurdila@ixiacom.com>
Date:   Fri Jun 27 17:27:21 2008 -0700

    tcp: fix for splice receive when used with software LRO
    
    If an skb has nr_frags set to zero but its frag_list is not empty (as
    it can happen if software LRO is enabled), and a previous
    tcp_read_sock has consumed the linear part of the skb, then
    __skb_splice_bits:
    
    (a) incorrectly reports an error and
    
    (b) forgets to update the offset to account for the linear part
    
    Any of the two problems will cause the subsequent __skb_splice_bits
    call (the one that handles the frag_list skbs) to either skip data,
    or, if the unadjusted offset is greater then the size of the next skb
    in the frag_list, make tcp_splice_read loop forever.
    
    Signed-off-by: Octavian Purdila <opurdila@ixiacom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 57413ebc4e0f1e471a3b4db4aff9a85c083d090e
Author: Miquel van Smoorenburg <miquels@cistron.nl>
Date:   Fri Jun 27 17:23:57 2008 -0700

    tcp: calculate tcp_mem based on low memory instead of all memory
    
    The tcp_mem array which contains limits on the total amount of memory
    used by TCP sockets is calculated based on nr_all_pages.  On a 32 bits
    x86 system, we should base this on the number of lowmem pages.
    
    Signed-off-by: Miquel van Smoorenburg <miquels@cistron.nl>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 479798211967cd828e09ce27775b8cbfe99462ab
Author: Andre Haupt <andre@bitwigglers.org>
Date:   Fri Jun 27 17:22:08 2008 -0700

    hamradio: remove unused variable
    
    Signed-off-by: Andre Haupt <andre@bitwigglers.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 9bbbca3a0ee09293108b67835c6bdf6196d7bcb3
Author: Neil Brown <neilb@notabene.brown>
Date:   Sat Jun 28 08:31:17 2008 +1000

    Fix error paths if md_probe fails.
    
    md_probe can fail (e.g. alloc_disk could fail) without
    returning an error (as it alway returns NULL).
    So when we call mddev_find immediately afterwards, we need
    to check that md_probe actually succeeded.  This means checking
    that mdev->gendisk is non-NULL.
    
    cc: <stable@kernel.org>
    Cc: Dave Jones <davej@redhat.com>
    Signed-off-by: Neil Brown <neilb@suse.de>

commit efe311431869b40d67911820a309f9a1a41306f3
Author: Neil Brown <neilb@notabene.brown>
Date:   Sat Jun 28 08:31:14 2008 +1000

    Don't acknowlege that stripe-expand is complete until it really is.
    
    We shouldn't acknowledge that a stripe has been expanded (When
    reshaping a raid5 by adding a device) until the moved data has
    actually been written out.  However we are currently
    acknowledging (by calling md_done_sync) when the POST_XOR
    is complete and before the write.
    
    So track in s.locked whether there are pending writes, and don't
    call md_done_sync yet if there are.
    
    Note: we all set R5_LOCKED on devices which are are about to
    read from.  This probably isn't technically necessary, but is
    usually done when writing a block, and justifies the use of
    s.locked here.
    
    This bug can lead to a crash if an array is stopped while an reshape
    is in progress.
    
    Cc: <stable@kernel.org>
    Signed-off-by: Neil Brown <neilb@suse.de>

commit 8c2e870a625bd336b2e7a65a97c1836acef07322
Author: Neil Brown <neilb@notabene.brown>
Date:   Sat Jun 28 08:30:52 2008 +1000

    Ensure interrupted recovery completed properly (v1 metadata plus bitmap)
    
    If, while assembling an array, we find a device which is not fully
    in-sync with the array, it is important to set the "fullsync" flags.
    This is an exact analog to the setting of this flag in hot_add_disk
    methods.
    
    Currently, only v1.x metadata supports having devices in an array
    which are not fully in-sync (it keep track of how in sync they are).
    The 'fullsync' flag only makes a difference when a write-intent bitmap
    is being used.  In this case it tells recovery to ignore the bitmap
    and recovery all blocks.
    
    This fix is already in place for raid1, but not raid5/6 or raid10.
    
    So without this fix, a raid1 ir raid4/5/6 array with version 1.x
    metadata and a write intent bitmaps, that is stopped in the middle
    of a recovery, will appear to complete the recovery instantly
    after it is reassembled, but the recovery will not be correct.
    
    If you might have an array like that, issueing
       echo repair > /sys/block/mdXX/md/sync_action
    
    will make sure recovery completes properly.
    
    Cc: <stable@kernel.org>
    Signed-off-by: Neil Brown <neilb@suse.de>

commit b660398101cd0622325480a67ac88bb4d33d553a
Author: David Woodhouse <david.woodhouse@intel.com>
Date:   Fri Jun 27 14:39:42 2008 +0100

    kbuild: fix a.out.h export to userspace with O= build.
    
    We need to check for existence of the a.out.h header in the source tree,
    not the object tree, if we want it to get the right answer with O=.
    
    Signed-off-by: David Woodhouse <david.woodhouse@intel.com>
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>

commit 0e3e2eabf4fbc0162e1f1eb4fd90cb3e9513a554
Author: Richard Sharpe <realrichardsharpe@gmail.com>
Date:   Tue Jun 24 19:11:13 2008 -0700

    firewire: fw-sbp2: fix parsing of logical unit directories
    
    There is a small off-by-one bug in firewire-sbp2. This causes problems
    when a device exports multiple LUN Directories. I found it when trying
    to talk to a SONY DVD Jukebox.
    
    Signed-off-by: Richard Sharpe <realrichardsharpe@gmail.com>
    Acked-by: Kristian Høgsberg <krh@redhat.com>
    Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> (op. order, changelog)

commit 00eb7fe77eb455f807c396f9917f0f623d4c84bb
Author: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Date:   Thu Jun 26 12:13:46 2008 +0300

    mac80211: fix an oops in several failure paths in key allocation
    
    This patch fixes an oops in several failure paths in key allocation. This
    Oops occurs when freeing a key that has not been linked yet, so the
    key->sdata is not set.
    
    Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
    Acked-by: Johannes Berg <johannes@sipsolutions.net>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 5f4a6fae46a214c4dce3bd63a6219a5f1c818c78
Author: Harvey Harrison <harvey.harrison@gmail.com>
Date:   Wed Jun 25 14:20:37 2008 -0700

    prism: islpci_eth.c endianness fix
    
    clock is already cpu-endian (see le32_to_cpu slightly before), so
    le64_to_cpu doesn't make much sense.
    
    Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 980dfcb93232907034a2c92d62d3a7d6ac7bef44
Author: Ivo van Doorn <ivdoorn@gmail.com>
Date:   Wed Jun 25 21:27:00 2008 +0200

    rt2x00: Fix lock dependency errror
    
    This fixes a circular locking dependency in the workqueue handling.
    The interface work task uses the mac80211 function
    ieee80211_iterate_active_interfaces() which grabs the RTNL lock.
    
    However when the interface is brough down, this happens under the RTNL
    lock as well, this causes problems because mac80211 will flush the workqueue
    during the ifdown event. This causes mac80211 to wait until the driver has
    completed all work which can't finish because it is waiting on the RTNL lock.
    
    This is fixed by moving rt2x00 workqueue tasks on a different workqueue,
    this workqueue can be flushed when the ieee80211_hw structure is removed
    by the driver (when the driver is unloaded) which does not happen under the
    RTNL lock.
    
    Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 7ac3b02536c9ccfcc8aabc4c135a371ac4641805
Merge: 3e3cda9... 66b5004...
Author: David S. Miller <davem@davemloft.net>
Date:   Fri Jun 27 04:26:58 2008 -0700

    Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6

commit d7ee56059b335e27c3c6db34f7efe5a705d65b1c
Merge: 1b7558e... 50db04d...
Author: Ingo Molnar <mingo@elte.hu>
Date:   Fri Jun 27 10:36:21 2008 +0200

    Merge branch 'core/debugobjects' into core/urgent

commit 3e3cda96d014b69f7723d1d4507897e5be6aceb7
Author: Ben Hutchings <bhutchings@solarflare.com>
Date:   Tue May 6 19:41:48 2008 +0100

    Hold RTNL while calling dev_close()
    
    dev_close() must be called holding the RTNL.  Compile-tested only.
    
    Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit c81ec80bc86f4eacd5f48229c1de623865acbb92
Author: Ben Hutchings <bhutchings@solarflare.com>
Date:   Tue May 6 19:36:26 2008 +0100

    qla3xxx: Hold RTNL while calling dev_close()
    
    dev_close() must be called holding the RTNL.  Compile-tested only.
    
    Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit 64c42f697661e27c9688a32c1ba61d0228e81d84
Author: Andi Kleen <andi@firstfloor.org>
Date:   Wed Jun 18 13:58:36 2008 +0200

    [netdrvr] Fix IOMMU overflow checking in s2io.c
    
    s2io has IOMMU overflow checking, but unfortunately it is wrong.
    
    It didn't use the standard macros, which meant that it only worked
    on POWER and SPARC because only those define DMA_ERROR_CODE. Convert it to
    use the standard macros instead.
    
    I also commented two more bugs in the IOMMU handling. It assumes
    that 0 DMA addresses cannot happen, but that's not true in all IOMMU setups.
    The information if a buffer has been already mapped needs to be stored
    elsewhere.
    
    Didn't fix those because it needs careful checking of the buffer handling
    by the maintainers.
    
    Cc: ram.vepa@neterion.com
    Cc: santosh.rastapur@neterion.com
    Cc: sivakumar.subramani@neterion.com
    Cc: sreenivasa.honnur@neterion.com
    
    Signed-off-by: Andi Kleen <ak@linux.intel.com>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit 581abbc26a7adb693fb8b913f1be18d1c349c1ab
Author: Andy Gospodarek <andy@greyhouse.net>
Date:   Thu Jun 19 17:19:02 2008 -0400

    e1000: only enable TSO6 via ethtool when using correct hardware
    
    When enabling TSO via ethool on e1000, it is possible to set
    NETIF_F_TSO6 on hardware that does not support it.  Setting TSO via
    ethtool now matches the settings used when the hardware is probed.
    
    Signed-off-by: Andy Gospodarek <andy@greyhouse.net>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit 1923815d855e1daec931fc9f2221fb73ca708870
Author: Kevin Hao <kexin.hao@windriver.com>
Date:   Sat Jun 21 18:20:35 2008 +0800

    e100: Do pci_dma_sync after skb_alloc for proper operation on ixp4xx
    
    The E100 device can't work on current kernel (2.6.26-rc6) and will cause
    kernel corruption on intel ixdp4xx.
    
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit 70081ac55df939363b27c1ebd27c51f510129139
Author: Al Viro <viro@ZenIV.linux.org.uk>
Date:   Mon Jun 23 02:04:50 2008 +0100

    [netdrvr] netxen: fix netxen_pci_tbl[] breakage
    
    	PCI_DEVICE_CLASS sets .device and .vendor to PCI_ANY_DEV,
    which overrides the effect of preceding PCI_DEVICE() and makes
    all elements of netxen_pci_tbl[] identical.  Introduced in the
    commit dcd56fdbaeae1008044687b973c4a3e852e8a726.
    
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit c5643cab7bf663ae049b11be43de8819683176dd
Author: Ingo Molnar <mingo@elte.hu>
Date:   Mon Jun 23 10:41:23 2008 +0200

    [netdrvr] 3c59x: remove irqs_disabled warning from local_bh_enable
    
    Original Author: Michael Buesch <mb@bu3sch.de>
    
    net, vortex: fix lockup
    
    Ingo Molnar reported:
    
    -tip testing found that Johannes Berg's "softirq: remove irqs_disabled
    warning from local_bh_enable" enhancement to lockdep triggers a new
    warning on an old testbox that uses 3c59x vortex and netlogging:
    
    ----->
        calling  vortex_init+0x0/0xb0
        PCI: Found IRQ 10 for device 0000:00:0b.0
        PCI: Sharing IRQ 10 with 0000:00:0a.0
        PCI: Sharing IRQ 10 with 0000:00:0b.1
        3c59x: Donald Becker and others.
        0000:00:0b.0: 3Com PCI 3c556 Laptop Tornado at e0800400.
        PCI: Enabling bus mastering for device 0000:00:0b.0
        initcall vortex_init+0x0/0xb0 returned 0 after 47 msecs
    ...
        calling  init_netconsole+0x0/0x1b0
        netconsole: local port 4444
        netconsole: local IP 10.0.1.9
        netconsole: interface eth0
        netconsole: remote port 4444
        netconsole: remote IP 10.0.1.16
        netconsole: remote ethernet address 00:19:xx:xx:xx:xx
        netconsole: device eth0 not up yet, forcing it
        eth0:  setting half-duplex.
        eth0:  setting full-duplex.
    ------------[ cut here ]------------
        WARNING: at kernel/softirq.c:137 local_bh_enable_ip+0xd1/0xe0()
        Pid: 1, comm: swapper Not tainted 2.6.26-rc6-tip #2091
         [<c0125ecf>] warn_on_slowpath+0x4f/0x70
         [<c0126834>] ? release_console_sem+0x1b4/0x1d0
         [<c0126d00>] ? vprintk+0x2a0/0x450
         [<c012fde5>] ? __mod_timer+0xa5/0xc0
         [<c046f7fd>] ? mdio_sync+0x3d/0x50
         [<c0160ef6>] ? marker_probe_cb+0x46/0xa0
         [<c0126ed7>] ? printk+0x27/0x50
         [<c046f4c3>] ? vortex_set_duplex+0x43/0xc0
         [<c046f521>] ? vortex_set_duplex+0xa1/0xc0
         [<c0471b92>] ? vortex_timer+0xe2/0x3e0
         [<c012b361>] local_bh_enable_ip+0xd1/0xe0
         [<c08d9f9f>] _spin_unlock_bh+0x2f/0x40
         [<c0471b92>] vortex_timer+0xe2/0x3e0
         [<c014743b>] ? trace_hardirqs_on+0xb/0x10
         [<c0147358>] ? trace_hardirqs_on_caller+0x88/0x160
         [<c012f8b2>] run_timer_softirq+0x162/0x1c0
         [<c0471ab0>] ? vortex_timer+0x0/0x3e0
         [<c012b361>] local_bh_enable_ip+0xd1/0xe0
         [<c08d9f9f>] _spin_unlock_bh+0x2f/0x40
         [<c0471b92>] vortex_timer+0xe2/0x3e0
         [<c014743b>] ? trace_hardirqs_on+0xb/0x10
         [<c0147358>] ? trace_hardirqs_on_caller+0x88/0x160
         [<c012f8b2>] run_timer_softirq+0x162/0x1c0
         [<c0471ab0>] ? vortex_timer+0x0/0x3e0
         [<c0471ab0>] ? vortex_timer+0x0/0x3e0
         [<c012b60a>] __do_softirq+0x9a/0x160
         [<c012b570>] ? __do_softirq+0x0/0x160
         [<c0106775>] call_on_stack+0x15/0x30
         [<c012b4f5>] ? irq_exit+0x55/0x60
         [<c0106e85>] ? do_IRQ+0x85/0xd0
         [<c0147391>] ? trace_hardirqs_on_caller+0xc1/0x160
         [<c0104888>] ? common_interrupt+0x28/0x30
         [<c08d8ac8>] ? mutex_unlock+0x8/0x10
         [<c08d8180>] ? _cond_resched+0x10/0x30
         [<c07a3be7>] ? netpoll_setup+0x117/0x390
         [<c0cbfcfe>] ? init_netconsole+0x14e/0x1b0
         [<c013d539>] ? ktime_get+0x19/0x40
         [<c0c9bab2>] ? kernel_init+0x1b2/0x2c0
         [<c0cbfbb0>] ? init_netconsole+0x0/0x1b0
         [<c0396aa4>] ? trace_hardirqs_on_thunk+0xc/0x10
         [<c0103f12>] ? restore_nocheck_notrace+0x0/0xe
         [<c0c9b900>] ? kernel_init+0x0/0x2c0
         [<c0c9b900>] ? kernel_init+0x0/0x2c0
         [<c0104aa7>] ? kernel_thread_helper+0x7/0x10
         =======================
    ---[ end trace 37f9c502aff112e0 ]---
        console [netcon0] enabled
        netconsole: network logging started
        initcall init_netconsole+0x0/0x1b0 returned 0 after 2914 msecs
    
    looking at the driver I think the bug is real and the fix actually
    is trivial.
    
    vp->lock is also taken in hardware IRQ context, so we _have_ to always
    use irqsafe locking. As we run in a timer with IRQs disabled,
    we can simply use spin_lock.
    
    Cc: <stable@kernel.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit e8399fed7e9f2e76eb65852612b16732129b9f3f
Author: Pekka Enberg <penberg@cs.helsinki.fi>
Date:   Mon Jun 23 14:34:50 2008 +0300

    ipg: use NULL, not zero, for pointers
    
    Fixes a sparse warning in a code block that's hidden under JUMBO_FRAME #ifdef.
    
    Tested-by: Andrew Savchenko <Bircoph@list.ru>
    Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit ecfecfb5e39165b3f7f6d93aacd268edfe7c3524
Author: Pekka Enberg <penberg@cs.helsinki.fi>
Date:   Mon Jun 23 14:34:29 2008 +0300

    ipg: fix jumbo frame compilation
    
    Make jumbo frame support compile again. It was broken by the cleanup series
    before the merge because the code is hidden under JUMBO_FRAME #ifdef.
    
    Tested-by: Andrew Savchenko <Bircoph@list.ru>
    Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit 3f6602ad56dc538a846367bd6a05ac7ac4d3e641
Author: Julia Lawall <julia@diku.dk>
Date:   Mon Jun 23 23:12:31 2008 +0200

    drivers/net/r6040.c: Eliminate double sizeof
    
    Taking sizeof the result of sizeof is quite strange and does not seem to be
    what is wanted here.
    
    This was fixed using the following semantic patch.
    (http://www.emn.fr/x-info/coccinelle/)
    
    // <smpl>
    @@
    expression E;
    @@
    
    - sizeof (
      sizeof (E)
    - )
    // </smpl>
    
    Signed-off-by: Julia Lawall <julia@diku.dk>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit 54299ef7e9ae4b5d47b02f3abea168cdc62a6f70
Author: Komuro <komurojun-mbn@nifty.com>
Date:   Sat Jun 7 21:37:56 2008 +0900

    pcnet_cs, axnet_cs: clear bogus interrupt before request_irq
    
    Signed-off-by: Komuro <komurojun-mbn@nifty.com>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit 52cc30862a8f90c98be8eb527d00e5e06d398b22
Author: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date:   Tue Jun 24 17:01:29 2008 -0700

    e1000e: fix EEH recovery during reset on PPC
    
    EEH is not recovering in a reasonable amount of time on PPC during
    e1000e_down().
    
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
    Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit 3023682e74bc17debc6aa5e234ae1d0b0e198719
Author: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date:   Tue Jun 24 17:01:15 2008 -0700

    igb: fix EEH recovery during reset on PPC
    
    EEH is not recovering in a reasonable amount of time on PPC during
    igb_down().
    
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
    Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit 6f4a0e45c6392f84436004d4c04d31b8ff5071c5
Author: Paul Larson <pl@us.ibm.com>
Date:   Tue Jun 24 17:00:56 2008 -0700

    ixgbe: fix EEH recovery during reset on PPC
    
    EEh is not recovering in a resonable amount of time on PPC during
    ixgbe_down().
    
    Signed-off-by: Paul Larson <pl@us.ibm.com>
    Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit ccc57aac9c9532b4540968632a8c4a0b946dbcc4
Author: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Date:   Thu Jun 26 17:14:15 2008 +0900

    tc35815: Fix receiver hangup on Rx FIFO overflow
    
    On Rx FIFO overflow error, the controller consume a buffer descriptor
    but currently the driver does not give it back to the controller.
    This results unrecoverable 'Buffer List Exhausted' condition.  This
    patch fix this problem by moving a "fbl_count--" line to proper place.
    
    Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit 59524a37446e18a672188d86d23c8c76fd488621
Author: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Date:   Wed Jun 25 11:41:01 2008 +0900

    tc35815: Mark carrier-off before starting PHY
    
    Call netif_carrier_off() before starting PHY device.  This is a
    behavior before converting to generic PHY layer.
    
    Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit f471f92339860c35b561cf45ad563ab1ff07c386
Author: Michal Schmidt <mschmidt@redhat.com>
Date:   Thu Jun 26 16:06:19 2008 +0200

    s2io: fix documentation about intr_type
    
    The documentation for intr_type module parameter of the s2io driver is
    not consistent with the code. The comments in drivers/net/s2io.c are
    OK, but Documentation/networking/s2io.txt is wrong.
    
    Pointed out by Andrew Hecox.
    
    Signed-off-by: Michal Schmidt <mschmidt@redhat.com>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit a17898737eaed4ef41f273da7b830c632e06613e
Author: Arjan van de Ven <arjan@linux.intel.com>
Date:   Sun Jun 22 17:03:02 2008 -0300

    V4L/DVB (8108): Fix open/close race in saa7134
    
    The saa7134 driver uses a (non-atomic) variable in an attempt to
    only allow one opener of the device (how it deals with sending
    the fd over unix sockets I don't know).
    
    Unfortunately, the release function first decrements this variable,
    and THEN goes on to disable more of the device. This allows for
    a race where another opener of the device comes in after the decrement of
    the variable, configures the hardware just to then see the hardware
    be disabled by the rest of the release function.
    
    This patch makes the release function use the same lock as the open
    function to protect the hardware as well as the variable (which now
    at least has some locking to protect it).
    
    Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 5c554e6b984ce6b36488b93a7ec8e2752233e7cb
Author: Marcin Slusarz <marcin.slusarz@gmail.com>
Date:   Sun Jun 22 09:11:40 2008 -0300

    V4L/DVB (8100): V4L/vivi: fix possible memory leak in vivi_fillbuff
    
    Move allocation after first check and fix memory leak.
    
    Noticed-by: Daniel Marjamäki <danielm77@spray.se>
    
    Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit e470d8177ed6ae56f4310ce793a57bcb2fed1749
Author: Steven Toth <stoth@linuxtv.org>
Date:   Sat Jun 21 21:06:02 2008 -0300

    V4L/DVB (8097): xc5000: check device hardware state to determine if firmware download is needed
    
    This patch ensures that the xc5000 will have firmware loaded as needed if the
    part is powered down or reset via gpio from the host. An example of this, in
    some cases, could be after the system resumes from standby or hibernate modes.
    
    Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 836c28584d4629fdc85365f083b84e1298e14312
Author: Steven Toth <stoth@linuxtv.org>
Date:   Sat Jun 21 19:32:41 2008 -0300

    V4L/DVB (8096): au8522: prevent false-positive lock status
    
    This decreases scan time in Queens, New York from 28 minutes to 7 minutes,
    with the exact same services found.
    
    Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 7fa8e6fa1519194fc0c931f40d530fb55137bad9
Author: Hans Verkuil <hverkuil@xs4all.nl>
Date:   Sat Jun 21 13:23:27 2008 -0300

    V4L/DVB (8092): videodev: simplify and fix standard enumeration
    
    VIDIOC_ENUMSTD did not return all the PAL/SECAM/NTSC variants: it just returned
    one single PAL/SECAM/NTSC standard without separate entries for the trickier
    standards like NTSC-JP.
    
    Changed the code so that it behaves better.
    
    Also simplified the if/switch statements into a common standards lookup table.
    
    Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 7876ad75b1a3b7dc3d5d765d0be086d89fd2e663
Author: Oliver Endriss <o.endriss@gmx.de>
Date:   Thu Jun 19 23:25:04 2008 -0300

    V4L/DVB (8075): stv0299: Uncorrected block count and bit error rate fixed
    
    Fix uncorrected block counter and bit error rate to follow DVB API spec:
    - Unsupported controls return -ENOSYS.
    - UNC must never be set to 0.
    
    Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 0b915e74ac10b65da930aa430837d4338f5deb65
Author: Oliver Endriss <o.endriss@gmx.de>
Date:   Thu Jun 19 23:10:14 2008 -0300

    V4L/DVB (8074): av7110: OSD transfers should not be interrupted
    
    OSD transfers should not be interrupted.
    
    Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit edabaffc7e7fccdeadac6273704102adc2b604ae
Author: Oliver Endriss <o.endriss@gmx.de>
Date:   Thu Jun 19 23:04:27 2008 -0300

    V4L/DVB (8073): av7110: Catch another type of ARM crash
    
    Catch another type of ARM crash.
    
    Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit c9fa2b1eee9d10c2455d3cd148cf13b34d91bdef
Author: Oliver Endriss <o.endriss@gmx.de>
Date:   Thu Jun 19 22:45:55 2008 -0300

    V4L/DVB (8071): tda10023: Fix possible kernel oops during initialisation
    
    If the i2c write fails during initialisation, an oops happens
    because state->frontend.dvb is still undefined. Fixed.
    
    Thanks to Sigmund Augdal for reporting this bug,
    and to Hartmut Birr for suggesting the fix.
    
    Thanks-to: Sigmund Augdal <sigmund@snap.tv>
    Thanks-to: Hartmut Birr <e9hack@gmail.com>
    
    Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit ad907fa39517ca35b46912fbfe2b77cd89e1d56a
Author: Andy Walls <awalls@radix.net>
Date:   Sun Jun 22 02:00:09 2008 -0300

    V4L/DVB (8069): cx18: Fix S-Video and Compsite inputs for the Yuan MPC718 and enable card entry
    
    cx18: Fix S-Video and Compsite input settings for the Yuan MPC718 per user
    reports from Yuri Warczynski <Yuri.Warczynski@gmail.com> and
    Brian Hope <brian@hopefamily.info> and enable the card entry.  The tuner reset
    GPIO pin is likely incorrect as the tuner firmware cannot be reloaded without a
    reboot.  It is likely the audio routing is done via GPIO which is not
    implemented yet, as users report audio doesn't work for some inputs.
    
    Signed-off-by: Andy Walls <awalls@radix.net>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 1f09e8a25c9aaa4066b4593c1bf99a4cbcc38120
Author: Andy Walls <awalls@radix.net>
Date:   Sun Jun 22 01:27:00 2008 -0300

    V4L/DVB (8068): cx18: Add I2C slave reset via GPIO upon initialization
    
    cx18: Add I2C slave reset via GPIO upon initialization.  One user,
    Michael <msd4824@yahoo.com>, has reported this allows his HVR-1600 EEPROM to
    be consistently recognized when using (long,) 100 msec delays.   The delays in
    this commit are nominal (10 & 40 msec) and need testing/tuning on boards with
    I2C problems to find the right values.
    
    Signed-off-by: Andy Walls <awalls@radix.net>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 08cf7b2ed172cc83f3d2f44b712b3d54e6cc4ae6
Author: Andy Walls <awalls@radix.net>
Date:   Sun Jun 22 00:04:21 2008 -0300

    V4L/DVB (8067): cx18: Fix firmware load for case when digital capture happens first
    
    This is a fix for the case when a digital capture from dvr0 happens first after
    modprobe, before access to any cx18 v4l2 device nodes.  The initial dvb feed
    start has been changed to load the firmware if not already loaded.  Also fixed a
    use counter to correct dvb feed accounting if starting the transport DMA fails.
    
    Signed-off-by: Andy Walls <awalls@radix.net>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 46195b555aa3edd265b4e765e4edff59b253b55e
Author: Andy Walls <awalls@radix.net>
Date:   Thu Jun 19 23:17:05 2008 -0300

    V4L/DVB (8066): cx18: Fix audio mux input definitions for HVR-1600 Line In 2 and FM radio
    
    Fix the cx18-cards.c structures for the HVR-1600 to reflect that audio Line In 2
    and FM radio audio go to AIN3 and AIN4 of the CS5345 mux respectively.  Verified
    by physical inspection of an HVR-1600MCE, by listening to FM broadcasts with the
    HVR-1600MCE, and by comparing with the card definition for a PVR-150 in ivtv.
    
    Signed-off-by: Andy Walls <awalls@radix.net>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 527629fb7c35ad93389ab132823d19139dd88e70
Author: Andy Walls <awalls@radix.net>
Date:   Sat Jun 14 03:58:08 2008 -0300

    V4L/DVB (8063): cx18: Fix unintended auto configurations in cx18-av-core
    
    Change the cx18-av-core code so that accesses to cx23418 av core that
    cause auto-configuration will be adjusted to emulate the auto-configuration
    behavior of the cx25843.  This fixes the VBI displayed as video at the top of
    the frame for NTSC and probably other things.
    
    Signed-off-by: Andy Walls <awalls@radix.net>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit beb31e636501f39e853ac5d0ffd3fbb910d19d5c
Author: Michael Krufky <mkrufky@linuxtv.org>
Date:   Tue Jun 17 17:37:51 2008 -0300

    V4L/DVB (8061): cx18: only select tuner / frontend modules if !DVB_FE_CUSTOMISE
    
    The automatic Kconfig selection for tuners and frontends should be
    conditional, based on !DVB_FE_CUSTOMISE.
    
    This patch corrects the selection for VIDEO_CX18 on
    MEDIA_TUNER_MXL5005S and DVB_S5H1409
    
    Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 6e501a3f4a7259b1c04aa6cbdfe64376afc9f59c
Author: Tim Farrington <timf@iinet.net.au>
Date:   Sun Jun 15 13:33:42 2008 -0300

    V4L/DVB (8048): saa7134: Fix entries for Avermedia A16d and Avermedia E506
    
    Also, adds IR table for Avermedia A16d
    
    Signed-off-by: Tim Farrington <timf@iinet.net.au>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 74d50724a02d7cdc7f7887411518ec43d0251b97
Author: Michael Krufky <mkrufky@linuxtv.org>
Date:   Fri Jun 13 20:33:23 2008 -0300

    V4L/DVB (8044): au8522: tuning optimizations
    
    If the current modulation and frequency is already set to
    the desired parameters, then don't re-tune.
    
    Don't store current frequency until after we've tuned successfully.
    
    Force a re-tune after resume from standby.
    
    Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 104fe9a2d2a56f25fb95800a7ab0f7600dd6879c
Author: Michael Krufky <mkrufky@linuxtv.org>
Date:   Fri Jun 13 03:29:43 2008 -0300

    V4L/DVB (8043): au0828: add support for additional USB device id's
    
    Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 3b9408870757bd9e07fd03ac6318258f22b8dfa3
Author: Austin Lund <austin.lund@gmail.com>
Date:   Fri Jun 13 11:02:43 2008 -0300

    V4L/DVB (8042): DVB-USB UMT-010 channel scan oops
    
    In the umt-010 driver the struct umt_properties sets the number of URBs for
    transfer to 20.  But in dvb-usb.h MAX_NO_URBS_FOR_DATA_STREAM is set to 10.
    
    Not surprisingly this causes an oops for all devices which use the umt-010
    chipset when they are inserted.
    
    fix on Kaffeine channel scan for
    
    Initialize stream count using MAX_NO_URBS_FOR_DATA_STREAM.
    
    Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
    Signed-off-by: maximilian attems <max@stro.at>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 3cfdc7f25b3116d57e91427caada74dd69bfbc06
Author: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de>
Date:   Fri Jun 13 09:11:01 2008 -0300

    V4L/DVB (8040): soc-camera: remove soc_camera_host_class class
    
    Devices can either be class devices or bus devices, not both at the
    same time. Soc-camera host devices usually have a platform device as
    their parent. Trying to also register them with a class crashes the
    kernel, when linked statically. Interestingly, it works when built
    as a module. Thanks to Paulius Zaleckas for reporting.
    
    Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 02da465945ae0a277aadf2bf37965a9e6c28f8c3
Author: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de>
Date:   Fri Jun 13 09:03:45 2008 -0300

    V4L/DVB (8039): pxa-camera: fix platform_get_irq() error handling.
    
    platform_get_irq() returns a negative value on error, not 0.
    
    Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 7ae1ac4c1db5a3647604acb00d736f17af6999b7
Author: Michael Krufky <mkrufky@linuxtv.org>
Date:   Wed Jun 11 13:52:49 2008 -0300

    V4L/DVB (8037): tda18271: ensure that the thermometer is off during channel configuration
    
    Having the thermometer on during channel configuration
    could cause tuning instability.
    
    Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 51858d13612a06494beb08616f8a93bdb2688e4c
Author: Michael Krufky <mkrufky@linuxtv.org>
Date:   Mon Jun 9 02:03:31 2008 -0300

    V4L/DVB (8036): tda18271: toggle rf agc speed mode on TDA18271HD/C2 only
    
    Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 119a7c7e34b5e5fa65051960ca05000a19dbce85
Author: Michael Krufky <mkrufky@linuxtv.org>
Date:   Sun Jun 8 22:12:37 2008 -0300

    V4L/DVB (8035): tda18271: dont touch EB14 if rf_cal lookup is out of range
    
    The TDA18271HD/C1 rf_cal map lookup is expected to go out of range outside
    of the frequency window 41 MHz - 61.1 MHz.  In these cases, the internal
    RF tracking filters calibration mechanism is used.
    
    Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 44e645c20304bbe0a72cb994d9baf4b5727d7cec
Author: Michael Krufky <mkrufky@linuxtv.org>
Date:   Sun Jun 8 20:10:29 2008 -0300

    V4L/DVB (8034): tda18271: fix IF notch frequency handling
    
    The IF notch bit gets unset when we update the Main Post Div register
    value, before we have a chance to write the desired IF notch setting
    to the tuner.  Move the IF notch configuration to after we update MPD.
    
    Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 0e7830b50b20fcc25f21f79b7734102284d7c8f9
Author: Mauro Carvalho Chehab <mchehab@infradead.org>
Date:   Sat Jun 14 11:27:34 2008 -0300

    V4L/DVB (8029): Improve error message at tda1004x_attach
    
    When an error occurs at firmware loading, sometimes, tda1004x stops answering.
    Instead of reporting such error, attach code were assuming that the device were
    answering an invalid ID (0xff). This can be seen when enabling debug options:
    
    tda1004x: tda1004x_read_byte: reg=0x0
    tda1004x: tda1004x_read_byte: error reg=0x0, ret=-5
    
    Now, instead of reporting an invalid ID, it will report the correct error:
    
    tda10046: chip is not answering. Giving up.
    saa7133[0]/dvb: failed to attach tda10046
    saa7133[0]/dvb: frontend initialization failed
    
    A possible improvement would be trying to reset the device.
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit bc36ec746409e4e4719b94a86dc0d8cbeb6f439f
Author: Mauro Carvalho Chehab <mchehab@infradead.org>
Date:   Sat Jun 14 10:44:04 2008 -0300

    V4L/DVB (8028): Improve error messages for tda1004x attach
    
    A fresh copy of v.29 firmware, using get_firmware, is leading to an invalid
    firmware:
    
    DVB: registering new adapter (saa7133[0])
    DVB: registering frontend 0 (Philips TDA10046H DVB-T)...
    tda1004x: setting up plls for 48MHz sampling clock
    tda1004x: found firmware revision ff -- invalid
    tda1004x: trying to boot from eeprom
    tda1004x: found firmware revision ff -- invalid
    tda1004x: waiting for firmware upload...
    tda1004x: Error during firmware upload
    tda1004x: found firmware revision ff -- invalid
    tda1004x: firmware upload failed
    
    Sometimes, loading/unloading this firmware makes tda1004x to return an invalid
    ID. However, there were no printk messages to help to identify what were the
    cause for the error.
    
    With this patch, it will now print:
    
    Invalid tda1004x ID = 0xff. Can't proceed
    saa7133[0]/dvb: failed to attach tda10046
    saa7133[0]/dvb: frontend initialization failed
    
    Tested with LifeView FlyDVB-T Hybrid Cardbus/MSI TV @nywhere A/D NB
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit b25fed115a8bd8d39d14ce0d03e808272a401d67
Author: Matthias Schwarzott <zzam@gentoo.org>
Date:   Fri Jun 13 19:28:17 2008 -0300

    V4L/DVB (8027): saa7134: Avermedia A700: only s-video and composite input are working
    
    Describe exactly that only s-video and composite input are working on Avermedia
    A700
    
    Signed-off-by: Matthias Schwarzott <zzam@gentoo.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 83ee87a31dc43a5fd6dee3562c146033c3a4cb39
Author: Mauro Carvalho Chehab <mchehab@infradead.org>
Date:   Sat Jun 14 09:41:18 2008 -0300

    V4L/DVB (8026): Avoids an OOPS if dev struct can't be successfully recovered
    
    On some alsa versions, it seems that snd_pcm_substream_chip(substream)
    is returning a NULL pointer. This causes an OOPS, as reported by:
    
    https://bugs.launchpad.net/ubuntu/+source/linux-ubuntu-modules-2.6.24/+bug/212271
    https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/212960
    
    This patch avoids the OOPS by not letting and open() succeed.
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 913f5fc209247b607b1994a710315966f4f9d358
Author: Marcin Slusarz <marcin.slusarz@gmail.com>
Date:   Tue Jun 10 15:18:16 2008 -0300

    V4L/DVB (8022): saa7134: fix race between opening and closing the device
    
    decrementing dev->empress_users should be done as last action of ts_release,
    because it sleeps and write access to dev->empress_started is not protected
    in any way
    (additionally closing thread could mute audio after opening thread unmuted it)
    
    Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit a14fe9605bfdfe360b97acc9ef912779eb860507
Author: Dmitri Belimov <d.belimov@gmail.com>
Date:   Tue Jun 10 14:19:31 2008 -0300

    V4L/DVB (8020): Fix callbacks functions of saa7134_empress
    
    If I try v4l2-ctl --all -d /dev/video1 or v4l2-ctl --streamon -d /dev/video1
    modules crashed:
    
    *pde = 00000000
    Modules linked in: ac battery loop saa7134_empress(F) saa6752hs(F) tuner_simple(F) tuner_types(F) tea5767(F) tda9887(F) tda8290(F) tea5761(F) tuner(F) snd_cmipci snd_pcm snd_page_alloc snd_opl3_lib saa7134(F) snd_mpu401 parport_pc parport snd_timer snd_hwdep snd_mpu401_uart floppy rtc psmouse videodev(F) v4l1_compat(F) compat_ioctl32(F) v4l2_common(F) videobuf_dma_sg(F) videobuf_core(F) snd_rawmidi snd_seq_device via_ircc pcspkr snd ir_kbd_i2c(F) irda soundcore ir_common(F) crc_ccitt tveeprom(F) i2c_viapro i2c_core button via_agp agpgart evdev ext3 jbd mbcache ide_cd_mod cdrom ide_disk 8139cp via82cxxx ide_core 8139too mii ehci_hcd uhci_hcd usbcore thermal processor fan
    
    EIP is at __mutex_lock_slowpath+0x29/0x7b
     DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
    Process v4l2-ctl (pid: 2742, ti=ced7e000 task=cf325260 task.ti=ced7e000)
           d08e5411 00000000 ced7fed4 00000000 d0975acb 40045612 cfa86ee0 ffffffcd
           cf2b7000 ced7febc c03858d6 00000019 00000292 d089e4ec cf37b2a0 d089e4a0
    Call Trace:
     [<c028b52b>] mutex_lock+0xa/0xb
     [<d08e5411>] videobuf_streamon+0xf/0x9a [videobuf_core]
     [<d0975acb>] __video_do_ioctl+0x136a/0x2d68 [videodev]
     [<d088f789>] task_end_request+0x40/0x51 [ide_core]
     [<d088c4aa>] ide_intr+0x187/0x192 [ide_core]
     [<c016a551>] mntput_no_expire+0x11/0x64
     [<c0160b1c>] path_walk+0x90/0x98
     [<d0977738>] video_ioctl2+0x173/0x239 [videodev]
     [<c0140936>] filemap_fault+0x202/0x370
     [<c014930a>] __do_fault+0x2c3/0x2fe
     [<c014ab03>] handle_mm_fault+0x22a/0x49f
     [<c0162737>] vfs_ioctl+0x47/0x5d
     [<c0162992>] do_vfs_ioctl+0x245/0x258
     [<c01629e6>] sys_ioctl+0x41/0x5b
     [<c01036a6>] sysenter_past_esp+0x5f/0x85
     =======================
    
    After this fix all of that commands works without problem:
    
    v4l2-ctl --all -d /dev/video1
    
    Driver Info:
    	Driver name   : saa7134
    	Card type     : Beholder BeholdTV M6 Extra
    	Bus info      : PCI:0000:00:0d.0
    	Driver version: 526
    	Capabilities  : 0x05000001
    		Video Capture
    		Read/Write
    		Streaming
    Format Video Capture:
    	Width/Height  : 720/576
    	Pixel Format  : MPEG
    	Field         : Any
    	Bytes per Line: 0
    	Size Image    : 58656
    	Colorspace    : Unknown (00000000)
    Video input : 0 (CCIR656)
    Video Standard = 0x000000ff
    	PAL-B/B1/G/H/I/D/D1/K
    
    
    P.S. data from /dev/video1 is not correct :(( .
    
    Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov <d.belimov@gmail.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit a8a1f8cc0cae07c209f13857adbdd4b87b36cdde
Author: Devin Heitmueller <devin.heitmueller@gmail.com>
Date:   Tue Jun 10 12:35:42 2008 -0300

    V4L/DVB (8018): Add em2860 chip ID
    
    em28xx-cards.c
    em28xx-reg.h
     - Add em2860 chip ID (seen on Pointnix Intra-Oral Camera)
       http://www.pointnix.com/ENG/dental/product_02.asp
    
    Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit df619181631217e3166bb6c7538f981e0272617f
Author: Devin Heitmueller <devin.heitmueller@gmail.com>
Date:   Tue Jun 10 12:34:35 2008 -0300

    V4L/DVB (8017): Ensure em28xx extensions only get run against devs that support them
    
    em28xx-audio.c
    em28xx-dvb.c
     - Em28xx extensions should ensure they are being only loaded against devices
       that support them.  Deals with case where there are multiple em28xx
       devices, some of which have DVB (or ALSA) support and some do not.
    
    Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 1a78db826973b9fa658d72291ec2007889e2faf7
Author: Antti Palosaari <crope@iki.fi>
Date:   Tue Jun 10 11:41:58 2008 -0300

    V4L/DVB (8015): gl861: replace non critical msleep(0) with msleep(1) to be on the safe side
    
    - change msleep(0) to msleep(1)
    
    Signed-off-by: Antti Palosaari <crope@iki.fi>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit ea3a13b7a19f0d7d7344494047c9aa8bb32b6678
Author: Antti Palosaari <crope@iki.fi>
Date:   Wed May 28 22:04:12 2008 -0300

    V4L/DVB (8013): gl861: remove useless identify_state
    
    - remove useless identify_state - device is always warm
    
    Signed-off-by: Antti Palosaari <crope@iki.fi>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit f56ebe16b045861d26b81ef6683445c0144362b8
Author: Antti Palosaari <crope@iki.fi>
Date:   Wed May 28 21:55:06 2008 -0300

    V4L/DVB (8012): gl861: sleep a little to avoid I2C errors
    
    - add little sleep to avoid I2C errors arising on faster CPUs
    
    Signed-off-by: Antti Palosaari <crope@iki.fi>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit b38cc642000f0a262db367ffb95cd02ca2ead59b
Author: Devin Heitmueller <devin.heitmueller@gmail.com>
Date:   Mon Jun 9 14:59:05 2008 -0300

    V4L/DVB (8011): em28xx: enable DVB for HVR-900
    
    em28xx-cards.c
     - DVB support is supposed to be enabled for the first generation HVR-900.
       This device was confirmed with DVB by mkrufky when we did the original work
       in April, but I guess we forgot to set the flag.
    
    Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 0367ca1bc7346d9ea89a4b4f1b9220489bda65a3
Author: Devin Heitmueller <devin.heitmueller@gmail.com>
Date:   Mon Jun 9 14:58:04 2008 -0300

    V4L/DVB (8010): em28xx: Properly register extensions for already attached devices
    
    em28xx-video.c
     - Properly handle loading of the module when multiple devices are already
       connected (such as at bootup).  Before we were only calling dvb_init()
       against the last device in the list, so while we were handling subsequent
       adds properly, if there were multiple devices present on driver load,
       everybody except the last device would not get initialized.
    
    Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit d3d9b803eead0a536d28ffc31c5fadae976991cc
Author: Hans Verkuil <hverkuil@xs4all.nl>
Date:   Sun Jun 8 06:05:18 2008 -0300

    V4L/DVB (8008): cx18: remove duplicate audio and video input enums
    
    cx18-cards.h had a copy of the audio and video input enums
    from cx18-av-core.h, but with different prefixes. Removed
    that copy and used the ones from cx18-av-core.h.
    
    Thanks to Andy Walls <awalls@radix.net> for the report.
    
    Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 45270a1531a2aa90dd890666913c25a1e6f5e8eb
Author: Hans Verkuil <hverkuil@xs4all.nl>
Date:   Sat Jun 7 11:18:17 2008 -0300

    V4L/DVB (8007): cx18/cx25840: the S-Video LUMA input can use all In1-In8 inputs
    
    The S-Video LUMA input was restricted to the In1-In4 inputs, but it
    turns out that it can use the full range of In1-In8.
    
    Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit bf67cac1314ba29676fbac2decde0e2e0a8170f8
Author: Mauro Carvalho Chehab <mchehab@infradead.org>
Date:   Sat Jun 7 15:54:10 2008 -0300

    V4L/DVB (8005): Fix OOPS if frontend is null
    
    Thanks to timf <timf@iinet.net.au> and Mike Galbraith <efault@gmx.de> to report
    this issue.
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit fde60748d2f0345cabff20d25458c67d4ac06034
Author: Mauro Carvalho Chehab <mchehab@infradead.org>
Date:   Thu Jun 5 18:59:08 2008 -0300

    V4L/DVB (8004): Fix INPUT dependency at budget-ci
    
    As reported by Ingo Molnar:
    MODPOST 346 modules
    ERROR: "input_free_device" [drivers/media/dvb/ttpci/budget-ci.ko] undefined!
    ERROR: "input_register_device" [drivers/media/dvb/ttpci/budget-ci.ko] undefined!
    ERROR: "input_allocate_device" [drivers/media/dvb/ttpci/budget-ci.ko] undefined!
    ERROR: "input_unregister_device" [drivers/media/dvb/ttpci/budget-ci.ko] undefined!
    ERROR: "input_event" [drivers/media/common/ir-common.ko] undefined!
    
    This occurs when:
    
    CONFIG_INPUT=n
    CONFIG_VIDEO_IR=m
    CONFIG_DVB_BUDGET_CI=m
    
    Thanks-to: Ingo Molnar <mingo@elte.hu>
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>

commit 0b1faeef5f9243bb5fc5713a34bbf1ceab0de562
Author: Daniel J Blueman <daniel.blueman@gmail.com>
Date:   Sun Jun 15 12:32:15 2008 +0100

    x86: section/warning fixes
    
    WARNING: arch/x86/mm/built-in.o(.text+0x3a1): Section mismatch in
    reference from the function set_pte_phys() to the function
    .init.text:spp_getpage()
    The function set_pte_phys() references
    the function __init spp_getpage().
    This is often because set_pte_phys lacks a __init
    annotation or the annotation of spp_getpage is wrong.
    
    arch/x86/mm/init_64.c: In function 'early_memtest':
    arch/x86/mm/init_64.c:520: warning: passing argument 2 of
    'find_e820_area_size' from incompatible pointer type
    
    Signed-off-by: Daniel J Blueman <daniel.blueman@gmail.com>
    Cc: "Linus Torvalds" <torvalds@linux-foundation.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 41aefdcc98fdba47459eab67630293d67e855fc3
Author: Max Asbock <masbock@us.ibm.com>
Date:   Wed Jun 25 14:45:28 2008 -0700

    x86: shift bits the right way in native_read_tscp
    
    native_read_tscp shifts the bits in the high order value in the
    wrong direction, the attached patch fixes that.
    
    Signed-off-by: Max Asbock <masbock@linux.vnet.ibm.com>
    Acked-by: Glauber Costa <gcosta@redhat.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit c4e6a2e64e948de42473e9c829181d768b1258c3
Merge: 816c2ed... 16d7523...
Author: Len Brown <len.brown@intel.com>
Date:   Thu Jun 26 01:56:35 2008 -0400

    Merge branches 'release', 'acpi_disabled' and 'bugzilla-10958' into release

commit 816c2eda3ce8fa7eb62f22e01e2ec7a3f7d677c0
Author: Len Brown <len.brown@intel.com>
Date:   Tue Jun 24 22:57:12 2008 -0400

    dock: bay: Don't call acpi_walk_namespace() when ACPI is disabled.
    
    Signed-off-by: Len Brown <len.brown@intel.com>

commit 4389ed2ff61de2b1485b31bf342da913dd342f59
Author: Vegard Nossum <vegard.nossum@gmail.com>
Date:   Fri Jun 20 15:39:09 2008 +0200

    ACPI: don't walk tables if ACPI was disabled
    
    Ingo Molnar wrote:
    > -tip auto-testing started triggering this spinlock corruption message
    > yesterday:
    >
    > [    3.976213] calling  acpi_rtc_init+0x0/0xd3
    > [    3.980213] ACPI Exception (utmutex-0263): AE_BAD_PARAMETER, Thread F7C50000 could not acquire Mutex [3] [20080321]
    > [    3.992213] BUG: spinlock bad magic on CPU#0, swapper/1
    > [    3.992213]  lock: c2508dc4, .magic: 00000000, .owner: swapper/1, .owner_cpu: 0
    
    This is apparently because some parts of ACPI, including mutexes, are not
    initialized when acpi=off is passed to the kernel.
    
    Reported-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Vegard Nossum <vegard.nossum@gmail.com>
    Signed-off-by: Len Brown <len.brown@intel.com>

commit 16d752397301b95abaa95cbaf9e785d221872311
Author: Rene Herman <rene.herman@keyaccess.nl>
Date:   Tue Jun 24 19:38:56 2008 +0200

    thermal: Create CONFIG_THERMAL_HWMON=n
    
    A bug in libsensors <= 2.10.6 is exposed
    when this new hwmon I/F is enabled.
    Create CONFIG_THERMAL_HWMON=n
    until some time after libsensors 2.10.7 ships
    so those users can run the latest kernel.
    
    libsensors 3.x is already fixed -- those users
    can use CONFIG_THERMAL_HWMON=y now.
    
    Signed-off-by: Rene Herman <rene.herman@gmail.com>
    Acked-by: Mark M. Hoffman <mhoffman@lightlink.com>
    Signed-off-by: Len Brown <len.brown@intel.com>

commit 9e6c29768fc05d32ba1342b9348957b24bc476c2
Author: Jaya Kumar <jayakumar.arm@gmail.com>
Date:   Sun Jun 22 04:27:27 2008 +0100

    [ARM] 5117/1: pxafb: fix __devinit/exit annotations
    
    This patch fixes pxafb's init/exit annotations. It uses __devinit/exit for
    probe functions and __init for init functions. g_options is left as
    __devinitdata since it is used by both.
    
    Signed-off-by: Jaya Kumar <jayakumar.lkml@gmail.com>
    Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
    Acked-by: Eric Miao <eric.miao@marvell.com>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

commit ec5e69f6d3f4350681d6f7eaae515cf014be9276
Author: James Bottomley <James.Bottomley@HansenPartnership.com>
Date:   Mon Jun 23 14:52:09 2008 -0500

    [SCSI] esp: tidy up target reference counting
    
    The esp driver currently does hand rolled reference counting of its
    target.  It's much easier to do what it needs to do if it's plugged into
    the mid-layer callbacks (target_alloc and target_destroy) which were
    designed for this case, so do it this way and get rid of the internal
    target reference count.
    
    Acked-by: David S. Miller <davem@davemloft.net>
    Cc: Stable Tree <stable@kernel.org>
    Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>

commit 66b5004d85164a6439d3ba1e7757734472ee2cac
Author: Ron Rindjunsky <ron.rindjunsky@intel.com>
Date:   Wed Jun 25 16:46:31 2008 +0800

    iwlwifi: improve scanning band selection management
    
    This patch modifies the band selection management when scanning, so
    bands are now scanned according to HW band support.
    
    Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com>
    Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
    Signed-off-by: Zhu Yi <yi.zhu@intel.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 99ade2597e3f7f0ad463c489aaccd6cc605e242c
Author: Ivo van Doorn <ivdoorn@gmail.com>
Date:   Fri Jun 20 22:11:00 2008 +0200

    rt2x00: Fix unbalanced mutex locking
    
    The usb_cache_mutex was not correctly released
    under all circumstances. Both rt73usb as rt2500usb
    didn't release the mutex under certain conditions
    when the register access failed. Obviously such
    failure would lead to deadlocks.
    
    In addition under similar circumstances when the
    bbp register couldn't be read the value must be
    set to 0xff to indicate that the value is wrong.
    This too didn't happen under all circumstances.
    
    Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 2f9ec47d0954f9d2e5a00209c2689cbc477a8c89
Author: Michael Buesch <mb@bu3sch.de>
Date:   Fri Jun 20 11:40:46 2008 +0200

    b43legacy: Fix possible NULL pointer dereference in DMA code
    
    This fixes a possible NULL pointer dereference in an error path of the
    DMA allocation error checking code. This is also necessary for a future
    DMA API change that is on its way into the mainline kernel that adds
    an additional dev parameter to dma_mapping_error().
    
    Signed-off-by: Michael Buesch <mb@bu3sch.de>
    Cc: stable <stable@kernel.org>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 7b3abfc87ec13a81b255012b6e1bd4caeeb05aec
Author: Michael Buesch <mb@bu3sch.de>
Date:   Sun Jun 15 16:01:24 2008 +0200

    b43: Fix possible MMIO access while device is down
    
    This fixes a possible MMIO access while the device is still down
    from a suspend cycle. MMIO accesses with the device powered down
    may cause crashes on certain devices.
    
    Signed-off-by: Michael Buesch <mb@bu3sch.de>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 664f200610a3c9641ff58fc91b986b804cb1cc2d
Author: Michael Buesch <mb@bu3sch.de>
Date:   Sun Jun 15 15:27:49 2008 +0200

    b43legacy: Do not return TX_BUSY from op_tx
    
    Never return TX_BUSY from op_tx. It doesn't make sense to return
    TX_BUSY, if we can not transmit the packet.
    Drop the packet and return TX_OK.
    
    Signed-off-by: Michael Buesch <mb@bu3sch.de>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit c9e8eae0935f03e2d03a7ad7af80d8fc6c53e68c
Author: Michael Buesch <mb@bu3sch.de>
Date:   Sun Jun 15 15:17:29 2008 +0200

    b43: Do not return TX_BUSY from op_tx
    
    Never return TX_BUSY from op_tx. It doesn't make sense to return
    TX_BUSY, if we can not transmit the packet.
    Drop the packet and return TX_OK.
    This will fix the resume hang.
    
    Signed-off-by: Michael Buesch <mb@bu3sch.de>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 59d393ad92f719d9ef36b96eae56d4817a7eeb10
Author: Tony Vroon <tony@linx.net>
Date:   Wed Jun 11 16:23:56 2008 -0400

    mac80211: implement EU regulatory domain
    
    Implement missing EU regulatory domain for mac80211. Based on the
    information in IEEE 802.11-2007 (specifically pages 1142, 1143 & 1148)
    and ETSI 301 893 (V1.4.1).
    With thanks to Johannes Berg.
    
    Signed-off-by: Tony Vroon <tony@linx.net>
    Acked-by: Johannes Berg <johannes@sipsolutions.net>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 8d0a60032ffd472f0f7821ff388e9f438c06077a
Author: Bryan Wu <cooloney@kernel.org>
Date:   Wed Jun 25 12:41:51 2008 +0800

    Blackfin arch: fix up section mismatch warning
    
    --
    WARNING: vmlinux.o(.text+0x721a): Section mismatch in reference from the function ___fill_code_cplbtab() to the function .init.text:_fill_cplbtab()
    The function ___fill_code_cplbtab() references
    the function __init _fill_cplbtab().
    This is often because ___fill_code_cplbtab lacks a __init
    annotation or the annotation of _fill_cplbtab is wrong.
    
    WARNING: vmlinux.o(.text+0x7238): Section mismatch in reference from the function ___fill_code_cplbtab() to the function .init.text:_fill_cplbtab()
    The function ___fill_code_cplbtab() references
    the function __init _fill_cplbtab().
    This is often because ___fill_code_cplbtab lacks a __init
    annotation or the annotation of _fill_cplbtab is wrong.
    
    WARNING: vmlinux.o(.text+0x7250): Section mismatch in reference from the function ___fill_code_cplbtab() to the function .init.text:_fill_cplbtab()
    The function ___fill_code_cplbtab() references
    the function __init _fill_cplbtab().
    This is often because ___fill_code_cplbtab lacks a __init
    annotation or the annotation of _fill_cplbtab is wrong.
    
    WARNING: vmlinux.o(.text+0x7264): Section mismatch in reference from the function ___fill_code_cplbtab() to the function .init.text:_fill_cplbtab()
    The function ___fill_code_cplbtab() references
    the function __init _fill_cplbtab().
    This is often because ___fill_code_cplbtab lacks a __init
    annotation or the annotation of _fill_cplbtab is wrong.
    
    WARNING: vmlinux.o(.text+0x72a2): Section mismatch in reference from the function ___fill_data_cplbtab() to the function .init.text:_fill_cplbtab()
    The function ___fill_data_cplbtab() references
    the function __init _fill_cplbtab().
    This is often because ___fill_data_cplbtab lacks a __init
    annotation or the annotation of _fill_cplbtab is wrong.
    
    WARNING: vmlinux.o(.text+0x72bc): Section mismatch in reference from the function ___fill_data_cplbtab() to the function .init.text:_fill_cplbtab()
    The function ___fill_data_cplbtab() references
    the function __init _fill_cplbtab().
    This is often because ___fill_data_cplbtab lacks a __init
    annotation or the annotation of _fill_cplbtab is wrong.
    
    WARNING: vmlinux.o(.text+0x72d4): Section mismatch in reference from the function ___fill_data_cplbtab() to the function .init.text:_fill_cplbtab()
    The function ___fill_data_cplbtab() references
    the function __init _fill_cplbtab().
    This is often because ___fill_data_cplbtab lacks a __init
    annotation or the annotation of _fill_cplbtab is wrong.
    
    WARNING: vmlinux.o(.text+0x72e8): Section mismatch in reference from the function ___fill_data_cplbtab() to the function .init.text:_fill_cplbtab()
    The function ___fill_data_cplbtab() references
    the function __init _fill_cplbtab().
    This is often because ___fill_data_cplbtab lacks a __init
    annotation or the annotation of _fill_cplbtab is wrong.
    --
    
    Signed-off-by: Bryan Wu <cooloney@kernel.org>

commit 71a7d1556264c1ad84b1bcf5f7a9cbc980b1e1fd
Author: Sonic Zhang <sonic.zhang@analog.com>
Date:   Wed Jun 25 12:02:07 2008 +0800

    Blackfin arch: fix bug - kernel boot fails when Spinlock and rw-lock debugging enabled
    
    Initialize the lock of bad_irq_desc properly.
    The content of irq_desc array is replaced by bad_irq_desc in blackfin
    arch irqchip init code. So, do it properly as common irq init code.
    
    Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
    Signed-off-by: Bryan Wu <cooloney@kernel.org>

commit d8de72473effd674a3c1fe9621821f406f5587c9
Author: Peng Haitao <penght@cn.fujitsu.com>
Date:   Tue May 20 09:13:02 2008 +0800

    [PATCH] remove useless argument type in audit_filter_user()
    
    The second argument "type" is not used in audit_filter_user(), so I think that type can be removed. If I'm wrong, please tell me.
    
    Signed-off-by: Peng Haitao <penght@cn.fujitsu.com>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit 9f0aecdd1cd6aacee9aa8f08031f4f2e09e454dc
Author: Randy Dunlap <randy.dunlap@oracle.com>
Date:   Mon May 19 15:09:21 2008 -0700

    [PATCH] audit: fix kernel-doc parameter notation
    
    Fix auditfilter kernel-doc misssing parameter description:
    
    Warning(lin2626-rc3//kernel/auditfilter.c:1551): No description found for parameter 'sessionid'
    
    Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit 13d5ef97f0675d789f559cfebc1df9d5e2b1879c
Author: Peng Haitao <penght@cn.fujitsu.com>
Date:   Fri May 16 10:15:04 2008 +0800

    [PATCH] kernel/audit.c: nlh->nlmsg_type is gotten more than once
    
    The first argument "nlh->nlmsg_type" of audit_receive_filter() should be modified to "msg_type" in audit_receive_msg().
    
    Signed-off-by: Peng Haitao <penght@cn.fujitsu.com>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit eadc49b1a8d09480f14caea292142f103a89c77a
Author: David S. Miller <davem@davemloft.net>
Date:   Tue Jun 17 23:53:22 2008 -0700

    [SCSI] esp: Fix OOPS in esp_reset_cleanup().
    
    OOPS reported by Friedrich Oslage <bluebird@porno-bullen.de>
    
    The problem here is that tp->starget is set every time a lun
    is allocated for a particular target so we can catch the
    sdev_target parent value.
    
    The reset handler uses the NULL'ness of this value to determine
    which targets are active.
    
    But esp_slave_destroy() does not NULL out this value when appropriate.
    
    So for every target that doesn't respond, the SCSI bus scan causes
    a stale pointer to be left here, with ensuing crashes like you're
    seeing.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Cc: Stable Tree <stable@kernel.org>
    Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>

commit 88a6f4ad76be425f47df7f892baf913bcd466fb3
Author: Patrick McHardy <kaber@trash.net>
Date:   Tue Jun 24 13:30:45 2008 -0700

    netfilter: ip6table_mangle: don't reroute in LOCAL_IN
    
    Rerouting should only happen in LOCAL_OUT, in INPUT its useless
    since the packet has already chosen its final destination.
    
    Noticed by Alexey Dobriyan <adobriyan@gmail.com>.
    
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit c95e62ce8905aab62fed224eaaa9b8558a0ef652
Author: Matthew Wilcox <matthew@wil.cx>
Date:   Mon Jun 23 09:14:31 2008 -0600

    [SCSI] ses: Fix timeout
    
    Timeouts are measured in jiffies, not in seconds.
    
    Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
    Cc: Stable Tree <stable@kernel.org>
    Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>

commit 19fd426a18b48a0446ba4b54ac66264916dcb7f3
Merge: e8183c2... 62786b9...
Author: Jan Kara <jack@suse.cz>
Date:   Tue Jun 24 11:43:00 2008 +0200

    Merge branch 'master' into for_mm

commit e8183c2452041326c95258ecc7865b6fcd91c730
Author: Tomas Janousek <tomi@nomi.cz>
Date:   Mon Jun 23 15:12:35 2008 +0200

    udf: Fix regression in UDF anchor block detection
    
    In some cases it could happen that some block passed test in
    udf_check_anchor_block() even though udf_read_tagged() refused to read it later
    (e.g. because checksum was not correct).  This patch makes
    udf_check_anchor_block() use udf_read_tagged() so that the checking is
    stricter.
    
    This fixes the regression (certain disks unmountable) caused by commit
    423cf6dc04eb79d441bfda2b127bc4b57134b41d.
    
    Signed-off-by: Tomas Janousek <tomi@nomi.cz>
    Signed-off-by: Jan Kara <jack@suse.cz>

commit cdd16d0265c9234228fd37fbbad844d7e894b278
Author: Miklos Szeredi <mszeredi@suse.cz>
Date:   Mon Jun 23 18:11:53 2008 +0200

    [patch 2/3] vfs: dcache cleanups
    
    Comment from Al Viro: add prepend_name() wrapper.
    
    Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit 31f3e0b3a18c6d48196c40a82a3b8c01f4ff6b23
Author: Miklos Szeredi <mszeredi@suse.cz>
Date:   Mon Jun 23 18:11:52 2008 +0200

    [patch 1/3] vfs: dcache sparse fixes
    
    Fix the following sparse warnings:
    
    fs/dcache.c:2183:19: warning: symbol 'filp_cachep' was not declared. Should it be static?
    fs/dcache.c:115:3: warning: context imbalance in 'dentry_iput' - unexpected unlock
    fs/dcache.c:188:2: warning: context imbalance in 'dput' - different lock contexts for basic block
    fs/dcache.c:400:2: warning: context imbalance in 'prune_one_dentry' - different lock contexts for basic block
    fs/dcache.c:431:22: warning: context imbalance in 'prune_dcache' - different lock contexts for basic block
    fs/dcache.c:563:2: warning: context imbalance in 'shrink_dcache_sb' - different lock contexts for basic block
    fs/dcache.c:1385:6: warning: context imbalance in 'd_delete' - wrong count at exit
    fs/dcache.c:1636:2: warning: context imbalance in '__d_unalias' - unexpected unlock
    fs/dcache.c:1735:2: warning: context imbalance in 'd_materialise_unique' - different lock contexts for basic block
    
    Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
    Reviewed-by: Matthew Wilcox <willy@linux.intel.com>
    Acked-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit be285c712bbbe5db43e503782fbef2bfeaa345f9
Author: Andreas Gruenbacher <agruen@suse.de>
Date:   Mon Jun 16 13:28:07 2008 +0200

    [patch 3/3] vfs: make d_path() consistent across mount operations
    
    The path that __d_path() computes can become slightly inconsistent when it
    races with mount operations: it grabs the vfsmount_lock when traversing mount
    points but immediately drops it again, only to re-grab it when it reaches the
    next mount point.  The result is that the filename computed is not always
    consisent, and the file may never have had that name. (This is unlikely, but
    still possible.)
    
    Fix this by grabbing the vfsmount_lock for the whole duration of
    __d_path().
    
    Signed-off-by: Andreas Gruenbacher <agruen@suse.de>
    Signed-off-by: John Johansen <jjohansen@suse.de>
    Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
    Acked-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit f9f48ec72bfc9489a30bc6ddbfcf27d86a8bc651
Author: Denis V. Lunev <den@openvz.org>
Date:   Mon Jun 9 16:40:38 2008 -0700

    [patch 4/4] flock: remove unused fields from file_lock_operations
    
    fl_insert and fl_remove are not used right now in the kernel. Remove them.
    
    Signed-off-by: Denis V. Lunev <den@openvz.org>
    Cc: Matthew Wilcox <matthew@wil.cx>
    Cc: Alexander Viro <viro@zeniv.linux.org.uk>
    Cc: "J. Bruce Fields" <bfields@fieldses.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit 694a1764d657e0f7a9b139bc7269c8d5f5a2534b
Author: Marcin Slusarz <marcin.slusarz@gmail.com>
Date:   Mon Jun 9 16:40:37 2008 -0700

    [patch 3/4] vfs: fix ERR_PTR abuse in generic_readlink
    
    generic_readlink calls ERR_PTR for negative and positive values
    (vfs_readlink returns length of "link"), but it should not
    (not an errno) and does not need to.
    
    Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com>
    Cc: Al Viro <viro@ZenIV.linux.org.uk>
    Cc: Christoph Hellwig <hch@lst.de>
    Acked-by: Miklos Szeredi <miklos@szeredi.hu>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit 20d4fdc1a788e4ca0aaf2422772ba668e7e10839
Author: Jan Engelhardt <jengelh@medozas.de>
Date:   Mon Jun 9 16:40:36 2008 -0700

    [patch 2/4] fs: make struct file arg to d_path const
    
    Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit c8e7f449b225ee6c87454ac069f0a041035c5140
Author: Jan Blunck <jblunck@suse.de>
Date:   Mon Jun 9 16:40:35 2008 -0700

    [patch 1/4] vfs: path_{get,put}() cleanups
    
    Here are some more places where path_{get,put}() can be used instead of
    dput()/mntput() pair.
    
    Signed-off-by: Jan Blunck <jblunck@suse.de>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Jens Axboe <jens.axboe@oracle.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit c70f84417429f41519be0197a1092a53c2201f47
Author: Michael Kerrisk <mtk.manpages@googlemail.com>
Date:   Mon Jun 9 21:16:09 2008 -0700

    [patch for 2.6.26 4/4] vfs: utimensat(): fix write access check for futimens()
    
    The POSIX.1 draft spec for futimens()/utimensat() says:
    
            Only a process with the effective user ID equal to the
            user ID of the file, *or with write access to the file*,
            or with appropriate privileges may use futimens() or
            utimensat() with a null pointer as the times argument
            or with both tv_nsec fields set to the special value
            UTIME_NOW.
    
    The important piece here is "with write access to the file", and
    this matters for futimens(), which deals with an argument that
    is a file descriptor referring to the file whose timestamps are
    being updated,  The standard is saying that the "writability"
    check is based on the file permissions, not the access mode with
    which the file is opened.  (This behavior is consistent with the
    semantics of FreeBSD's futimes().)  However, Linux is currently
    doing the latter -- futimens(fd, times) is a library
    function implemented as
    
           utimensat(fd, NULL, times, 0)
    
    and within the utimensat() implementation we have the code:
    
                    f = fget(dfd);  // dfd is 'fd'
                    ...
                    if (f) {
                            if (!(f->f_mode & FMODE_WRITE))
                                    goto mnt_drop_write_and_out;
    
    The check should instead be based on the file permissions.
    
    Thanks to Miklos for pointing out how to do this check.
    Miklos also pointed out a simplification that could be
    made to my first version of this patch, since the checks
    for the pathname and file descriptor cases can now be
    conflated.
    
    Acked-by: Miklos Szeredi <miklos@szeredi.hu>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Ulrich Drepper <drepper@redhat.com>
    Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit 4cca92264e61a90b43fc4e076cd25b7f4e16dc61
Author: Michael Kerrisk <mtk.manpages@googlemail.com>
Date:   Mon Jun 9 21:16:08 2008 -0700

    [patch for 2.6.26 3/4] vfs: utimensat(): fix error checking for {UTIME_NOW,UTIME_OMIT} case
    
    The POSIX.1 draft spec for utimensat() says:
    
        Only a process with the effective user ID equal to the
        user ID of the file or with appropriate privileges may use
        futimens() or utimensat() with a non-null times argument
        that does not have both tv_nsec fields set to UTIME_NOW
        and does not have both tv_nsec fields set to UTIME_OMIT.
    
    If this condition is violated, then the error EPERM should result.
    However, the current implementation does not generate EPERM if
    one tv_nsec field is UTIME_NOW while the other is UTIME_OMIT.
    It should give this error for that case.
    
    This patch:
    
    a) Repairs that problem.
    b) Removes the now unneeded nsec_special() helper function.
    c) Adds some comments to explain the checks that are being
       performed.
    
    Thanks to Miklos, who provided comments on the previous iteration
    of this patch.  As a result, this version is a little simpler and
    and its logic is better structured.
    
    Miklos suggested an alternative idea, migrating the
    is_owner_or_cap() checks into fs/attr.c:inode_change_ok() via
    the use of an ATTR_OWNER_CHECK flag.  Maybe we could do that
    later, but for now I've gone with this version, which is
    IMO simpler, and can be more easily read as being correct.
    
    Acked-by: Miklos Szeredi <miklos@szeredi.hu>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Ulrich Drepper <drepper@redhat.com>
    Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit 94c70b9ba7e9c1036284e779e2fef5be89021533
Author: Michael Kerrisk <mtk.manpages@googlemail.com>
Date:   Mon Jun 9 21:16:05 2008 -0700

    [patch for 2.6.26 1/4] vfs: utimensat(): ignore tv_sec if tv_nsec == UTIME_OMIT or UTIME_NOW
    
    The POSIX.1 draft spec for utimensat() says that if a times[n].tv_nsec
    field is UTIME_OMIT or UTIME_NOW, then the value in the corresponding
    tv_sec field is ignored.  See the last sentence of this para, from
    the spec:
    
        If the tv_nsec field of a timespec structure has
        the special value UTIME_NOW, the file's relevant
        timestamp shall be set to the greatest value
        supported by the file system that is not greater than
        the current time. If the tv_nsec field has the
        special value UTIME_OMIT, the file's relevant
        timestamp shall not be changed. In either case,
        the tv_sec field shall be ignored.
    
    However the current Linux implementation requires the tv_sec value to be
    zero (or the EINVAL error results). This requirement should be removed.
    
    Acked-by: Miklos Szeredi <miklos@szeredi.hu>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Ulrich Drepper <drepper@redhat.com>
    Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit 12fd0d3088d27867be68655bcab2b074f2835f60
Author: Michael Kerrisk <mtk.manpages@googlemail.com>
Date:   Mon Jun 9 21:16:07 2008 -0700

    [patch for 2.6.26 2/4] vfs: utimensat(): be consistent with utime() for immutable and append-only files
    
    This patch fixes utimensat() to make its behavior consistent
    with that of utime()/utimes() when dealing with files marked
    immutable and append-only.
    
    The current utimensat() implementation also returns EPERM if
    'times' is non-NULL and the tv_nsec fields are both UTIME_NOW.
    For consistency, the
    
    (times != NULL && times[0].tv_nsec == UTIME_NOW &&
                      times[1].tv_nsec == UTIME_NOW)
    
    case should be treated like the traditional utimes() case where
    'times' is NULL.  That is, the call should succeed for a file
    marked append-only and should give the error EACCES if the file
    is marked as immutable.
    
    The simple way to do this is to set 'times' to NULL
    if (times[0].tv_nsec == UTIME_NOW && times[1].tv_nsec == UTIME_NOW).
    
    This is also the natural approach, since POSIX.1 semantics consider the
    times == {{x, UTIME_NOW}, {y, UTIME_NOW}}
    to be exactly equivalent to the case for
    times == NULL.
    
    (Thanks to Miklos for pointing this out.)
    
    Patch 3 in this series relies on the simplification provided
    by this patch.
    
    Acked-by: Miklos Szeredi <miklos@szeredi.hu>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Ulrich Drepper <drepper@redhat.com>
    Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit fe6e9c1f25ac01f848bd084ee0ee62a5a0966ff3
Author: Al Viro <viro@zeniv.linux.org.uk>
Date:   Mon Jun 23 08:30:55 2008 -0400

    [PATCH] fix cgroup-inflicted breakage in block_dev.c
    
    devcgroup_inode_permission() expects MAY_FOO, not FMODE_FOO; kindly
    keep your misdesign consistent if you positively have to inflict it
    on the kernel.
    
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

commit fc6e14f4fb50bc734d08e65eb8a5798d54a2ad77
Author: Russell King <rmk@dyn-67.arm.linux.org.uk>
Date:   Sun Jun 22 15:41:30 2008 +0100

    [ARM] Export dma_sync_sg_for_device()
    
    Noticed by Martin Michlmayr, this missing export prevents IEEE1394
    from building with:
    
    ERROR: "dma_sync_sg_for_device" [drivers/ieee1394/ieee1394.ko] undefined!
    
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

commit c907310fb0a5dd69a7fe11c08368abb0d34a35cb
Merge: e5a2c9c... 15e02a3...
Author: Russell King <rmk@dyn-67.arm.linux.org.uk>
Date:   Sun Jun 22 15:03:20 2008 +0100

    Merge branch 'omap-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6

commit e5a2c9ccb3e849fed70674ac6880536eaf553dba
Author: Uli Luckas <u.luckas@road.de>
Date:   Wed Jun 18 09:54:03 2008 +0100

    [ARM] 5109/1: Mark rtc sa1100 driver as wakeup source before registering it
    
    Mark rtc sa1100 driver as wakeup source before registering it.
    rtc_device_register evaluates device_can_wakeup(rtc->dev.parent) and
    supresses the creation of /sys/class/rtc/rtcX/wakealarm if
    device_can_wakeup is not (yet) true.
    
    Signed-off-by: Uli Luckas <u.luckas@road.de>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

commit ee98476bbc565f8fe42e198602e647288b6a258d
Author: Jaya Kumar <jayakumar.arm@gmail.com>
Date:   Sun Jun 22 04:27:26 2008 +0100

    [ARM] 5116/1: pxafb: cleanup and fix order of failure handling
    
    This issue was found by Krzysztof Helt and Eric Miao.
    
    pxafb had issues in the order with which it cleaned up if errors occurred
    during a probe. This patch reorders the failure handling sequence and also
    frees the cmap and clk.
    
    Signed-off-by: Jaya Kumar <jayakumar.lkml@gmail.com>
    Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
    Acked-by: Eric Miao <eric.miao@marvell.com>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

commit f1edfc420ac7beb90b27bf822036cbbfa32483f1
Author: Jaya Kumar <jayakumar.arm@gmail.com>
Date:   Sun Jun 22 04:27:25 2008 +0100

    [ARM] 5115/1: pxafb: fix ifdef for command line option handling
    
    This bug was found and fixed by Lothar Wassmann.
    
    Previously, the use of ifndef CONFIG_MODULES made it such that pxafb command
    line option parsing was dependent on whether the kernel was built with module
    support. The ifndef should be MODULE so that parsing is dependent only on
    whether the driver is built-in or not.
    
    Signed-off-by: Jaya Kumar <jayakumar.lkml@gmail.com>
    Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
    Acked-by: Eric Miao <eric.miao@marvell.com>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

commit 50db04dd9c74178e68a981a7127c37252ffb3242
Author: Vegard Nossum <vegard.nossum@gmail.com>
Date:   Sun Jun 15 00:47:36 2008 +0200

    debugobjects: fix lockdep warning
    
    Daniel J Blueman reported:
    | =======================================================
    | [ INFO: possible circular locking dependency detected ]
    | 2.6.26-rc5-201c #1
    | -------------------------------------------------------
    | nscd/3669 is trying to acquire lock:
    |  (&n->list_lock){.+..}, at: [<ffffffff802bab03>] deactivate_slab+0x173/0x1e0
    |
    | but task is already holding lock:
    |  (&obj_hash[i].lock){++..}, at: [<ffffffff803fa56f>]
    | __debug_object_init+0x2f/0x350
    |
    | which lock already depends on the new lock.
    
    There are two locks involved here; the first is a SLUB-local lock, and
    the second is a debugobjects-local lock. They are basically taken in two
    different orders:
    
    1. SLUB { debugobjects { ... } }
    2. debugobjects { SLUB { ... } }
    
    This patch changes pattern #2 by trying to fill the memory pool (e.g.
    the call into SLUB/kmalloc()) outside the debugobjects lock, so now the
    two patterns look like this:
    
    1. SLUB { debugobjects { ... } }
    2. SLUB { } debugobjects { ... }
    
    [ daniel.blueman@gmail.com: pool_lock needs to be taken irq safe in fill_pool ]
    
    Reported-by: Daniel J Blueman <daniel.blueman@gmail.com>
    Signed-off-by: Vegard Nossum <vegard.nossum@gmail.com>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

commit 15e02a3b510aa4ef3d077ebc25eb3cd08b9af034
Author: Thara Gopinath <thara@ti.com>
Date:   Mon Apr 28 16:55:01 2008 +0530

    ARM: OMAP: Correcting the gpmc prefetch control register address
    
    Correcting the GPMC_PREFETCH_CONTROL register address
    
    Signed-off-by: Thara Gopinath <thara@ti.com>
    Signed-off-by: Tony Lindgren <tony@atomide.com>

commit 66c23551b1b774e2be3c7bdf91c0ebf2c7a3519e
Author: Jarkko Nikula <jarkko.nikula@nokia.com>
Date:   Tue May 13 13:26:03 2008 +0300

    ARM: OMAP: DMA: Don't mark channel active in omap_enable_channel_irq
    
    Channel should be marked active only when DMA is really started. Otherwise
    just omap_request_dma, omap_dma_link_lch and omap_dma_unlink_lch will cause
    incorrect dump_stack().
    
    Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
    Signed-off-by: Tony Lindgren <tony@atomide.com>