Skip to content
Commits on Feb 9, 2010
  1. @gregkh

    Linux 2.6.32.8

    gregkh committed Feb 9, 2010
  2. @gregkh

    NET: fix oops at bootime in sysctl code

    This fixes the boot time oops on the 2.6.32-stable tree.  It is needed
    only in this tree due to the divergance from upstream.
    
    From: jamal <hadi@cyberus.ca>
    Acked-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    jamal committed with gregkh Feb 4, 2010
  3. @andreas-schwab @gregkh

    powerpc: TIF_ABI_PENDING bit removal

    commit 94f28da upstream.
    
    Here are the powerpc bits to remove TIF_ABI_PENDING now that
    set_personality() is called at the appropriate place in exec.
    
    Signed-off-by: Andreas Schwab <schwab@linux-m68k.org>
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    andreas-schwab committed with gregkh Jan 30, 2010
  4. @gregkh

    ath9k: fix beacon slot/buffer leak

    commit 7440177 upstream.
    
    When cleaning up beacon buffers and slots, ath9k currently checks if
    sc->ah->opmode is set to a beacon related mode before cleaning up
    buffers.
    An unfortunate ordering of interface up/down commands can lead to
    sc->ah->opmode being set to monitor mode, while there are AP interfaces
    present on the same wiphy.
    Always cleaning up beacon buffers if present fixes this issue.
    
    Signed-off-by: Felix Fietkau <nbd@openwrt.org>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Felix Fietkau committed with gregkh Jan 19, 2010
  5. @gregkh

    ath9k: fix eeprom INI values override for 2GHz-only cards

    commit aa8bc9e upstream.
    
    Among other changes, this commit:
    
       commit 06d0f06
       Author: Sujith <Sujith.Manoharan@atheros.com>
       Date:   Thu Feb 12 10:06:45 2009 +0530
    
       ath9k: Enable Fractional N mode
    
    changed the hw attach code to fix up initialization values only for
    dual band devices, however the commit message did not give a reason as
    to why this would be useful or necessary.
    
    According to tests by Jorge Boncompte, this breaks at least some
    2GHz-only cards, so the code should be changed back to the
    unconditional INI fixup.
    
    Signed-off-by: Felix Fietkau <nbd@openwrt.org>
    Reported-by: Jorge Boncompte <jorge@dti2.net>
    Tested-by: Pavel Roskin <proski@gnu.org>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Felix Fietkau committed with gregkh Jan 23, 2010
  6. @gregkh

    pktcdvd: removing device does not remove its sysfs dir

    commit ca0bf64 upstream.
    
    This is the counterpart to cba7671
    ("pktcdvd: remove broken dev_t export of class devices").  Device is not
    registered using dev_t, so it should not be destroyed using device_destroy
    which looks up the device by dev_t.  This will fail and adding the device
    again will fail with the "duplicate name" error.  This is fixed using
    device_unregister instead of device_destroy.
    
    Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
    Cc: Kay Sievers <kay.sievers@vrfy.org>
    Cc: Peter Osterlund <petero2@telia.com>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Jens Axboe <jens.axboe@oracle.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Thadeu Lima de Souza Cascardo committed with gregkh Feb 2, 2010
  7. @gregkh

    uartlite: fix crash when using as console

    commit 03eac7b upstream.
    
    Move the ulite_console_setup to the .devinit section since it might be
    called on probe, which is in devinit.  Fixes the crash below where the
    uartlite hw is probed after the .init section is freed from the kernel.
    
    uartlite: ttyUL0 at MMIO 0xc8000100 (irq = 30) is a uartlite
    BUG: unable to handle kernel NULL pointer dereference at (null)
    IP: [<c176720e>] ulite_console_setup+0x6f/0xa8
    *pdpt = 0000000036fb0001 *pde = 0000000000000000
    Oops: 0000 [#1] PREEMPT SMP
    last sysfs file: /sys/devices/pci0000:00/0000:00:1f.1/host0/uevent
    Modules linked in: puffin(+) serio_raw
    
    Pid: 151, comm: modprobe Not tainted (2.6.31.5-1.0.b1-b1 #1) POULSBO
    EIP: 0060:[<c176720e>] EFLAGS: 00010246 CPU: 0
    EIP is at ulite_console_setup+0x6f/0xa8
    EAX: c16ec824 EBX: c16ec824 ECX: c176719f EDX: 00000000
    ESI: 00000000 EDI: c17b42c4 EBP: f6fd1cf0 ESP: f6fd1cd8
     DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
    Process modprobe (pid: 151, ti=f6fd0000 task=f6fa1020 task.ti=f6fd0000)
    Stack:
     c1031f51 00000000 00000000 00000246 c182237c f7742000 f6fd1d5c c11fd316
    <0> c16ec85c f77420d4 0000001e 00000000 00000000 c1633e78 4f494d4d 63783020
    <0> 30303038 00303031 f6fd1d3c c10e0786 f6fd1d48 00000000 f6fd1d48 00000000
    Call Trace:
     [<c1031f51>] ? register_console+0xf6/0x1fc
     [<c11fd316>] ? uart_add_one_port+0x237/0x2bb
     [<c10e0786>] ? sysfs_add_one+0x13/0xd3
     [<c10e142f>] ? sysfs_do_create_link+0xba/0xfc
     [<c146f200>] ? ulite_probe+0x198/0x1eb
     [<c12064ee>] ? platform_drv_probe+0xc/0xe
     [<c120597b>] ? driver_probe_device+0x79/0x105
     [<c1205a8e>] ? __device_attach+0x28/0x30
     [<c120511f>] ? bus_for_each_drv+0x3d/0x67
     [<c1205af9>] ? device_attach+0x44/0x58
     [<c1205a66>] ? __device_attach+0x0/0x30
     [<c1204fb8>] ? bus_probe_device+0x1f/0x34
     [<c1203e68>] ? device_add+0x385/0x4c0
     [<c148491f>] ? _write_unlock+0x8/0x1f
     [<c1206aac>] ? platform_device_add+0xd9/0x11c
     [<c120c685>] ? mfd_add_devices+0x165/0x1bc
     [<f831b378>] ? puffin_probe+0x2d0/0x390 [puffin]
     [<c11a08ef>] ? pci_match_device+0xa0/0xa7
     [<c11a07bc>] ? local_pci_probe+0xe/0x10
     [<c11a11db>] ? pci_device_probe+0x43/0x66
     [<c120597b>] ? driver_probe_device+0x79/0x105
     [<c1205a4a>] ? __driver_attach+0x43/0x5f
     [<c120535d>] ? bus_for_each_dev+0x3d/0x67
     [<c1205852>] ? driver_attach+0x14/0x16
     [<c1205a07>] ? __driver_attach+0x0/0x5f
     [<c1204dea>] ? bus_add_driver+0xf9/0x220
     [<c1205c8f>] ? driver_register+0x8b/0xeb
     [<c11a1518>] ? __pci_register_driver+0x43/0x9f
     [<c10477ef>] ? __blocking_notifier_call_chain+0x40/0x4c
     [<f831f000>] ? puffin_init+0x0/0x48 [puffin]
     [<f831f017>] ? puffin_init+0x17/0x48 [puffin]
     [<c1001139>] ? do_one_initcall+0x4c/0x131
     [<c105607b>] ? sys_init_module+0xa7/0x1b7
     [<c1002a61>] ? syscall_call+0x7/0xb
     Code: 6e 74 00 00 00 92 33 00 00 18 00 0e 01 73 79 6e 63 65 2d 72 65 67 69 73 74 72 79 0c 00 49 32
    00 00 14 00 09 01 61 6c 73 61 2d 69 <6e> 66 6f 00 00 00 42 37 00 00 10 00 07 01 6b 69 6c 6c 61 6c 6c
    EIP: [<c176720e>] ulite_console_setup+0x6f/0xa8 SS:ESP 0068:f6fd1cd8
    CR2: 0000000000000000
    
    Signed-off-by: Richard Röjfors <richard.rojfors@pelagicore.com>
    Acked-by: Peter Korsgaard <jacmet@sunsite.dk>
    Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Richard Röjfors committed with gregkh Feb 2, 2010
  8. @JuliaLawall @gregkh

    kernel/cred.c: use kmem_cache_free

    commit b8a1d37 upstream.
    
    Free memory allocated using kmem_cache_zalloc using kmem_cache_free rather
    than kfree.
    
    The semantic patch that makes this change is as follows:
    (http://coccinelle.lip6.fr/)
    
    // <smpl>
    @@
    expression x,E,c;
    @@
    
     x = \(kmem_cache_alloc\|kmem_cache_zalloc\|kmem_cache_alloc_node\)(c,...)
     ... when != x = E
         when != &x
    ?-kfree(x)
    +kmem_cache_free(c,x)
    // </smpl>
    
    Signed-off-by: Julia Lawall <julia@diku.dk>
    Acked-by: David Howells <dhowells@redhat.com>
    Cc: James Morris <jmorris@namei.org>
    Cc: Steve Dickson <steved@redhat.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: James Morris <jmorris@namei.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    JuliaLawall committed with gregkh Feb 3, 2010
  9. @gregkh

    starfire: clean up properly if firmware loading fails

    commit c928feb upstream.
    
    netdev_open() will return without cleaning up net device or hardware state
    if firmware loading fails.  This results in a BUG() on a second attempt to
    bring the interface up, reported in
    <http://bugzilla.kernel.org/show_bug.cgi?id=15091>, and probably has even
    worse effects if the driver is removed afterwards.
    
    Call netdev_close() to clean up on failure.
    
    Addresses http://bugzilla.kernel.org/show_bug.cgi?id=15091
    
    Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
    Reported-by: Michael Moffatt <michael@moffatt.org.nz>
    Tested-by: Michael Moffatt <michael@moffatt.org.nz>
    Cc: "David S. Miller" <davem@davemloft.net>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Ben Hutchings committed with gregkh Jan 26, 2010
  10. @gregkh

    mx3fb: some debug and initialisation fixes

    commit b3cb537 upstream.
    
    Fix the kernel oops when dev_dbg is called with mx3_fbi->txd == NULL
    
    Fix the late initialisation of mx3fb->backlight_level.  If not, in the
    chain of function started by init_fb_chan(), in __blank() call
    sdc_set_brightness(mx3fb, mx3fb->backlight_level) that will shut down the
    CONTRAST PWM output.
    
    Signed-off-by: Alberto Panizzo <maramaopercheseimorto@gmail.com>
    Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
    Cc: Sascha Hauer <s.hauer@pengutronix.de>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Alberto Panizzo committed with gregkh Feb 2, 2010
  11. @gregkh

    imxfb: correct location of callbacks in suspend and resume

    commit 1ec5620 upstream.
    
    The probe function passes a pointer to a struct fb_info to
    platform_set_drvdata(), so don't interpret the return value of
    platform_get_drvdata() as a pointer to struct imxfb_info.
    
    The original imxfb_info *fbi backlight_power was NULL but in imxfb_suspend
    it was 4 resulting in an oops as imxfb_suspend calls
    imxfb_disable_controller(fbi) which in turn has
    
    	if (fbi->backlight_power)
    			fbi->backlight_power(0);
    
    Signed-off-by: Uwe Kleine-König  <u.kleine-koenig@pengutronix.de>
    Acked-by: Sascha Hauer <kernel@pengutronix.de>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Uwe Kleine-König committed with gregkh Feb 2, 2010
  12. @gregkh

    mac80211: fix NULL pointer dereference when ftrace is enabled

    commit 3092ad0 upstream.
    
    I got below kernel oops when I try to bring down the network interface if
    ftrace is enabled. The root cause is drv_ampdu_action() is passed with a
    NULL ssn pointer in the BA session tear down case. We need to check and
    avoid dereferencing it in trace entry assignment.
    
    BUG: unable to handle kernel NULL pointer dereference
    Modules linked in: at (null)
    IP: [<f98fe02a>] ftrace_raw_event_drv_ampdu_action+0x10a/0x160 [mac80211]
    *pde = 00000000
    Oops: 0000 [#1] SMP DEBUG_PAGEALLOC
    [...]
    Call Trace:
     [<f98fdf20>] ? ftrace_raw_event_drv_ampdu_action+0x0/0x160 [mac80211]
     [<f98dac4c>] ? __ieee80211_stop_rx_ba_session+0xfc/0x220 [mac80211]
     [<f98d97fb>] ? ieee80211_sta_tear_down_BA_sessions+0x3b/0x50 [mac80211]
     [<f98dc6f6>] ? ieee80211_set_disassoc+0xe6/0x230 [mac80211]
     [<f98dc6ac>] ? ieee80211_set_disassoc+0x9c/0x230 [mac80211]
     [<f98dcbb8>] ? ieee80211_mgd_deauth+0x158/0x170 [mac80211]
     [<f98e4bdb>] ? ieee80211_deauth+0x1b/0x20 [mac80211]
     [<f8987f49>] ? __cfg80211_mlme_deauth+0xe9/0x120 [cfg80211]
     [<f898b870>] ? __cfg80211_disconnect+0x170/0x1d0 [cfg80211]
    
    Cc: Johannes Berg <johannes@sipsolutions.net>
    Signed-off-by: Zhu Yi <yi.zhu@intel.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Zhu Yi committed with gregkh Jan 26, 2010
  13. @gregkh

    mm: flush dcache before writing into page to avoid alias

    commit 931e80e upstream.
    
    The cache alias problem will happen if the changes of user shared mapping
    is not flushed before copying, then user and kernel mapping may be mapped
    into two different cache line, it is impossible to guarantee the coherence
    after iov_iter_copy_from_user_atomic.  So the right steps should be:
    
    	flush_dcache_page(page);
    	kmap_atomic(page);
    	write to page;
    	kunmap_atomic(page);
    	flush_dcache_page(page);
    
    More precisely, we might create two new APIs flush_dcache_user_page and
    flush_dcache_kern_page to replace the two flush_dcache_page accordingly.
    
    Here is a snippet tested on omap2430 with VIPT cache, and I think it is
    not ARM-specific:
    
    	int val = 0x11111111;
    	fd = open("abc", O_RDWR);
    	addr = mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);
    	*(addr+0) = 0x44444444;
    	tmp = *(addr+0);
    	*(addr+1) = 0x77777777;
    	write(fd, &val, sizeof(int));
    	close(fd);
    
    The results are not always 0x11111111 0x77777777 at the beginning as expected.  Sometimes we see 0x44444444 0x77777777.
    
    Signed-off-by: Anfei <anfei.zhou@gmail.com>
    Cc: Russell King <rmk@arm.linux.org.uk>
    Cc: Miklos Szeredi <miklos@szeredi.hu>
    Cc: Nick Piggin <nickpiggin@yahoo.com.au>
    Cc: <linux-arch@vger.kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    anfei zhou committed with gregkh Feb 2, 2010
  14. @davem330 @gregkh

    be2net: Fix memset() arg ordering.

    commit d291b9a upstream.
    
    Noticed by Ben Hutchings.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    davem330 committed with gregkh Jan 28, 2010
  15. @gregkh

    be2net: Bug fix to support newer generation of BE ASIC

    commit 7b139c8 upstream.
    
    Bug fix in be2net for newer generation of BladeEngine ASIC.
    
    Signed-off-by: Ajit Khaparde <ajitk@serverengines.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Ajit Khaparde committed with gregkh Jan 27, 2010
  16. @bioothod @gregkh

    connector: Delete buggy notification code.

    commit f98bfbd upstream.
    
    On Tue, Feb 02, 2010 at 02:57:14PM -0800, Greg KH (gregkh@suse.de) wrote:
    > > There are at least two ways to fix it: using a big cannon and a small
    > > one. The former way is to disable notification registration, since it is
    > > not used by anyone at all. Second way is to check whether calling
    > > process is root and its destination group is -1 (kind of priveledged
    > > one) before command is dispatched to workqueue.
    >
    > Well if no one is using it, removing it makes the most sense, right?
    >
    > No objection from me, care to make up a patch either way for this?
    
    Getting it is not used, let's drop support for notifications about
    (un)registered events from connector.
    Another option was to check credentials on receiving, but we can always
    restore it without bugs if needed, but genetlink has a wider code base
    and none complained, that userspace can not get notification when some
    other clients were (un)registered.
    
    Kudos for Sebastian Krahmer <krahmer@suse.de>, who found a bug in the
    code.
    
    Signed-off-by: Evgeniy Polyakov <zbr@ioremap.net>
    Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    bioothod committed with gregkh Feb 2, 2010
  17. @gregkh

    usb: r8a66597-hdc disable interrupts fix

    commit e5ff15b upstream.
    
    This patch improves disable_controller() in the r8a66597-hdc
    driver to disable all interrupts and clear status flags. It
    also makes sure that disable_controller() is called during
    probe(). This fixes the relatively rare case of unexpected
    pending interrupts after kexec reboot.
    
    Signed-off-by: Magnus Damm <damm@opensource.se>
    Acked-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com>
    Signed-off-by: Paul Mundt <lethal@linux-sh.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Magnus Damm committed with gregkh Jan 27, 2010
  18. @gregkh

    block: fix bugs in bio-integrity mempool usage

    commit 9e9432c upstream.
    
    Fix two bugs in the bio integrity code:
    
     use_bip_pool() always returns 0 because it checks against the wrong limit,
     causing the mempool to be used only when regular allocation fails.
    
     When the mempool is used as a fallback we don't free the data properly.
    
    Signed-Off-By: Chuck Ebbert <cebbert@redhat.com>
    Acked-by: Martin K. Petersen <martin.petersen@oracle.com>
    
    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Chuck Ebbert committed with gregkh Jan 30, 2010
  19. @herbertx @gregkh

    random: Remove unused inode variable

    commit cd1510c upstream.
    
    The previous changeset left behind an unused inode variable.
    This patch removes it.
    
    Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    herbertx committed with gregkh Feb 1, 2010
  20. @gregkh

    random: drop weird m_time/a_time manipulation

    commit a996996 upstream.
    
    No other driver does anything remotely like this that I know of except
    for the tty drivers, and I can't see any reason for random/urandom to do
    it. In fact, it's a (trivial, harmless) timing information leak. And
    obviously, it generates power- and flash-cycle wasting I/O, especially
    if combined with something like hwrngd. Also, it breaks ubifs's
    expectations.
    
    Signed-off-by: Matt Mackall <mpm@selenic.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Matt Mackall committed with gregkh Jan 29, 2010
  21. @torvalds @gregkh

    Fix 'flush_old_exec()/setup_new_exec()' split

    commit 7ab02af upstream.
    
    Commit 221af7f ("Split 'flush_old_exec' into two functions") split
    the function at the point of no return - ie right where there were no
    more error cases to check.  That made sense from a technical standpoint,
    but when we then also combined it with the actual personality setting
    going in between flush_old_exec() and setup_new_exec(), it needs to be a
    bit more careful.
    
    In particular, we need to make sure that we really flush the old
    personality bits in the 'flush' stage, rather than later in the 'setup'
    stage, since otherwise we might be flushing the _new_ personality state
    that we're just setting up.
    
    So this moves the flags and personality flushing (and 'flush_thread()',
    which is the arch-specific function that generally resets lazy FP state
    etc) of the old process into flush_old_exec(), so that it doesn't affect
    any state that execve() is setting up for the new process environment.
    
    This was reported by Michal Simek as breaking his Microblaze qemu
    environment.
    
    Reported-and-tested-by: Michal Simek <michal.simek@petalogix.com>
    Cc: Peter Anvin <hpa@zytor.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    torvalds committed with gregkh Feb 2, 2010
  22. @dmonakhov @gregkh

    block: fix bio_add_page for non trivial merge_bvec_fn case

    commit 1d61658 upstream.
    
    We have to properly decrease bi_size in order to merge_bvec_fn return
    right result.  Otherwise this result in false merge rejects for two
    absolutely valid bio_vecs.  This may cause significant performance
    penalty for example fs_block_size == 1k and block device is raid0 with
    small chunk_size = 8k. Then it is impossible to merge 7-th fs-block in
    to bio which already has 6 fs-blocks.
    
    Signed-off-by: Dmitry Monakhov <dmonakhov@openvz.org>
    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    dmonakhov committed with gregkh Jan 27, 2010
  23. @gregkh

    mm: purge fragmented percpu vmap blocks

    commit 02b709d upstream.
    
    Improve handling of fragmented per-CPU vmaps.  We previously don't free
    up per-CPU maps until all its addresses have been used and freed.  So
    fragmented blocks could fill up vmalloc space even if they actually had
    no active vmap regions within them.
    
    Add some logic to allow all CPUs to have these blocks purged in the case
    of failure to allocate a new vm area, and also put some logic to trim
    such blocks of a current CPU if we hit them in the allocation path (so
    as to avoid a large build up of them).
    
    Christoph reported some vmap allocation failures when using the per CPU
    vmap APIs in XFS, which cannot be reproduced after this patch and the
    previous bug fix.
    
    Cc: linux-mm@kvack.org
    Tested-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Nick Piggin <npiggin@suse.de>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Nick Piggin committed with gregkh Feb 1, 2010
  24. @gregkh

    mm: percpu-vmap fix RCU list walking

    commit de56042 upstream.
    
    RCU list walking of the per-cpu vmap cache was broken.  It did not use
    RCU primitives, and also the union of free_list and rcu_head is
    obviously wrong (because free_list is indeed the list we are RCU
    walking).
    
    While we are there, remove a couple of unused fields from an earlier
    iteration.
    
    These APIs aren't actually used anywhere, because of problems with the
    XFS conversion.  Christoph has now verified that the problems are solved
    with these patches.  Also it is an exported interface, so I think it
    will be good to be merged now (and Christoph wants to get the XFS
    changes into their local tree).
    
    Cc: linux-mm@kvack.org
    Tested-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: Nick Piggin <npiggin@suse.de>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Nick Piggin committed with gregkh Feb 1, 2010
  25. @htejun @gregkh

    libata: retry link resume if necessary

    commit 5040ab6 upstream.
    
    Interestingly, when SIDPR is used in ata_piix, writes to DET in
    SControl sometimes get ignored leading to detection failure.  Update
    sata_link_resume() such that it reads back SControl after clearing DET
    and retry if it's not clear.
    
    Signed-off-by: Tejun Heo <tj@kernel.org>
    Reported-by: fengxiangjun <fengxiangjun@neusoft.com>
    Reported-by: Jim Faulkner <jfaulkne@ccs.neu.edu>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    htejun committed with gregkh Jan 11, 2010
  26. @gregkh

    oprofile/x86: fix crash when profiling more than 28 events

    commit d8cc108 upstream.
    
    With multiplexing enabled oprofile crashs when profiling more than 28
    events. This patch fixes this.
    
    Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
    Signed-off-by: Robert Richter <robert.richter@amd.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Suravee Suthikulpanit committed with gregkh Jan 18, 2010
  27. @gregkh

    oprofile/x86: add Xeon 7500 series support

    commit e83e452 upstream.
    
    Add Xeon 7500 series support to oprofile.
    
    Straight forward: it's the same as Core i7, so just detect
    the model number. No user space changes needed.
    
    Signed-off-by: Andi Kleen <ak@linux.intel.com>
    Signed-off-by: Robert Richter <robert.richter@amd.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Andi Kleen committed with gregkh Jan 21, 2010
  28. @gregkh

    KVM: allow userspace to adjust kvmclock offset

    (cherry picked from afbcf7a)
    
    When we migrate a kvm guest that uses pvclock between two hosts, we may
    suffer a large skew. This is because there can be significant differences
    between the monotonic clock of the hosts involved. When a new host with
    a much larger monotonic time starts running the guest, the view of time
    will be significantly impacted.
    
    Situation is much worse when we do the opposite, and migrate to a host with
    a smaller monotonic clock.
    
    This proposed ioctl will allow userspace to inform us what is the monotonic
    clock value in the source host, so we can keep the time skew short, and
    more importantly, never goes backwards. Userspace may also need to trigger
    the current data, since from the first migration onwards, it won't be
    reflected by a simple call to clock_gettime() anymore.
    
    [marcelo: future-proof abi with a flags field]
    [jan: fix KVM_GET_CLOCK by clearing flags field instead of checking it]
    
    Signed-off-by: Glauber Costa <glommer@redhat.com>
    Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
    Signed-off-by: Avi Kivity <avi@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Glauber Costa committed with gregkh Feb 1, 2010
  29. @gregkh

    ax25: netrom: rose: Fix timer oopses

    [ Upstream commit d00c362 ]
    
    Wrong ax25_cb refcounting in ax25_send_frame() and by its callers can
    cause timer oopses (first reported with 2.6.29.6 kernel).
    
    Fixes: http://bugzilla.kernel.org/show_bug.cgi?id=14905
    
    Reported-by: Bernard Pidoux <bpidoux@free.fr>
    Tested-by: Bernard Pidoux <bpidoux@free.fr>
    Signed-off-by: Jarek Poplawski <jarkao2@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Jarek Poplawski committed with gregkh Jan 16, 2010
  30. @gregkh

    af_packet: Don't use skb after dev_queue_xmit()

    [ Upstream commit eb70df1 ]
    
    tpacket_snd() can change and kfree an skb after dev_queue_xmit(),
    which is illegal.
    
    With debugging by: Stephen Hemminger <shemminger@vyatta.com>
    
    Reported-by: Michael Breuer <mbreuer@majjas.com>
    With help from: David S. Miller <davem@davemloft.net>
    Signed-off-by: Jarek Poplawski <jarkao2@gmail.com>
    Tested-by: Michael Breuer<mbreuer@majjas.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Jarek Poplawski committed with gregkh Jan 10, 2010
  31. @gregkh

    net: restore ip source validation

    [ Upstream commit 28f6aee ]
    
    when using policy routing and the skb mark:
    there are cases where a back path validation requires us
    to use a different routing table for src ip validation than
    the one used for mapping ingress dst ip.
    One such a case is transparent proxying where we pretend to be
    the destination system and therefore the local table
    is used for incoming packets but possibly a main table would
    be used on outbound.
    Make the default behavior to allow the above and if users
    need to turn on the symmetry via sysctl src_valid_mark
    
    Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Jamal Hadi Salim committed with gregkh Dec 25, 2009
  32. @gregkh

    sky2: Fix oops in sky2_xmit_frame() after TX timeout

    [ Upstream commit 9db2f1b ]
    
    During TX timeout procedure dev could be awoken too early, e.g. by
    sky2_complete_tx() called from sky2_down(). Then sky2_xmit_frame()
    can run while buffers are freed causing an oops. This patch fixes it
    by adding netif_device_present() test in sky2_tx_complete().
    
    Fixes: http://bugzilla.kernel.org/show_bug.cgi?id=14925
    
    With debugging by: Mike McCormack <mikem@ring3k.org>
    
    Reported-by: Berck E. Nash <flyboy@gmail.com>
    Tested-by: Berck E. Nash <flyboy@gmail.com>
    Signed-off-by: Jarek Poplawski <jarkao2@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Jarek Poplawski committed with gregkh Jan 4, 2010
  33. @gregkh

    tcp: update the netstamp_needed counter when cloning sockets

    [ Upstream commit 704da56 ]
    
    This fixes a netstamp_needed accounting issue when the listen socket
    has SO_TIMESTAMP set:
    
        s = socket(AF_INET, SOCK_STREAM, 0);
        setsockopt(s, SOL_SOCKET, SO_TIMESTAMP, 1); -> netstamp_needed = 1
        bind(s, ...);
        listen(s, ...);
        s2 = accept(s, ...); -> netstamp_needed = 1
        close(s2); -> netstamp_needed = 0
        close(s); -> netstamp_needed = -1
    
    Signed-off-by: Octavian Purdila <opurdila@ixiacom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Octavian Purdila committed with gregkh Jan 8, 2010
  34. @aakoskin @gregkh

    clocksource: fix compilation if no GENERIC_TIME

    commit a362c63 upstream
    
    Commit a9238ce broke compilation on
    platforms that do not implement GENERIC_TIME (e.g. iop32x):
    
      kernel/time/clocksource.c: In function 'clocksource_register':
      kernel/time/clocksource.c:556: error: implicit declaration of function 'clocksource_max_deferment'
    
    Provide the implementation of clocksource_max_deferment() also for
    such platforms.
    
    Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    aakoskin committed with gregkh Feb 1, 2010
  35. @gregkh

    x86/amd-iommu: Fix possible integer overflow

    commit d91afd1 upstream.
    
    The variable i in this function could be increased to over
    2**32 which would result in an integer overflow when using
    int. Fix it by changing i to unsigned long.
    
    Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Joerg Roedel committed with gregkh Jan 22, 2010
Something went wrong with that request. Please try again.