commit 37bed90094fdb1eea6e4afec6a200d4e60143e55
Merge: 071a0bc... 1d7b33f...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Thu Feb 12 17:47:15 2009 -0800

    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: (32 commits)
      wimax: fix oops in wimax_dev_get_by_genl_info() when looking up non-wimax iface
      net: 4 bytes kernel memory disclosure in SO_BSDCOMPAT gsopt try #2
      netxen: fix compile waring "label ‘set_32_bit_mask’ defined but not used" on IA64 platform
      bnx2: Update version to 1.9.2 and copyright.
      bnx2: Fix jumbo frames error handling.
      bnx2: Update 5709 firmware.
      bnx2: Update 5706/5708 firmware.
      3c505: do not set pcb->data.raw beyond its size
      Documentation/connector/cn_test.c: don't use gfp_any()
      net: don't use in_atomic() in gfp_any()
      IRDA: cnt is off by 1
      netxen: remove pcie workaround
      sun3: print when lance_open() fails
      qlge: bugfix: Add missing rx buf clean index on early exit.
      qlge: bugfix: Fix RX scaling values.
      qlge: bugfix: Fix TSO breakage.
      qlge: bugfix: Add missing dev_kfree_skb_any() call.
      qlge: bugfix: Add missing put_page() call.
      qlge: bugfix: Fix fatal error recovery hang.
      qlge: bugfix: Use netif_receive_skb() and vlan_hwaccel_receive_skb().
      ...

commit 1d7b33f77b2d8b0b1ee767e6f8f05cbd9d72cb7c
Author: Inaky Perez-Gonzalez <inaky@linux.intel.com>
Date:   Thu Feb 12 17:00:20 2009 -0800

    wimax: fix oops in wimax_dev_get_by_genl_info() when looking up non-wimax iface
    
    When a non-wimax interface is looked up by the stack, a bad pointer is
    returned when the looked-up interface is not found in the list (of
    registered WiMAX interfaces). This causes an oops in the caller when
    trying to use the pointer.
    
    Fix by properly setting the pointer to NULL if we don't exit from the
    list_for_each() with a found entry.
    
    Signed-off-by: Inaky Perez-Gonzalez <inaky@linux.intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit df0bca049d01c0ee94afb7cd5dfd959541e6c8da
Author: Clément Lecigne <clement.lecigne@netasq.com>
Date:   Thu Feb 12 16:59:09 2009 -0800

    net: 4 bytes kernel memory disclosure in SO_BSDCOMPAT gsopt try #2
    
    In function sock_getsockopt() located in net/core/sock.c, optval v.val
    is not correctly initialized and directly returned in userland in case
    we have SO_BSDCOMPAT option set.
    
    This dummy code should trigger the bug:
    
    int main(void)
    {
    	unsigned char buf[4] = { 0, 0, 0, 0 };
    	int len;
    	int sock;
    	sock = socket(33, 2, 2);
    	getsockopt(sock, 1, SO_BSDCOMPAT, &buf, &len);
    	printf("%x%x%x%x\n", buf[0], buf[1], buf[2], buf[3]);
    	close(sock);
    }
    
    Here is a patch that fix this bug by initalizing v.val just after its
    declaration.
    
    Signed-off-by: Clément Lecigne <clement.lecigne@netasq.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 354b45fff90c3448c1eadabfad6ae7b8b8a2a237
Author: Yang Hongyang <yanghy@cn.fujitsu.com>
Date:   Thu Feb 12 16:57:12 2009 -0800

    netxen: fix compile waring "label ‘set_32_bit_mask’ defined but not used" on IA64 platform
    
    When compile the latest kernel on IA64 platform,I got a warning:
    drivers/net/netxen/netxen_nic_main.c:203: warning: label ‘set_32_bit_mask’
    defined but not used
    
    We do not need label ‘set_32_bit_mask’  on IA64 platform,So move it to #else.
    
    Signed-off-by: Yang Hongyang <yanghy@cn.fujitsu.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit a6952b5299ab506051f05395f7c26ff1352759ad
Author: Michael Chan <mchan@broadcom.com>
Date:   Thu Feb 12 16:54:48 2009 -0800

    bnx2: Update version to 1.9.2 and copyright.
    
    Signed-off-by: Michael Chan <mchan@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 990ec3804bb9fd37fcce3e165c95e8b79a783aa3
Author: Michael Chan <mchan@broadcom.com>
Date:   Thu Feb 12 16:54:13 2009 -0800

    bnx2: Fix jumbo frames error handling.
    
    If errors are reported on a frame descriptor, we need to
    account for the buffer pages that may have been used for this
    error packet and recycle them.  Otherwise, we may get the wrong
    pages for the next packet.
    
    Signed-off-by: Michael Chan <mchan@broadcom.com>
    Signed-off-by: Matt Carlson <mcarlson@broadcom.com>
    Signed-off-by: Benjamin Li <benli@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 259436a505bedc59a0114f2d17fa56af71d94129
Author: Michael Chan <mchan@broadcom.com>
Date:   Thu Feb 12 16:53:48 2009 -0800

    bnx2: Update 5709 firmware.
    
    New firmware fixes a data corruption issue when receiving and
    placing jumbo frames into host buffers.  In some cases, the
    buffer descriptor is not updated correctly and this will lead
    to the driver linking the wrong number of pages into the SKB.
    
    Signed-off-by: Michael Chan <mchan@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 86f95f9eac4370ca7b9cf5d34dea24faae5e4be6
Author: Michael Chan <mchan@broadcom.com>
Date:   Thu Feb 12 16:53:22 2009 -0800

    bnx2: Update 5706/5708 firmware.
    
    New firmware fixes a data corruption issue when receiving and
    placing jumbo frames into host buffers.  In some cases, the
    buffer descriptor is not updated correctly and this will lead
    to the driver linking the wrong number of pages into the SKB.
    
    Signed-off-by: Michael Chan <mchan@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 501aa061bd68169a5b54c123641f8dfa9ad31545
Author: Roel Kluin <roel.kluin@gmail.com>
Date:   Thu Feb 12 16:52:31 2009 -0800

    3c505: do not set pcb->data.raw beyond its size
    
    Ensure that we do not set pcb->data.raw beyond its size, print an error message
    and return false if we attempt to. A timout message was printed one too early.
    
    Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit f82da723398ff18d49275a5f03de6cae5f592e8e
Author: Andrew Morton <akpm@linux-foundation.org>
Date:   Thu Feb 12 16:47:01 2009 -0800

    Documentation/connector/cn_test.c: don't use gfp_any()
    
    cn_test_timer_func() is a timer handler and can never use GFP_KERNEL -
    there's no point in using gfp_any() here.
    
    Also, use setup_timer().
    
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 99709372736a216f99eb32b76fba835a2bfc93a8
Author: Andrew Morton <akpm@linux-foundation.org>
Date:   Thu Feb 12 16:43:17 2009 -0800

    net: don't use in_atomic() in gfp_any()
    
    The problem is that in_atomic() will return false inside spinlocks if
    CONFIG_PREEMPT=n.  This will lead to deadlockable GFP_KERNEL allocations
    from spinlocked regions.
    
    Secondly, if CONFIG_PREEMPT=y, this bug solves itself because networking
    will instead use GFP_ATOMIC from this callsite.  Hence we won't get the
    might_sleep() debugging warnings which would have informed us of the buggy
    callsites.
    
    Solve both these problems by switching to in_interrupt().  Now, if someone
    runs a gfp_any() allocation from inside spinlock we will get the warning
    if CONFIG_PREEMPT=y.
    
    I reviewed all callsites and most of them were too complex for my little
    brain and none of them documented their interface requirements.  I have no
    idea what this patch will do.
    
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit fb0886745a75ce98bde3aac421adc69fe61a1905
Author: Roel Kluin <roel.kluin@gmail.com>
Date:   Thu Feb 12 16:42:31 2009 -0800

    IRDA: cnt is off by 1
    
    If no prior break occurs, cnt reaches 101 after the loop, so we are still able
    to change speed when cnt has become 100.
    
    Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit acdb602fb3b7e13f3ffd2098549fab1bbfccba2f
Author: Dhananjay Phadke <dhananjay@netxen.com>
Date:   Thu Feb 12 16:41:14 2009 -0800

    netxen: remove pcie workaround
    
    Remove workaround for pcie bug in early revisions of NX3031
    (rev 41 or earlier). This is taken care of during firmware init.
    
    The workaround required writing pcie config reg of every
    pcie function on a card, not all of which are enabled.
    
    Signed-off-by: Dhananjay Phadke <dhananjay@netxen.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit cff71e89a8bd1175962b603f88f333883726b851
Author: Roel Kluin <roel.kluin@gmail.com>
Date:   Thu Feb 12 16:40:20 2009 -0800

    sun3: print when lance_open() fails
    
    With while (--i > 0) { ... } i reaches 0; print when lance_open() fails
    
    Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 79d2b29e8ab2bd460b07ff783d679d6cd3032769
Author: Ron Mercer <ron.mercer@qlogic.com>
Date:   Thu Feb 12 16:38:34 2009 -0800

    qlge: bugfix: Add missing rx buf clean index on early exit.
    
    The large receive buffer queue is not properly tracking the current
    index in the case where an early exit occurs.  This can happen when a
    page alloc or dma mapping fails.  If this occurs the queue will get
    out of sync and invalid indexes can be written to the hardware.
    
    Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit def48b6e328c2ff9954c13e13ba8e1a03f0bde32
Author: Ron Mercer <ron.mercer@qlogic.com>
Date:   Thu Feb 12 16:38:18 2009 -0800

    qlge: bugfix: Fix RX scaling values.
    
    Receive packets were only scaling across 2 of the receive queues. The
    value was hardcoded to 2 instead of being based on how many rx queues
    were running.
    
    Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 0d979f74a920bcc18eb451d363f02083a625294c
Author: Ron Mercer <ron.mercer@qlogic.com>
Date:   Thu Feb 12 16:38:03 2009 -0800

    qlge: bugfix: Fix TSO breakage.
    
    Moved the buffer mapping to a point after TSO logic has modified the
    iph->check field. We were seeing stale data on the PCIe bus.
    
    Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 06a3d510faf6fdec43daaf6f4d94fe24edf650cd
Author: Ron Mercer <ron.mercer@qlogic.com>
Date:   Thu Feb 12 16:37:48 2009 -0800

    qlge: bugfix: Add missing dev_kfree_skb_any() call.
    
    We put the skb back if we can't get mapping for it.  We don't
    want unmapped buffers on our receive buffer queue.
    
    Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit f2603c2c571978497019a50c4df84c185ffef356
Author: Ron Mercer <ron.mercer@qlogic.com>
Date:   Thu Feb 12 16:37:32 2009 -0800

    qlge: bugfix: Add missing put_page() call.
    
    We put the page back if we can't get mapping for it.  We don't
    want unmapped buffers on our receive buffer queue.
    
    Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 6497b607fb2d918e7588338761bfc6d53f49eeea
Author: Ron Mercer <ron.mercer@qlogic.com>
Date:   Thu Feb 12 16:37:13 2009 -0800

    qlge: bugfix: Fix fatal error recovery hang.
    
    Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 7a9deb661f5973b414df0c12b496d6ce49c8ed85
Author: Ron Mercer <ron.mercer@qlogic.com>
Date:   Thu Feb 12 16:36:50 2009 -0800

    qlge: bugfix: Use netif_receive_skb() and vlan_hwaccel_receive_skb().
    
    Replace calls to vlan_hwaccel_rx() and netif_rx().
    Thanks to Dave Miller for pointing out the the driver was making
    the wrong upcall for passing packets into the stack.
    
    Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit d4675b52a933831d4901217564cba5a434ddd922
Author: Roel Kluin <roel.kluin@gmail.com>
Date:   Thu Feb 12 16:33:27 2009 -0800

    TG3: limit reaches -1
    
    With while (limit--) { ... } limit reaches -1, so 0 means success.
    
    Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
    Acked-by: Michael Chan <mchan@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 071a0bc2ceace31266836801510879407a3701fa
Merge: 3a4c680... b1aabec...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Thu Feb 12 09:56:14 2009 -0800

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6:
      mm: Export symbol ksize()

commit 3a4c6800f31ea8395628af5e7e490270ee5d0585
Author: Nick Piggin <npiggin@suse.de>
Date:   Thu Feb 12 04:34:23 2009 +0100

    Fix page writeback thinko, causing Berkeley DB slowdown
    
    A bug was introduced into write_cache_pages cyclic writeout by commit
    31a12666d8f0c22235297e1c1575f82061480029 ("mm: write_cache_pages cyclic
    fix").  The intention (and comments) is that we should cycle back and
    look for more dirty pages at the beginning of the file if there is no
    more work to be done.
    
    But the !done condition was dropped from the test.  This means that any
    time the page writeout loop breaks (eg.  due to nr_to_write == 0), we
    will set index to 0, then goto again.  This will set done_index to
    index, then find done is set, so will proceed to the end of the
    function.  When updating mapping->writeback_index for cyclic writeout,
    we now use done_index == 0, so we're always cycling back to 0.
    
    This seemed to be causing random mmap writes (slapadd and iozone) to
    start writing more pages from the LRU and writeout would slowdown, and
    caused bugzilla entry
    
    	http://bugzilla.kernel.org/show_bug.cgi?id=12604
    
    about Berkeley DB slowing down dramatically.
    
    With this patch, iozone random write performance is increased nearly
    5x on my system (iozone -B -r 4k -s 64k -s 512m -s 1200m on ext2).
    
    Signed-off-by: Nick Piggin <npiggin@suse.de>
    Reported-and-tested-by: Jan Kara <jack@suse.cz>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit b1aabecd55931ee754f6a913969516b26a0e682e
Author: Kirill A. Shutemov <kirill@shutemov.name>
Date:   Tue Feb 10 15:21:44 2009 +0200

    mm: Export symbol ksize()
    
    Commit 7b2cd92adc5430b0c1adeb120971852b4ea1ab08 ("crypto: api - Fix
    zeroing on free") added modular user of ksize(). Export that to fix
    crypto.ko compilation.
    
    Cc: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
    Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>

commit b578f3fcca1e78624dfb5f358776e63711d7fda2
Merge: 507e2fb... ccc9c8b...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Feb 11 16:28:08 2009 -0800

    Merge git://git.infradead.org/users/cbou/battery-2.6.29
    
    * git://git.infradead.org/users/cbou/battery-2.6.29:
      pcf50633_charger: Fix typo

commit 507e2fbaaacb6f164b4125b87c5002f95143174b
Author: Ian Dall <ian@beware.dropbear.id.au>
Date:   Wed Feb 11 13:04:46 2009 -0800

    w1: w1 temp calculation overflow fix
    
    Addresses http://bugzilla.kernel.org/show_bug.cgi?id=12646
    
    When the temperature exceeds 32767 milli-degrees the temperature overflows
    to -32768 millidegrees.  These are bothe well within the -55 - +125 degree
    range for the sensor.
    
    Fix overflow in left-shift of a u8.
    
    Signed-off-by: Ian Dall <ian@beware.dropbear.id.au>
    Signed-off-by: Evgeniy Polyakov <zbr@ioremap.net>
    Cc: <stable@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 4d48a542b42747c36a5937447d9c3de7c897ea50
Author: Paul Clements <paul.clements@steeleye.com>
Date:   Wed Feb 11 13:04:45 2009 -0800

    nbd: fix I/O hang on disconnected nbds
    
    Fix a problem that causes I/O to a disconnected (or partially initialized)
    nbd device to hang indefinitely.  To reproduce:
    
    # ioctl NBD_SET_SIZE_BLOCKS /dev/nbd23 514048
    # dd if=/dev/nbd23 of=/dev/null bs=4096 count=1
    
    ...hangs...
    
    This can also occur when an nbd device loses its nbd-client/server
    connection.  Although we clear the queue of any outstanding I/Os after the
    client/server connection fails, any additional I/Os that get queued later
    will hang.
    
    This bug may also be the problem reported in this bug report:
    http://bugzilla.kernel.org/show_bug.cgi?id=12277
    
    Testing would need to be performed to determine if the two issues are the
    same.
    
    This problem was introduced by the new request handling thread code ("NBD:
    allow nbd to be used locally", 3/2008), which entered into mainline around
    2.6.25.
    
    The fix, which is fairly simple, is to restore the check for lo->sock
    being NULL in do_nbd_request.  This causes I/O to an uninitialized nbd to
    immediately fail with an I/O error, as it did prior to the introduction of
    this bug.
    
    Signed-off-by: Paul Clements <paul.clements@steeleye.com>
    Reported-by: Jon Nelson <jnelson-kernel-bugzilla@jamponi.net>
    Acked-by: Pavel Machek <pavel@ucw.cz>
    Cc: <stable@kernel.org>		[2.6.26.x, 2.6.27.x, 2.6.28.x]
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 9480c53e9b2aa13a06283ffb96bb8f1873ac4e9a
Author: Jeremy Fitzhardinge <jeremy@goop.org>
Date:   Wed Feb 11 13:04:41 2009 -0800

    mm: rearrange exit_mmap() to unlock before arch_exit_mmap
    
    Christophe Saout reported [in precursor to:
    http://marc.info/?l=linux-kernel&m=123209902707347&w=4]:
    
    > Note that I also some a different issue with CONFIG_UNEVICTABLE_LRU.
    > Seems like Xen tears down current->mm early on process termination, so
    > that __get_user_pages in exit_mmap causes nasty messages when the
    > process had any mlocked pages.  (in fact, it somehow manages to get into
    > the swapping code and produces a null pointer dereference trying to get
    > a swap token)
    
    Jeremy explained:
    
    Yes.  In the normal case under Xen, an in-use pagetable is "pinned",
    meaning that it is RO to the kernel, and all updates must go via hypercall
    (or writes are trapped and emulated, which is much the same thing).  An
    unpinned pagetable is not currently in use by any process, and can be
    directly accessed as normal RW pages.
    
    As an optimisation at process exit time, we unpin the pagetable as early
    as possible (switching the process to init_mm), so that all the normal
    pagetable teardown can happen with direct memory accesses.
    
    This happens in exit_mmap() -> arch_exit_mmap().  The munlocking happens
    a few lines below.  The obvious thing to do would be to move
    arch_exit_mmap() to below the munlock code, but I think we'd want to
    call it even if mm->mmap is NULL, just to be on the safe side.
    
    Thus, this patch:
    
    exit_mmap() needs to unlock any locked vmas before calling arch_exit_mmap,
    as the latter may switch the current mm to init_mm, which would cause the
    former to fail.
    
    Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
    Signed-off-by: Lee Schermerhorn <lee.schermerhorn@hp.com>
    Cc: Christophe Saout <christophe@saout.de>
    Cc: Keir Fraser <keir.fraser@eu.citrix.com>
    Cc: Christophe Saout <christophe@saout.de>
    Cc: Alex Williamson <alex.williamson@hp.com>
    Cc: <stable@kernel.org>		[2.6.28.x]
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 3abdbf90a3ffb006108c831c56b092e35483b6ec
Author: Jiri Slaby <jirislaby@gmail.com>
Date:   Wed Feb 11 13:04:40 2009 -0800

    parport: parport_serial, don't bind netmos ibm 0299
    
    Since netmos 9835 with subids 0x1014(IBM):0x0299 is now bound with
    serial/8250_pci, because it has no parallel ports and subdevice id isn't
    in the expected form, return -ENODEV from probe function.
    
    This is performed in netmos preinit_hook.
    
    Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 89e1219004b3657cc014521663eeef0744f1c99d
Author: Federico Cuello <fedux@lugmen.org.ar>
Date:   Wed Feb 11 13:04:39 2009 -0800

    writeback: fix break condition
    
    Commit dcf6a79dda5cc2a2bec183e50d829030c0972aaa ("write-back: fix
    nr_to_write counter") fixed nr_to_write counter, but didn't set the break
    condition properly.
    
    If nr_to_write == 0 after being decremented it will loop one more time
    before setting done = 1 and breaking the loop.
    
    [akpm@linux-foundation.org: coding-style fixes]
    Cc: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
    Acked-by: Nick Piggin <npiggin@suse.de>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 6c5979631b4b03c9288776562c18036765e398c1
Author: Heiko Carstens <heiko.carstens@de.ibm.com>
Date:   Wed Feb 11 13:04:38 2009 -0800

    syscall define: fix uml compile bug
    
    With the new system call defines we get this on uml:
    
    arch/um/sys-i386/built-in.o: In function `sys_call_table':
    (.rodata+0x308): undefined reference to `sys_sigprocmask'
    
    Reason for this is that uml passes the preprocessor option
    -Dsigprocmask=kernel_sigprocmask to gcc when compiling the kernel.
    This causes SYSCALL_DEFINE3(sigprocmask, ...) to be expanded to
    SYSCALL_DEFINEx(3, kernel_sigprocmask, ...) and finally to a system
    call named sys_kernel_sigprocmask.  However sys_sigprocmask is missing
    because of this.
    
    To avoid macro expansion for the system call name just concatenate the
    name at first define instead of carrying it through severel levels.
    This was pointed out by Al Viro.
    
    Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
    Cc: Geert Uytterhoeven <geert@linux-m68k.org>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Reviewed-by: WANG Cong <wangcong@zeuux.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 0e4a9b59282914fe057ab17027f55123964bc2e2
Author: Carsten Otte <cotte@de.ibm.com>
Date:   Wed Feb 11 13:04:37 2009 -0800

    ext2/xip: refuse to change xip flag during remount with busy inodes
    
    For a reason that I was unable to understand in three months of debugging,
    mount ext2 -o remount stopped working properly when remounting from
    regular operation to xip, or the other way around.  According to a git
    bisect search, the problem was introduced with the VM_MIXEDMAP/PTE_SPECIAL
    rework in the vm:
    
    commit 70688e4dd1647f0ceb502bbd5964fa344c5eb411
    Author: Nick Piggin <npiggin@suse.de>
    Date:   Mon Apr 28 02:13:02 2008 -0700
    
        xip: support non-struct page backed memory
    
    In the failing scenario, the filesystem is mounted read only via root=
    kernel parameter on s390x.  During remount (in rc.sysinit), the inodes of
    the bash binary and its libraries are busy and cannot be invalidated (the
    bash which is running rc.sysinit resides on subject filesystem).
    Afterwards, another bash process (running ifup-eth) recurses into a
    subshell, runs dup_mm (via fork).  Some of the mappings in this bash
    process were created from inodes that could not be invalidated during
    remount.
    
    Both parent and child process crash some time later due to inconsistencies
    in their address spaces.  The issue seems to be timing sensitive, various
    attempts to recreate it have failed.
    
    This patch refuses to change the xip flag during remount in case some
    inodes cannot be invalidated.  This patch keeps users from running into
    that issue.
    
    [akpm@linux-foundation.org: cleanup]
    Signed-off-by: Carsten Otte <cotte@de.ibm.com>
    Cc: Nick Piggin <npiggin@suse.de>
    Cc: Jared Hulbert <jaredeh@gmail.com>
    Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
    Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit cfebe563bd0a3ff97e1bc167123120d59c7a84db
Author: Li Zefan <lizf@cn.fujitsu.com>
Date:   Wed Feb 11 13:04:36 2009 -0800

    cgroups: fix lockdep subclasses overflow
    
    I enabled all cgroup subsystems when compiling kernel, and then:
     # mount -t cgroup -o net_cls xxx /mnt
     # mkdir /mnt/0
    
    This showed up immediately:
     BUG: MAX_LOCKDEP_SUBCLASSES too low!
     turning off the locking correctness validator.
    
    It's caused by the cgroup hierarchy lock:
    	for (i = 0; i < CGROUP_SUBSYS_COUNT; i++) {
    		struct cgroup_subsys *ss = subsys[i];
    		if (ss->root == root)
    			mutex_lock_nested(&ss->hierarchy_mutex, i);
    	}
    
    Now we have 9 cgroup subsystems, and the above 'i' for net_cls is 8, but
    MAX_LOCKDEP_SUBCLASSES is 8.
    
    This patch uses different lockdep keys for different subsystems.
    
    Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
    Acked-by: Paul Menage <menage@google.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 01c4a4283137d24c9cc3785f1f312e895a18f273
Author: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Date:   Wed Feb 11 13:04:35 2009 -0800

    cgroups: add Li Zefan as a maintainer
    
    Add Li Zefan as co-maintainer.
    
    Acked-by: Paul Menage <menage@google.com>
    Acked-by: Li Zefan <lizf@cn.fujitsu.com>
    Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit c318c7ac49f9139f55da619bbace6137e1509390
Author: Roel Kluin <roel.kluin@gmail.com>
Date:   Wed Feb 11 13:04:34 2009 -0800

    rtc: t reaches -1, tested 0
    
    With a postfix decrement t will reach -1 rather than 0, so neither the
    warning nor the `goto error_out' will occur.
    
    Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
    Acked-by: Manuel Lauss <mano@roarinelk.homelinux.net>
    Acked-by: Alessandro Zummo <a.zummo@towertech.it>
    Cc: David Brownell <david-b@pacbell.net>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit b4870bc5ee8c7a37541a3eb1208b5c76c13a078a
Author: Randy Dunlap <randy.dunlap@oracle.com>
Date:   Wed Feb 11 13:04:33 2009 -0800

    kernel-doc: fix syscall wrapper processing
    
    Fix kernel-doc processing of SYSCALL wrappers.
    
    The SYSCALL wrapper patches played havoc with kernel-doc for
    syscalls.  Syscalls that were scanned for DocBook processing
    reported warnings like this one, for sys_tgkill:
    
    Warning(kernel/signal.c:2285): No description found for parameter 'tgkill'
    Warning(kernel/signal.c:2285): No description found for parameter 'pid_t'
    Warning(kernel/signal.c:2285): No description found for parameter 'int'
    
    because the macro parameters all "look like" function parameters,
    although they are not:
    
    /**
     *  sys_tgkill - send signal to one specific thread
     *  @tgid: the thread group ID of the thread
     *  @pid: the PID of the thread
     *  @sig: signal to be sent
     *
     *  This syscall also checks the @tgid and returns -ESRCH even if the PID
     *  exists but it's not belonging to the target process anymore. This
     *  method solves the problem of threads exiting and PIDs getting reused.
     */
    SYSCALL_DEFINE3(tgkill, pid_t, tgid, pid_t, pid, int, sig)
    {
    ...
    
    This patch special-cases the handling SYSCALL_DEFINE* function
    prototypes by expanding them to
    	long sys_foobar(type1 arg1, type1 arg2, ...)
    
    Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit f40b45a2e45b0f02aeedfcfbb28d8e2d4b8b86b1
Author: Randy Dunlap <randy.dunlap@oracle.com>
Date:   Wed Feb 11 13:04:31 2009 -0800

    kernel-doc: preferred ending marker and examples
    
    Fix kernel-doc-nano-HOWTO.txt to use */ as the ending marker in kernel-doc
    examples and state that */ is the preferred ending marker.
    
    Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
    Reported-by: Robert Love <robert.w.love@intel.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 2e9c23724328ae4e56c42a35a717a956d7d3001d
Author: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Date:   Wed Feb 11 13:04:29 2009 -0800

    memcg: use __GFP_NOWARN in page cgroup allocation
    
    page_cgroup's page allocation at init/memory hotplug uses kmalloc() and
    vmalloc(). If kmalloc() failes, vmalloc() is used.
    
    This is because vmalloc() is very limited resource on 32bit systems.
    We want to use kmalloc() first.
    
    But in this kind of call, __GFP_NOWARN should be specified.
    
    Reported-by: Heiko Carstens <heiko.carstens@de.ibm.com>
    Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
    Acked-by: Balbir Singh <balbir@linux.vnet.ibm.com>
    Acked-by: Pekka Enberg <penberg@cs.helsinki.fi>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit d4097456cd1d9285e876fc5d08a789462804cc28
Author: Uwe Kleine-Koenig <ukleinek@strlen.de>
Date:   Wed Feb 11 13:04:28 2009 -0800

    video/framebuffer: move the probe func into .devinit.text in Blackfin LCD driver
    
    Signed-off-by: Uwe Kleine-Koenig <ukleinek@strlen.de>
    Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
    Signed-off-by: Bryan Wu <cooloney@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 7dcce1334fa5879dc12bee001962e8f74bce60f1
Author: Marcel Selhorst <m.selhorst@sirrix.com>
Date:   Wed Feb 11 13:04:27 2009 -0800

    tpm: correct email address for tpm_infineon-driver
    
    Update my email address.
    
    Signed-off-by: Marcel Selhorst <m.selhorst@sirrix.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 508b9f8efdad123b202b228f71f59feba51e4fb5
Author: MinChan Kim <minchan.kim@gmail.com>
Date:   Wed Feb 11 13:04:27 2009 -0800

    mm: fix mlocked page counter mismatch
    
    When I tested following program, I found that the mlocked counter
    is strange.  It cannot free some mlocked pages.
    
    It is because try_to_unmap_file() doesn't check real
    page mappings in vmas.
    
    That is because the goal of an address_space for a file is to find all
    processes into which the file's specific interval is mapped.  It is
    related to the file's interval, not to pages.
    
    Even if the page isn't really mapped by the vma, it returns SWAP_MLOCK
    since the vma has VM_LOCKED, then calls try_to_mlock_page.  After this the
    mlocked counter is increased again.
    
    COWed anon page in a file-backed vma could be a such case.  This patch
    resolves it.
    
    -- my test program --
    
    int main()
    {
           mlockall(MCL_CURRENT);
           return 0;
    }
    
    -- before --
    
    root@barrios-target-linux:~# cat /proc/meminfo | egrep 'Mlo|Unev'
    Unevictable:           0 kB
    Mlocked:               0 kB
    
    -- after --
    
    root@barrios-target-linux:~# cat /proc/meminfo | egrep 'Mlo|Unev'
    Unevictable:           8 kB
    Mlocked:               8 kB
    
    Signed-off-by: MinChan Kim <minchan.kim@gmail.com>
    Acked-by: Lee Schermerhorn <lee.schermerhorn@hp.com>
    Acked-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
    Tested-by: Lee Schermerhorn <lee.schermerhorn@hp.com>
    Cc: Hugh Dickins <hugh@veritas.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 02ac597c9b86af49b2016aa98aee20ab59dbf0d2
Author: Jan Kara <jack@suse.cz>
Date:   Wed Feb 11 13:04:26 2009 -0800

    ext3: revert "ext3: wait on all pending commits in ext3_sync_fs"
    
    This reverts commit c87591b719737b4e91eb1a9fa8fd55a4ff1886d6.
    
    Since 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
    ext3_force_commit() in ext3_sync_fs().  Furthermore ext3_force_commit()
    can unnecessarily create sync transaction which is expensive so it's
    worthwhile to remove it when we can.
    
    Cc: Eric Sandeen <sandeen@redhat.com>
    Cc: <linux-ext4@vger.kernel.org>
    Signed-off-by: Jan Kara <jack@suse.cz>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 8fe4cd0dc5ea43760c59eb256404188272cc95dd
Author: Jan Kara <jack@suse.cz>
Date:   Wed Feb 11 13:04:25 2009 -0800

    jbd: fix return value of journal_start_commit()
    
    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 ext3_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 journal_start_commit() to always return 1 when there's
    a transaction committing or queued for commit.
    
    Cc: Eric Sandeen <sandeen@redhat.com>
    Cc: Mike Snitzer <snitzer@gmail.com>
    Cc: <linux-ext4@vger.kernel.org>
    Signed-off-by: Jan Kara <jack@suse.cz>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit fc3501d411d34823fb9be248a95a0c44f945866f
Author: Sven Wegener <sven.wegener@stealer.net>
Date:   Wed Feb 11 13:04:23 2009 -0800

    mm: fix dirty_bytes/dirty_background_bytes sysctls on 64bit arches
    
    We need to pass an unsigned long as the minimum, because it gets casted
    to an unsigned long in the sysctl handler. If we pass an int, we'll
    access four more bytes on 64bit arches, resulting in a random minimum
    value.
    
    [rientjes@google.com: fix type of `old_bytes']
    Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Dave Chinner <david@fromorbit.com>
    Cc: Christoph Lameter <cl@linux-foundation.org>
    Cc: David Rientjes <rientjes@google.com>
    Signed-off-by: David Rientjes <rientjes@google.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 35887b1cf74dc751dd0574b26515142d3cea9376
Author: Andres Salomon <dilinger@queued.net>
Date:   Wed Feb 11 13:04:23 2009 -0800

    gx1fb: properly alloc cmap and plug cmap leak
    
    We weren't properly allocating the cmap for depths greater than 8bpp,
    which caused pain for things like DirectFB.  Also, we never freed the cmap
    memory upon module unload..
    
    Signed-off-by: Andres Salomon <dilinger@debian.org>
    Cc: Marco La Porta <marco-laporta@tiscali.it>
    Cc: Jordan Crouse <jordan@cosmicpenguin.net>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit b14caecdbe7730bf82c8510f1ba52e00273e15c4
Author: Andres Salomon <dilinger@queued.net>
Date:   Wed Feb 11 13:04:22 2009 -0800

    gxfb: properly alloc cmap and plug cmap leak
    
    We weren't properly allocating the cmap for depths greater than 8bpp,
    which caused pain for things like DirectFB.  Also, we never freed the cmap
    memory upon module unload..
    
    Signed-off-by: Andres Salomon <dilinger@debian.org>
    Cc: Marco La Porta <marco-laporta@tiscali.it>
    Cc: Jordan Crouse <jordan@cosmicpenguin.net>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 067f1293cc5916f8d88b602beeb8787d58515608
Author: Marco La Porta <marco-laporta@tiscali.it>
Date:   Wed Feb 11 13:04:20 2009 -0800

    lxfb: properly alloc cmap in all cases and don't leak the memory
    
    We weren't properly allocating the cmap for depths greater than 8bpp,
    which caused pain for things like DirectFB.  Also, we never freed the cmap
    memory upon module unload..
    
    [dilinger@debian.org: dropped unnecessary code and clean up patch]
    [dilinger@debian.org: add error checking and handling]
    Signed-off-by: Andres Salomon <dilinger@debian.org>
    Cc: Jordan Crouse <jordan@cosmicpenguin.net>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 57f63bc8fe79e6598e7253f10f53f58c9fdc57be
Author: Robert Jarzmik <robert.jarzmik@free.fr>
Date:   Wed Feb 11 13:04:19 2009 -0800

    rtc: update maintainership of pxa rtc driver
    
    Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
    Signed-off-by: Alessandro Zummo <a.zummo@towertech.it>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 1001c9fb8721ab395e21f571ed2aaa523cdd1e29
Author: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
Date:   Wed Feb 11 13:04:18 2009 -0800

    migration: migrate_vmas should check "vma"
    
    migrate_vmas() should check "vma" not "vma->vm_next" for for-loop condition.
    
    Signed-off-by: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
    Cc: Christoph Lameter <cl@linux-foundation.org>
    Cc: Johannes Weiner <hannes@cmpxchg.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 17c9d12e126cb0de8d535dc1908c4819d712bc68
Author: Mel Gorman <mel@csn.ul.ie>
Date:   Wed Feb 11 16:34:16 2009 +0000

    Do not account for hugetlbfs quota at mmap() time if mapping [SHM|MAP]_NORESERVE
    
    Commit 5a6fe125950676015f5108fb71b2a67441755003 brought hugetlbfs more
    in line with the core VM by obeying VM_NORESERVE and not reserving
    hugepages for both shared and private mappings when [SHM|MAP]_NORESERVE
    are specified.  However, it is still taking filesystem quota
    unconditionally.
    
    At fault time, if there are no reserves and attempt is made to allocate
    the page and account for filesystem quota.  If either fail, the fault
    fails.  The impact is that quota is getting accounted for twice.  This
    patch partially reverts 5a6fe125950676015f5108fb71b2a67441755003.  To
    help prevent this mistake happening again, it improves the documentation
    of hugetlb_reserve_pages()
    
    Reported-by: Andy Whitcroft <apw@canonical.com>
    Signed-off-by: Mel Gorman <mel@csn.ul.ie>
    Acked-by: Andy Whitcroft <apw@canonical.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit 89c581b3fb2986e303f1299e6458e3e9b115fa3f
Author: Reinette Chatre <reinette.chatre@intel.com>
Date:   Tue Feb 10 12:02:49 2009 -0800

    iwlwifi: fix suspend/resume and its usage of pci saved state
    
    Here we do two things:
    
    First, revert "iwlwifi: save PCI state before suspend, restore after
    resume".  That misguided patch led to being unable to use iwlwifi
    devices after resume.
    
    Next, indicate to PCI driver that the saved PCI state is valid during suspend.
    
    We restore PCI state and enable the device when network interface is created,
    similarly PCI state is saved and the device is disabled when network interface
    is removed. Thus, when .suspend is called the PCI state is saved and device
    is disabled. This is the case even if an interface is never created as PCI
    state is saved and device disabled during .probe.
    
    PCI driver assumes PCI state is saved in .suspend. Saving the state at this
    time will save state of disabled device and thus cause problems during
    resume (resuming a disabled device). We thus indicate directly to PCI
    driver that current PCI saved state is valid.
    
    Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
    Tested-by: Alex Riesen <fork0@users.sf.net>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit efb43f4b2ccf8066abc3920a0e6858e4350a65c7
Author: Hin-Tak Leung <hintak.leung@gmail.com>
Date:   Wed Feb 4 23:40:43 2009 +0000

    zd1211rw: treat MAXIM_NEW_RF(0x08) as UW2453_RF(0x09) for TP-Link WN322/422G
    
    Three people (Petr Mensik <pihhan@cipis.net>
    ["si" should be U+0161 U+00ED], Stephen Ho <stephenhoinhk@gmail.com>
    on zd1211-devs and Ismael Ojeda Perez <iojedaperez@gmail.com>
    on linux-wireless) reported success in getting TP-Link WN322G/WN422G
    working by treating MAXIM_NEW_RF(0x08) as UW2453_RF(0x09) for rf
    chip hardware initialization.
    
    Signed-off-by: Hin-Tak Leung <htl10@users.sourceforge.net>
    Tested-by: Petr Mensik <pihhan@cipis.net>
    Tested-by: Stephen Ho <stephenhoinhk@gmail.com>
    Tested-by: Ismael Ojeda Perez <iojedaperez@gmail.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 14990c69b5f51dd57b4e0e2373de50239ac861e2
Author: Hin-Tak Leung <hintak.leung@gmail.com>
Date:   Sun Feb 8 02:13:56 2009 +0000

    zd1211rw: adding 0ace:0xa211 as a ZD1211 device
    
    Christoph Biedl <sourceforge.bnwi@manchmal.in-ulm.de> reported success
    in the sourceforge zd1211 mailing list on this addition. This product ID
    was supported by the vendor driver ZD1211LnxDrv 2.22.0.0 (and possibly
    earlier) and it probably should have been added earlier.
    
    Signed-off-by: Hin-Tak Leung <htl10@users.sourceforge.net>
    Tested-by: Christoph Biedl <sourceforge.bnwi@manchmal.in-ulm.de>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit f1b33cb1c25ac476cbf22783f9ca2016f99648ed
Author: Johannes Berg <johannes@sipsolutions.net>
Date:   Fri Feb 6 00:27:32 2009 +0100

    mac80211: restrict to AP in outgoing interface heuristic
    
    We try to find the correct outgoing interface for injected frames
    based on the TA, but since this is a hack for hostapd 11w, restrict
    the heuristic to AP mode interfaces. At some point we'll add the
    ability to give an interface index in radiotap or so and just
    remove this heuristic again.
    
    Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
    Cc: stable@kernel.org [2.6.28.x]
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit fcf6b1bca8cdfefc986909b57277af4628955bd8
Author: Bob Copeland <me@bobcopeland.com>
Date:   Sat Jan 10 14:42:54 2009 -0500

    ath5k: fix bf->skb==NULL panic in ath5k_tasklet_rx
    
    Under memory pressure, we may not be able to allocate a new skb for
    new packets.  If the allocation fails, ath5k_tasklet_rx will exit but
    will leave a buffer in the list with a NULL skb, eventually triggering
    a BUG_ON.
    
    Extract the skb allocation from ath5k_rxbuf_setup() and change the
    tasklet to allocate the next skb before accepting a packet.
    
    Changes-licensed-under: 3-Clause-BSD
    
    Signed-off-by: Bob Copeland <me@bobcopeland.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>

commit 6c6f1f0f4db31a192916eaa31ec2f114fda7d5e5
Merge: 94dba89... fc631c8...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Feb 11 08:25: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: revert recent sync wakeup changes

commit 94dba895333a4321f27360e42b807260ae36bda4
Merge: 9ce04f9... 4da94d49...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Feb 11 08:24:32 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: fix TIMER_ABSTIME for process wide cpu timers
      timers: split process wide cpu clocks/timers, fix
      x86: clean up hpet timer reinit
      timers: split process wide cpu clocks/timers, remove spurious warning
      timers: split process wide cpu clocks/timers
      signal: re-add dead task accumulation stats.
      x86: fix hpet timer reinit for x86_64
      sched: fix nohz load balancer on cpu offline

commit 9ce04f9238cafcfd09a502f2bc8c13b5f44ec590
Merge: b3f2caa... 06eb23b...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Feb 11 08:23:22 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:
      ptrace, x86: fix the usage of ptrace_fork()
      i8327: fix outb() parameter order
      x86: fix math_emu register frame access
      x86: math_emu info cleanup
      x86: include correct %gs in a.out core dump
      x86, vmi: put a missing paravirt_release_pmd in pgd_dtor
      x86: find nr_irqs_gsi with mp_ioapic_routing
      x86: add clflush before monitor for Intel 7400 series
      x86: disable intel_iommu support by default
      x86: don't apply __supported_pte_mask to non-present ptes
      x86: fix grammar in user-visible BIOS warning
      x86/Kconfig.cpu: make Kconfig help readable in the console
      x86, 64-bit: print DMI info in the oops trace

commit b3f2caaaa82440af06b39c2c92e4fa8122d75465
Merge: 93431dd... f47a454...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Feb 11 08:22:26 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:
      tracing, x86: fix constraint for parent variable
      tracing, x86: fix fixup section to return to original code
      profiling: fix broken profiling regression

commit 93431dd7afa908292753acccb68785efaa366f5b
Merge: da8dbb8... 95ec807...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Feb 11 08:21:29 2009 -0800

    Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6
    
    * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
      [S390] Update default configuration.
      [S390] dasd: fix race in dasd timer handling
      [S390] dasd: bus_id -> dev_name() conversion.
      [S390] Fix init irq proc build break.
      [S390] vdso: fix per cpu vdso pointer in lowcore

commit da8dbb88db2af1e963090bd549a9a7dccffe991c
Merge: 1385a7a... f99fb8a...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Wed Feb 11 08:21:11 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/mm: Fix _PAGE_COHERENT support on classic ppc32 HW

commit fc631c82e1734d718ff0832558f64c8f5d185f26
Author: Peter Zijlstra <a.p.zijlstra@chello.nl>
Date:   Wed Feb 11 14:27:17 2009 +0100

    sched: revert recent sync wakeup changes
    
    Intel reported a 10% regression (mysql+sysbench) on a 16-way machine
    with these patches:
    
      1596e29: sched: symmetric sync vs avg_overlap
      d942fb6: sched: fix sync wakeups
    
    Revert them.
    
    Reported-by: "Zhang, Yanmin" <yanmin_zhang@linux.intel.com>
    Bisected-by: Lin Ming <ming.m.lin@intel.com>
    Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 4da94d49b2ecb0a26e716a8811c3ecc542c2a65d
Author: Peter Zijlstra <a.p.zijlstra@chello.nl>
Date:   Wed Feb 11 11:30:27 2009 +0100

    timers: fix TIMER_ABSTIME for process wide cpu timers
    
    The POSIX timer interface allows for absolute time expiry values through the
    TIMER_ABSTIME flag, therefore we have to synchronize the timer to the clock
    every time we start it.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 3fccfd67df79c6351a156eb25a7a514e5f39c4d9
Author: Peter Zijlstra <a.p.zijlstra@chello.nl>
Date:   Tue Feb 10 16:37:31 2009 +0100

    timers: split process wide cpu clocks/timers, fix
    
    To decrease the chance of a missed enable, always enable the timer when we
    sample it, we'll always disable it when we find that there are no active timers
    in the jiffy tick.
    
    This fixes a flood of warnings reported by Mike Galbraith.
    
    Reported-by: Mike Galbraith <efault@gmx.de>
    Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 95ec807e0a42188ec1ce29cf939816ad1e22f2d3
Author: Martin Schwidefsky <schwidefsky@de.ibm.com>
Date:   Wed Feb 11 10:37:32 2009 +0100

    [S390] Update default configuration.
    
    Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>

commit 48cae885d5a896030588978f503c73c5ed5e62b1
Author: Stefan Weinhuber <wein@de.ibm.com>
Date:   Wed Feb 11 10:37:31 2009 +0100

    [S390] dasd: fix race in dasd timer handling
    
    In dasd_device_set_timer and dasd_block_set_timer we interpret the
    return value of mod_timer in a wrong way. If the timer expires in
    the small window between our check of timer_pending and the call to
    mod_timer, then the timer will be set, mod_timer returns zero and
    we will call add_timer for a timer that is already pending.
    As del_timer and mod_timer do all the necessary checking themselves,
    we can simplify our code and remove the race a the same time.
    
    Signed-off-by: Stefan Weinhuber <wein@de.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>

commit ca0b4b7d2cb57a2e24d7e48ce9b411b9baa3bf63
Author: Cornelia Huck <cornelia.huck@de.ibm.com>
Date:   Wed Feb 11 10:37:30 2009 +0100

    [S390] dasd: bus_id -> dev_name() conversion.
    
    bus_id usage crept in again; fix it.
    
    Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
    Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>

commit 0addff81513a71b279a5eca5bf7cba2052c8b737
Author: Sachin Sant <sachinp@in.ibm.com>
Date:   Wed Feb 11 10:37:29 2009 +0100

    [S390] Fix init irq proc build break.
    
    Embed init_irq_proc(s390) within CONFIG_PROC_FS to fix a build break.
    
    Signed-off-by : Sachin Sant <sachinp@in.ibm.com>

commit d5e842c4b79cc8e454c4fbbc1ce6a43d43184367
Author: Martin Schwidefsky <schwidefsky@de.ibm.com>
Date:   Wed Feb 11 10:37:28 2009 +0100

    [S390] vdso: fix per cpu vdso pointer in lowcore
    
    The vdso_per_cpu_data entry in the lowcore structure uses __u32
    instead of __u64. If the data page is above 4GB the pointer is
    truncated and the kernel crashes.
    
    Reported-by: Mijo Safradin <mijo@linux.vnet.ibm.com>
    Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>

commit 06eb23b1ba39c61ee5d5faeb42a097635693e370
Author: Oleg Nesterov <oleg@redhat.com>
Date:   Mon Feb 9 02:02:33 2009 +0100

    ptrace, x86: fix the usage of ptrace_fork()
    
    I noticed by pure accident we have ptrace_fork() and friends. This was
    added by "x86, bts: add fork and exit handling", commit
    bf53de907dfdaac178c92d774aae7370d7b97d20.
    
    I can't test this, ds_request_bts() returns -EOPNOTSUPP, but I strongly
    believe this needs the fix. I think something like this program
    
    	int main(void)
    	{
    		int pid = fork();
    
    		if (!pid) {
    			ptrace(PTRACE_TRACEME, 0, NULL, NULL);
    			kill(getpid(), SIGSTOP);
    			fork();
    		} else {
    			struct ptrace_bts_config bts = {
    				.flags = PTRACE_BTS_O_ALLOC,
    				.size  = 4 * 4096,
    			};
    
    			wait(NULL);
    
    			ptrace(PTRACE_SETOPTIONS, pid, NULL, PTRACE_O_TRACEFORK);
    			ptrace(PTRACE_BTS_CONFIG, pid, &bts, sizeof(bts));
    			ptrace(PTRACE_CONT, pid, NULL, NULL);
    
    			sleep(1);
    		}
    
    		return 0;
    	}
    
    should crash the kernel.
    
    If the task is traced by its natural parent ptrace_reparented() returns 0
    but we should clear ->btsxxx anyway.
    
    Signed-off-by: Oleg Nesterov <oleg@redhat.com>
    Acked-by: Markus Metzger <markus.t.metzger@intel.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit f47a454db9129d2e61b224a40f4365cdd4f83042
Author: Steven Rostedt <srostedt@redhat.com>
Date:   Tue Feb 10 11:53:23 2009 -0500

    tracing, x86: fix constraint for parent variable
    
    The constraint used for retrieving and restoring the parent function
    pointer is incorrect. The parent variable is a pointer, and the
    address of the pointer is modified by the asm statement and not
    the pointer itself. It is incorrect to pass it in as an output
    constraint since the asm will never update the pointer.
    
    Signed-off-by: Steven Rostedt <srostedt@redhat.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 7d6d49b1f5551b87bd59c66c10747b89367760fd
Merge: acd8957... e3944bf...
Author: Ingo Molnar <mingo@elte.hu>
Date:   Wed Feb 11 09:49:01 2009 +0100

    Merge branch 'tip/tracing/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/urgent

commit f99fb8a2cbf0fd9ce9b2d5d298943d0d4dc479f7
Author: Kumar Gala <galak@kernel.crashing.org>
Date:   Tue Feb 10 10:57:46 2009 +0000

    powerpc/mm: Fix _PAGE_COHERENT support on classic ppc32 HW
    
    The following commit:
    
    commit 64b3d0e8122b422e879b23d42f9e0e8efbbf9744
    Author: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Date:   Thu Dec 18 19:13:51 2008 +0000
    
        powerpc/mm: Rework usage of _PAGE_COHERENT/NO_CACHE/GUARDED
    
    broke setting of the _PAGE_COHERENT bit in the PPC HW PTE.  Since we now
    actually set _PAGE_COHERENT in the Linux PTE we shouldn't be clearing it
    out before we propogate it to the PPC HW PTE.
    
    Reported-by: Martyn Welch <martyn.welch@gefanuc.com>
    Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

commit 7b7a799d664a46eec6cb7de200c90f40730497a7
Author: Meelis Roos <mroos@linux.ee>
Date:   Tue Feb 10 17:29:42 2009 -0800

    sunhme: Fix Quattro HME irq registration on proble failures
    
    Currently, the sunhme driver installs SBus Quattro interrupt handler
    when at least one HME card was initialized correctly and at least one
    Quattro card is present. This breaks when a Quattro card fails
    initialization for whatever reason - IRQ is registered and OOPS happens
    when it fires.
    
    The solution, as suggested by David Miller, was to keep track which
    cards of the Quattro bundles have been initialized, and request/free the
    Quattro IRQ only when all four devices have been successfully
    initialized.
    
    The patch only touches SBus initialization - PCI init already resets the
    card pointer to NULL on init failure.
    
    The patch has been tested on Sun E3500 with SBus and PCI single HME
    cards and one PCI Quattro HME card in a situation where any PCI card
    failed init when the SBus routines tried to init them by mistake.
    
    Additionally it replaces Quattro request_irq panic with error return -
    if this card fails to work, at least let the others work.
    
    Tested on E450 with PCI HME and PCI Quad HME.
    
    [ Minor coding style fixups -DaveM ]
    
    Signed-off-by: Meelis Roos <mroos@linux.ee>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit fcffd0d8bbddac757cd856e635ac75e8eb4518bc
Author: Meelis Roos <mroos@linux.ee>
Date:   Tue Feb 10 17:19:19 2009 -0800

    fore200: fix oops on failed firmware load
    
    Fore 200 ATM driver fails to handle request_firmware failures and oopses
    when no firmware file was found. Fix it by checking for the right return
    values and propaganting the return value up.
    
    Signed-off-by: Meelis Roos <mroos@linux.ee>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit e672f7db767156bf71adf9c592cfe81b339523d6
Author: Chuck Ebbert <cebbert@redhat.com>
Date:   Tue Feb 10 17:18:17 2009 -0800

    pkt_sched: type should be __u32 in header
    
    Using u32 in this header breaks the build of iptables.
    
    Signed-off-by: Chuck Ebbert <cebbert@redhat.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 2ddc1ac1b9f00096869a48b97c28de72386200d2
Author: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Date:   Tue Feb 10 17:14:50 2009 -0800

    Phonet: do not compute unused value
    
    Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit a2bf4538714f83fc83ac175c4de296510ae596ae
Author: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Date:   Tue Feb 10 17:14:31 2009 -0800

    Phonet: fix double free in GPRS outbound packet error path
    
    Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 664f93b48aefeb44b42127fe1da534808e8e9494
Author: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
Date:   Sun Feb 8 23:46:01 2009 +0000

    mdio-gpio: Add mdc pin direction initialization
    
    mdc pin should always be output. Initialize it as output,
    so each board code does not need to do this.
    
    Signed-off-by: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 1385a7ae654264fb2d9d3c6c3c7a3df28d29ab53
Merge: 1db8508... f6f35bb...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 10 15:54:50 2009 -0800

    Merge master.kernel.org:/home/rmk/linux-2.6-arm
    
    * master.kernel.org:/home/rmk/linux-2.6-arm:
      [ARM] AACI: timeout will reach -1
      [ARM] Storage class should be before const qualifier
      [ARM] pxa: stop and disable IRQ for each DMA channels at startup
      [ARM] pxa: make more SSCR0 bit definitions visible on multiple processors
      [ARM] pxa: fix missing of __REG() definition for ac97 registers access
      [ARM] pxa: fix NAND and MMC clock initialization for pxa3xx

commit 1db8508cf483dc1ecf66141f90a7c03659d69512
Author: Stefan Richter <stefanr@s5r6.in-berlin.de>
Date:   Tue Feb 10 23:27:32 2009 +0100

    hugetlbfs: fix build failure with !CONFIG_HUGETLBFS
    
    Fix regression due to 5a6fe125950676015f5108fb71b2a67441755003,
    "Do not account for the address space used by hugetlbfs using VM_ACCOUNT"
    which added an argument to the function hugetlb_file_setup() but not to
    the macro hugetlb_file_setup().
    
    Reported-by: Chris Clayton <chris2553@googlemail.com>
    Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
    Acked-by: Mel Gorman <mel@csn.ul.ie>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit c36c63c511fa088fcc247a8e888b04f248be8435
Merge: 226b791... 0b2f828...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 10 11:55:12 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: Add missing sparsemem.h include
      powerpc/pci: mmap anonymous memory when legacy_mem doesn't exist
      powerpc/cell: Add missing #include for oprofile
      powerpc/ftrace: Fix math to calculate offset in TOC
      powerpc: Don't emulate mr. instructions
      powerpc/fsl-booke: Fix mapping functions to use phys_addr_t
      arch/powerpc: Eliminate double sizeof
      powerpc/cpm2: Fix set interrupt type
      powerpc/83xx: Fix TSEC0 workability on MPC8313E-RDB boards
      powerpc/83xx: Fix missing #{address,size}-cells in mpc8313erdb.dts
      powerpc/83xx: Build breakage for CONFIG_PM but no CONFIG_SUSPEND

commit 226b79104f625f3f58a8388b8b32a4b90415bf02
Merge: 29ef011... aeb3987...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 10 11:48:49 2009 -0800

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
      sparc64: Fix probe_kernel_{read,write}().
      sparc64: Kill .fixup section bloat.
      sparc64: Don't hook up pcr_ops on spitfire chips.
      sparc64: Call dump_stack() in die_nmi().

commit 29ef01179d37168a021293ede77afbf091a49af4
Merge: 5a6fe12... 4906f99...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Feb 10 11:48:11 2009 -0800

    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: (23 commits)
      bridge: Fix LRO crash with tun
      IPv6: fix to set device name when new IPv6 over IPv6 tunnel device is created.
      gianfar: Fix boot hangs while bringing up gianfar ethernet
      netfilter: xt_sctp: sctp chunk mapping doesn't work
      netfilter: ctnetlink: fix echo if not subscribed to any multicast group
      netfilter: ctnetlink: allow changing NAT sequence adjustment in creation
      netfilter: nf_conntrack_ipv6: don't track ICMPv6 negotiation message
      netfilter: fix tuple inversion for Node information request
      netxen: fix msi-x interrupt handling
      de2104x: force correct order when writing to rx ring
      tun: Fix unicast filter overflow
      drivers/isdn: introduce missing kfree
      drivers/atm: introduce missing kfree
      sunhme: Don't match PCI devices in SBUS probe.
      9p: fix endian issues [attempt 3]
      net_dma: call dmaengine_get only if NET_DMA enabled
      3c509: Fix resume from hibernation for PnP mode.
      sungem: Soft lockup in sungem on Netra AC200 when switching interface up
      RxRPC: Fix a potential NULL dereference
      r8169: Don't update statistics counters when interface is down
      ...

commit 5a6fe125950676015f5108fb71b2a67441755003
Author: Mel Gorman <mel@csn.ul.ie>
Date:   Tue Feb 10 14:02:27 2009 +0000

    Do not account for the address space used by hugetlbfs using VM_ACCOUNT
    
    When overcommit is disabled, the core VM accounts for pages used by anonymous
    shared, private mappings and special mappings. It keeps track of VMAs that
    should be accounted for with VM_ACCOUNT and VMAs that never had a reserve
    with VM_NORESERVE.
    
    Overcommit for hugetlbfs is much riskier than overcommit for base pages
    due to contiguity requirements. It avoids overcommiting on both shared and
    private mappings using reservation counters that are checked and updated
    during mmap(). This ensures (within limits) that hugepages exist in the
    future when faults occurs or it is too easy to applications to be SIGKILLed.
    
    As hugetlbfs makes its own reservations of a different unit to the base page
    size, VM_ACCOUNT should never be set. Even if the units were correct, we would
    double account for the usage in the core VM and hugetlbfs. VM_NORESERVE may
    be set because an application can request no reserves be made for hugetlbfs
    at the risk of getting killed later.
    
    With commit fc8744adc870a8d4366908221508bb113d8b72ee, VM_NORESERVE and
    VM_ACCOUNT are getting unconditionally set for hugetlbfs-backed mappings. This
    breaks the accounting for both the core VM and hugetlbfs, can trigger an
    OOM storm when hugepage pools are too small lockups and corrupted counters
    otherwise are used. This patch brings hugetlbfs more in line with how the
    core VM treats VM_NORESERVE but prevents VM_ACCOUNT being set.
    
    Signed-off-by: Mel Gorman <mel@csn.ul.ie>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit e3944bfac961cd7fc82f3b3143c55dc375748569
Author: Steven Rostedt <srostedt@redhat.com>
Date:   Tue Feb 10 13:07:13 2009 -0500

    tracing, x86: fix fixup section to return to original code
    
    Impact: fix to prevent a kernel crash on fault
    
    If for some reason the pointer to the parent function on the
    stack takes a fault, the fix up code will not return back to
    the original faulting code. This can lead to unpredictable
    results and perhaps even a kernel panic.
    
    A fault should not happen, but if it does, we should simply
    disable the tracer, warn, and continue running the kernel.
    It should not lead to a kernel crash.
    
    Signed-off-by: Steven Rostedt <srostedt@redhat.com>

commit b52af40923fc91a12e3c7152d833e0c0c6a508f6
Author: Clemens Ladisch <clemens@ladisch.de>
Date:   Tue Feb 10 09:21:07 2009 +0100

    i8327: fix outb() parameter order
    
    In i8237A_resume(), when resetting the DMA controller, the parameters to
    dma_outb() were mixed up.
    
    Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
    [ cleaned up the file a tiny bit. ]
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit f6f35bbe7c6494e66590cf519e21da2dd8d59e01
Author: Roel Kluin <roel.kluin@gmail.com>
Date:   Sun Feb 8 15:22:25 2009 +0100

    [ARM] AACI: timeout will reach -1
    
    With a postfix decrement the timeout will reach -1 rather than 0,
    so the warning will not be issued.
    
    Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

commit e0fc4f97ab6b11594d0b0658ef6cf02bd68f3b4e
Author: Tobias Klauser <tklauser@distanz.ch>
Date:   Mon Feb 9 21:35:39 2009 +0100

    [ARM] Storage class should be before const qualifier
    
    The C99 specification states in section 6.11.5:
    
    The placement of a storage-class specifier other than at the beginning of the
    declaration specifiers in a declaration is an obsolescent feature.
    
    Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

commit 0b2f82872ff855b92e9e8356b90ef429d96d6977
Author: Michael Neuling <mikey@neuling.org>
Date:   Sun Feb 8 14:49:39 2009 +0000

    powerpc: Add missing sparsemem.h include
    
    arch/powerpc/platforms/pseries/hotplug-memory.c uses
    remove_section_mapping() but doesn't include sparsemem.h which defines
    it.  This can cause compilation fails for some configs.
    
    Signed-off-by: Michael Neuling <mikey@neuling.org>
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

commit 5b11abfdb572bf9284e596dd198ac2aaf95b6616
Author: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date:   Sun Feb 8 14:27:21 2009 +0000

    powerpc/pci: mmap anonymous memory when legacy_mem doesn't exist
    
    The new legacy_mem file in sysfs is causing problems with X on machines
    that don't support legacy memory access. The way I initially implemented
    it, we would fail with -ENXIO when trying to mmap it, thus exposing to
    X that we do support the API but there is no legacy memory.
    
    Unfortunately, X poor error handling is causing it to fail to start when
    it gets this error.
    
    This implements a workaround hack that instead maps anonymous memory
    instead (using shmem if VM_SHARED is set, just like /dev/zero does).
    
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

commit d87bf76679bd37593ae4a3133f5da9395a4963ac
Author: Michael Neuling <mikey@neuling.org>
Date:   Sun Feb 8 13:04:14 2009 +0000

    powerpc/cell: Add missing #include for oprofile
    
    arch/powerpc/oprofile/cell/spu_profiler.c is missing a asm/time.h
    include which is required for ppc_proc_freq.  This can cause compile
    failures for some config combinations.
    
    Signed-off-by: Michael Neuling <mikey@neuling.org>
    Acked-by: Arnd Bergmann <arnd@arndb.de>
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

commit f25f9074c24f1451a74942c4bc089bb53e47f462
Author: Steven Rostedt <rostedt@goodmis.org>
Date:   Sat Feb 7 20:22:40 2009 +0000

    powerpc/ftrace: Fix math to calculate offset in TOC
    
    Impact: fix dynamic ftrace with large modules in PPC64
    
    The math to calculate the offset into the TOC that is taken from reading
    the trampoline is incorrect. The bottom half of the offset is a signed
    extended short. The current code was using an OR to create the offset
    when it should have been using an addition.
    
    Signed-off-by: Steven Rostedt <srostedt@redhat.com>
    Acked-by: Geoff Levand <geoffrey.levand@am.sony.com>
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

commit eef336189b2b5ae68bfbef0df24176a4a152d981
Author: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
Date:   Fri Feb 6 02:02:00 2009 +0000

    powerpc: Don't emulate mr. instructions
    
    Currently emulate_step() emulates mr. instructions without updating cr0
    and this can be disastrous. Don't emulate mr.
    
    This bug has been around for a while, but I am not sure if its a worthy
    -stable candidate. I'll leave it to Ben do decide.
    
    Signed-off-by: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

commit 6c24b17453c8dc444a746e45b8a404498fc9fcf7
Author: Kumar Gala <galak@kernel.crashing.org>
Date:   Mon Feb 9 21:08:07 2009 -0600

    powerpc/fsl-booke: Fix mapping functions to use phys_addr_t
    
    Fixed v_mapped_by_tlbcam() and p_mapped_by_tlbcam() to use phys_addr_t
    instead of unsigned long.  In 36-bit physical mode we really need these
    functions to deal with phys_addr_t when trying to match a physical
    address or when returning one.
    
    Signed-off-by: Kumar Gala <galak@kernel.crashing.org>

commit acd895795d35d7c6405f20301a846d16998795ec
Author: Hugh Dickins <hugh@veritas.com>
Date:   Mon Feb 9 19:20:50 2009 +0000

    profiling: fix broken profiling regression
    
    Impact: fix broken /proc/profile on UP machines
    
    Commit c309b917cab55799ea489d7b5f1b77025d9f8462 "cpumask: convert
    kernel/profile.c" broke profiling.  prof_cpu_mask was previously
    initialized to CPU_MASK_ALL, but left uninitialized in that commit.
    We need to copy cpu_possible_mask (cpu_online_mask is not enough).
    
    Signed-off-by: Hugh Dickins <hugh@veritas.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit d315760ffa261c15ff92699ac6f514112543d7ca
Author: Tejun Heo <tj@kernel.org>
Date:   Mon Feb 9 22:17:39 2009 +0900

    x86: fix math_emu register frame access
    
    do_device_not_available() is the handler for #NM and it declares that
    it takes a unsigned long and calls math_emu(), which takes a long
    argument and surprisingly expects the stack frame starting at the zero
    argument would match struct math_emu_info, which isn't true regardless
    of configuration in the current code.
    
    This patch makes do_device_not_available() take struct pt_regs like
    other exception handlers and initialize struct math_emu_info with
    pointer to it and pass pointer to the math_emu_info to math_emulate()
    like normal C functions do.  This way, unless gcc makes a copy of
    struct pt_regs in do_device_not_available(), the register frame is
    correctly accessed regardless of kernel configuration or compiler
    used.
    
    This doesn't fix all math_emu problems but it at least gets it
    somewhat working.
    
    Signed-off-by: Tejun Heo <tj@kernel.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 4906f9985e310fc01f956256b0d58ac28b0dcb19
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date:   Mon Feb 9 15:07:18 2009 -0800

    bridge: Fix LRO crash with tun
    
    > Kernel BUG at drivers/net/tun.c:444
    > invalid opcode: 0000 [1] SMP
    > last sysfs file: /class/net/lo/ifindex
    > CPU 0
    > Modules linked in: tun ipt_MASQUERADE iptable_nat ip_nat xt_state ip_conntrack
    > nfnetlink ipt_REJECT xt_tcpudp iptable_filter d
    > Pid: 6912, comm: qemu-kvm Tainted: G      2.6.18-128.el5 #1
    > RIP: 0010:[<ffffffff886f57b0>]  [<ffffffff886f57b0>]
    > :tun:tun_chr_readv+0x2b1/0x3a6
    > RSP: 0018:ffff8102202c5e48  EFLAGS: 00010246
    > RAX: 0000000000000000 RBX: ffff8102202c5e98 RCX: 0000000004010000
    > RDX: ffff810227063680 RSI: ffff8102202c5e9e RDI: ffff8102202c5e92
    > RBP: 0000000000010ff6 R08: 0000000000000000 R09: 0000000000000001
    > R10: ffff8102202c5e94 R11: 0000000000000202 R12: ffff8102275357c0
    > R13: ffff81022755e500 R14: 0000000000000000 R15: ffff8102202c5ef8
    > FS:  00002ae4398db980(0000) GS:ffffffff803ac000(0000) knlGS:0000000000000000
    > CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
    > CR2: 00002ae4ab514000 CR3: 0000000221344000 CR4: 00000000000026e0
    > Process qemu-kvm (pid: 6912, threadinfo ffff8102202c4000, task
    > ffff81022e58d820)
    > Stack:  00000000498735cb ffff810229d1a3c0 0000000000000000 ffff81022e58d820
    >  ffffffff8008a461 ffff81022755e528 ffff81022755e528 ffffffff8009f925
    >  000005ea05ea0000 ffff8102209d0000 00001051143e1600 ffffffff8003c00e
    > Call Trace:
    >  [<ffffffff8008a461>] default_wake_function+0x0/0xe
    >  [<ffffffff8009f925>] enqueue_hrtimer+0x55/0x70
    >  [<ffffffff8003c00e>] hrtimer_start+0xbc/0xce
    >  [<ffffffff886f58bf>] :tun:tun_chr_read+0x1a/0x1f
    >  [<ffffffff8000b3f3>] vfs_read+0xcb/0x171
    >  [<ffffffff800117d4>] sys_read+0x45/0x6e
    >  [<ffffffff8005d116>] system_call+0x7e/0x83
    >
    >
    > Code: 0f 0b 68 40 62 6f 88 c2 bc 01 f6 42 0a 08 74 0c 80 4c 24 41
    > RIP  [<ffffffff886f57b0>] :tun:tun_chr_readv+0x2b1/0x3a6
    >  RSP <ffff8102202c5e48>
    >  <0>Kernel panic - not syncing: Fatal exception
    
    This crashed when an LRO packet generated by bnx2x reached a
    tun device through the bridge.  We're supposed to drop it at
    the bridge.  However, because the check was placed in br_forward
    instead of __br_forward, it's only effective if we are sending
    the packet through a single port.
    
    This patch fixes it by moving the check into __br_forward.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 20461c1740cac5e02733221c9f653098a703f55a
Author: Noriaki TAKAMIYA <takamiya@po.ntts.co.jp>
Date:   Mon Feb 9 15:01:19 2009 -0800

    IPv6: fix to set device name when new IPv6 over IPv6 tunnel device is created.
    
    When the user creates IPv6 over IPv6 tunnel, the device name created
    by the kernel isn't set to t->parm.name, which is referred as the
    result of ioctl().
    
    Signed-off-by: Noriaki TAKAMIYA <takamiya@po.ntts.co.jp>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 8707bdd48ab705a459ac1b12014075a139d1d4f9
Author: Jarek Poplawski <jarkao2@gmail.com>
Date:   Mon Feb 9 14:59:30 2009 -0800

    gianfar: Fix boot hangs while bringing up gianfar ethernet
    
    Ira Snyder found that commit 8c7396aebb68994c0519e438eecdf4d5fa9c7844
    "gianfar: Merge Tx and Rx interrupt for scheduling clean up ring" can
    cause hangs. It's because there was removed clearing of interrupts in
    gfar_schedule_cleanup() (which is called by an interrupt handler) in
    case when netif scheduling has been disabled. This patch brings back
    this action and a comment.
    
    Reported-by: Ira Snyder <iws@ovro.caltech.edu>
    Reported-by: Peter Korsgaard <jacmet@sunsite.dk>
    Bisected-by: Ira Snyder <iws@ovro.caltech.edu>
    Tested-by: Peter Korsgaard <jacmet@sunsite.dk>
    Tested-by: Ira Snyder <iws@ovro.caltech.edu>
    Signed-off-by: Jarek Poplawski <jarkao2@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit d4e2675a61890a84849a24affedf80d5cae8b199
Author: Qu Haoran <haoran.qu@6wind.com>
Date:   Mon Feb 9 14:34:56 2009 -0800

    netfilter: xt_sctp: sctp chunk mapping doesn't work
    
    When user tries to map all chunks given in argument, kernel
    works on a copy of the chunkmap, but at the end it doesn't
    check the copy, but the orginal one.
    
    Signed-off-by: Qu Haoran <haoran.qu@6wind.com>
    Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 1f9da256163e3ff91a12d0b861091f0e525139df
Author: Pablo Neira Ayuso <pablo@netfilter.org>
Date:   Mon Feb 9 14:34:26 2009 -0800

    netfilter: ctnetlink: fix echo if not subscribed to any multicast group
    
    This patch fixes echoing if the socket that has sent the request to
    create/update/delete an entry is not subscribed to any multicast
    group. With the current code, ctnetlink would not send the echo
    message via unicast as nfnetlink_send() would be skip.
    
    Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit c969aa7d2cd5621ad4129dae6b6551af422944c6
Author: Pablo Neira Ayuso <pablo@netfilter.org>
Date:   Mon Feb 9 14:33:57 2009 -0800

    netfilter: ctnetlink: allow changing NAT sequence adjustment in creation
    
    This patch fixes an inconsistency in the current ctnetlink code
    since NAT sequence adjustment bit can only be updated but not set
    in the conntrack entry creation.
    
    This patch is used by conntrackd to successfully recover newly
    created entries that represent connections with helpers and NAT
    payload mangling.
    
    Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 3f9007135c1dc896db9a9e35920aafc65b157230
Author: Eric Leblond <eric@inl.fr>
Date:   Mon Feb 9 14:33:20 2009 -0800

    netfilter: nf_conntrack_ipv6: don't track ICMPv6 negotiation message
    
    This patch removes connection tracking handling for ICMPv6 messages
    related to Stateless Address Autoconfiguration, MLD, and MLDv2. They
    can not be tracked because they are massively using multicast (on
    pre-defined address). But they are not invalid and should not be
    detected as such.
    
    Signed-off-by: Eric Leblond <eric@inl.fr>
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit a51f42f3c940e5582c40454ece066d033bc7e24f
Author: Eric Leblond <eric@inl.fr>
Date:   Mon Feb 9 14:33:03 2009 -0800

    netfilter: fix tuple inversion for Node information request
    
    The patch fixes a typo in the inverse mapping of Node Information
    request. Following draft-ietf-ipngwg-icmp-name-lookups-09, "Querier"
    sends a type 139 (ICMPV6_NI_QUERY) packet to "Responder" which answer
    with a type 140 (ICMPV6_NI_REPLY) packet.
    
    Signed-off-by: Eric Leblond <eric@inl.fr>
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 4c098bcd55fad34dcf224bf8343db6a9ac58fc68
Merge: d006b2b... 284b066...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Mon Feb 9 14:00:16 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: don't use spin_is_contended

commit d006b2b620ebf87a1d5592fbd7ae75d4a6da8423
Merge: 7d16766... 049a6ac...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Mon Feb 9 13:59:51 2009 -0800

    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: Storage: Update unusual_devs entry for Datafab KECF-USB
      USB: Correct Makefile to make isp1760 buildable
      USB: option: New mobile broadband modems to be supported
      USB: two more usb ids for ti_usb_3410_5052
      USB: ftdi_sio: unlock_kernel() on error in set_serial_info()
      USB: usb-storage: add Pentax to the bad-vendor list
      USB: ftdi_sio: add support for the NDI Polaris system
      USB: usb-serial: fix the aircable_init failure path
      USB: usb-storage: remove WARN from last-sector hacks
      Revert USB: option: add Pantech cards
      USB: cdc-acm.c: remove duplicate lines for MTK gps support
      USB: fsl_qe_udc: Fix stalled TX requests bug
      USB: fsl_qe_udc: Fix muram corruption by disabled endpoints
      USB: fsl_qe_udc: Fix disconnects reporting during bus reset
      USB: fsl_qe_udc: Fix QE USB controller initialization
      USB: fsl_qe_udc: Fix recursive locking bug in ch9getstatus()
      USB: fsl_qe_udc: Fix oops on QE UDC probe failure

commit 7d1676629e9262f441540ecb0cde57e5cafc632f
Merge: 6707fbb... 6136ac8...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Mon Feb 9 13:58:40 2009 -0800

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6:
      Staging: panel: fix lcd panel driver build failure
      Staging: android: fix up units in timed_gpio
      Staging: android: ram_console: Disable ECC when early init is enabled and validate buffer size
      Staging: at76_usb: Add support for OQO Model 01+
      Staging: at76_usb: fix bugs introduced by "Staging: at76_usb: cleanup dma on stack issues"
      Revert Staging: at76_usb: update drivers/staging/at76_usb w/ mac80211 port

commit 6707fbb56c8fd3121e334291d170934bcaca2e7f
Merge: 896abeb... 732553e...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Mon Feb 9 13:58:22 2009 -0800

    Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq
    
    * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq:
      [CPUFREQ] powernow-k8: Get transition latency from ACPI _PSS table
      [CPUFREQ] Make ignore_nice_load setting of ondemand work as expected.

commit 284b066af41579f62649048fdec5c5e7091703e6
Author: Chris Mason <chris.mason@oracle.com>
Date:   Mon Feb 9 16:22:03 2009 -0500

    Btrfs: don't use spin_is_contended
    
    Btrfs was using spin_is_contended to see if it should drop locks before
    doing extent allocations during btrfs_search_slot.  The idea was to avoid
    expensive searches in the tree unless the lock was actually contended.
    
    But, spin_is_contended is specific to the ticket spinlocks on x86, so this
    is causing compile errors everywhere else.
    
    In practice, the contention could easily appear some time after we started
    doing the extent allocation, and it makes more sense to always drop the lock
    instead.
    
    Signed-off-by: Chris Mason <chris.mason@oracle.com>

commit 6136ac86b719716694884a84cd9d403207cc52b9
Author: Sachin P. Sant <sachinp@in.ibm.com>
Date:   Tue Feb 3 21:10:58 2009 +0530

    Staging: panel: fix lcd panel driver build failure
    
    * Fix build break for lcd panel driver.
    
    Signed-off-by : Sachin Sant <sachinp@in.ibm.com>
    Cc: Willy Tarreau <w@1wt.eu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit d88dfb8dc4bfb66066e7c68727c219faaa541206
Author: Greg Kroah-Hartman <gregkh@suse.de>
Date:   Wed Feb 4 15:05:05 2009 -0800

    Staging: android: fix up units in timed_gpio
    
    The last build fix I did messed up the units of the sysfs file.
    
    This puts them back to be milliseconds, like they originally were.
    
    
    Thanks to Juha Motorsportcom for pointing this out.
    
    Reported-by: Juha Motorsportcom <juha_motorsportcom@luukku.com>
    Cc: Mike Lockwood <lockwood@android.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 5701c0519b7a357a602fda5c96f26197ecfc4c85
Author: Arve Hjønnevåg <arve@android.com>
Date:   Fri Jan 30 20:21:09 2009 -0800

    Staging: android: ram_console: Disable ECC when early init is enabled and validate buffer size
    
    Signed-off-by: Arve Hjønnevåg <arve@android.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 07f269862a2981f1512de5393e2d0ce5b2ee8305
Author: Jamie Lentin <jm@lentin.co.uk>
Date:   Wed Feb 4 13:38:44 2009 +0000

    Staging: at76_usb: Add support for OQO Model 01+
    
    Add USB device ID for OQO 01+'s internal wireless LAN
    
    An OQO employee mentions the chip's true identity here:-
       ftp://ftp.oqo.com/unsupported/linux/OQOLinux.html
    
    Signed-off-by: Jamie Lentin <jm@lentin.co.uk>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit ea8f9fe634da9042c01ca2f4e459a7b187056021
Author: Jason Andryuk <jandryuk@gmail.com>
Date:   Fri Jan 30 09:05:03 2009 -0500

    Staging: at76_usb: fix bugs introduced by "Staging: at76_usb: cleanup dma on stack issues"
    
    Tracking down the firmware loading problem led to this commit.
    
    $ git bisect bad
    0d1d1424330cc1934f2b2742f0cfa2c31e6a250b is first bad commit
    commit 0d1d1424330cc1934f2b2742f0cfa2c31e6a250b
    Author: Oliver Neukum <oliver@neukum.org>
    Date:   Thu Dec 18 13:16:40 2008 +0100
    
        Staging: at76_usb: cleanup dma on stack issues
    
        - no DMA on stack
        - cleanup unclear endianness issue
    
        Signed-off-by: Oliver Neukum <oneukum@suse.de>
        Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    
    :040000 040000 c4fee9ea0fef25926229d810d19dc2f89cca9401
    8b165a35d16280d2413b2700a6080ef290ca1009 M	drivers
    
    The "no DMA on stack" conversion was incomplete with respect to
    updating the arguments passed to usb_control_msg.  The value 40 is
    hardcoded as it was prior to conversion.
    
    The driver can now load firmware, but is not fully functional.
    
    Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
    Cc: John W. Linville <linville@tuxdriver.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 89cb7e7fd6c0917bb9236ea48bf538d4668ed009
Author: Greg Kroah-Hartman <gregkh@suse.de>
Date:   Tue Feb 3 16:28:48 2009 -0800

    Revert Staging: at76_usb: update drivers/staging/at76_usb w/ mac80211 port
    
    Reverts 02227c28391b5059a7710d6039c52912b0ee2c1d
    (Had to be done by hand due to other patches that had come after this.)
    
    Turns out that we don't want the mac80211 port of this driver just yet, as
    there is a different driver working on adding this support.
    
    So keep things old and different for now.
    
    This is being reverted at the request of the linux-wireless developers.
    
    Cc: Kalle Valo <kalle.valo@iki.fi>
    Cc: John W. Linville <linville@tuxdriver.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 049a6acb503ca7acc11d563db79a2d54f054e0d0
Author: Nick Holloway <Nick.Holloway@pyrites.org.uk>
Date:   Sun Jan 25 16:58:43 2009 +0000

    USB: Storage: Update unusual_devs entry for Datafab KECF-USB
    
    This device suffers from the off-by-one error when reporting the capacity,
    so add US_FL_FIX_CAPACITY to the existing entry.
    
    Signed-off-by: Nick Holloway <Nick.Holloway@pyrites.org.uk>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 26e1287594864169577327fef233befc9739be3b
Author: Ivan Kuten <ivan.kuten@promwad.com>
Date:   Fri Feb 6 17:42:34 2009 +0800

    USB: Correct Makefile to make isp1760 buildable
    
    Signed-off-by: Ivan Kuten <ivan.kuten@promwad.com>
    Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
    Signed-off-by: Bryan Wu <cooloney@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit c200b9c9e8ec93cdd262cfa1699ad92e883d4876
Author: Dirk De Schepper <ddeschepper@nvtl.com>
Date:   Fri Feb 6 20:48:34 2009 +0000

    USB: option: New mobile broadband modems to be supported
    
    - New Novatel and Dell mobile broadband modem products added
     - Dell pid variables used in stead of numerical PIDs for known
       products
    
    Signed-off-by: Dirk De Schepper <ddeschepper@nvtl.com>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Matthias Urlichs <matthias@urlichs.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 97dcf0416e390fc5c997d4ea60e6f975c7b7a1c3
Author: Oliver Neukum <oliver@neukum.org>
Date:   Wed Feb 4 16:38:33 2009 +0100

    USB: two more usb ids for ti_usb_3410_5052
    
    This patch adds device IDs and balances the counts to make the
    hot ID additioning mechanism work.
    
    Signed-off-by: Oliver Neukum <oneukum@suse.de>
    Cc: stable <stable@kernel.org>
    Cc: Chris Adams <cmadams@hiwaay.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 64905b48098761e779bb848e69365c018894ea81
Author: Dan Carpenter <error27@gmail.com>
Date:   Tue Feb 3 11:11:38 2009 +0300

    USB: ftdi_sio: unlock_kernel() on error in set_serial_info()
    
    There was one error path where unlock_kernel() wasn't called.
    
    This was found with a code checker (http://repo.or.cz/w/smatch.git/)
    Compile tested only, sorry.
    
    Signed-off-by: Dan Carpenter <error27@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 506e9469833c66ed6bb9acd902e208f7301b6adb
Author: Alan Stern <stern@rowland.harvard.edu>
Date:   Wed Feb 4 15:48:03 2009 -0500

    USB: usb-storage: add Pentax to the bad-vendor list
    
    This patch (as1202) adds Pentax to usb-storage's list of bad vendors
    whose devices always need the CAPACITY_HEURISTICS flag.  This is in
    addition to the existing entries: Nokia, Nikon, and Motorola.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Tested-by: Virgo Pärna <virgo.parna@mail.ee>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit e38c287447e5a3ff905a59dd81269c14cd12ffa1
Author: Stephane Clerambault <stephane.clerambault@free.fr>
Date:   Mon Feb 2 13:39:12 2009 -0800

    USB: ftdi_sio: add support for the NDI Polaris system
    
    Add support for the NDI Polaris system *http://www.ndigital.com/).
    
    Cc: Ian Abbott <abbotti@mev.co.uk>
    Cc: Oliver Neukum <oneukum@suse.de>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 78c8fb3717cdff35ad118e17ac7495d0cf21a61f
Author: Dave Young <hidave.darkstar@gmail.com>
Date:   Sun Feb 1 18:54:54 2009 +0800

    USB: usb-serial: fix the aircable_init failure path
    
    The failure path of aircable_init is wrong, fix the order of (goto) labels.
    
    Signed-off-by: Dave Young <hidave.darkstar@gmail.com>
    Acked-by: Naranjo Manuel Francisco <naranjo.manuel@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 0d020aae0a154cffce680a7775c74788fa0bea92
Author: Alan Stern <stern@rowland.harvard.edu>
Date:   Mon Feb 2 09:51:01 2009 -0500

    USB: usb-storage: remove WARN from last-sector hacks
    
    This patch (as1201) removes the WARN() from the last-sector hacks in
    usb-storage, thereby making the code match the version now in
    .27-stable and .28-stable.  The WARN() isn't needed, since there is no
    longer any intention of assuming that all storage devices have an even
    number of sectors, and it annoys users for no good reason.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 6b40c0057a7935bcf63a38a924094c7e61d4731f
Author: Greg Kroah-Hartman <gregkh@suse.de>
Date:   Tue Feb 3 16:02:21 2009 -0800

    Revert USB: option: add Pantech cards
    
    Revert 8b6346ec899713a90890c9e832f7eff91ea73504 as these devices really
    work just fine with the cdc-acm driver, as they follow the spec
    properly.
    
    Thanks to Chuck Ebbert for pointing out the problem here.
    
    Cc: Chuck Ebbert <cebbert@redhat.com>
    Cc: Dan Williams <dcbw@redhat.com>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 2057ac86da09955c9f8671e36d4f6bd1e7a5d7d2
Author: James Treacy <treacy@debian.org>
Date:   Thu Jan 29 20:17:17 2009 -0500

    USB: cdc-acm.c: remove duplicate lines for MTK gps support
    
    The same patch to add support for MTK gps loggers was submitted by two
    different people and applied twice. Remove the redundant lines.
    
    Signed-off-by: James Treacy <treacy@debian.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit af3ddbd76304f9f602c970f9b09a0c9d8cf8336c
Author: Anton Vorontsov <avorontsov@ru.mvista.com>
Date:   Thu Dec 25 17:15:14 2008 +0300

    USB: fsl_qe_udc: Fix stalled TX requests bug
    
    While disabling an endpoint the driver nuking any pending requests,
    thus completing them with -ESHUTDOWN status. But the driver doesn't
    clear the tx_req, which means that a next TX request (after
    ep_enable), might get stalled, since the driver won't queue the new
    reqests.
    
    This patch fixes a bug I'm observing with ethernet gadget while
    playing with ifconfig usb0 up/down (the up/down sequence disables
    and enables `in' and `out' endpoints).
    
    Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 82341b3690fce8f70998e3cfb79fbffff0eb7e6b
Author: Anton Vorontsov <avorontsov@ru.mvista.com>
Date:   Thu Dec 25 17:15:11 2008 +0300

    USB: fsl_qe_udc: Fix muram corruption by disabled endpoints
    
    Before freeing an endpoint's muram memory, we should stop all activity
    of the endpoint, otherwise the QE UDC controller might do nasty things
    with the muram memory that isn't belong to that endpoint anymore.
    
    The qe_ep_reset() effectively flushes the hardware fifos, finishes all
    late transaction and thus prevents the corruption.
    
    Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit ef84e4055f3561495c4c0e0dfb0b9f4a6e20479d
Author: Anton Vorontsov <avorontsov@ru.mvista.com>
Date:   Thu Dec 25 17:15:09 2008 +0300

    USB: fsl_qe_udc: Fix disconnects reporting during bus reset
    
    Freescale QE UDC controllers can't report the "port change" states,
    so the only way to handle disconnects is to process bus reset
    interrupts. The bus reset can take some time, that is, few irqs.
    Gadgets may print the disconnection events, and this causes few
    repetitive messages in the kernel log.
    
    This patch fixes the issue by using the usb_state machine, if the
    usb controller has been already reset, just quit the reset irq
    early.
    
    Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 2247818a329687f30d1e5c3a62efc33d07c47522
Author: Anton Vorontsov <avorontsov@ru.mvista.com>
Date:   Thu Dec 25 17:15:07 2008 +0300

    USB: fsl_qe_udc: Fix QE USB controller initialization
    
    qe_udc_reg_init() leaves the USB controller enabled before muram memory
    initialized. Sometimes the uninitialized muram memory confuses the
    controller, and it start sending the busy interrupts.
    
    Fix this by disabling the controller, it will be enabled later by
    the gadget driver, at bind time.
    
    Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit a30551db66afa1b53a4fa7ceadddb7122bdcf491
Author: Anton Vorontsov <avorontsov@ru.mvista.com>
Date:   Thu Dec 25 17:15:05 2008 +0300

    USB: fsl_qe_udc: Fix recursive locking bug in ch9getstatus()
    
    The call chain is this:
    
    qe_udc_irq() <- grabs the udc->lock spinlock
    rx_irq()
    qe_ep0_rx()
    ep0_setup_handle()
    setup_received_handle()
    ch9getstatus()
    qe_ep_queue() <- tries to grab the udc->lock again
    
    It seems unsafe to temporarily drop the lock in the ch9getstatus(),
    so to fix that bug the lock-less __qe_ep_queue() function
    implemented and used by the ch9getstatus().
    
    Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 94f341db3dd080851f918da37e84659ef760da26
Author: Anton Vorontsov <avorontsov@ru.mvista.com>
Date:   Thu Dec 25 17:15:02 2008 +0300

    USB: fsl_qe_udc: Fix oops on QE UDC probe failure
    
    In case of probing errors the driver kfrees the udc_controller, but it
    doesn't set the pointer to NULL.
    
    When usb_gadget_register_driver is called, it checks for udc_controller
    != NULL, the check passes and the driver accesses nonexistent memory.
    Fix this by setting udc_controller to NULL in case of errors.
    
    While at it, also implement irq_of_parse_and_map()'s failure and cleanup
    cases.
    
    Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
    Acked-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

commit 896abeb743579fc8be0d16d15d6768a158a3a109
Merge: f06da26... 9d9b87c...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Mon Feb 9 10:30:19 2009 -0800

    Merge branch 'for-2.6.29' of git://linux-nfs.org/~bfields/linux
    
    * 'for-2.6.29' of git://linux-nfs.org/~bfields/linux:
      lockd: fix regression in lockd's handling of blocked locks

commit 9d9b87c1218be78ddecbc85ec3bb91c79c1d56ab
Author: J. Bruce Fields <bfields@citi.umich.edu>
Date:   Wed Feb 4 17:35:38 2009 -0500

    lockd: fix regression in lockd's handling of blocked locks
    
    If a client requests a blocking lock, is denied, then requests it again,
    then here in nlmsvc_lock() we will call vfs_lock_file() without FL_SLEEP
    set, because we've already queued a block and don't need the locks code
    to do it again.
    
    But that means vfs_lock_file() will return -EAGAIN instead of
    FILE_LOCK_DENIED.  So we still need to translate that -EAGAIN return
    into a nlm_lck_blocked error in this case, and put ourselves back on
    lockd's block list.
    
    The bug was introduced by bde74e4bc64415b1 "locks: add special return
    value for asynchronous locks".
    
    Thanks to Frank van Maarseveen for the report; his original test
    case was essentially
    
    	for i in `seq 30`; do flock /nfsmount/foo sleep 10 & done
    
    Tested-by: Frank van Maarseveen <frankvm@frankvm.com>
    Reported-by: Frank van Maarseveen <frankvm@frankvm.com>
    Cc: Miklos Szeredi <mszeredi@suse.cz>
    Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>

commit f06da264cfb0f9444d41ca247213e419f90aa72a
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Mon Feb 9 08:57:29 2009 -0800

    i915: Fix more size_t format string warnings
    
    The DRI people seem to have a hard time getting these right (see also
    commit aeb565dfc3ac4c8b47c5049085b4c7bfb2c7d5d7).
    
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit ff7473300d429118aa97368ba5a16bc63aecfc75
Merge: d7c41b6... d2f5935...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Mon Feb 9 08:52:28 2009 -0800

    Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6
    
    * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
      drm/i915: select framebuffer support automatically
      drm/i915: add get_vblank_counter function for GM45
      drm/i915: capture last_vblank count at IRQ uninstall time too
      drm/i915: Unlock mutex on i915_gem_fault() error path
      drm/i915: Quiet the message on get/setparam ioctl with an unknown value.
      drm/i915: skip LVDS initialization on Apple Mac Mini
      drm/i915: sync SDVO code with stable userland modesetting driver
      drm/i915: Unref the object after failing to set tiling mode.
      drm/i915: add fence register management to execbuf
      drm/i915: Return error from i915_gem_object_get_fence_reg() when failing.
      drm/i915: Set up an MTRR covering the GTT at driver load.
      drm/i915: Skip SDVO/HDMI init when the chipset tells us it's not present.
      drm/i915: Suppress GEM teardown on X Server exit in KMS mode.
      drm/radeon: fix ioremap conflict with AGP mappings
      i915: fix unneeded locking in i915 LVDS get modes code.

commit d7c41b616518457e3bfece12e3f59f15d7450eeb
Merge: a8e807f... 4f3e797...
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Mon Feb 9 08:52:02 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: scatterwalk - Avoid flush_dcache_page on slab pages
      crypto: shash - Fix tfm destruction
      crypto: api - Fix zeroing on free
      crypto: shash - Fix module refcount
      crypto: api - Fix algorithm test race that broke aead initialisation

commit a8e807f7607ab633de7be4e2f4c350923cc2cb63
Author: David Howells <dhowells@redhat.com>
Date:   Mon Feb 9 16:47:36 2009 +0000

    FRV: in_interrupt() requires #inclusion of linux/hardirq.h not asm/hardirq.h now
    
    in_interrupt() requires #inclusion of linux/hardirq.h not asm/hardirq.h now.
    
    Signed-off-by: David Howells <dhowells@redhat.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit a5ef7ca0e2636bad0ccd07b996d775348ae2b65e
Author: Kyle McMartin <kyle@redhat.com>
Date:   Sun Feb 8 17:39:58 2009 -0500

    x86: spinlocks: define dummy __raw_spin_is_contended
    
    Architectures other than mips and x86 are not using ticket spinlocks.
    Therefore, the contention on the lock is meaningless, since there is
    nobody known to be waiting on it (arguably /fairly/ unfair locks).
    
    Dummy it out to return 0 on other architectures.
    
    Signed-off-by: Kyle McMartin <kyle@redhat.com>
    Acked-by: Ralf Baechle <ralf@linux-mips.org>
    Acked-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit ae6af41f5a4841f06eb92bc86ad020ad44ae2a30
Author: Tejun Heo <tj@kernel.org>
Date:   Mon Feb 9 22:17:39 2009 +0900

    x86: math_emu info cleanup
    
    Impact: cleanup
    
    * Come on, struct info?  s/struct info/struct math_emu_info/
    
    * Use struct pt_regs and kernel_vm86_regs instead of defining its own
      register frame structure.
    
    Signed-off-by: Tejun Heo <tj@kernel.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 914c3d630b29b07d04908eab1b246812dadd5bd6
Author: Tejun Heo <tj@kernel.org>
Date:   Mon Feb 9 22:17:39 2009 +0900

    x86: include correct %gs in a.out core dump
    
    Impact: dump the correct %gs into a.out core dump
    
    aout_dump_thread() read %gs but didn't include it in core dump.  Fix
    it.
    
    Signed-off-by: Tejun Heo <tj@kernel.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 55a8ba4b7f76bebd7e8ce3f74c04b140627a1bad
Author: Alok Kataria <akataria@vmware.com>
Date:   Fri Feb 6 10:29:35 2009 -0800

    x86, vmi: put a missing paravirt_release_pmd in pgd_dtor
    
    Commit 6194ba6ff6ccf8d5c54c857600843c67aa82c407 ("x86: don't special-case
    pmd allocations as much") made changes to the way we handle pmd allocations,
    and while doing that it dropped a call to  paravirt_release_pd on the
    pgd page from the pgd_dtor code path.
    
    As a result of this missing release, the hypervisor is now unaware of the
    pgd page being freed, and as a result it ends up tracking this page as a
    page table page.
    
    After this the guest may start using the same page for other purposes, and
    depending on what use the page is put to, it may result in various performance
    and/or functional issues ( hangs, reboots).
    
    Since this release is only required for VMI, I now release the pgd page from
    the (vmi)_pgd_free hook.
    
    Signed-off-by: Alok N Kataria <akataria@vmware.com>
    Acked-by: Jeremy Fitzhardinge <jeremy@goop.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Cc: <stable@kernel.org>

commit 3f4a739c6accd651a11fcf3c7a20ec8147c42660
Author: Yinghai Lu <yinghai@kernel.org>
Date:   Sun Feb 8 16:18:03 2009 -0800

    x86: find nr_irqs_gsi with mp_ioapic_routing
    
    Impact: find right nr_irqs_gsi on some systems.
    
    One test-system has gap between gsi's:
    
    [    0.000000] ACPI: IOAPIC (id[0x04] address[0xfec00000] gsi_base[0])
    [    0.000000] IOAPIC[0]: apic_id 4, version 0, address 0xfec00000, GSI 0-23
    [    0.000000] ACPI: IOAPIC (id[0x05] address[0xfeafd000] gsi_base[48])
    [    0.000000] IOAPIC[1]: apic_id 5, version 0, address 0xfeafd000, GSI 48-54
    [    0.000000] ACPI: IOAPIC (id[0x06] address[0xfeafc000] gsi_base[56])
    [    0.000000] IOAPIC[2]: apic_id 6, version 0, address 0xfeafc000, GSI 56-62
    ...
    [    0.000000] nr_irqs_gsi: 38
    
    So nr_irqs_gsi is not right. some irq for MSI will overwrite with io_apic.
    
    need to get that with acpi_probe_gsi when acpi io_apic is used
    
    Signed-off-by: Yinghai Lu <yinghai@kernel.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit e736ad548db152776de61d7a26805cfae77ce5ce
Author: Pallipadi, Venkatesh <venkatesh.pallipadi@intel.com>
Date:   Fri Feb 6 16:52:05 2009 -0800

    x86: add clflush before monitor for Intel 7400 series
    
    For Intel 7400 series CPUs, the recommendation is to use a clflush on the
    monitored address just before monitor and mwait pair [1].
    
    This clflush makes sure that there are no false wakeups from mwait when the
    monitored address was recently written to.
    
    [1] "MONITOR/MWAIT Recommendations for Intel Xeon Processor 7400 series"
        section in specification update document of 7400 series
        http://download.intel.com/design/xeon/specupdt/32033601.pdf
    
    Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 286ce0ac1c524849026f7472b3921b9acf557510
Merge: d5b5623... 26a5522...
Author: Russell King <rmk@dyn-67.arm.linux.org.uk>
Date:   Mon Feb 9 09:43:47 2009 +0000

    Merge branch 'fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6

commit aeb398768345c74a9e4c01aa3ebf839e858312ec
Author: David S. Miller <davem@davemloft.net>
Date:   Sun Feb 8 22:32:31 2009 -0800

    sparc64: Fix probe_kernel_{read,write}().
    
    This is based upon a report from Chris Torek and his initial patch.
    From Chris's report:
    
    --------------------
    This came up in testing kgdb, using the built-in tests -- turn
    on CONFIG_KGDB_TESTS, then
    
        echo V1 > /sys/module/kgdbts/parameters/kgdbts
    
    -- but it would affect using kgdb if you were debugging and looking
    at bad pointers.
    --------------------
    
    When we get a copy_{from,to}_user() request and the %asi is set to
    something other than ASI_AIUS (which is userspace) then we branch off
    to a routine called memcpy_user_stub().  It just does a straight
    memcpy since we are copying from kernel to kernel in this case.
    
    The logic was that since source and destination are both kernel
    pointers we don't need to have exception checks.
    
    But for what probe_kernel_{read,write}() is trying to do, we have to
    have the checks, otherwise things like kgdb bad kernel pointer
    accesses don't do the right thing.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 40bdac7dbc161639a498697f34fbd1ee800e51f4
Author: David S. Miller <davem@davemloft.net>
Date:   Sun Feb 8 22:00:55 2009 -0800

    sparc64: Kill .fixup section bloat.
    
    This is an implementation of a suggestion made by Chris Torek:
    --------------------
    Something else I noticed in passing: the EX and EX_LD/EX_ST macros
    scattered throughout the various .S files make a fair bit of .fixup
    code, all of which does the same thing.  At the cost of one symbol
    in copy_in_user.S, you could just have one common two-instruction
    retl-and-mov-1 fixup that they all share.
    --------------------
    
    The following is with a defconfig build:
    
       text	   data	    bss	    dec	    hex	filename
    3972767	 344024	 584449	4901240	 4ac978	vmlinux.orig
    3968887	 344024	 584449	4897360	 4aba50	vmlinux
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 4f3e797ad07d52d34983354a77b365dfcd48c1b4
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date:   Mon Feb 9 14:22:14 2009 +1100

    crypto: scatterwalk - Avoid flush_dcache_page on slab pages
    
    It's illegal to call flush_dcache_page on slab pages on a number
    of architectures.  So this patch avoids doing so if PageSlab is
    true.
    
    In future we can move the flush_dcache_page call to those page
    cache users that actually need it.
    
    Reported-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

commit b3df68f8f5a29888ae693fdb84ebabbc28ed9400
Author: Dhananjay Phadke <dhananjay@netxen.com>
Date:   Sun Feb 8 19:20:19 2009 -0800

    netxen: fix msi-x interrupt handling
    
    o Cut down msi-x vectors from 8 to 1 since only one is used for now.
    o Use separate handler for msi-x, that doesn't unnecessarily scrub
      msi status register.
    
    Signed-off-by: Dhananjay Phadke <dhananjay@netxen.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit b991d2bc4a6e1821555bdc2a682f9aed24650c98
Author: Risto Suominen <Risto.Suominen@gmail.com>
Date:   Sun Feb 8 17:50:34 2009 -0800

    de2104x: force correct order when writing to rx ring
    
    DescOwn should not be set, thus allowing the chip to use the
    descriptor, before everything else is set up correctly.
    
    Signed-off-by: Risto Suominen <Risto.Suominen@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit cfbf84fcbcda98bb91ada683a8dc8e6901a83ebd
Author: Alex Williamson <alex.williamson@hp.com>
Date:   Sun Feb 8 17:49:17 2009 -0800

    tun: Fix unicast filter overflow
    
    Tap devices can make use of a small MAC filter set via the
    TUNSETTXFILTER ioctl.  The filter has a set of exact matches
    plus a hash for imperfect filtering of additional multicast
    addresses.  The current code is unbalanced, adding unicast
    addresses to the multicast hash, but only checking the hash
    against multicast addresses.  This results in the filter
    dropping unicast addresses that overflow the exact filter.
    The fix is simply to disable the filter by leaving count set
    to zero if we find non-multicast addresses after the exact
    match table is filled.
    
    Signed-off-by: Alex Williamson <alex.williamson@hp.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 23b904f35128f3c596831cc3320bab1f2db81f60
Author: Julia Lawall <julia@diku.dk>
Date:   Sun Feb 8 17:00:49 2009 -0800

    drivers/isdn: introduce missing kfree
    
    Error handling code following a kmalloc should free the allocated data.
    
    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: David S. Miller <davem@davemloft.net>

commit bc111d570ba87cff48ec8dfa15a2a598e59c0f4b
Author: Julia Lawall <julia@diku.dk>
Date:   Sun Feb 8 17:00:02 2009 -0800

    drivers/atm: introduce missing kfree
    
    Error handling code following a kmalloc should free the allocated data.
    
    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: David S. Miller <davem@davemloft.net>

commit d5b562330ec766292a3ac54ae5e0673610bd5b3d
Author: Hugh Dickins <hugh@veritas.com>
Date:   Sun Feb 8 20:56:58 2009 +0000

    mm: fix error case in mlock downgrade reversion
    
    Commit 27421e211a39784694b597dbf35848b88363c248, Manually revert
    "mlock: downgrade mmap sem while populating mlocked regions", has
    introduced its own regression: __mlock_vma_pages_range() may report
    an error (for example, -EFAULT from trying to lock down pages from
    beyond EOF), but mlock_vma_pages_range() must hide that from its
    callers as before.
    
    Reported-by: Sami Farin <safari-kernel@safari.iki.fi>
    Signed-off-by: Hugh Dickins <hugh@veritas.com>
    Cc: stable@kernel.org
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

commit d2f59357700487a8b944f4f7777d1e97cf5ea2ed
Author: Ingo Molnar <mingo@elte.hu>
Date:   Thu Feb 5 16:03:34 2009 +0100

    drm/i915: select framebuffer support automatically
    
    Migration helper.
    
    The i915 driver recently added a 'depends on FB' rule to its
    Kconfig entry - which silently turns off DRM_I915 if someone
    has a working config but no CONFIG_FB selected, and upgrades
    to the latest upstream kernel.
    
    Norbert Preining reported this problem:
    
       Bug-Entry   : http://bugzilla.kernel.org/show_bug.cgi?id=12599
       Subject     : dri /dev node disappeared with 2.6.29-rc1
    
    So change it to "select FB", which auto-selects framebuffer
    support. This way the driver keeps working, regardless of
    whether FB was enabled before or not.
    
    Kconfig select's of interactive options can be problematic to
    dependencies and can cause build breakages - but in this case
    it's safe because it's a leaf entry with no dependencies of its
    own.
    
    ( There is some minor circular dependency fallout as FB_I810
      and FB_INTEL also used 'depends on FB' constructs - update
      those to "select FB" too. )
    
    Reported-by: Norbert Preining <preining@logic.at>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Dave Airlie <airlied@linux.ie>

commit 9880b7a527ffbb52f65c2de0a8d4eea86e24775e
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date:   Fri Feb 6 10:22:41 2009 -0800

    drm/i915: add get_vblank_counter function for GM45
    
    As discussed in the long thread about vblank related timeouts, it turns out
    GM45 has different frame count registers than previous chips.  This patch
    adds support for them, which prevents us from waiting on really stale
    sequence values in drm_wait_vblank (which rather than returning immediately
    ends up timing out or getting interrupted).
    
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
    Signed-off-by: Dave Airlie <airlied@linux.ie>

commit 14d200c5e5bd19219d930bbb9a5a22758c8f5bec
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date:   Fri Feb 6 13:04:49 2009 -0800

    drm/i915: capture last_vblank count at IRQ uninstall time too
    
    In dc1336ff4fe08ae7cfe8301bfd7f0b2cfd31d20a (set vblank enable flag correctly
    across IRQ uninstall), we made sure drivers that uninstall their interrupt
    handler set the vblank enabled flag correctly, so that when interrupts are
    re-enabled, vblank interrupts & counts work as expected.  However I missed the
    last_vblank field:  it needs to be updated as well, otherwise, at the next
    drm_update_vblank_count we'll end up comparing a current count to a stale
    one (the last one captured by the disable function), which may trigger the
    wraparound handling, leading to a jumpy counter and hangs in drm_wait_vblank.
    
    The jumpy counter can prevent the DRM_WAIT_ON from returning success if the
    difference between the current count and the requested count is greater than
    2^23, leading to timeouts or hangs, if the ioctl is restarted in a loop (as
    is the case in libdrm < 2.4.4).
    
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
    Acked-by: Michel Dänzer <michel@daenzer.net>
    Tested-by: Timo Aaltonen <tjaalton@cc.hut.fi>
    Signed-off-by: Dave Airlie <airlied@redhat.com>

commit 7d8d58b23fd01e60ed44d8d8c10b2df86e638faa
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Wed Feb 4 14:15:10 2009 +0000

    drm/i915: Unlock mutex on i915_gem_fault() error path
    
    If we failed to allocate a new fence register we would return
    VM_FAULT_SIGBUS without relinquishing the lock.
    
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Signed-off-by: Dave Airlie <airlied@linux.ie>

commit 122ee2a63bc49d21f402f6b6d2208306cdcc98c1
Author: Eric Anholt <eric@anholt.net>
Date:   Tue Feb 3 12:10:21 2009 -0800

    drm/i915: Quiet the message on get/setparam ioctl with an unknown value.
    
    Getting an unknown get/setparam used to be more significant back when they
    didn't change much.  However, now that we're in the git world we're using
    them instead of a monotonic version number to signal feature availability,
    so clients ask about unknown params on older kernels more often.
    
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Signed-off-by: Dave Airlie <airlied@linux.ie>

commit 565dcd4635f4f8c0ac4dee38a5625bc325799b1e
Author: Paul Collins <paul@burly.ondioline.org>
Date:   Wed Feb 4 23:05:41 2009 +1300

    drm/i915: skip LVDS initialization on Apple Mac Mini
    
    The Apple Mac Mini falsely reports LVDS.  Use DMI to check whether we
    are running on a Mac Mini, and skip LVDS initialization if that proves
    to be the case.
    
    Signed-off-by: Paul Collins <paul@ondioline.org>
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Signed-off-by: Dave Airlie <airlied@linux.ie>

commit e2f0ba97d60e59fe5c6237851933a9c38a8f9a24
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date:   Mon Feb 2 15:11:52 2009 -0800

    drm/i915: sync SDVO code with stable userland modesetting driver
    
    Pull in an update from the 2D driver (hopefully the last one, future work
    should be done here and pulled back into xf86-video-intel as needed).
    
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Signed-off-by: Dave Airlie <airlied@linux.ie>

commit 72daad40dc0be179e0dc85c17d5dc1e850b5e8e4
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Fri Jan 30 21:10:22 2009 +0000

    drm/i915: Unref the object after failing to set tiling mode.
    
    Cleanup the object reference on the error paths.
    
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Signed-off-by: Dave Airlie <airlied@linux.ie>

commit 0f973f27888e4664b253ab2cf69c67c2eb80ab1b
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date:   Mon Jan 26 17:10:45 2009 -0800

    drm/i915: add fence register management to execbuf
    
    Adds code to set up fence registers at execbuf time on pre-965 chips as
    necessary.  Also fixes up a few bugs in the pre-965 tile register support
    (get_order != ffs).  The number of fences available to the kernel defaults
    to the hw limit minus 3 (for legacy X front/back/depth), but a new parameter
    allows userspace to override that as needed.
    
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Signed-off-by: Dave Airlie <airlied@linux.ie>

commit d9ddcb96e05cfbadf3dbf66859bcaf5eae25af0b
Author: Eric Anholt <eric@anholt.net>
Date:   Tue Jan 27 10:33:49 2009 -0800

    drm/i915: Return error from i915_gem_object_get_fence_reg() when failing.
    
    Previously, the caller would continue along without knowing that the
    function failed, resulting in potential mis-rendering.  Right now vm_fault
    just returns SIGBUS in that case, and we may need to disable signal handling
    to avoid that happening.
    
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Signed-off-by: Dave Airlie <airlied@linux.ie>

commit ab657db12d7020629f26f30d287558a8d0e32b41
Author: Eric Anholt <eric@anholt.net>
Date:   Fri Jan 23 12:57:47 2009 -0800

    drm/i915: Set up an MTRR covering the GTT at driver load.
    
    We'd love to just be using PAT, but even on chips with PAT it gets disabled
    sometimes due to an errata.  It would probably be better to have pat_enabled
    exported and only bother with this when !pat_enabled.
    
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Signed-off-by: Dave Airlie <airlied@linux.ie>

commit 725e30ad6601d7fe443d9215d6331758a9d7e0c8
Author: Eric Anholt <eric@anholt.net>
Date:   Thu Jan 22 13:01:02 2009 -0800

    drm/i915: Skip SDVO/HDMI init when the chipset tells us it's not present.
    
    This saves startup time from probing SDVO, and saves setting up HDMI outputs
    on G4X devices that don't have them.
    
    Signed-off-by: Dave Airlie <airlied@linux.ie>

commit e806b4957412bf472d826bd8cc571da041248799
Author: Eric Anholt <eric@anholt.net>
Date:   Thu Jan 22 09:56:58 2009 -0800

    drm/i915: Suppress GEM teardown on X Server exit in KMS mode.
    
    Fixes hangs when starting X for the second time.
    
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Signed-off-by: Dave Airlie <airlied@linux.ie>

commit 9b8d5a124f133fe9a75397d20b874844a2e3d7e9
Author: Dave Airlie <airlied@linux.ie>
Date:   Sat Feb 7 11:15:41 2009 +1000

    drm/radeon: fix ioremap conflict with AGP mappings
    
    this solves a regression from
    http://bugzilla.kernel.org/show_bug.cgi?id=12441
    
    Reported-by: Daniel Vetter <daniel@ffwll.ch>
    Signed-off-by: Dave Airlie <airlied@redhat.com>

commit 0b492fce3d72d982a7981905f85484a1e1ba7fde
Author: David S. Miller <davem@davemloft.net>
Date:   Sat Feb 7 02:20:25 2009 -0800

    sunhme: Don't match PCI devices in SBUS probe.
    
    Unfortunately, the OF device tree nodes for SBUS and PCI
    hme devices have the same device node name on some systems.
    
    So if the name of the parent node isn't 'sbus', skip it.
    
    Based upon an excellent report and detective work by
    Meelis Roos and Eric Brower.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Tested-by: Meelis Roos <mroos@linux.ee>

commit beeebc92ee04bff6a722ebf85e23131faedd4479
Author: Eric Van Hensbergen <ericvh@gmail.com>
Date:   Fri Feb 6 22:07:41 2009 -0800

    9p: fix endian issues [attempt 3]
    
    When the changes were done to the protocol last release, some endian
    bugs crept in.  This patch fixes those endian problems and has been
    verified to run on 32/64 bit and x86/ppc architectures.
    
    This version of the patch incorporates the correct annotations
    for endian variables.
    
    Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit b4bd07c20ba0c1fa7ad09ba257e0a5cfc2bf6bb3
Author: David S. Miller <davem@davemloft.net>
Date:   Fri Feb 6 22:06:43 2009 -0800

    net_dma: call dmaengine_get only if NET_DMA enabled
    
    Based upon a patch from Atsushi Nemoto <anemo@mba.ocn.ne.jp>
    
    --------------------
    The commit 649274d993212e7c23c0cb734572c2311c200872 ("net_dma:
    acquire/release dma channels on ifup/ifdown") added unconditional call
    of dmaengine_get() to net_dma.  The API should be called only if
    NET_DMA was enabled.
    --------------------
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Acked-by: Dan Williams <dan.j.williams@intel.com>

commit 152abd139cca049c9b559a7cca762fa7fd9fd264
Author: Ondrej Zary <linux@rainbow-software.org>
Date:   Fri Feb 6 22:04:08 2009 -0800

    3c509: Fix resume from hibernation for PnP mode.
    
    From: Ondrej Zary <linux@rainbow-software.org>
    
    last year, I posted a patch which fixed hibernation on 3c509
    cards. That was back in 2.6.24. It worked fine in 2.6.25. But then I
    stopped using hibernation (as it did not work with my new IT8212 RAID
    controller).
    
    Now I fixed it and noticed that 3c509 does not wake up properly
    anymore (in 2.6.28) - neither in PnP nor in ISA modes. ifconfig
    down/up makes the card work again in PnP mode. However, in ISA mode,
    ifconfig up ends with "No such device" error.
    
    Comparing the 3c509 driver between 2.6.25 and 2.6.28, there's only
    some statistics-related change. So the cause of the problem must be
    somewhere else.
    
    This patch makes the resume work in PnP mode, but it's still not
    enough for ISA mode.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 71822faa3bc0af5dbf5e333a2d085f1ed7cd809f
Author: Ilkka Virta <itvirta@iki.fi>
Date:   Fri Feb 6 22:00:36 2009 -0800

    sungem: Soft lockup in sungem on Netra AC200 when switching interface up
    
    From: Ilkka Virta <itvirta@iki.fi>
    
    In the lockup situation the driver seems to go off in an eternal storm
    of interrupts right after calling request_irq(). It doesn't actually
    do anything interesting in the interrupt handler. Since connecting the link
    afterwards works, something later in initialization must fix this.
    
    Looking at gem_do_start() and gem_open(), it seems that the only thing
    done while opening the device after the request_irq(), is a call to
    napi_enable().
    
    I don't know what the ordering requirements are for the
    initialization, but I boldly tried to move the napi_enable() call
    inside gem_do_start() before the link state is checked and interrupts
    subsequently enabled, and it seems to work for me. Doesn't even break
    anything too obvious...
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 15bde72738f373aa060ececeda8e064e4f924360
Author: David Howells <dhowells@redhat.com>
Date:   Fri Feb 6 21:50:52 2009 -0800

    RxRPC: Fix a potential NULL dereference
    
    Fix a potential NULL dereference bug during error handling in
    rxrpc_kernel_begin_call(), whereby rxrpc_put_transport() may be handed a NULL
    pointer.
    
    This was found with a code checker (http://repo.or.cz/w/smatch.git/).
    
    Reported-by: Dan Carpenter <error27@gmail.com>
    Signed-off-by: David Howells <dhowells@redhat.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 355423d0849f4506bc71ab2738d38cb74429aaef
Author: Ivan Vecera <ivecera@redhat.com>
Date:   Fri Feb 6 21:49:57 2009 -0800

    r8169: Don't update statistics counters when interface is down
    
    Some Realtek chips (RTL8169sb/8110sb in my case) are unable to retrieve
    ethtool statistics when the interface is down. The process stays in
    endless loop in rtl8169_get_ethtool_stats. This is because these chips
    need to have receiver enabled (CmdRxEnb bit in ChipCmd register) that is
    cleared when the interface is going down. It's better to update statistics
    only when the interface is up and otherwise return copy of statistics
    grabbed when the interface was up (in rtl8169_close).
    
    It is interesting that PCI-E NICs (like 8168b/8111b...) are not affected.
    
    Signed-off-by: Ivan Vecera <ivecera@redhat.com>
    Acked-by: Francois Romieu <romieu@fr.zoreil.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 08c6e3a57877ceda5c2f4c99ae7d433b8eef779a
Author: Julia Lawall <julia@diku.dk>
Date:   Wed Feb 4 22:43:04 2009 +0100

    arch/powerpc: 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)
    - )
    
    @@
    type T;
    @@
    
    - sizeof (
      sizeof (T)
    - )
    // </smpl>
    
    Signed-off-by: Julia Lawall <julia@diku.dk>
    Acked-by: Scott Wood <scottwood@freescale.com>
    Signed-off-by: Kumar Gala <galak@kernel.crashing.org>

commit 7f3ea17f316577e31db868f720ac575c74d20163
Author: paulfax <paulfax@conspiracy.net>
Date:   Tue Jan 27 02:44:07 2009 -0600

    powerpc/cpm2: Fix set interrupt type
    
    This is a simple change to correct problems when using set_irq_type
    on platforms using CPM2.  This code corrects the problem on most platform
    but may have issues on 8272 derived platforms for some interrupts.
    
    On 8272 PC2 & 3 are missing and PC 23 & 29 are added, which this patch
    does not address.
    
    Signed-off-by: Paul Bilke <paul@conspiracy.net>
    Reviewed-by: Anton Vorontsov <avorontsov@ru.mvista.com>
    Signed-off-by: Kumar Gala <galak@kernel.crashing.org>

commit e85477f516c2de7ed515fcf94ceab5282eba7fa4
Author: Anton Vorontsov <avorontsov@ru.mvista.com>
Date:   Thu Feb 5 23:10:40 2009 +0300

    powerpc/83xx: Fix TSEC0 workability on MPC8313E-RDB boards
    
    TSEC0 is connected to Vitesse 7385 5-port switch. The switch
    isn't connected to any mdio bus, the link to the switch is fixed
    to Full-duplex 1000 Mb/s (no pause).
    
    This patch fixes following failure during bootup:
    
    mdio@24520:01 not found
    eth0: Could not attach to PHY
    IP-Config: Failed to open eth0
    
    Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
    Signed-off-by: Kumar Gala <galak@kernel.crashing.org>

commit 1f0d4d16d9d4ffa65438425d092f7061476b95b3
Author: Anton Vorontsov <avorontsov@ru.mvista.com>
Date:   Thu Feb 5 23:10:32 2009 +0300

    powerpc/83xx: Fix missing #{address,size}-cells in mpc8313erdb.dts
    
    commit b31a1d8b41513b96e9c7ec2f68c5734cef0b26a4 ("gianfar: Convert
    gianfar to an of_platform_driver") introduced a child node for
    the ethernet@25000 controller, but no address and size cells
    specifiers were added, and that makes dtc unhappy:
    
    DTC: dts->dtb  on file "arch/powerpc/boot/dts/mpc8313erdb.dts"
    Warning (reg_format): "reg" property in /soc8313@e0000000/ethernet@25000/mdio@25520 has invalid length (8 bytes) (#address-cells == 2, #size-cells == 1)
    Warning (avoid_default_addr_size): Relying on default #address-cells value for /soc8313@e0000000/ethernet@25000/mdio@25520
    Warning (avoid_default_addr_size): Relying on default #size-cells value for /soc8313@e0000000/ethernet@25000/mdio@25520
    
    Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
    Signed-off-by: Kumar Gala <galak@kernel.crashing.org>

commit e2a02ba6676cdc5ebec503b558838c08c7083c14
Author: Michael Neuling <mikey@neuling.org>
Date:   Fri Feb 6 11:10:27 2009 +1100

    powerpc/83xx: Build breakage for CONFIG_PM but no CONFIG_SUSPEND
    
    I noticed this doing some randconfig testing (.config below).  I have
    CONFIG_PM but no CONFIG_SUSPEND.  Bug is against mainline.
    
    arch/powerpc/sysdev/built-in.o: In function `ipic_suspend':
    ipic.c:(.text+0x6b34): undefined reference to `fsl_deep_sleep'
    make[1]: *** [.tmp_vmlinux1] Error 1
    make: *** [sub-make] Error 2
    
    Looks like #ifdef CONFIG_PM in arch/powerpc/sysdev/ipic.c should be
    CONFIG_SUSPEND.  d49747bdfb2ddebea24d1580da55b79d093d48a9 introduced
    this.
    
    Fix build when we have CONFIG_PM but no CONFIG_SUSPEND.
    
    Signed-off-by: Michael Neuling <mikey@neuling.org>
    Acked-by: Scott Wood <scottwood@freescale.com>
    Signed-off-by: Kumar Gala <galak@kernel.crashing.org>

commit ff08f76d738d0ec0f334b187f61e160caa321d54
Author: Pavel Emelyanov <xemul@openvz.org>
Date:   Wed Feb 4 13:40:31 2009 +0300

    x86: clean up hpet timer reinit
    
    Implement Linus's suggestion: introduce the hpet_cnt_ahead()
    helper function to compare hpet time values - like other
    wrapping counter comparisons are abstracted away elsewhere.
    (jiffies, ktime_t, etc.)
    
    Reported-by: Kirill Korotaev <dev@openvz.org>
    Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 7d8e23df69820e6be42bcc41d441f4860e8c76f7
Author: Ingo Molnar <mingo@elte.hu>
Date:   Fri Feb 6 14:57:51 2009 +0100

    timers: split process wide cpu clocks/timers, remove spurious warning
    
    Mike Galbraith reported that the new warning in thread_group_cputimer()
    triggers en masse with Amarok running.
    
    Oleg Nesterov observed:
    
      Can't fastpath_timer_check()->thread_group_cputimer() have the
      false warning too? Suppose we had the timer, then posix_cpu_timer_del()
      removes this timer, but task_cputime_zero(&sig->cputime_expires) still
      not true.
    
    Remove the spurious debug warning.
    
    Reported-by: Mike Galbraith <efault@gmx.de>
    Explained-by: Oleg Nesterov <oleg@redhat.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 2783ef23128ad0a4b34e4121c1f7ff664785712f
Author: Jesper Dangaard Brouer <hawk@comx.dk>
Date:   Fri Feb 6 01:59:12 2009 -0800

    udp: Fix potential wrong ip_hdr(skb) pointers
    
    Like the UDP header fix, pskb_may_pull() can potentially
    alter the SKB buffer.  Thus the saddr and daddr, pointers
    may point to the old skb->data buffer.
    
    I haven't seen corruptions, as its only seen if the old
    skb->data buffer were reallocated by another user and
    written into very quickly (or poison'd by SLAB debugging).
    
    Signed-off-by: Jesper Dangaard Brouer <hawk@comx.dk>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit efc683fc2a692735029067b4f939af2a3625e31d
Author: Gautam Kachroo <gk@aristanetworks.com>
Date:   Fri Feb 6 00:52:04 2009 -0800

    neigh: some entries can be skipped during dumping
    
    neightbl_dump_info and neigh_dump_table  can skip entries if the
    *fill*info functions return an error. This results in an incomplete
    dump ((invoked by netlink requests for RTM_GETNEIGHTBL or
    RTM_GETNEIGH)
    
    nidx and idx should not be incremented if the current entry was not
    placed in the output buffer
    
    Signed-off-by: Gautam Kachroo <gk@aristanetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 684de409acff8b1fe8bf188d75ff2f99c624387d
Author: David S. Miller <davem@davemloft.net>
Date:   Fri Feb 6 00:49:55 2009 -0800

    ipv6: Disallow rediculious flowlabel option sizes.
    
    Just like PKTINFO, limit the options area to 64K.
    
    Based upon report by Eric Sesterhenn and analysis by
    Roland Dreier.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 1c2f61d40b691789626489fa947a3e003c9a84be
Author: David S. Miller <davem@davemloft.net>
Date:   Thu Feb 5 23:59:04 2009 -0800

    sparc64: Don't hook up pcr_ops on spitfire chips.
    
    They can't be used for profiling and NMI watchdog currently
    since they lack the counter overflow interrupt.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 732553e567c2700ba5b9bccc6ec885c75779a94b
Author: Mark Langsdorf <mark.langsdorf@amd.com>
Date:   Tue Feb 3 17:46:43 2009 +0100

    [CPUFREQ] powernow-k8: Get transition latency from ACPI _PSS table
    
    At this time, the PowerNow! driver for K8 uses an experimentally
    derived formula to calculate transition latency.  The value it
    provides is orders of magnitude too large on modern systems.
    This patch replaces the formula with ACPI _PSS latency values
    for more accuracy and better performance.
    
    I've tested it on two 2nd generation Opteron systems, a 3rd
    generation Operton system, and a Turion X2 without seeing any
    stability problems.
    
    Signed-off-by: Mark Langsdorf <mark.langsdorf@amd.com>
    Signed-off-by: Thomas Renninger <trenn@suse.de>
    Signed-off-by: Dave Jones <davej@redhat.com>

commit 1ca3abdb6a4b87246b00292f048acd344325fd12
Author: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Date:   Fri Jan 23 09:25:02 2009 -0500

    [CPUFREQ] Make ignore_nice_load setting of ondemand work as expected.
    
    ondemand micro-accounting of idle time changes broke ignore_nice_load
    sysfs setting due to a thinko in the code.
    
    The bug entry:
    http://bugzilla.kernel.org/show_bug.cgi?id=12310
    
    Reported-by: Jim Bray <jimsantelmo@gmail.com>
    
    Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
    Signed-off-by: Dave Jones <davej@redhat.com>

commit 0cd5c3c80a0ebd68c08312fa7d8c13149cc61c4c
Author: Kyle McMartin <kyle@redhat.com>
Date:   Wed Feb 4 14:29:19 2009 -0800

    x86: disable intel_iommu support by default
    
    Due to recurring issues with DMAR support on certain platforms.
    There's a number of filesystem corruption incidents reported:
    
      https://bugzilla.redhat.com/show_bug.cgi?id=479996
      http://bugzilla.kernel.org/show_bug.cgi?id=12578
    
    Provide a Kconfig option to change whether it is enabled by
    default.
    
    If disabled, it can still be reenabled by passing intel_iommu=on to the
    kernel. Keep the .config option off by default.
    
    Signed-off-by: Kyle McMartin <kyle@redhat.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Acked-By: David Woodhouse <David.Woodhouse@intel.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 4cd4c1b40d40447fb5e7ba80746c6d7ba91d7a53
Author: Peter Zijlstra <a.p.zijlstra@chello.nl>
Date:   Thu Feb 5 12:24:16 2009 +0100

    timers: split process wide cpu clocks/timers
    
    Change the process wide cpu timers/clocks so that we:
    
     1) don't mess up the kernel with too many threads,
     2) don't have a per-cpu allocation for each process,
     3) have no impact when not used.
    
    In order to accomplish this we're going to split it into two parts:
    
     - clocks; which can take all the time they want since they run
               from user context -- ie. sys_clock_gettime(CLOCK_PROCESS_CPUTIME_ID)
    
     - timers; which need constant time sampling but since they're
               explicity used, the user can pay the overhead.
    
    The clock readout will go back to a full sum of the thread group, while the
    timers will run of a global 'clock' that only runs when needed, so only
    programs that make use of the facility pay the price.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Reviewed-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 32bd671d6cbeda60dc73be77fa2b9037d9a9bfa0
Author: Peter Zijlstra <a.p.zijlstra@chello.nl>
Date:   Thu Feb 5 12:24:15 2009 +0100

    signal: re-add dead task accumulation stats.
    
    We're going to split the process wide cpu accounting into two parts:
    
     - clocks; which can take all the time they want since they run
               from user context.
    
     - timers; which need constant time tracing but can affort the overhead
               because they're default off -- and rare.
    
    The clock readout will go back to a full sum of the thread group, for this
    we need to re-add the exit stats that were removed in the initial itimer
    rework (f06febc9: timers: fix itimer/many thread hang).
    
    Furthermore, since that full sum can be rather slow for large thread groups
    and we have the complete dead task stats, revert the do_notify_parent time
    computation.
    
    Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Reviewed-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 83895147b702434e6f236deeca75211fd0e3da3a
Merge: a6a9540... 483b4ee...
Author: Ingo Molnar <mingo@elte.hu>
Date:   Thu Feb 5 13:03:28 2009 +0100

    Merge branch 'sched/urgent' into timers/urgent
    
    Merging it here because an upcoming timers/urgent fix relies on
    a change already in sched/urgent and not yet upstream.
    
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 412e87ae5d852bc3d836f475c19d954b3324363d
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date:   Thu Feb 5 16:51:25 2009 +1100

    crypto: shash - Fix tfm destruction
    
    We were freeing an offset into the slab object instead of the
    start.  This patch fixes it by calling crypto_destroy_tfm which
    allows the correct address to be given.
    
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

commit 7b2cd92adc5430b0c1adeb120971852b4ea1ab08
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date:   Thu Feb 5 16:48:24 2009 +1100

    crypto: api - Fix zeroing on free
    
    Geert Uytterhoeven pointed out that we're not zeroing all the
    memory when freeing a transform.  This patch fixes it by calling
    ksize to ensure that we zero everything in sight.
    
    Reported-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

commit b534816b552d35bbd3c60702139ed5c7da2f55c2
Author: Jeremy Fitzhardinge <jeremy@goop.org>
Date:   Wed Feb 4 18:33:38 2009 -0800

    x86: don't apply __supported_pte_mask to non-present ptes
    
    On an x86 system which doesn't support global mappings,
    __supported_pte_mask has _PAGE_GLOBAL clear, to make sure it never
    appears in the PTE.  pfn_pte() and so on will enforce it with:
    
    static inline pte_t pfn_pte(unsigned long page_nr, pgprot_t pgprot)
    {
    	return __pte((((phys_addr_t)page_nr << PAGE_SHIFT) |
    		      pgprot_val(pgprot)) & __supported_pte_mask);
    }
    
    However, we overload _PAGE_GLOBAL with _PAGE_PROTNONE on non-present
    ptes to distinguish them from swap entries.  However, applying
    __supported_pte_mask indiscriminately will clear the bit and corrupt the
    pte.
    
    I guess the best fix is to only apply __supported_pte_mask to present
    ptes.  This seems like the right solution to me, as it means we can
    completely ignore the issue of overlaps between the present pte bits and
    the non-present pte-as-swap entry use of the bits.
    
    __supported_pte_mask contains the set of flags we support on the
    current hardware.  We also use bits in the pte for things like
    logically present ptes with no permissions, and swap entries for
    swapped out pages.  We should only apply __supported_pte_mask to
    present ptes, because otherwise we may destroy other information being
    stored in the ptes.
    
    Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
    Signed-off-by: H. Peter Anvin <hpa@zytor.com>

commit 4abfd73e34e7915e62b6f75bd3e9f4014f830910
Author: Adrian-Ken Rueegsegger <rueegsegger@swiss-it.ch>
Date:   Thu Feb 5 16:19:31 2009 +1100

    crypto: shash - Fix module refcount
    
    Module reference counting for shash is incorrect: when
    a new shash transformation is created the refcount is not
    increased as it should.
    
    Signed-off-by: Adrian-Ken Rueegsegger <rueegsegger@swiss-it.ch>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

commit 4560839939f4b4a96e21e80584f87308ac93c1da
Author: Alex Chiang <achiang@hp.com>
Date:   Wed Feb 4 16:44:01 2009 -0700

    x86: fix grammar in user-visible BIOS warning
    
    Fix user-visible grammo.
    
    Signed-off-by: Alex Chiang <achiang@hp.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit a6a95406c676ffe4f9dee708eb404a17c69f7fdd
Author: Pavel Emelyanov <xemul@openvz.org>
Date:   Wed Feb 4 13:40:31 2009 +0300

    x86: fix hpet timer reinit for x86_64
    
    There's a small problem with hpet_rtc_reinit function - it checks
    for the:
    
    	hpet_readl(HPET_COUNTER) - hpet_t1_cmp > 0
    
    to continue increasing both the HPET_T1_CMP (register) and the
    hpet_t1_cmp (variable).
    
    But since the HPET_COUNTER is always 32-bit, if the hpet_t1_cmp
    is 64-bit this condition will always be FALSE once the latter hits
    the 32-bit boundary, and we can have a situation, when we don't
    increase the HPET_T1_CMP register high enough.
    
    The result - timer stops ticking, since HPET_T1_CMP becomes less,
    than the COUNTER and never increased again.
    
    The solution is (based on Linus's suggestion) to not compare 64-bits
    (on 64-bit x86), but to do the comparison on 32-bit signed
    integers.
    
    Reported-by: Kirill Korotaev <dev@openvz.org>
    Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit dc4ff585ffbc6cb0c872697b2d5f42293a32e5c8
Author: David S. Miller <davem@davemloft.net>
Date:   Wed Feb 4 13:48:11 2009 -0800

    sparc64: Call dump_stack() in die_nmi().
    
    Signed-off-by: David S. Miller <davem@davemloft.net>

commit 483b4ee60edbefdfbff0dd538fb81f368d9e7c0d
Author: Suresh Siddha <suresh.b.siddha@intel.com>
Date:   Wed Feb 4 11:59:44 2009 -0800

    sched: fix nohz load balancer on cpu offline
    
    Christian Borntraeger reports:
    
    > After a logical cpu offline, even on a complete idle system, there
    > is one cpu with full ticks. It turns out that nohz.cpu_mask has the
    > the offlined cpu still set.
    >
    > In select_nohz_load_balancer() we check if the system is completely
    > idle to turn of load balancing. We compare cpu_online_map with
    > nohz.cpu_mask.  Since cpu_online_map is updated on cpu unplug,
    > but nohz.cpu_mask is not, the check fails and the scheduler believes
    > that we need an "idle load balancer" even on a fully idle system.
    > Since the ilb cpu does not deactivate the timer tick this breaks NOHZ.
    
    Fix the select_nohz_load_balancer() to not set the nohz.cpu_mask
    while a cpu is going offline.
    
    Reported-by: Christian Borntraeger <borntraeger@de.ibm.com>
    Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
    Tested-by: Christian Borntraeger <borntraeger@de.ibm.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 36723bfe81f374fd8abc05a46f10a7cac2f01a75
Author: Borislav Petkov <petkovbb@googlemail.com>
Date:   Wed Feb 4 21:44:04 2009 +0100

    x86/Kconfig.cpu: make Kconfig help readable in the console
    
    Impact: cleanup
    
    Some lines exceed the 80 char width making them unreadable.
    
    Signed-off-by: Borislav Petkov <petkovbb@gmail.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit 48ec4d9537282a55d602136724f069faafcac8c8
Author: Kyle McMartin <kyle@infradead.org>
Date:   Wed Feb 4 15:54:45 2009 -0500

    x86, 64-bit: print DMI info in the oops trace
    
    This patch echoes what we already do on 32-bit since
    90f7d25c6b672137344f447a30a9159945ffea72, and prints the DMI
    product name in show_regs, so that system specific problems can be
    easily identified.
    
    Signed-off-by: Kyle McMartin <kyle@redhat.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>

commit ac048e1734699dd98f4bdf4daf2b9592d4a4d38e
Author: Dave Airlie <airlied@redhat.com>
Date:   Tue Feb 3 19:05:12 2009 +1000

    i915: fix unneeded locking in i915 LVDS get modes code.
    
    This code is always called under the lock from the higher layers,
    so need to go locking it here.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>

commit ccc9c8b91c2631da2cab46a6fcd9c3106dcb9abb
Author: Balaji Rao <balajirrao@openmoko.org>
Date:   Tue Jan 27 19:22:38 2009 +0530

    pcf50633_charger: Fix typo
    
    container_of(psy, struct pcf50633_mbc, usb); should be
    container_of(psy, struct pcf50633_mbc, adapter);
    
    Signed-off-by: Balaji Rao <balajirrao@openmoko.org>
    Cc: Andy Green <andy@openmoko.com>
    Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>

commit b8e15992b420d09dae831125a623c474c8637cee
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date:   Wed Jan 28 14:09:59 2009 +1100

    crypto: api - Fix algorithm test race that broke aead initialisation
    
    When we complete a test we'll notify everyone waiting on it, drop
    the mutex, and then remove the test larval (after reacquiring the
    mutex).  If one of the notified parties tries to register another
    algorithm with the same driver name prior to the removal of the
    test larval, they will fail with EEXIST as only one algorithm of
    a given name can be tested at any time.
    
    This broke the initialisation of aead and givcipher algorithms as
    they will register two algorithms with the same driver name, in
    sequence.
    
    This patch fixes the problem by marking the larval as dead before
    we drop the mutex, and also ignoring all dead or dying algorithms
    on the registration path.
    
    Tested-by: Andreas Steffen <andreas.steffen@strongswan.org>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

commit 26a552264bc92d2ec4747b1babb7cb1264908018
Author: Eric Miao <eric.miao@marvell.com>
Date:   Wed Jan 21 11:29:19 2009 +0800

    [ARM] pxa: stop and disable IRQ for each DMA channels at startup
    
    Some broken bootloaders will leave the DMA channel state unclean, which
    we should really initialize correctly here.
    
    Signed-off-by: Eric Miao <eric.miao@marvell.com>

commit b6729deb26a131083add5b7238c7b7478ef6b502
Author: Eric Miao <eric.miao@marvell.com>
Date:   Mon Jan 19 11:42:32 2009 +0800

    [ARM] pxa: make more SSCR0 bit definitions visible on multiple processors
    
    The only exclusive definitions are SSCR0_SCR and SSCR0_SerClkDiv(), loosen
    that exclusive #ifdef .. #else .. #endif to allow other definitions to be
    visible when slected multiple processors. This helps to pass the building
    of pxa-ssp.c.
    
    Signed-off-by: Eric Miao <eric.miao@marvell.com>

commit ec971c91c55b8e2e2609f8d61eb34da13aedb37d
Author: Eric Miao <eric.miao@marvell.com>
Date:   Mon Jan 19 11:39:36 2009 +0800

    [ARM] pxa: fix missing of __REG() definition for ac97 registers access
    
    This currently happens for 'drivers/input/touch/mainstone-wm97xx.c'.
    
    Signed-off-by: Eric Miao <eric.miao@marvell.com>

commit 8d69abb08343706f88380edb83927ffc0fc83098
Author: Mike Rapoport <mike@compulab.co.il>
Date:   Sun Jan 18 11:55:19 2009 +0200

    [ARM] pxa: fix NAND and MMC clock initialization for pxa3xx
    
    After commit 8c3abc7d903df492a7394b0adae4349d9a381aaf
    ("[ARM] pxa: convert to clkdev and match clocks by struct device where possible")
    get_clk in pxa3xx_nand fails with -ENOENT.
    Apparently, clk_get in pxamci will also fail for MCI2 on PXA310.
    
    The 'clk_find' and therefore 'clk_get' require driver to supply
    both 'dev_id' and 'con_id' if they are not NULL in the 'strcut clk_lookup',
    but neither pxa3xx_nand nor pxamci supply 'con_id'.
    
    This patch sets 'con_id' to NULL in NAND clock and MCI2 clock registration.
    
    Signed-off-by: Mike Rapoport <mike@compulab.co.il>
    Signed-off-by: Eric Miao <eric.miao@marvell.com>