Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tag: v2.6.29-rc5

Feb 13, 2009

  1. Linus Torvalds

    Linux 2.6.29-rc5

    torvalds authored
  2. Linus Torvalds

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/tiwai/sound-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
      ASoC: Only register AC97 bus if it's not done already
      ALSA: hda - Add snd_hda_multi_out_dig_cleanup()
      ALSA: hda - Add missing terminator in slave dig-out array
      ALSA: hda - Change HP dv7 (103c:30f4) quirk from hp-m4 to hp-dv5 model
      ALSA: hda - Register (new) devices at reconfig
      ALSA: mtpav - Fix initial value for input hwport
      ALSA: hda - add id for Intel IbexPeak integrated HDMI codec
      ALSA: hda - compute checksum in HDMI audio infoframe
      ALSA: hda - enable HDMI audio pin out at module loading time
      ALSA: hda - allow multi-channel HDMI audio playback when ELD is not present
      ASoC: Update SDP3430 machine driver for snd_soc_card
      ALSA: hda - Add quirk for Asus z37e (1043:8284)
      sound: Remove OSSlib stuff from linux/soundcard.h
      ASoC: WM8990: Fix kcontrol's private value use in put callback
      ASoC: TLV320AIC3X: Fix kcontrol's private value use in put callback
    torvalds authored
  3. User namespaces: Only put the userns when we unhash the uid

    uids in namespaces other than init don't get a sysfs entry.
    
    For those in the init namespace, while we're waiting to remove
    the sysfs entry for the uid the uid is still hashed, and
    alloc_uid() may re-grab that uid without getting a new
    reference to the user_ns, which we've already put in free_user
    before scheduling remove_user_sysfs_dir().
    
    Reported-and-tested-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
    Signed-off-by: Serge E. Hallyn <serue@us.ibm.com>
    Acked-by: David Howells <dhowells@redhat.com>
    Tested-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Serge E. Hallyn authored torvalds committed
  4. Takashi Iwai

    Merge branch 'fix/asoc' into for-linus

    tiwai authored
  5. Takashi Iwai

    Merge branch 'fix/hda' into for-linus

    tiwai authored
  6. Takashi Iwai

    Merge branch 'fix/misc' into for-linus

    tiwai authored
  7. Takashi Iwai

    Merge branch 'fix/oss-header-fix' into for-linus

    tiwai authored
  8. Mark Brown

    ASoC: Only register AC97 bus if it's not done already

    ASoC supports both explicit codec drivers for AC97 devices and a simple
    driver which uses the standard ALSA AC97 framework for codec support.
    When used with the generic AC97 codec support that will provide the
    ad hoc AC97 device for drivers like touchscreens to attach to so the
    core shouldn't do so.
    
    Reported-by: Manuel Lauss <mano@roarinelk.homelinux.net>
    Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
    broonie authored
  9. Takashi Iwai

    ALSA: hda - Add snd_hda_multi_out_dig_cleanup()

    Added the helper function snd_hda_multi_out_dig_cleanup() to clean up
    the digital outputs with multi setup.  This call is needed in cases
    the codec supports multiple digital outputs as slaves.  Otherwise the
    slave widgets aren't properly cleaned up.
    
    For a single digital output (e.g. in patch_conexant.c), this call isn't
    needed.
    
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    tiwai authored
  10. Takashi Iwai

    ALSA: hda - Add missing terminator in slave dig-out array

    Added the missing terminator for ad1989b_slave_dig_outs[].
    
    Cc: <stable@kernel.org>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    tiwai authored
  11. ALSA: hda - Change HP dv7 (103c:30f4) quirk from hp-m4 to hp-dv5 model

    Change HP dv7 quirk: although reported to work with hp-m4 model
    (https://bugzilla.novell.com/show_bug.cgi?id=445321), the original
    report doesn't contain info about testing of internal microphone.
    
    Recently I received a report about internal mic not working
    (https://qa.mandriva.com/show_bug.cgi?id=44855#c193), this must be
    related with the forced line in on pin 0x0e done with hp-m4 model. Thus
    change the current quirk from STAC_HP_M4 to STAC_HP_DV5, later reported
    to be fixed on a provided kernel with this change
    (https://qa.mandriva.com/show_bug.cgi?id=44855#c196).
    
    Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Herton Ronaldo Krzesinski authored tiwai committed
  12. Linus Torvalds

    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().
      ...
    torvalds authored
  13. wimax: fix oops in wimax_dev_get_by_genl_info() when looking up non-w…

    …imax 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>
    Inaky Perez-Gonzalez authored davem330 committed
  14. 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>
    Clément Lecigne authored davem330 committed
  15. netxen: fix compile waring "label ‘set_32_bit_mask’ defined but not u…

    …sed" 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>
    Yang Hongyang authored davem330 committed
  16. 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>
    Michael Chan authored davem330 committed
  17. 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>
    Michael Chan authored davem330 committed
  18. 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>
    Michael Chan authored davem330 committed
  19. 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>
    Michael Chan authored davem330 committed
  20. Roel Kluin

    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>
    RoelKluin authored davem330 committed
  21. 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>
    Andrew Morton authored davem330 committed
  22. 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>
    Andrew Morton authored davem330 committed
  23. Roel Kluin

    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>
    RoelKluin authored davem330 committed
  24. 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>
    Dhananjay Phadke authored davem330 committed
  25. Roel Kluin

    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>
    RoelKluin authored davem330 committed
  26. 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>
    Ron Mercer authored davem330 committed
  27. 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>
    Ron Mercer authored davem330 committed
  28. 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>
    Ron Mercer authored davem330 committed
  29. 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>
    Ron Mercer authored davem330 committed
  30. 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>
    Ron Mercer authored davem330 committed
  31. 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>
    Ron Mercer authored davem330 committed
  32. 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>
    Ron Mercer authored davem330 committed
  33. Roel Kluin

    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>
    RoelKluin authored davem330 committed

Feb 12, 2009

  1. Linus Torvalds

    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()
    torvalds authored
  2. Fix page writeback thinko, causing Berkeley DB slowdown

    A bug was introduced into write_cache_pages cyclic writeout by commit
    31a1266 ("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>
    Nick Piggin authored torvalds committed
Something went wrong with that request. Please try again.