commit 5955c7a2cfb6a35429adea5dc480002b15ca8cfc
Author: Zlatko Calusic <zlatko.calusic@iskon.hr>
Date:   Wed Feb 18 01:33:34 2009 +0100

    Add support for VT6415 PCIE PATA IDE Host Controller
    
    Signed-off-by: Zlatko Calusic <zlatko.calusic@iskon.hr>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 3494252d5644993f407a45f01c3e8ad5ae38f93c
Author: Rafael J. Wysocki <rjw@sisk.pl>
Date:   Fri Feb 13 23:41:12 2009 +0100

    USB/PCI: Fix resume breakage of controllers behind cardbus bridges
    
    If a USB PCI controller is behind a cardbus bridge, we are trying to
    restore its configuration registers too early, before the cardbus
    bridge is operational.  To fix this, call pci_restore_state() from
    usb_hcd_pci_resume() and remove usb_hcd_pci_resume_early() which is
    no longer necessary (the configuration spaces of USB controllers that
    are not behind cardbus bridges will be restored by the PCI PM core
    with interrupts disabled anyway).
    
    This patch fixes the regression from 2.6.28 tracked as
    http://bugzilla.kernel.org/show_bug.cgi?id=12659
    
    [ Side note: the proper long-term fix is probably to just force the
      unplug event at suspend time instead of doing a plug/unplug at resume
      time, but this patch is fine regardless  - Linus ]
    
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    Reported-by: Miles Lane <miles.lane@gmail.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit e78ac4b9deb8f36d8c828b6d91232960f109d951
Merge: 29a0c5c... a0490fa...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:30:06 2009 -0800

    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: cpu hotplug fix

commit 29a0c5ce5d008f398346d644456d62ab300d5e10
Merge: f8effd1... 3997ad3...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:29:42 2009 -0800

    Merge branch 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      timers: more consistently use clock vs timer

commit f8effd1a4a1833eac90261d78abacfaefe3d99e4
Merge: 3501033... f9aa28a...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:29:15 2009 -0800

    Merge branch 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
    
    * 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
      doc: mmiotrace.txt, buffer size control change
      trace: mmiotrace to the tracer menu in Kconfig
      mmiotrace: count events lost due to not recording

commit 35010334aa007480a833401b80922299cb1a15ef
Merge: 8ce9a75... be71661...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:27:39 2009 -0800

    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, vm86: fix preemption bug
      x86, olpc: fix model detection without OFW
      x86, hpet: fix for LS21 + HPET = boot hang
      x86: CPA avoid repeated lazy mmu flush
      x86: warn if arch_flush_lazy_mmu_cpu is called in preemptible context
      x86/paravirt: make arch_flush_lazy_mmu/cpu disable preemption
      x86, pat: fix warn_on_once() while mapping 0-1MB range with /dev/mem
      x86/cpa: make sure cpa is safe to call in lazy mmu mode
      x86, ptrace, mm: fix double-free on race

commit 8ce9a75a307e142a8871c649627555e0e4a1eefb
Merge: b30b774... 9af8814...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:26:35 2009 -0800

    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:
      iommu: fix Intel IOMMU write-buffer flushing
      futex: fix reference leak
    
    Trivial conflicts fixed manually in drivers/pci/intel-iommu.c

commit b30b77493039b7b95b4d569a66af425b02651edd
Merge: c951aa6... 26456dc...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:23:49 2009 -0800

    Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
    
    * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
      powerpc/vsx: Fix VSX alignment handler for regs 32-63
      powerpc/ps3: Move ps3_mm_add_memory to device_initcall
      powerpc/mm: Fix numa reserve bootmem page selection
      powerpc/mm: Fix _PAGE_CHG_MASK to protect _PAGE_SPECIAL

commit c951aa62d59210636cc63a569bcf3331be7f5b15
Merge: 23beafb... a08f6e0...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:23:35 2009 -0800

    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: Documentation: fix minor PCIe HOWTO thinko
      PCI: fix missing kernel-doc and typos
      PCI: fix struct pci_platform_pm_ops kernel-doc
      PCI: fix rom.c kernel-doc warning
      PCI/MSI: fix msi_mask() shift fix

commit 23beafbe3abd3f622931e83ef4e6b17642cf408e
Merge: 48c0d9e... 8eb2dfa...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:22:59 2009 -0800

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
      crypto: lrw - Fix big endian support

commit 48c0d9ece360ff6001e2ae36aa9b34446d0388a8
Merge: 0637810... 2456242...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:19:14 2009 -0800

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:
      Btrfs: hold trans_mutex when using btrfs_record_root_in_trans
      Btrfs: make a lockdep class for the extent buffer locks
      Btrfs: fs/btrfs/volumes.c: remove useless kzalloc
      Btrfs: remove unused code in split_state()
      Btrfs: remove btrfs_init_path
      Btrfs: balance_level checks !child after access
      Btrfs: Avoid using __GFP_HIGHMEM with slab allocator
      Btrfs: don't clean old snapshots on sync(1)
      Btrfs: use larger metadata clusters in ssd mode
      Btrfs: process mount options on mount -o remount,
      Btrfs: make sure all pending extent operations are complete

commit 0637810f24bad641d3d3f80fd3f63f3baffd9536
Merge: 51f2677... 7dac745...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:16:02 2009 -0800

    Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev
    
    * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
      sata_nv: give up hardreset on nf2
      libata-sff: fix 32-bit PIO ATAPI regression

commit 51f267739a81db5eb511b95aeae338413690b8a2
Merge: 59dad0c... 9297999...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:15:23 2009 -0800

    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: create the source symlink earlier in the objdir
      scripts: add x86 64 bit support to the markup_oops.pl script
      scripts: add x86 register parser to markup_oops.pl
      kbuild: add sys_* entries for syscalls in tags
      kbuild: fix tags generation of config symbols
      bootgraph: fix for use with dot symbols
      kbuild: add vmlinux to kernel rpm
      kbuild,setlocalversion: shorten the make time when using svn

commit 59dad0cbe6fd52e68b1ee4b02cbf89d64a4655cc
Merge: 1024d1c... 211e3e0...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:14:15 2009 -0800

    Merge branch 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
    
    * 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
      MAINTAINERS: Switch hdaps to Frank Seidel
      hwmon: Fix ACPI resource check error handling
      hwmon: (f71882fg) Hide misleading error message

commit 1024d1c24bb3f2c4dc568d96d3b5e22ea5865481
Merge: 5e51d16... 7bf432d...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:09:03 2009 -0800

    Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6
    
    * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6:
      V4L/DVB (10626): ivtv: fix regression in get sliced vbi format
      V4L/DVB (10625): ivtv: fix decoder crash regression
      V4L/DVB (10619): gspca - main: Destroy the URBs at disconnection time.
      V4L/DVB (10572): Revert commit dda06a8e4610757def753ee3a541a0b1a1feb36b
      V4L/DVB (10533): fix LED status output
      V4L/DVB (10532): Correction of Stereo detection/setting and signal strength indication
      V4L/DVB (10527): tuner: fix TUV1236D analog/digital setup
      V4L/DVB (10516a): zoran: Update MAINTAINERS entry

commit 5e51d16ddefa0874993f42a4b2beb13127feda76
Merge: 7f302fe... 2b63938...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:08:26 2009 -0800

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
      HID: fix bus endianity in file2alias
      HID: move tmff and zpff devices from ignore_list to blacklist
      HID: unlock properly on error paths in hidraw_ioctl()
      HID: blacklist Powercom USB UPS

commit 7f302fe3173c61e0e4fcf0a6a906ae297225e3be
Merge: 68cc830... dcd9651...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:08:03 2009 -0800

    Merge branch 'for-linus' of git://git.o-hand.com/linux-mfd
    
    * 'for-linus' of git://git.o-hand.com/linux-mfd:
      mfd: Fix sm501_register_gpio section mismatch
      mfd: fix sm501 section mismatches
      mfd: terminate pcf50633 i2c_device_id list
      mfd: Ensure all WM8350 IRQs are masked at startup
      mfd: fix htc-egpio iomem resource handling using resource_size
      mfd: Fix TWL4030 build on some ARM variants
      mfd: wm8350 tries reaches -1
      mfd: Mark WM835x USB_SLV_500MA bit as accessible
      mfd: Improve diagnostics for WM8350 ID register probe
      mfd: Initialise WM8350 interrupts earlier
      mfd: Fix egpio kzalloc return test

commit 68cc8301b45dee5de275a477a60f77f5560c8ca0
Merge: 11df586... 12d60e2...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:07:18 2009 -0800

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
      [WATCHDOG] iTCO_wdt: fix SMI_EN regression 2

commit 11df5864075f763ec0d1fdecd6a3f0af7d09a553
Merge: 2f60971... a3c1239...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:05:59 2009 -0800

    Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb
    
    * 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb:
      wusb: whci-hcd: always lock whc->lock with interrupts disabled

commit 2f6097129af5625db2fb5e601f89e5bf55cd1dcd
Author: Roel Kluin <roel.kluin@gmail.com>
Date:   Mon Feb 16 12:49:16 2009 +0000

    FRV: __pte_to_swp_entry doesn't expand correctly
    
    The macro doesn't expand correctly when its parameter isn't 'pte'.
    
    Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
    Signed-off-by: David Howells <dhowells@redhat.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 3512a79dbcc90e6edac98717607bd821bba50a14
Merge: 39a6576... 0905426...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:05:05 2009 -0800

    Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4
    
    * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
      ext4: Fix NULL dereference in ext4_ext_migrate()'s error handling
      ext4: Implement range_cyclic in ext4_da_writepages instead of write_cache_pages
      ext4: Initialize preallocation list_head's properly
      ext4: Fix lockdep warning
      ext4: Fix to read empty directory blocks correctly in 64k
      jbd2: Avoid possible NULL dereference in jbd2_journal_begin_ordered_truncate()
      Revert "ext4: wait on all pending commits in ext4_sync_fs()"
      jbd2: Fix return value of jbd2_journal_start_commit()

commit 39a65762d4c48fd8a498f34b7fec74a6b0aebd55
Merge: 643aac1... 516a1a7...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:04:32 2009 -0800

    Merge branch 'kvm-updates/2.6.29' of git://git.kernel.org/pub/scm/virt/kvm/kvm
    
    * 'kvm-updates/2.6.29' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
      KVM: VMX: Flush volatile msrs before emulating rdmsr
      KVM: Fix assigned devices circular locking dependency
      KVM: x86: fix LAPIC pending count calculation
      KVM: Fix INTx for device assignment
      KVM: MMU: Map device MMIO as UC in EPT
      KVM: x86: disable kvmclock on non constant TSC hosts
      KVM: PIT: fix i8254 pending count read
      KVM: Fix racy in kvm_free_assigned_irq
      KVM: Add kvm_arch_sync_events to sync with asynchronize events
      KVM: mmu_notifiers release method
      KVM: Avoid using CONFIG_ in userspace visible headers
      KVM: ia64: fix fp fault/trap handler

commit 643aac1e2a34aa1d46a2d95c2a4087873f01e25e
Merge: ca77fde... 1371be0...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 17 14:04:00 2009 -0800

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
      cpumask: Use cpu_*_mask accessors code: alpha
      cpumask: fix powernow-k8: partial revert of 2fdf66b491ac706657946442789ec644cc317e1a

commit ca77fde8e62cecb2c0769052228d15b901367af8
Author: David Woodhouse <dwmw2@infradead.org>
Date:   Fri Feb 13 23:18:03 2009 +0000

    Fix Intel IOMMU write-buffer flushing
    
    This is the cause of the DMA faults and disk corruption that people have
    been seeing. Some chipsets neglect to report the RWBF "capability" --
    the flag which says that we need to flush the chipset write-buffer when
    changing the DMA page tables, to ensure that the change is visible to
    the IOMMU.
    
    Override that bit on the affected chipsets, and everything is happy
    again.
    
    Thanks to Chris and Bhavesh and others for helping to debug.
    
    Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
    Tested-by: Chris Wright <chrisw@sous-sol.org>
    Reviewed-by: Bhavesh Davda <bhavesh@vmware.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 1a88b5364b535edaa321d70a566e358390ff0872
Author: Al Viro <viro@ZenIV.linux.org.uk>
Date:   Mon Feb 16 02:38:12 2009 +0000

    Fix incomplete __mntput locking
    
    Getting this wrong caused
    
    	WARNING: at fs/namespace.c:636 mntput_no_expire+0xac/0xf2()
    
    due to optimistically checking cpu_writer->mnt outside the spinlock.
    
    Here's what we really want:
     * we know that nobody will set cpu_writer->mnt to mnt from now on
     * all changes to that sucker are done under cpu_writer->lock
     * we want the laziest equivalent of
    	spin_lock(&cpu_writer->lock);
    	if (likely(cpu_writer->mnt != mnt)) {
    		spin_unlock(&cpu_writer->lock);
    		continue;
    	}
    	/* do stuff */
      that would make sure we won't miss earlier setting of ->mnt done by
      another CPU.
    
    Anyway, for now we just move the spin_lock() earlier and move the test
    into the properly locked region.
    
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
    Reported-and-tested-by: Li Zefan <lizf@cn.fujitsu.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 211e3e0e1b116b10ba707db2fec972909fa647fd
Author: Frank Seidel <frank@f-seidel.de>
Date:   Tue Feb 17 19:59:54 2009 +0100

    MAINTAINERS: Switch hdaps to Frank Seidel
    
    As Rovert Love doesn't any more seem to be realy active on hdaps
    driver i'll happily take it over.
    
    Signed-off-by: Frank Seidel <frank@f-seidel.de>
    Cc: Robert Love <rlove@rlove.org>
    Signed-off-by: Jean Delvare <khali@linux-fr.org>

commit 18632f84fac770125c0982dfadec6b551e82144e
Author: Hans de Goede <hdegoede@redhat.com>
Date:   Tue Feb 17 19:59:54 2009 +0100

    hwmon: Fix ACPI resource check error handling
    
    This patch fixes a number of cases where things were not properly
    cleaned up when acpi_check_resource_conflict() returned an error,
    causing oopses such as the one reported here:
    https://bugzilla.redhat.com/show_bug.cgi?id=483208
    
    Signed-off-by: Hans de Goede <hdegoede@redhat.com>
    Signed-off-by: Jean Delvare <khali@linux-fr.org>

commit 603eaa1bdd3e0402085e815cc531bb0a32827a9e
Author: Jean Delvare <khali@linux-fr.org>
Date:   Tue Feb 17 19:59:54 2009 +0100

    hwmon: (f71882fg) Hide misleading error message
    
    If the F71882FG chip is at address 0x4e, then the probe at 0x2e will
    fail with the following message in the logs:
    f71882fg: Not a Fintek device
    
    This is misleading because there is a Fintek device, just at a
    different address. So I propose to degrade this message to a debug
    message.
    
    Signed-off-by: Jean Delvare <khali@linux-fr.org>
    Acked-by: Hans de Goede <hdegoede@redhat.com>

commit 7bf432d64c47f77111fbce5d48d7774df8b48948
Author: Hans Verkuil <hverkuil@xs4all.nl>
Date:   Mon Feb 16 04:25:32 2009 -0300

    V4L/DVB (10626): ivtv: fix regression in get sliced vbi format
    
    The new v4l2_subdev_call used s_fmt instead of g_fmt.
    
    Thanks-to: Andy Walls <awalls@radix.net>
    Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

commit ac9575f75c52bcb455120f8c43376b556acba048
Author: Hans Verkuil <hverkuil@xs4all.nl>
Date:   Sat Feb 14 19:58:33 2009 -0300

    V4L/DVB (10625): ivtv: fix decoder crash regression
    
    The video_ioctl2 conversion of ivtv in kernel 2.6.27 introduced a bug
    causing decoder commands to crash. The decoder commands should have been
    handled from the video_ioctl2 default handler, ensuring correct mapping
    of the argument between user and kernel space. Unfortunately they ended
    up before the video_ioctl2 call, causing random crashes.
    
    Thanks to hannes@linus.priv.at for testing and helping me track down the
    cause!
    
    Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

commit ad28127d7c7c617bca1d426f95b6ffa1fb8f700f
Author: Adam Baker <linux@baker-net.org.uk>
Date:   Wed Feb 4 15:33:21 2009 -0300

    V4L/DVB (10619): gspca - main: Destroy the URBs at disconnection time.
    
    If a device using the gspca framework is unplugged while it is still streaming
    then the call that is used to free the URBs that have been allocated occurs
    after the pointer it uses becomes invalid at the end of gspca_disconnect.
    Make another cleanup call in gspca_disconnect while the pointer is still
    valid (multiple calls are OK as destroy_urbs checks for pointers already
    being NULL.
    
    Signed-off-by: Adam Baker <linux@baker-net.org.uk>
    Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

commit 28100165c3f27f681fee8b60e4e44f64a739c454
Author: Mauro Carvalho Chehab <mchehab@redhat.com>
Date:   Mon Feb 16 15:27:44 2009 -0300

    V4L/DVB (10572): Revert commit dda06a8e4610757def753ee3a541a0b1a1feb36b
    
    On Mon, 02 Feb 2009, Hartmut wrote:
    
    This change set is wrong. The affected functions cannot be called from
    an interrupt context, because they may process large buffers. In this
    case, interrupts are disabled for a long time. Functions, like
    dvb_dmx_swfilter_packets(), could be called only from a tasklet.
    
    This change set does hide some strong design bugs in dm1105.c and
    au0828-dvb.c.
    
    Please revert this change set and do fix the bugs in dm1105.c and
    au0828-dvb.c (and other files).
    
    On Sun, 15 Feb 2009, Oliver Endriss wrote:
    
    This changeset _must_ be reverted! It breaks all kernels since 2.6.27
    for applications which use DVB and require a low interrupt latency.
    
    It is a very bad idea to call the demuxer to process data buffers with
    interrupts disabled!
    
    On Mon, 16 Feb 2009, Trent Piepho wrote:
    
    I agree, this is bad.  The demuxer is far too much work to be done with
    IRQs off.  IMHO, even doing it under a spin-lock is excessive.  It should
    be a mutex.  Drivers should use a work-queue to feed the demuxer.
    
    Thank you for testing this changeset and discovering the issues on it.
    
    Cc: Trent Piepho <xyzzy@speakeasy.org>
    Cc: Hartmut <e9hack@googlemail.com>
    Cc: Oliver Endriss <o.endriss@gmx.de>
    Cc: Andreas Oberritter <obi@linuxtv.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

commit 2f94fc465a6504443bb986ba9d36e28e2b422c6e
Author: Tobias Lorenz <tobias.lorenz@gmx.net>
Date:   Thu Feb 12 14:56:19 2009 -0300

    V4L/DVB (10533): fix LED status output
    
    This patch closes one of my todos that was since long on my list.
    Some people reported clicks and glitches in the audio stream,
    correlated to the LED color changing cycle.
    Thanks to Rick Bronson <rick@efn.org>.
    
    Signed-off-by: Tobias Lorenz <tobias.lorenz@gmx.net>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

commit d807dec59d3c850b332b5bf95fe33f18def00068
Author: Tobias Lorenz <tobias.lorenz@gmx.net>
Date:   Thu Feb 12 14:56:10 2009 -0300

    V4L/DVB (10532): Correction of Stereo detection/setting and signal strength indication
    
    Thanks to Bob Ross <pigiron@gmx.com>
    - correction of stereo detection/setting
    - correction of signal strength indicator scaling
    
    Signed-off-by: Tobias Lorenz <tobias.lorenz@gmx.net>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

commit ef88f2b563275d156beebc9f76ed134f3f90f210
Author: Mauro Carvalho Chehab <mchehab@redhat.com>
Date:   Fri Feb 13 08:24:34 2009 -0300

    V4L/DVB (10527): tuner: fix TUV1236D analog/digital setup
    
    As reported by David Engel <david@istwok.net>, ATSC115 doesn't work
    fine with mythtv. This software opens both analog and dvb interfaces of
    saa7134.
    
    What happens is that some tuner commands are going to the wrong place,
    as shown at the logs:
    
    Feb 12 20:37:48 opus kernel: tuner-simple 1-0061: using tuner params #0 (ntsc)
    Feb 12 20:37:48 opus kernel: tuner-simple 1-0061: freq = 67.25 (1076), range = 0, config = 0xce, cb = 0x01
    Feb 12 20:37:48 opus kernel: tuner-simple 1-0061: Freq= 67.25 MHz, V_IF=45.75 MHz, Offset=0.00 MHz, div=1808
    Feb 12 20:37:48 opus kernel: tuner 1-0061: tv freq set to 67.25
    Feb 12 20:37:48 opus kernel: tuner-simple 1-000a: using tuner params #0 (ntsc)
    Feb 12 20:37:48 opus kernel: tuner-simple 1-000a: freq = 67.25 (1076), range = 0, config = 0xce, cb = 0x01
    Feb 12 20:37:48 opus kernel: tuner-simple 1-000a: Freq= 67.25 MHz, V_IF=45.75 MHz, Offset=0.00 MHz, div=1808
    Feb 12 20:37:48 opus kernel: tuner-simple 1-000a: tv 0x07 0x10 0xce 0x01
    Feb 12 20:37:48 opus kernel: tuner-simple 1-0061: tv 0x07 0x10 0xce 0x01
    
    This happens due to a hack at TUV1236D analog setup, where it replaces
    tuner address, at 0x61 for 0x0a, in order to save a few memory bytes.
    
    The code assumes that nobody else would try to access the tuner during
    that setup, but the point is that there's no lock to protect such
    access. So, this opens the possibility of race conditions to happen.
    
    Instead of hacking tuner address, this patch uses a temporary var with
    the proper tuner value to be used during the setup. This should save
    the issue, although we should consider to write some analog/digital
    lock at saa7134 driver.
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

commit f63145e28934a0b3ad8baf31adc195ec81423351
Author: Trent Piepho <xyzzy@speakeasy.org>
Date:   Sat Jan 24 20:52:41 2009 -0300

    V4L/DVB (10516a): zoran: Update MAINTAINERS entry
    
    Ronald Bultje hasn't been maintaining the zoran driver for some time.
    Re-direct people to the mailing lists and web pages.
    
     MAINTAINERS |    6 +++---
    
    Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
    Acked-by: Jean Delvare <khali@linux-fr.org>
    Acked-by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

commit 2b639386a2a26c84c8d26c649cf657ebd43a7bc8
Author: Jiri Slaby <jirislaby@gmail.com>
Date:   Tue Feb 17 12:38:36 2009 +0100

    HID: fix bus endianity in file2alias
    
    Fix endianness of bus member of hid_device_id in modpost.
    
    Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
    Reported-by: Nye Liu <nyet@mrv.com>
    Cc: Jiri Kosina <jkosina@suse.cz>
    Signed-off-by: Jiri Kosina <jkosina@suse.cz>

commit daedb3d6a91f9626ab4c921378ac52e44de833d5
Author: Anssi Hannula <anssi.hannula@gmail.com>
Date:   Sat Feb 14 11:45:05 2009 +0200

    HID: move tmff and zpff devices from ignore_list to blacklist
    
    The devices handled by hid-tmff and hid-zpff were added in the
    hid_ignore_list[] instead of hid_blacklist[] in hid-core.c, thus
    disabling them completely.
    
    hid_ignore_list[] causes hid layer to skip the device, while
    hid_blacklist[] indicates there is a specific driver in hid bus.
    
    Re-enable the devices by moving them to the correct list.
    
    Signed-off-by: Anssi Hannula <anssi.hannula@gmail.com>
    Signed-off-by: Jiri Kosina <jkosina@suse.cz>

commit dfd395aff4cb16d2480b280064bea1b19ededef1
Author: Dan Carpenter <error27@gmail.com>
Date:   Tue Feb 3 16:35:17 2009 +0300

    HID: unlock properly on error paths in hidraw_ioctl()
    
    We can't return immediately because lock_kernel() is held.
    
    Signed-off-by: Dan Carpenter <error27@gmail.com>
    Signed-off-by: Jiri Kosina <jkosina@suse.cz>

commit 35cfd1d964f3c2420862f2167a0eb85ff1208999
Author: Michael Tokarev <mjt@tls.msk.ru>
Date:   Sun Feb 1 16:11:04 2009 +0100

    HID: blacklist Powercom USB UPS
    
    For quite some time users with various UPSes from Powercom were forced to play
    magic with bind/unbind in /sys in order to be able to see the UPSes.  The
    beasts does not work as HID devices, even if claims to do so.  cypress_m8
    driver works with the devices instead, creating a normal serial port with which
    normal UPS controlling software works.
    
    The manufacturer confirmed the upcoming models with proper HID support will
    have different device IDs.  In any way, it's wrong to have two completely
    different modules for one device in kernel.
    
    Blacklist the device in HID (add it to hid_ignore_list) to stop this mess,
    finally.
    
    Signed-off-By: Michael Tokarev <mjt@tls.msk.ru>
    Signed-off-by: Jiri Kosina <jkosina@suse.cz>

commit 8eb2dfac41c71701bb741f496f0cb7b7e4a3c3f6
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date:   Tue Feb 17 20:00:11 2009 +0800

    crypto: lrw - Fix big endian support
    
    It turns out that LRW has never worked properly on big endian.
    This was never discussed because nobody actually used it that
    way.  In fact, it was only discovered when Geert Uytterhoeven
    loaded it through tcrypt which failed the test on it.
    
    The fix is straightforward, on big endian the to find the nth
    bit we should be grouping them by words instead of bytes.  So
    setbit128_bbe should xor with 128 - BITS_PER_LONG instead of
    128 - BITS_PER_BYTE == 0x78.
    
    Tested-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

commit dcd9651ecd652a186dd9ad0dde76d43320b9c0a2
Author: Rakib Mullick <rakib.mullick@gmail.com>
Date:   Tue Feb 17 09:21:52 2009 +0100

    mfd: Fix sm501_register_gpio section mismatch
    
    WARNING: drivers/mfd/built-in.o(.text+0x1706): Section mismatch in
    reference from the function sm501_register_gpio() to the function
    .devinit.text:sm501_gpio_register_chip()
    The function sm501_register_gpio() references
    the function __devinit sm501_gpio_register_chip().
    This is often because sm501_register_gpio lacks a __devinit
    annotation or the annotation of sm501_gpio_register_chip is wrong.
    
    Signed-off-by: Rakib Mullick <rakib.mullick@gmail.com>
    Signed-off-by: Samuel Ortiz <sameo@openedhand.com>

commit 158abca5f699a047ff7b67a64ab19e8ec824e37d
Author: Alexey Dobriyan <adobriyan@gmail.com>
Date:   Tue Feb 17 09:10:19 2009 +0100

    mfd: fix sm501 section mismatches
    
    drv => driver renaming is needed otherwise modpost will spit false positives
    re pointing to __devinit function from regular data.
    
    Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
    Cc: Ben Dooks <ben-linux@fluff.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Samuel Ortiz <sameo@openedhand.com>

commit 8915e5402809ae6228e15c76417351dad752826e
Author: Jean Delvare <khali@linux-fr.org>
Date:   Tue Feb 17 09:07:02 2009 +0100

    mfd: terminate pcf50633 i2c_device_id list
    
    The i2c_device_id list is supposed to be zero-terminated.
    
    Signed-off-by: Jean Delvare <khali@linux-fr.org>
    Cc: Balaji Rao <balajirrao@openmoko.org>
    Signed-off-by: Samuel Ortiz <sameo@openedhand.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

commit 2f161f4485535df85451a8cfdf2487c315f665f5
Author: Mark Brown <broonie@opensource.wolfsonmicro.com>
Date:   Fri Feb 6 15:28:15 2009 +0100

    mfd: Ensure all WM8350 IRQs are masked at startup
    
    The IRQs might have been left enabled in hardware, generating spurious
    IRQs before the drivers have registered.
    
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
    Signed-off-by: Samuel Ortiz <sameo@openedhand.com>

commit 9427c34bc72f05b519e8466f27c38a3327bae157
Author: Philipp Zabel <philipp.zabel@gmail.com>
Date:   Wed Feb 4 21:27:48 2009 +0100

    mfd: fix htc-egpio iomem resource handling using resource_size
    
    Fixes an off-by-one error in the iomem resource mapping.
    
    Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
    Signed-off-by: Samuel Ortiz <sameo@openedhand.com>

commit a313d758cc7956d7f1e7a727c8fa571b6468fabf
Author: Mark Brown <broonie@sirena.org.uk>
Date:   Wed Feb 4 21:26:07 2009 +0100

    mfd: Fix TWL4030 build on some ARM variants
    
    Many ARM platforms do not provide a mach/cpu.h so rather than guarding
    the use of that header with CONFIG_ARM guard it with the guards used
    when testing for the OMAP variants in the body of the code.
    
    Signed-off-by: Mark Brown <broonie@sirena.org.uk>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Samuel Ortiz <sameo@openedhand.com>

commit 29c6a2e6f88225ae2673aabd2de0fa2126653231
Author: Roel Kluin <roel.kluin@gmail.com>
Date:   Wed Feb 4 21:23:22 2009 +0100

    mfd: wm8350 tries reaches -1
    
    With a postfix decrement tries will reach -1 rather than 0,
    so the warning will not be issued even upon timeout.
    
    Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
    Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
    Signed-off-by: Samuel Ortiz <sameo@openedhand.com>

commit a39a021fd73ce06aad8d1081ac711a36930e6cb8
Author: Mark Brown <broonie@opensource.wolfsonmicro.com>
Date:   Wed Feb 4 21:10:58 2009 +0100

    mfd: Mark WM835x USB_SLV_500MA bit as accessible
    
    The code is out of sync with the silicon.
    
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
    Signed-off-by: Samuel Ortiz <sameo@openedhand.com>

commit 85c93ea7dca475a6ee3bf414befe94b2c42f1001
Author: Mark Brown <broonie@opensource.wolfsonmicro.com>
Date:   Wed Feb 4 21:09:38 2009 +0100

    mfd: Improve diagnostics for WM8350 ID register probe
    
    Check the return value of the device I/O functions when reading the
    ID registers so we can provide a more useful diagnostic when we're
    having trouble talking to the device.
    
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
    Signed-off-by: Samuel Ortiz <sameo@openedhand.com>

commit 62571c29a8343839e85e741db6a489f30686697c
Author: Mark Brown <broonie@opensource.wolfsonmicro.com>
Date:   Wed Feb 4 20:49:52 2009 +0100

    mfd: Initialise WM8350 interrupts earlier
    
    Ensure that the interrupt handling is configured before we do platform
    specific init. This allows the platform specific initialisation to
    configure things which use interrupts safely.
    
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
    Signed-off-by: Samuel Ortiz <sameo@openedhand.com>

commit 720fd66dfad1b0286721dbb2ed4d6076c0aa953b
Author: Julia Lawall <julia@diku.dk>
Date:   Wed Feb 4 20:44:01 2009 +0100

    mfd: Fix egpio kzalloc return test
    
    Since ei is already known to be non-NULL, I assume that what was intended
    was to test the result of kzalloc.
    
    Signed-off-by: Julia Lawall <julia@diku.dk>
    Signed-off-by: Samuel Ortiz <sameo@openedhand.com>

commit 7dac745b8e367c99175b8f0d014d996f0e5ed9e5
Author: Tejun Heo <tj@kernel.org>
Date:   Thu Feb 12 10:34:32 2009 +0900

    sata_nv: give up hardreset on nf2
    
    Kernel bz#12176 reports that nf2 hardreset simply doesn't work.  Give
    up.  Argh...
    
    Signed-off-by: Tejun Heo <tj@kernel.org>
    Cc: Robert Hancock <hancockr@shaw.ca>
    Reported-by: Saro <saro_v@hotmail.it>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit d1b3525b4126d7acad0493b62642b80b71442661
Author: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Date:   Sun Feb 15 23:24:24 2009 +0400

    libata-sff: fix 32-bit PIO ATAPI regression
    
    Commit 871af1210f13966ab911ed2166e4ab2ce775b99d (libata: Add 32bit
    PIO support) has caused all kinds of errors on the ATAPI devices, so
    it has been empirically proven that one shouldn't try to read/write
    an extra data word when a device is not expecting it already. "Don't
    do it then"; however, still use a chance to do 32-bit read/write one
    last time when there are exactly 3 trailing bytes.
    
    Oh, and stop pointlessly swapping the bytes to and fro on big-endian
    machines by using io*_rep() accessors which shouldn't byte-swap.
    
    This patch should fix the kernel.org bug #12609.
    
    Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

commit a3c1239eb59c0a907f8be5587d42e950f44543f8
Author: David Vrabel <david.vrabel@csr.com>
Date:   Mon Feb 16 14:37:12 2009 +0000

    wusb: whci-hcd: always lock whc->lock with interrupts disabled
    
    Always lock whc->lock with spin_lock_irq() or spin_lock_irqsave().
    
    Signed-off-by: David Vrabel <david.vrabel@csr.com>

commit 1371be0f7c8f6141b2dbfde6a7ae7885bedb9834
Author: Rusty Russell <rusty@rustcorp.com.au>
Date:   Mon Feb 16 17:31:59 2009 -0600

    cpumask: Use cpu_*_mask accessors code: alpha
    
    Impact: use new API, fix SMP bug.
    
    Use the new accessors rather than frobbing bits directly.
    
    This also removes the bug introduced in ee0c468b (alpha: compile
    fixes) which had Alpha setting bits on an on-stack cpumask, not the
    cpu_online_map.
    
    Cc: Richard Henderson <rth@twiddle.net>
    Cc: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
    Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
    Signed-off-by: Mike Travis <travis@sgi.com>
    Acked-by: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
    Acked-by: Ingo Molnar <mingo@elte.hu>

commit a0abd520fd69295f4a3735e29a9448a32e101d47
Author: Rusty Russell <rusty@rustcorp.com.au>
Date:   Mon Feb 16 17:31:58 2009 -0600

    cpumask: fix powernow-k8: partial revert of 2fdf66b491ac706657946442789ec644cc317e1a
    
    Impact: fix powernow-k8 when acpi=off (or other error).
    
    There was a spurious change introduced into powernow-k8 in this patch:
    so that we try to "restore" the cpus_allowed we never saved.  We revert
    that file.
    
    See lkml "[PATCH] x86/powernow: fix cpus_allowed brokage when
    acpi=off" from Yinghai for the bug report.
    
    Cc: Mike Travis <travis@sgi.com>
    Cc: Yinghai Lu <yinghai@kernel.org>
    Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
    Acked-by: Ingo Molnar <mingo@elte.hu>

commit 090542641de833c6f756895fc2f139f046e298f9
Author: Dan Carpenter <error27@gmail.com>
Date:   Sun Feb 15 20:02:19 2009 -0500

    ext4: Fix NULL dereference in ext4_ext_migrate()'s error handling
    
    This was found through a code checker (http://repo.or.cz/w/smatch.git/).
    It looks like you might be able to trigger the error by trying to migrate
    a readonly file system.
    
    Signed-off-by: Dan Carpenter <error27@gmail.com>
    Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>

commit f9aa28adfc6a4b01268ebb6d88566cca8627905f
Author: Pekka Paalanen <pq@iki.fi>
Date:   Sat Jan 3 21:09:27 2009 +0200

    doc: mmiotrace.txt, buffer size control change
    
    Impact: prevents confusing the user when buffer size is inadequate
    
    The tracing framework offers a resizeable buffer, which mmiotrace uses
    to record events. If the buffer is full, the following events will be
    lost. Events should not be lost, so the documentation instructs the user
    to increase the buffer size. The buffer size is set via a debugfs file.
    
    Mmiotrace documentation was not updated the same time the debugfs file
    was changed. The old file was tracing/trace_entries and first contained
    the number of entries the buffer had space for, per cpu. Nowadays this
    file is replaced with the file tracing/buffer_size_kb, which tells the
    amount of memory reserved for the buffer, per cpu, in kilobytes.
    
    Previously, a flag had to be toggled via the debugfs file
    tracing/tracing_enabled when the buffer size was changed. This is no
    longer necessary.
    
    The mmiotrace documentation is updated to reflect the current state of
    the tracing framework.
    
    Signed-off-by: Pekka Paalanen <pq@iki.fi>
    Signed-off-by: Steven Rostedt <srostedt@redhat.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 6bc5c366b1a45ca18fba6851f62db5743b3f6db5
Author: Pekka Paalanen <pq@iki.fi>
Date:   Sat Jan 3 21:23:51 2009 +0200

    trace: mmiotrace to the tracer menu in Kconfig
    
    Impact: cosmetic change in Kconfig menu layout
    
    This patch was originally suggested by Peter Zijlstra, but seems it
    was forgotten.
    
    CONFIG_MMIOTRACE and CONFIG_MMIOTRACE_TEST were selectable
    directly under the Kernel hacking / debugging menu in the kernel
    configuration system. They were present only for x86 and x86_64.
    
    Other tracers that use the ftrace tracing framework are in their own
    sub-menu. This patch moves the mmiotrace configuration options there.
    Since the Kconfig file, where the tracer menu is, is not architecture
    specific, HAVE_MMIOTRACE_SUPPORT is introduced and provided only by
    x86/x86_64. CONFIG_MMIOTRACE now depends on it.
    
    Signed-off-by: Pekka Paalanen <pq@iki.fi>
    Signed-off-by: Steven Rostedt <srostedt@redhat.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 391b170f10e669dd429aa47bce998c2fa839404c
Author: Pekka Paalanen <pq@iki.fi>
Date:   Tue Jan 6 13:57:11 2009 +0200

    mmiotrace: count events lost due to not recording
    
    Impact: enhances lost events counting in mmiotrace
    
    The tracing framework, or the ring buffer facility it uses, has a switch
    to stop recording data. When recording is off, the trace events will be
    lost. The framework does not count these, so mmiotrace has to count them
    itself.
    
    Signed-off-by: Pekka Paalanen <pq@iki.fi>
    Signed-off-by: Steven Rostedt <srostedt@redhat.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 929799973ba4a40f7b8001e9cc461c13d04c4124
Author: Andi Kleen <andi@firstfloor.org>
Date:   Sat Jan 10 04:56:13 2009 +0100

    kbuild: create the source symlink earlier in the objdir
    
    It's useful to already have the source symlink in a
    objdir when one just runs make *config. Then one
    can do
    
    mkdir obj-allyes
    cd obj-allyes
    make -C ../sourcedir O=$(pwd) allyesconfig
    ./source/scripts/config --disable debug_info
    make CC=icecc -j18
    
    without having to interrupt the make first just to
    get the source symlink.
    
    Signed-off-by: Andi Kleen <ak@linux.intel.com>
    [sam: deleted the other source symlink statement]
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>

commit 11df65c3c6f7fdc837a5be8787d31011e8bb93c1
Author: Arjan van de Ven <arjan@linux.intel.com>
Date:   Sun Feb 15 11:30:55 2009 +0100

    scripts: add x86 64 bit support to the markup_oops.pl script
    
    Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>

commit c19ef7fd8e534c870166213e9e30de9c44b34a76
Author: Arjan van de Ven <arjan@linux.intel.com>
Date:   Sun Feb 15 11:30:52 2009 +0100

    scripts: add x86 register parser to markup_oops.pl
    
    An oops dump also contains the register values.
    
    This patch parses these for (32 bit) x86, and then annotates the
    disassembly with these values; this helps in analysis of the oops by the
    developer, for example, NULL pointer or other pointer bugs show up clearly
    this way.
    
    Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>

commit 5123b327c107db9e560fd62d50c27a3816e5a078
Author: Rabin Vincent <rabin@rab.in>
Date:   Sun Jan 25 18:39:12 2009 +0530

    kbuild: add sys_* entries for syscalls in tags
    
    Currently, it is no longer possible to use the tags file to jump to
    system call function definitions with sys_foo, because the definitions
    are obscured by use of the SYSCALL_DEFINE* macros.
    
    This patch adds the appropriate option to ctags to make it see through
    the macro.  Also, it adds the ENTRY() work already done for Exuberant
    to Emacs too.
    
    Signed-off-by: Rabin Vincent <rabin@rab.in>
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>

commit 953fae66d124486c9e284806429c52c5402f59ac
Author: Alexey Dobriyan <adobriyan@gmail.com>
Date:   Wed Feb 11 13:24:09 2009 -0800

    kbuild: fix tags generation of config symbols
    
    commit 4f628248a578585472e19e4cba2c604643af8c6c aka "kbuild: reintroduce
    ALLSOURCE_ARCHS support for tags/cscope" breaks tags generation for
    Kconfig symbols.
    
    Steps to reproduce:
    
    	make tags
    	vi -t PROC_FS
    
    It should jump to 'config PROC_FS' line.
    
    Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
    Tested-by: Pete Wyckoff <pw@padd.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>

commit 0bb98e231803860e978c302b9faccaf776881137
Author: Michael Neuling <mikey@neuling.org>
Date:   Sun Feb 15 10:20:30 2009 +0100

    bootgraph: fix for use with dot symbols
    
    powerpc has dot symbols, so the dmesg output looks like:
    
    <4>[    0.327310] calling  .migration_init+0x0/0x9c @ 1
    <4>[    0.327595] initcall .migration_init+0x0/0x9c returned 1 after 0 usecs
    
    The below fixes bootgraph.pl so it handles this correctly.
    
    Signed-off-by: Michael Neuling <mikey@neuling.org>
    Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>

commit fc370ecfdb37b853bd8e2118c7ad9f99fa9ac5cd
Author: Josh Hunt <josh@scalex86.org>
Date:   Wed Feb 11 21:10:57 2009 -0800

    kbuild: add vmlinux to kernel rpm
    
    We are building an automated system to test kernels weekly and need to
    provide an rpm to our QA dept.  We would like to use the ability to create
    kernel rpms already in the kernel's Makefile, but need the vmlinux file
    included in the rpm for later debugging.
    
    This patch adds a compressed vmlinux to the kernel rpm when doing a
    make rpm-pkg or binrpm-pkg and upon install places the vmlinux file in /boot.
    
    Signed-off-by: Josh Hunt <josh@scalex86.org>
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>

commit d21d52d4a155e36d4dc93d642cd52cb63f7ef91b
Author: Mike Frysinger <vapier.adi@gmail.com>
Date:   Thu Feb 5 16:13:32 2009 +0800

    kbuild,setlocalversion: shorten the make time when using svn
    
    Don't bother doing `svn st` as it takes a retarded amount of time when
    the source is cold
    
    Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
    Signed-off-by: Bryan Wu <cooloney@kernel.org>
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>

commit be716615fe596ee117292dc615e95f707fb67fd1
Author: Thomas Gleixner <tglx@linutronix.de>
Date:   Tue Jan 13 23:36:34 2009 +0100

    x86, vm86: fix preemption bug
    
    Commit 3d2a71a596bd9c761c8487a2178e95f8a61da083 ("x86, traps: converge
    do_debug handlers") changed the preemption disable logic of do_debug()
    so vm86_handle_trap() is called with preemption disabled resulting in:
    
     BUG: sleeping function called from invalid context at include/linux/kernel.h:155
     in_atomic(): 1, irqs_disabled(): 0, pid: 3005, name: dosemu.bin
     Pid: 3005, comm: dosemu.bin Tainted: G        W  2.6.29-rc1 #51
     Call Trace:
      [<c050d669>] copy_to_user+0x33/0x108
      [<c04181f4>] save_v86_state+0x65/0x149
      [<c0418531>] handle_vm86_trap+0x20/0x8f
      [<c064e345>] do_debug+0x15b/0x1a4
      [<c064df1f>] debug_stack_correct+0x27/0x2c
      [<c040365b>] sysenter_do_call+0x12/0x2f
     BUG: scheduling while atomic: dosemu.bin/3005/0x10000001
    
    Restore the original calling convention and reenable preemption before
    calling handle_vm86_trap().
    
    Reported-by: Michal Suchanek <hramrach@centrum.cz>
    Cc: stable@kernel.org
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 516a1a7e9dc80358030fe01aabb3bedf882db9e2
Author: Avi Kivity <avi@redhat.com>
Date:   Sun Feb 15 02:32:07 2009 +0200

    KVM: VMX: Flush volatile msrs before emulating rdmsr
    
    Some msrs (notable MSR_KERNEL_GS_BASE) are held in the processor registers
    and need to be flushed to the vcpu struture before they can be read.
    
    This fixes cygwin longjmp() failure on Windows x64.
    
    Signed-off-by: Avi Kivity <avi@redhat.com>

commit 682edb4c01e690c7c7cd772dbd6f4e0fd74dc572
Author: Mark McLoughlin <markmc@redhat.com>
Date:   Thu Feb 5 18:23:46 2009 +0000

    KVM: Fix assigned devices circular locking dependency
    
    kvm->slots_lock is outer to kvm->lock, so take slots_lock
    in kvm_vm_ioctl_assign_device() before taking kvm->lock,
    rather than taking it in kvm_iommu_map_memslots().
    
    Cc: stable@kernel.org
    Signed-off-by: Mark McLoughlin <markmc@redhat.com>
    Acked-by: Marcelo Tosatti <mtosatti@redhat.com>
    Signed-off-by: Avi Kivity <avi@redhat.com>

commit b682b814e3cc340f905c14dff87ce8bdba7c5eba
Author: Marcelo Tosatti <mtosatti@redhat.com>
Date:   Tue Feb 10 20:41:41 2009 -0200

    KVM: x86: fix LAPIC pending count calculation
    
    Simplify LAPIC TMCCT calculation by using hrtimer provided
    function to query remaining time until expiration.
    
    Fixes host hang with nested ESX.
    
    Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
    Signed-off-by: Alexander Graf <agraf@suse.de>
    Signed-off-by: Avi Kivity <avi@redhat.com>

commit d7cff1c37664971aae32bb0de82231ed34933d8e
Author: Sheng Yang <sheng@linux.intel.com>
Date:   Tue Jan 6 16:25:10 2009 +0800

    KVM: Fix INTx for device assignment
    
    Missing buckets and wrong parameter for free_irq()
    
    Signed-off-by: Sheng Yang <sheng@linux.intel.com>
    Signed-off-by: Avi Kivity <avi@redhat.com>

commit 2aaf69dcee864f4fb6402638dd2f263324ac839f
Author: Sheng Yang <sheng@linux.intel.com>
Date:   Wed Jan 21 16:52:16 2009 +0800

    KVM: MMU: Map device MMIO as UC in EPT
    
    Software are not allow to access device MMIO using cacheable memory type, the
    patch limit MMIO region with UC and WC(guest can select WC using PAT and
    PCD/PWT).
    
    Signed-off-by: Sheng Yang <sheng@linux.intel.com>
    Signed-off-by: Avi Kivity <avi@redhat.com>

commit abe6655dd699069b53bcccbc65b2717f60203b12
Author: Marcelo Tosatti <mtosatti@redhat.com>
Date:   Tue Feb 10 20:59:45 2009 -0200

    KVM: x86: disable kvmclock on non constant TSC hosts
    
    This is better.
    
    Currently, this code path is posing us big troubles,
    and we won't have a decent patch in time. So, temporarily
    disable it.
    
    Signed-off-by: Glauber Costa <glommer@redhat.com>
    Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
    Signed-off-by: Avi Kivity <avi@redhat.com>

commit d2a8284e8fca9e2a938bee6cd074064d23864886
Author: Marcelo Tosatti <mtosatti@redhat.com>
Date:   Tue Dec 30 15:55:05 2008 -0200

    KVM: PIT: fix i8254 pending count read
    
    count_load_time assignment is bogus: its supposed to contain what it
    means, not the expiration time.
    
    Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
    Signed-off-by: Avi Kivity <avi@redhat.com>

commit ba4cef31d5a397b64ba6d3ff713ce06c62f0c597
Author: Sheng Yang <sheng@linux.intel.com>
Date:   Tue Jan 6 10:03:03 2009 +0800

    KVM: Fix racy in kvm_free_assigned_irq
    
    In the past, kvm_get_kvm() and kvm_put_kvm() was called in assigned device irq
    handler and interrupt_work, in order to prevent cancel_work_sync() in
    kvm_free_assigned_irq got a illegal state when waiting for interrupt_work done.
    But it's tricky and still got two problems:
    
    1. A bug ignored two conditions that cancel_work_sync() would return true result
    in a additional kvm_put_kvm().
    
    2. If interrupt type is MSI, we would got a window between cancel_work_sync()
    and free_irq(), which interrupt would be injected again...
    
    This patch discard the reference count used for irq handler and interrupt_work,
    and ensure the legal state by moving the free function at the very beginning of
    kvm_destroy_vm(). And the patch fix the second bug by disable irq before
    cancel_work_sync(), which may result in nested disable of irq but OK for we are
    going to free it.
    
    Signed-off-by: Sheng Yang <sheng@linux.intel.com>
    Signed-off-by: Avi Kivity <avi@redhat.com>

commit ad8ba2cd44d4d39fb3fe55d5dcc565b19fc3a7fb
Author: Sheng Yang <sheng@linux.intel.com>
Date:   Tue Jan 6 10:03:02 2009 +0800

    KVM: Add kvm_arch_sync_events to sync with asynchronize events
    
    kvm_arch_sync_events is introduced to quiet down all other events may happen
    contemporary with VM destroy process, like IRQ handler and work struct for
    assigned device.
    
    For kvm_arch_sync_events is called at the very beginning of kvm_destroy_vm(), so
    the state of KVM here is legal and can provide a environment to quiet down other
    events.
    
    Signed-off-by: Sheng Yang <sheng@linux.intel.com>
    Signed-off-by: Avi Kivity <avi@redhat.com>

commit 85db06e514422ae429b5f85742d8111b70bd56f3
Author: Marcelo Tosatti <mtosatti@redhat.com>
Date:   Wed Dec 10 21:23:26 2008 +0100

    KVM: mmu_notifiers release method
    
    The destructor for huge pages uses the backing inode for adjusting
    hugetlbfs accounting.
    
    Hugepage mappings are destroyed by exit_mmap, after
    mmu_notifier_release, so there are no notifications through
    unmap_hugepage_range at this point.
    
    The hugetlbfs inode can be freed with pages backed by it referenced
    by the shadow. When the shadow releases its reference, the huge page
    destructor will access a now freed inode.
    
    Implement the release operation for kvm mmu notifiers to release page
    refs before the hugetlbfs inode is gone.
    
    Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
    Signed-off-by: Avi Kivity <avi@redhat.com>

commit 7a0eb1960e8ddcb68ea631caf16815485af0e228
Author: Avi Kivity <avi@redhat.com>
Date:   Mon Jan 19 14:57:52 2009 +0200

    KVM: Avoid using CONFIG_ in userspace visible headers
    
    Kconfig symbols are not available in userspace, and are not stripped by
    headers-install.  Avoid their use by adding #defines in <asm/kvm.h> to
    suit each architecture.
    
    Signed-off-by: Avi Kivity <avi@redhat.com>

commit d39123a486524fed9b4e43e08a8757fd90a5859a
Author: Yang Zhang <yang.zhang@intel.com>
Date:   Thu Jan 8 15:13:31 2009 +0800

    KVM: ia64: fix fp fault/trap handler
    
    The floating-point registers f6-f11 is used by vmm and
    saved in kvm-pt-regs, so should set the correct bit mask
    and the pointer in fp_state, otherwise, fpswa may touch
    vmm's fp registers instead of guests'.
    
    In addition, for fp trap handling,  since the instruction
    which leads to fp trap is completely executed, so can't
    use retry machanism to re-execute it, because it may
    pollute some registers.
    
    Signed-off-by: Yang Zhang <yang.zhang@intel.com>
    Signed-off-by: Avi Kivity <avi@redhat.com>

commit e49590b6dd356f8ef10ba3531a29e5086f6f2e3a
Author: Chris Ball <cjb@laptop.org>
Date:   Fri Feb 13 20:56:18 2009 -0500

    x86, olpc: fix model detection without OFW
    
    Impact: fix "garbled display, laptop is unusable" bug
    
    Commit e51a1ac2dfca9ad869471e88f828281db7e810c0 ("x86, olpc: fix endian
    bug in openfirmware workaround") breaks model comparison on OLPC; the value
    0xc2 needs to be scaled up by olpc_board().
    
    The pre-patch version was wrong, but accidentally worked anyway
    (big-endian 0xc2 is big enough to satisfy all other board revisions,
    but little endian 0xc2 is not).
    
    Signed-off-by: Chris Ball <cjb@laptop.org>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Acked-by: Andres Salomon <dilinger@queued.net>
    Cc: Harvey Harrison <harvey.harrison@gmail.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 9af88143b277f52fc6ce0d69137f435c73c39c1a
Author: David Woodhouse <dwmw2@infradead.org>
Date:   Fri Feb 13 23:18:03 2009 +0000

    iommu: fix Intel IOMMU write-buffer flushing
    
    This is the cause of the DMA faults and disk corruption that people have
    been seeing. Some chipsets neglect to report the RWBF "capability" --
    the flag which says that we need to flush the chipset write-buffer when
    changing the DMA page tables, to ensure that the change is visible to
    the IOMMU.
    
    Override that bit on the affected chipsets, and everything is happy
    again.
    
    Thanks to Chris and Bhavesh and others for helping to debug.
    
    Should resolve:
    
      https://bugzilla.redhat.com/show_bug.cgi?id=479996
      http://bugzilla.kernel.org/show_bug.cgi?id=12578
    
    Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Tested-and-acked-by: Chris Wright <chrisw@sous-sol.org>
    Reviewed-by: Bhavesh Davda <bhavesh@vmware.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 2acf2c261b823d9d9ed954f348b97620297a36b5
Author: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Date:   Sat Feb 14 10:42:58 2009 -0500

    ext4: Implement range_cyclic in ext4_da_writepages instead of write_cache_pages
    
    With delayed allocation we lock the page in write_cache_pages() and
    try to build an in memory extent of contiguous blocks.  This is needed
    so that we can get large contiguous blocks request.  If range_cyclic
    mode is enabled, write_cache_pages() will loop back to the 0 index if
    no I/O has been done yet, and try to start writing from the beginning
    of the range.  That causes an attempt to take the page lock of lower
    index page while holding the page lock of higher index page, which can
    cause a dead lock with another writeback thread.
    
    The solution is to implement the range_cyclic behavior in
    ext4_da_writepages() instead.
    
    http://bugzilla.kernel.org/show_bug.cgi?id=12579
    
    Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
    Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>

commit d794bf8e0936dce45104565cd48c571061f4c1e3
Author: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Date:   Sat Feb 14 10:31:16 2009 -0500

    ext4: Initialize preallocation list_head's properly
    
    When creating a new ext4_prealloc_space structure, we have to
    initialize its list_head pointers before we add them to any prealloc
    lists.  Otherwise, with list debug enabled, we will get list
    corruption warnings.
    
    Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
    Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>

commit 12d60e28bed3f593aac5385acbdbb089eb8ae21e
Author: Wim Van Sebroeck <wim@iguana.be>
Date:   Wed Jan 28 20:51:04 2009 +0000

    [WATCHDOG] iTCO_wdt: fix SMI_EN regression 2
    
    bugzilla: #12363
    commit 7cd5b08be3c489df11b559fef210b81133764ad4 added a second regression:
    some Dell's and Compaq's lockup on boot. So we revert most of the code.
    The ICH9 reboot issue remains in place and will need some more fixing... :-(
    
    Signed-off-by: Wim Van Sebroeck <wim@iguana.be>

commit a08f6e04d74478d91f34a0484e69e89870adb33d
Author: Alex Chiang <achiang@hp.com>
Date:   Fri Feb 13 12:03:17 2009 -0700

    PCI: Documentation: fix minor PCIe HOWTO thinko
    
    Update doc to correctly refer to replacing the pci_register_driver API,
    and not the non-existent "pci_module_init" API.
    
    Signed-off-by: Alex Chiang <achiang@hp.com>
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

commit f5ddcac435b6c6133a9c137c345abef53b93cf55
Author: Randy Dunlap <randy.dunlap@oracle.com>
Date:   Fri Jan 9 17:03:20 2009 -0800

    PCI: fix missing kernel-doc and typos
    
    Fix pci kernel-doc parameter missing notation, correct
    function name, and fix typo:
    
    Warning(linux-2.6.28-git10//drivers/pci/pci.c:1511): No description found for parameter 'exclusive'
    
    Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

commit b33bfdef24565fe54da91adf3cd4eea13488d7fc
Author: Randy Dunlap <randy.dunlap@oracle.com>
Date:   Fri Jan 9 17:04:26 2009 -0800

    PCI: fix struct pci_platform_pm_ops kernel-doc
    
    Fix struct pci_platform_pm_ops kernel-doc notation.
    
    Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

commit 4cc59c721cba27a4644e29103afac0f91af8da3c
Author: Randy Dunlap <randy.dunlap@oracle.com>
Date:   Mon Feb 9 09:31:20 2009 -0800

    PCI: fix rom.c kernel-doc warning
    
    Fix PCI kernel-doc warning:
    
    Warning(linux-2.6.29-rc4-git1/drivers/pci/rom.c:67): No description found for parameter 'pdev'
    
    Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
    cc: Jesse Barnes <jbarnes@virtuousgeek.org>
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

commit 0b49ec37a20bc7eb7178105aadaa8d1ecba825f8
Author: Matthew Wilcox <matthew@wil.cx>
Date:   Sun Feb 8 20:27:47 2009 -0700

    PCI/MSI: fix msi_mask() shift fix
    
    Hidetoshi Seto points out that commit
    bffac3c593eba1f9da3efd0199e49ea6558a40ce has wrong values in the array.
    Rather than correct the array, we can just use a bounds check and
    perform the calculation specified in the comment.  As a bonus, this will
    not run off the end of the array if the device specifies an illegal
    value in the MSI capability.
    
    Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
    Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

commit 3997ad317fdf9ecdb5702e2b4fd1f8229814ff8c
Author: Peter Zijlstra <a.p.zijlstra@chello.nl>
Date:   Thu Feb 12 15:00:52 2009 +0100

    timers: more consistently use clock vs timer
    
    While reviewing the manpages, I noticed I'd missed some clock vs timer sites.
    
    Make sure that all timer functions call cpu_timer_sample_group() and not
    cpu_clock_sample_group(). This ensures that we enable the process wide timer
    in time, and therefore pay the O(n) thread group cost from the syscall.
    
    Not doing it here, will result in the first jiffy tick after setting the timer
    doing this, resulting in a very expensive tick (but only once) and a delay in
    actually starting the timer.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit b13e24644c138d0ddbc451403c30a96b09bfd556
Author: john stultz <johnstul@us.ibm.com>
Date:   Thu Feb 12 18:48:53 2009 -0800

    x86, hpet: fix for LS21 + HPET = boot hang
    
    Between 2.6.23 and 2.6.24-rc1 a change was made that broke IBM LS21
    systems that had the HPET enabled in the BIOS, resulting in boot hangs
    for x86_64.
    
    Specifically commit b8ce33590687888ebb900d09557b8807c4539022, which
    merges the i386 and x86_64 HPET code.
    
    Prior to this commit, when we setup the HPET timers in x86_64, we did
    the following:
    
    	hpet_writel(HPET_TN_ENABLE | HPET_TN_PERIODIC | HPET_TN_SETVAL |
                        HPET_TN_32BIT, HPET_T0_CFG);
    
    However after the i386/x86_64 HPET merge, we do the following:
    
    	cfg = hpet_readl(HPET_Tn_CFG(timer));
    	cfg |= HPET_TN_ENABLE | HPET_TN_PERIODIC |
    			HPET_TN_SETVAL | HPET_TN_32BIT;
    	hpet_writel(cfg, HPET_Tn_CFG(timer));
    
    However on LS21s with HPET enabled in the BIOS, the HPET_T0_CFG register
    boots with Level triggered interrupts (HPET_TN_LEVEL) enabled. This
    causes the periodic interrupt to be not so periodic, and that results in
    the boot time hang I reported earlier in the delay calibration.
    
    My fix: Always disable HPET_TN_LEVEL when setting up periodic mode.
    
    Signed-off-by: John Stultz <johnstul@us.ibm.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 26456dcfb8d8e43b1b64b2a14710694cf7a72f05
Author: Michael Neuling <mikey@neuling.org>
Date:   Thu Feb 12 19:08:58 2009 +0000

    powerpc/vsx: Fix VSX alignment handler for regs 32-63
    
    Fix the VSX alignment handler for VSX registers > 32.  32-63 are stored
    in the VMX part of the thread_struct not the FPR part.
    
    Signed-off-by: Michael Neuling <mikey@neuling.org>
    CC: stable@kernel.org (2.6.27 & .28 please)
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

commit 0047656e2a97d4452dd7df9e52591a7afe21a263
Author: Geoff Levand <geoffrey.levand@am.sony.com>
Date:   Thu Feb 12 12:36:16 2009 +0000

    powerpc/ps3: Move ps3_mm_add_memory to device_initcall
    
    Change the PS3 hotplug memory routine ps3_mm_add_memory() from
    a core_initcall to a device_initcall.
    
    core_initcall routines run before the powerpc topology_init()
    startup routine, which is a subsys_initcall, resulting in
    failure of ps3_mm_add_memory() when CONFIG_NUMA=y.  When
    ps3_mm_add_memory() fails the system will boot with just the
    128 MiB of boot memory
    
    Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

commit 06eccea6c34e00c8fedce49229ed35fa84619fb7
Author: Dave Hansen <dave@linux.vnet.ibm.com>
Date:   Thu Feb 12 12:36:04 2009 +0000

    powerpc/mm: Fix numa reserve bootmem page selection
    
    Fix the powerpc NUMA reserve bootmem page selection logic.
    
    commit 8f64e1f2d1e09267ac926e15090fd505c1c0cbcb (powerpc: Reserve
    in bootmem lmb reserved regions that cross NUMA nodes) changed
    the logic for how the powerpc LMB reserved regions were converted
    to bootmen reserved regions.  As the folowing discussion reports,
    the new logic was not correct.
    
    mark_reserved_regions_for_nid() goes through each LMB on the
    system that specifies a reserved area.  It searches for
    active regions that intersect with that LMB and are on the
    specified node.  It attempts to bootmem-reserve only the area
    where the active region and the reserved LMB intersect.  We
    can not reserve things on other nodes as they may not have
    bootmem structures allocated, yet.
    
    We base the size of the bootmem reservation on two possible
    things.  Normally, we just make the reservation start and
    stop exactly at the start and end of the LMB.
    
    However, the LMB reservations are not aware of NUMA nodes and
    on occasion a single LMB may cross into several adjacent
    active regions.  Those may even be on different NUMA nodes
    and will require separate calls to the bootmem reserve
    functions.  So, the bootmem reservation must be trimmed to
    fit inside the current active region.
    
    That's all fine and dandy, but we trim the reservation
    in a page-aligned fashion.  That's bad because we start the
    reservation at a non-page-aligned address: physbase.
    
    The reservation may only span 2 bytes, but that those bytes
    may span two pfns and cause a reserve_size of 2*PAGE_SIZE.
    
    Take the case where you reserve 0x2 bytes at 0x0fff and
    where the active region ends at 0x1000.  You'll jump into
    that if() statment, but node_ar.end_pfn=0x1 and
    start_pfn=0x0.  You'll end up with a reserve_size=0x1000,
    and then call
    
      reserve_bootmem_node(node, physbase=0xfff, size=0x1000);
    
    0x1000 may not be on the same node as 0xfff.  Oops.
    
    In almost all the vm code, end_<anything> is not inclusive.
    If you have an end_pfn of 0x1234, page 0x1234 is not
    included in the range.  Using PFN_UP instead of the
    (>> >> PAGE_SHIFT) will make this consistent with the other VM
    code.
    
    We also need to do math for the reserved size with physbase
    instead of start_pfn.  node_ar.end_pfn << PAGE_SHIFT is
    *precisely* the end of the node.  However,
    (start_pfn << PAGE_SHIFT) is *NOT* precisely the beginning
    of the reserved area.  That is, of course, physbase.
    If we don't use physbase here, the reserve_size can be
    made too large.
    
    From: Dave Hansen <dave@linux.vnet.ibm.com>
    Tested-by: Geoff Levand <geoffrey.levand@am.sony.com>  Tested on PS3.
    
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

commit fbc78b07ba53ace155f27491c81a009e541a93ad
Author: Philippe Gerum <rpm@xenomai.org>
Date:   Thu Feb 12 12:18:46 2009 +0000

    powerpc/mm: Fix _PAGE_CHG_MASK to protect _PAGE_SPECIAL
    
    Fix _PAGE_CHG_MASK so that pte_modify() does not affect the _PAGE_SPECIAL bit.
    
    Signed-off-by: Philippe Gerum <rpm@xenomai.org>
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

commit 7ad9de6ac83bd825996d2de98c92e0f425c31050
Author: Thomas Gleixner <tglx@linutronix.de>
Date:   Thu Feb 12 21:16:09 2009 +0100

    x86: CPA avoid repeated lazy mmu flush
    
    Impact: Flush the lazy MMU only once
    
    Pending mmu updates only need to be flushed once to bring the
    in-memory pagetable state up to date.
    
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

commit 34b0900d323122113683685b200aae9f9b75e63b
Author: Thomas Gleixner <tglx@linutronix.de>
Date:   Thu Feb 12 21:30:48 2009 +0100

    x86: warn if arch_flush_lazy_mmu_cpu is called in preemptible context
    
    Impact: Catch cases where lazy MMU state is active in a preemtible context
    
    arch_flush_lazy_mmu_cpu() has been changed to disable preemption so
    the checks in enter/leave will never trigger. Put the preemtible()
    check into arch_flush_lazy_mmu_cpu() to catch such cases.
    
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

commit d85cf93da66977dbc645352be1b2084a659d8a0b
Author: Jeremy Fitzhardinge <jeremy@goop.org>
Date:   Thu Feb 12 10:02:56 2009 -0800

    x86/paravirt: make arch_flush_lazy_mmu/cpu disable preemption
    
    Impact: avoid access to percpu vars in preempible context
    
    They are intended to be used whenever there's the possibility
    that there's some stale state which is going to be overwritten
    with a queued update, or to force a state change when we may be
    in lazy mode.  Either way, we could end up calling it with
    preemption enabled, so wrap the functions in their own little
    preempt-disable section so they can be safely called in any
    context (though preemption should never be enabled if we're actually
    in a lazy state).
    
    (Move out of line to avoid #include dependencies.)
    
    Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

commit 2456242530a21cfee82646ebeeda65d3f74faa4c
Author: Yan Zheng <zheng.yan@oracle.com>
Date:   Thu Feb 12 14:14:53 2009 -0500

    Btrfs: hold trans_mutex when using btrfs_record_root_in_trans
    
    btrfs_record_root_in_trans needs the trans_mutex held to make sure two
    callers don't race to setup the root in a given transaction.  This adds
    it to all the places that were missing it.
    
    Signed-off-by: Yan Zheng <zheng.yan@oracle.com>

commit 4008c04a07c73ec3cb1be4c1391d2159a8f75d6d
Author: Chris Mason <chris.mason@oracle.com>
Date:   Thu Feb 12 14:09:45 2009 -0500

    Btrfs: make a lockdep class for the extent buffer locks
    
    Btrfs is currently using spin_lock_nested with a nested value based
    on the tree depth of the block.  But, this doesn't quite work because
    the max tree depth is bigger than what spin_lock_nested can deal with,
    and because locks are sometimes taken before the level field is filled in.
    
    The solution here is to use lockdep_set_class_and_name instead, and to
    set the class before unlocking the pages when the block is read from the
    disk and just after init of a freshly allocated tree block.
    
    btrfs_clear_path_blocking is also changed to take the locks in the proper
    order, and it also makes sure all the locks currently held are properly
    set to blocking before it tries to retake the spinlocks.  Otherwise, lockdep
    gets upset about bad lock orderin.
    
    The lockdep magic cam from Peter Zijlstra <peterz@infradead.org>
    
    Signed-off-by: Chris Mason <chris.mason@oracle.com>

commit 3f3420df505e47751ef76a652b5cb660e5360d6f
Author: Julia Lawall <julia@diku.dk>
Date:   Thu Feb 12 10:16:03 2009 -0500

    Btrfs: fs/btrfs/volumes.c: remove useless kzalloc
    
    The call to kzalloc is followed by a kmalloc whose result is stored in the
    same variable.
    
    The semantic match that finds the problem is as follows:
    (http://www.emn.fr/x-info/coccinelle/)
    
    // <smpl>
    @r exists@
    local idexpression x;
    statement S;
    expression E;
    identifier f,l;
    position p1,p2;
    expression *ptr != NULL;
    @@
    
    (
    if ((x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...)) == NULL) S
    |
    x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...);
    ...
    if (x == NULL) S
    )
    <... when != x
         when != if (...) { <+...x...+> }
    x->f = E
    ...>
    (
     return \(0\|<+...x...+>\|ptr\);
    |
     return@p2 ...;
    )
    
    @script:python@
    p1 << r.p1;
    p2 << r.p2;
    @@
    
    print "* file: %s kmalloc %s return %s" % (p1[0].file,p1[0].line,p2[0].line)
    // </smpl>
    
    Signed-off-by: Julia Lawall <julia@diku.dk>
    Signed-off-by: Chris Mason <chris.mason@oracle.com>

commit a48ddf08ba9bab91efd95e458737afa9d7699623
Author: Qinghuang Feng <qhfeng.kernel@gmail.com>
Date:   Thu Feb 12 14:25:23 2009 -0500

    Btrfs: remove unused code in split_state()
    
    These two lines are not used, remove them.
    
    Signed-off-by: Qinghuang Feng <qhfeng.kernel@gmail.com>
    Signed-off-by: Chris Mason <chris.mason@oracle.com>

commit e00f7308658622fbd483cb0d9fe41165bf9050d0
Author: Jeff Mahoney <jeffm@suse.com>
Date:   Thu Feb 12 14:11:25 2009 -0500

    Btrfs: remove btrfs_init_path
    
    btrfs_init_path was initially used when the path objects were on the
    stack.  Now all the work is done by btrfs_alloc_path and btrfs_init_path
    isn't required.
    
    This patch removes it, and just uses kmem_cache_zalloc to zero out the object.
    
    Signed-off-by: Chris Mason <chris.mason@oracle.com>

commit 7951f3cefbd711f4429a0cd014aa83a844c399a0
Author: Jeff Mahoney <jeffm@suse.com>
Date:   Thu Feb 12 10:06:15 2009 -0500

    Btrfs: balance_level checks !child after access
    
    The BUG_ON() is in the wrong spot.
    
    Signed-off-by: Jeff Mahoney <jeffm@suse.com>
    Signed-off-by: Chris Mason <chris.mason@oracle.com>

commit b335b0034e252e79ec2e9c6697f5d663c4627bec
Author: Yan Zheng <zheng.yan@oracle.com>
Date:   Thu Feb 12 10:06:04 2009 -0500

    Btrfs: Avoid using __GFP_HIGHMEM with slab allocator
    
    btrfs_releasepage may call kmem_cache_alloc indirectly,
    and provide same GFP flags it gets to kmem_cache_alloc.
    So it's possible to use __GFP_HIGHMEM with the slab
    allocator.
    
    Signed-off-by: Yan Zheng <zheng.yan@oracle.com>

commit e1df36d2f18254d0690a0fbe036cece74ec311b8
Author: Chris Mason <chris.mason@oracle.com>
Date:   Thu Feb 12 09:45:08 2009 -0500

    Btrfs: don't clean old snapshots on sync(1)
    
    Cleaning old snapshots can make sync(1) somewhat slow, and some users
    and applications still use it in a global fsync kind of workload.
    
    This patch changes btrfs not to clean old snapshots during sync, which is
    safe from a FS consistency point of view.  The major downside is that it
    makes it difficult to tell when old snapshots have been reaped and
    the space they were using has been reclaimed.  A new ioctl will be added
    for this purpose instead.
    
    Signed-off-by: Chris Mason <chris.mason@oracle.com>

commit 536ac8ae86e68bb5574d7cc81c7d229a86b82601
Author: Chris Mason <chris.mason@oracle.com>
Date:   Thu Feb 12 09:41:38 2009 -0500

    Btrfs: use larger metadata clusters in ssd mode
    
    Larger metadata clusters can significantly improve writeback performance
    on ssd drives with large erasure blocks.  The larger clusters make it
    more likely a given IO will completely overwrite the ssd block, so it
    doesn't have to do an internal rwm cycle.
    
    On spinning media, lager metadata clusters end up spreading out the
    metadata more over time, which makes fsck slower, so we don't want this
    to be the default.
    
    Signed-off-by: Chris Mason <chris.mason@oracle.com>

commit b288052e1779261ae80138074989ef50358c4e58
Author: Chris Mason <chris.mason@oracle.com>
Date:   Thu Feb 12 09:37:35 2009 -0500

    Btrfs: process mount options on mount -o remount,
    
    Btrfs wasn't parsing any new mount options during remount, making it
    difficult to set mount options on a root drive.
    
    Signed-off-by: Chris Mason <chris.mason@oracle.com>

commit eb099670895f22970cd143875467c2768d6d87e5
Author: Josef Bacik <jbacik@redhat.com>
Date:   Thu Feb 12 09:27:38 2009 -0500

    Btrfs: make sure all pending extent operations are complete
    
    Theres a slight problem with finish_current_insert, if we set all to 1 and then
    go through and don't actually skip any of the extents on the pending list, we
    could exit right after we've added new extents.
    
    This is a problem because by inserting the new extents we could have gotten new
    COW's to happen and such, so we may have some pending updates to do or even
    more inserts to do after that.
    
    So this patch will only exit if we have never skipped any of the extents in the
    pending list, and we have no extents to insert, this will make sure that all of
    the pending work is truly done before we return.  I've been running with this
    patch for a few days with all of my other testing and have not seen issues.
    Thanks,
    
    Signed-off-by: Josef Bacik <jbacik@redhat.com>

commit a0490fa35dc0022ef95f64802e8edf18c411c790
Author: Ingo Molnar <mingo@elte.hu>
Date:   Thu Feb 12 11:35:40 2009 +0100

    sched: cpu hotplug fix
    
    rq_attach_root() does a kfree() with the runqueue lock held.
    
    That's not a very wise move, fix it.
    
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit be03d9e8022030c16abf534e33e185bfc3d40eef
Author: Suresh Siddha <suresh.b.siddha@intel.com>
Date:   Wed Feb 11 11:20:23 2009 -0800

    x86, pat: fix warn_on_once() while mapping 0-1MB range with /dev/mem
    
    Jeff Mahoney reported:
    
    > With Suse's hwinfo tool, on -tip:
    > WARNING: at arch/x86/mm/pat.c:637 reserve_pfn_range+0x5b/0x26d()
    
    reserve_pfn_range() is not tracking the memory range below 1MB
    as non-RAM and as such is inconsistent with similar checks in
    reserve_memtype() and free_memtype()
    
    Rename the pagerange_is_ram() to pat_pagerange_is_ram() and add the
    "track legacy 1MB region as non RAM" condition.
    
    And also, fix reserve_pfn_range() to return -EINVAL, when the pfn
    range is RAM. This is to be consistent with this API design.
    
    Reported-and-tested-by: Jeff Mahoney <jeffm@suse.com>
    Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
    Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 4f06b0436b2ddbd3b67b10e77098a6862787b3eb
Author: Jeremy Fitzhardinge <jeremy@goop.org>
Date:   Wed Feb 11 09:32:19 2009 -0800

    x86/cpa: make sure cpa is safe to call in lazy mmu mode
    
    Impact: fix race leading to crash under KVM and Xen
    
    The CPA code may be called while we're in lazy mmu update mode - for
    example, when using DEBUG_PAGE_ALLOC and doing a slab allocation
    in an interrupt handler which interrupted a lazy mmu update.  In this
    case, the in-memory pagetable state may be out of date due to pending
    queued updates.  We need to flush any pending updates before inspecting
    the page table.  Similarly, we must explicitly flush any modifications
    CPA may have made (which comes down to flushing queued operations when
    flushing the TLB).
    
    Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
    Acked-by: Marcelo Tosatti <mtosatti@redhat.com>
    Cc: Stable Kernel <stable@kernel.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 2fff78c784ed97a8e5aa225ef5228f0a6d862d82
Author: Peter Zijlstra <peterz@infradead.org>
Date:   Wed Feb 11 18:10:10 2009 +0100

    futex: fix reference leak
    
    Catalin noticed that (38d47c1b7075: futex: rely on get_user_pages() for
    shared futexes) caused an mm_struct leak.
    
    Some tracing with the function graph tracer quickly pointed out that
    futex_wait() has exit paths with unbalanced reference counts.
    
    This regression was discovered by kmemleak.
    
    Reported-by: Catalin Marinas <catalin.marinas@arm.com>
    Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Tested-by: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>
    Tested-by: Catalin Marinas <catalin.marinas@arm.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 9f339e7028e2855717af3193c938f9960ad13b38
Author: Markus Metzger <markus.t.metzger@intel.com>
Date:   Wed Feb 11 15:10:27 2009 +0100

    x86, ptrace, mm: fix double-free on race
    
    Ptrace_detach() races with __ptrace_unlink() if the traced task is
    reaped while detaching. This might cause a double-free of the BTS
    buffer.
    
    Change the ptrace_detach() path to only do the memory accounting in
    ptrace_bts_detach() and leave the buffer free to ptrace_bts_untrace()
    which will be called from __ptrace_unlink().
    
    The fix follows a proposal from Oleg Nesterov.
    
    Reported-by: Oleg Nesterov <oleg@redhat.com>
    Signed-off-by: Markus Metzger <markus.t.metzger@intel.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit ba4439165f0f0d25b2fe065cf0c1ff8130b802eb
Author: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Date:   Tue Feb 10 11:14:34 2009 -0500

    ext4: Fix lockdep warning
    
    We should not call ext4_mb_add_n_trim while holding alloc_semp.
    
        =============================================
        [ INFO: possible recursive locking detected ]
        2.6.29-rc4-git1-dirty #124
        ---------------------------------------------
        ffsb/3116 is trying to acquire lock:
         (&meta_group_info[i]->alloc_sem){----}, at: [<ffffffff8035a6e8>]
         ext4_mb_load_buddy+0xd2/0x343
    
        but task is already holding lock:
         (&meta_group_info[i]->alloc_sem){----}, at: [<ffffffff8035a6e8>]
         ext4_mb_load_buddy+0xd2/0x343
    
    http://bugzilla.kernel.org/show_bug.cgi?id=12672
    
    Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
    Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>

commit 7be2baaa0322c59ba888aa5260a8c130666acd41
Author: Wei Yongjun <yjwei@cn.fujitsu.com>
Date:   Tue Feb 10 09:53:42 2009 -0500

    ext4: Fix to read empty directory blocks correctly in 64k
    
    The rec_len field in the directory entry is 16 bits, so there was a
    problem representing rec_len for filesystems with a 64k block size in
    the case where the directory entry takes the entire 64k block.
    Unfortunately, there were two schemes that were proposed; one where
    all zeros meant 65536 and one where all ones (65535) meant 65536.
    E2fsprogs used 0, whereas the kernel used 65535.  Oops.  Fortunately
    this case happens extremely rarely, with the most common case being
    the lost+found directory, created by mke2fs.
    
    So we will be liberal in what we accept, and accept both encodings,
    but we will continue to encode 65536 as 65535.  This will require a
    change in e2fsprogs, but with fortunately ext4 filesystems normally
    have the dir_index feature enabled, which precludes having a
    completely empty directory block.
    
    Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
    Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>

commit 7f5aa215088b817add9c71914b83650bdd49f8a9
Author: Jan Kara <jack@suse.cz>
Date:   Tue Feb 10 11:15:34 2009 -0500

    jbd2: Avoid possible NULL dereference in jbd2_journal_begin_ordered_truncate()
    
    If we race with commit code setting i_transaction to NULL, we could
    possibly dereference it.  Proper locking requires the journal pointer
    (to access journal->j_list_lock), which we don't have.  So we have to
    change the prototype of the function so that filesystem passes us the
    journal pointer.  Also add a more detailed comment about why the
    function jbd2_journal_begin_ordered_truncate() does what it does and
    how it should be used.
    
    Thanks to Dan Carpenter <error27@gmail.com> for pointing to the
    suspitious code.
    
    Signed-off-by: Jan Kara <jack@suse.cz>
    Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
    Acked-by: Joel Becker <joel.becker@oracle.com>
    CC: linux-ext4@vger.kernel.org
    CC: ocfs2-devel@oss.oracle.com
    CC: mfasheh@suse.de
    CC: Dan Carpenter <error27@gmail.com>

commit 9eddacf9e9c03578ef2c07c9534423e823d677f8
Author: Jan Kara <jack@suse.cz>
Date:   Tue Feb 10 06:46:05 2009 -0500

    Revert "ext4: wait on all pending commits in ext4_sync_fs()"
    
    This undoes commit 14ce0cb411c88681ab8f3a4c9caa7f42e97a3184.
    
    Since jbd2_journal_start_commit() is now fixed to return 1 when we
    started a transaction commit, there's some transaction waiting to be
    committed or there's a transaction already committing, we don't
    need to call ext4_force_commit() in ext4_sync_fs(). Furthermore
    ext4_force_commit() can unnecessarily create sync transaction which is
    expensive so it's worthwhile to remove it when we can.
    
    http://bugzilla.kernel.org/show_bug.cgi?id=12224
    
    Signed-off-by: Jan Kara <jack@suse.cz>
    Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
    Cc: Eric Sandeen <sandeen@redhat.com>
    Cc: linux-ext4@vger.kernel.org

commit c88ccea3143975294f5a52097546bcbb75975f52
Author: Jan Kara <jack@suse.cz>
Date:   Tue Feb 10 11:27:46 2009 -0500

    jbd2: Fix return value of jbd2_journal_start_commit()
    
    The function jbd2_journal_start_commit() returns 1 if either a
    transaction is committing or the function has queued a transaction
    commit. But it returns 0 if we raced with somebody queueing the
    transaction commit as well. This resulted in ext4_sync_fs() not
    functioning correctly (description from Arthur Jones):
    
       In the case of a data=ordered umount with pending long symlinks
       which are delayed due to a long list of other I/O on the backing
       block device, this causes the buffer associated with the long
       symlinks to not be moved to the inode dirty list in the second
       phase of fsync_super.  Then, before they can be dirtied again,
       kjournald exits, seeing the UMOUNT flag and the dirty pages are
       never written to the backing block device, causing long symlink
       corruption and exposing new or previously freed block data to
       userspace.
    
    This can be reproduced with a script created by Eric Sandeen
    <sandeen@redhat.com>:
    
            #!/bin/bash
    
            umount /mnt/test2
            mount /dev/sdb4 /mnt/test2
            rm -f /mnt/test2/*
            dd if=/dev/zero of=/mnt/test2/bigfile bs=1M count=512
            touch /mnt/test2/thisisveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryverylongfilename
            ln -s /mnt/test2/thisisveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryverylongfilename
            /mnt/test2/link
            umount /mnt/test2
            mount /dev/sdb4 /mnt/test2
            ls /mnt/test2/
    
    This patch fixes jbd2_journal_start_commit() to always return 1 when
    there's a transaction committing or queued for commit.
    
    Signed-off-by: Jan Kara <jack@suse.cz>
    Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
    CC: Eric Sandeen <sandeen@redhat.com>
    CC: linux-ext4@vger.kernel.org