Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Sep 21, 2011
  1. Linux 3.1-rc7

    authored
  2. XZ: Fix incorrect XZ_BUF_ERROR

    Lasse Collin authored committed
    xz_dec_run() could incorrectly return XZ_BUF_ERROR if all of the
    following was true:
    
     - The caller knows how many bytes of output to expect and only provides
       that much output space.
    
     - When the last output bytes are decoded, the caller-provided input
       buffer ends right before the LZMA2 end of payload marker.  So LZMA2
       won't provide more output anymore, but it won't know it yet and thus
       won't return XZ_STREAM_END yet.
    
     - A BCJ filter is in use and it hasn't left any unfiltered bytes in the
       temp buffer.  This can happen with any BCJ filter, but in practice
       it's more likely with filters other than the x86 BCJ.
    
    This fixes <https://bugzilla.redhat.com/show_bug.cgi?id=735408> where
    Squashfs thinks that a valid file system is corrupt.
    
    This also fixes a similar bug in single-call mode where the uncompressed
    size of a block using BCJ + LZMA2 was 0 bytes and caller provided no
    output space.  Many empty .xz files don't contain any blocks and thus
    don't trigger this bug.
    
    This also tweaks a closely related detail: xz_dec_bcj_run() could call
    xz_dec_lzma2_run() to decode into temp buffer when it was known to be
    useless.  This was harmless although it wasted a minuscule number of CPU
    cycles.
    
    Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
    Cc: stable <stable@kernel.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  3. Merge git://github.com/davem330/net

    authored
    * git://github.com/davem330/net: (27 commits)
      xfrm: Perform a replay check after return from async codepaths
      fib:fix BUG_ON in fib_nl_newrule when add new fib rule
      ixgbe: fix possible null buffer error
      tg3: fix VLAN tagging regression
      net: pxa168: Fix build errors by including interrupt.h
      netconsole: switch init_netconsole() to late_initcall
      gianfar: Fix overflow check and return value for gfar_get_cls_all()
      ppp_generic: fix multilink fragment MTU calculation (again)
      GRETH: avoid overwrite IP-stack's IP-frags checksum
      GRETH: RX/TX bytes were never increased
      ipv6: fix a possible double free
      b43: Fix beacon problem in ad-hoc mode
      Bluetooth: add support for 2011 mac mini
      Bluetooth: Add MacBookAir4,1 support
      Bluetooth: Fixed BT ST Channel reg order
      r8169: do not enable the TBI for anything but the original 8169.
      r8169: remove erroneous processing of always set bit.
      r8169: fix WOL setting for 8105 and 8111evl
      r8169: add MODULE_FIRMWARE for the firmware of 8111evl
      r8169: fix the reset setting for 8111evl
      ...
  4. Merge branch 'for-linus' of git://git.kernel.dk/linux-block

    authored
    * 'for-linus' of git://git.kernel.dk/linux-block:
      floppy: use del_timer_sync() in init cleanup
      blk-cgroup: be able to remove the record of unplugged device
      block: Don't check QUEUE_FLAG_SAME_COMP in __blk_complete_request
      mm: Add comment explaining task state setting in bdi_forker_thread()
      mm: Cleanup clearing of BDI_pending bit in bdi_forker_thread()
      block: simplify force plug flush code a little bit
      block: change force plug flush call order
      block: Fix queue_flag update when rq_affinity goes from 2 to 1
      block: separate priority boosting from REQ_META
      block: remove READ_META and WRITE_META
      xen-blkback: fixed indentation and comments
      xen-blkback: Don't disconnect backend until state switched to XenbusStateClosed.
  5. init: carefully handle loglevel option on kernel cmdline.

    Alexander Sverdlin authored committed
    When a malformed loglevel value (for example "${abc}") is passed on the
    kernel cmdline, the loglevel itself is being set to 0.
    
    That then suppresses all following messages, including all the errors
    and crashes caused by other malformed cmdline options.  This could make
    debugging process quite tricky.
    
    This patch leaves the previous value of loglevel if the new value is
    incorrect and reports an error code in this case.
    
    Signed-off-by: Alexander Sverdlin <alexander.sverdlin@sysgo.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  6. teach /proc/$pid/numa_maps about transparent hugepages

    Dave Hansen authored committed
    This is modeled after the smaps code.
    
    It detects transparent hugepages and then does a single gather_stats()
    for the page as a whole.  This has two benifits:
     1. It is more efficient since it does many pages in a single shot.
     2. It does not have to break down the huge page.
    
    Signed-off-by: Dave Hansen <dave@linux.vnet.ibm.com>
    Acked-by: Hugh Dickins <hughd@google.com>
    Acked-by: David Rientjes <rientjes@google.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  7. break out numa_maps gather_pte_stats() checks

    Dave Hansen authored committed
    gather_pte_stats() does a number of checks on a target page
    to see whether it should even be considered for statistics.
    This breaks that code out in to a separate function so that
    we can use it in the transparent hugepage case in the next
    patch.
    
    Signed-off-by: Dave Hansen <dave@linux.vnet.ibm.com>
    Acked-by: Hugh Dickins <hughd@google.com>
    Reviewed-by: Christoph Lameter <cl@gentwo.org>
    Acked-by: David Rientjes <rientjes@google.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  8. make /proc/$pid/numa_maps gather_stats() take variable page size

    Dave Hansen authored committed
    We need to teach the numa_maps code about transparent huge pages.  The
    first step is to teach gather_stats() that the pte it is dealing with
    might represent more than one page.
    
    Note that will we use this in a moment for transparent huge pages since
    they have use a single pmd_t which _acts_ as a "surrogate" for a bunch
    of smaller pte_t's.
    
    I'm a _bit_ unhappy that this interface counts in hugetlbfs page sizes
    for hugetlbfs pages and PAGE_SIZE for normal pages.  That means that to
    figure out how many _bytes_ "dirty=1" means, you must first know the
    hugetlbfs page size.  That's easier said than done especially if you
    don't have visibility in to the mount.
    
    But, that's probably a discussion for another day especially since it
    would change behavior to fix it.  But, just in case anyone wonders why
    this patch only passes a '1' in the hugetlb case...
    
    Signed-off-by: Dave Hansen <dave@linux.vnet.ibm.com>
    Acked-by: Hugh Dickins <hughd@google.com>
    Acked-by: David Rientjes <rientjes@google.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  9. @davem330

    xfrm: Perform a replay check after return from async codepaths

    Steffen Klassert authored davem330 committed
    When asyncronous crypto algorithms are used, there might be many
    packets that passed the xfrm replay check, but the replay advance
    function is not called yet for these packets. So the replay check
    function would accept a replay of all of these packets. Also the
    system might crash if there are more packets in async processing
    than the size of the anti replay window, because the replay advance
    function would try to update the replay window beyond the bounds.
    
    This pach adds a second replay check after resuming from the async
    processing to fix these issues.
    
    Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
    Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  10. @davem330

    fib:fix BUG_ON in fib_nl_newrule when add new fib rule

    Gao feng authored davem330 committed
    add new fib rule can cause BUG_ON happen
    the reproduce shell is
    ip rule add pref 38
    ip rule add pref 38
    ip rule add to 192.168.3.0/24 goto 38
    ip rule del pref 38
    ip rule add to 192.168.3.0/24 goto 38
    ip rule add pref 38
    
    then the BUG_ON will happen
    del BUG_ON and use (ctarget == NULL) identify whether this rule is unresolved
    
    Signed-off-by: Gao feng <gaofeng@cn.fujitsu.com>
    Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  11. @axboe

    floppy: use del_timer_sync() in init cleanup

    Carsten Emde authored axboe committed
    When no floppy is found the module code can be released while a timer
    function is pending or about to be executed.
    
    CPU0                                  CPU1
    				      floppy_init()
    timer_softirq()
       spin_lock_irq(&base->lock);
       detach_timer();
       spin_unlock_irq(&base->lock);
       -> Interrupt
    					del_timer();
    				        return -ENODEV;
                                          module_cleanup();
       <- EOI
       call_timer_fn();
       OOPS
    
    Use del_timer_sync() to prevent this.
    
    Signed-off-by: Carsten Emde <C.Emde@osadl.org>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Cc: Jens Axboe <axboe@kernel.dk>
    Cc: <stable@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
  12. @gaowanlong @axboe

    blk-cgroup: be able to remove the record of unplugged device

    gaowanlong authored axboe committed
    The bug is we're not able to remove the device from blkio cgroup's
    per-device control files if it gets unplugged.
    
    To reproduce the bug:
    
      # mount -t cgroup -o blkio xxx /cgroup
      # cd /cgroup
      # echo "8:0 1000" > blkio.throttle.read_bps_device
      # unplug the device
      # cat blkio.throttle.read_bps_device
      8:0	1000
      # echo "8:0 0" > blkio.throttle.read_bps_device
      -bash: echo: write error: No such device
    
    After patching, the device removal will succeed.
    
    Thanks for the comments of Paul, Zefan, and Vivek.
    
    Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
    Cc: Li Zefan <lizf@cn.fujitsu.com>
    Cc: Paul Menage <paul@paulmenage.org>
    Acked-by: Vivek Goyal <vgoyal@redhat.com>
    Cc: Jens Axboe <axboe@kernel.dk>
    Cc: <stable@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
  13. @jbrandeb @davem330

    ixgbe: fix possible null buffer error

    jbrandeb authored davem330 committed
    It seems that at least one PPC machine would occasionally give a (valid) 0 as
    the return value from dma_map, this caused the ixgbe code to not work
    correctly.  A fix is pending in the PPC tree to not return 0 from dma map, but
    we can also fix the driver to make sure we don't mess up in other arches as
    well.
    
    This patch is applicable to all current stable kernels.
    
    Ref: https://bugzilla.redhat.com/show_bug.cgi?id=683611
    
    Reported-by: Neil Horman <nhorman@redhat.com>
    Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
    CC: Alexander Duyck <alexander.h.duyck@intel.com>
    CC: stable@kernel.org
    Tested-by: Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
    Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  14. @kkpdk @davem330

    tg3: fix VLAN tagging regression

    kkpdk authored davem330 committed
    commit 92cd3a1
        tg3: Simplify tx bd assignments
    
    broke VLAN tagging on outbound packets.
    It ifdef'ed BCM_KERNEL_SUPPORTS_8021Q, but this
    is not set anywhere. So vlan never gets set, and
    all packets are sent with vlan=0.
    
    v2: We can just remove the test. vlan_tx_tag_present
    is valid regardless of whether the 802.1q module
    is built.
    
    Tested on BCM5721 rev 11.
    
    Signed-off-by: Kasper Pedersen <kernel@kasperkp.dk>
    Signed-off-by: David S. Miller <davem@davemloft.net>
Commits on Sep 20, 2011
  1. Merge branch 'fixes' of git://git.linaro.org/people/arnd/arm-soc

    authored
    * 'fixes' of git://git.linaro.org/people/arnd/arm-soc:
      mach-integrator: fix VGA base regression
      arm/dt: Tegra: Update SDHCI nodes to match bindings
      ARM: EXYNOS4: fix incorrect pad configuration for keypad row lines
      ARM: SAMSUNG: fix to prevent declaring duplicated
      ARM: SAMSUNG: fix watchdog reset issue with clk_get()
      ARM: S3C64XX: Remove un-used code backlight code on SMDK6410
      ARM: EXYNOS4: restart clocksource while system resumes
      ARM: EXYNOS4: Fix routing timer interrupt to offline CPU
      ARM: EXYNOS4: Fix return type of local_timer_setup()
      ARM: EXYNOS4: Fix wrong pll type for vpll
      ARM: Dove: fix second SPI initialization call
  2. Merge branch 'for-linus' of git://github.com/chrismason/linux

    authored
    * 'for-linus' of git://github.com/chrismason/linux:
      Btrfs: reserve sufficient space for ioctl clone
  3. staging: zcache: fix cleancache crash

    Seth Jennings authored committed
    After commit c5f5c4d ("staging: zcache: fix crash on high memory
    swap") cleancache crashes on the first successful get.  This was caused
    by a remaining virt_to_page() call in zcache_pampd_get_data_and_free()
    that only gets run in the cleancache path.
    
    The patch converts the virt_to_page() to struct page casting like was
    done for other instances in c5f5c4d.
    
    Signed-off-by: Seth Jennings <sjenning@linux.vnet.ibm.com>
    Tested-By: Valdis Kletnieks <valdis.kletnieks@vt.edu>
    Acked-by: Dan Magenheimer <dan.magenheimer@oracle.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  4. @linusw @arndb

    mach-integrator: fix VGA base regression

    linusw authored arndb committed
    The changes introduced in commit
    cc22b4c
    "ARM: set vga memory base at run-time"
    
    Makes the Integrator/AP freeze completely. I appears that
    this is due to the VGA base address being assigned at PCI
    init time, while this base is needed earlier than that.
    Moving the initialization of the base address to the
    .map_io function solves this problem.
    
    Cc: Rob Herring <rob.herring@calxeda.com>
    Cc: Nicolas Pitre <nicolas.pitre@linaro.org>
    Cc: Arnd Bergmann <arnd@arndb.de>
    Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
    Acked-by: Rob Herring <rob.herring@calxeda.com>
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
  5. @swarren @arndb

    arm/dt: Tegra: Update SDHCI nodes to match bindings

    swarren authored arndb committed
    The bindings were recently updated to have separate properties for each
    type of GPIO. Update the Device Tree source to match that.
    
    Signed-off-by: Stephen Warren <swarren@nvidia.com>
    Acked-by: Olof Johansson <olof@lixom.net>
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
  6. @tanmayupadhyay @davem330

    net: pxa168: Fix build errors by including interrupt.h

    tanmayupadhyay authored davem330 committed
    Commit a6b7a40 removed
    linux/interrupt.h from netdevice.h. This fixes below build failure
    
    drivers/net/pxa168_eth.c: In function 'pxa168_eth_collect_events':
    drivers/net/pxa168_eth.c:866: error: 'IRQ_NONE' undeclared (first use in this function)
    drivers/net/pxa168_eth.c:866: error: (Each undeclared identifier is reported only once
    drivers/net/pxa168_eth.c:866: error: for each function it appears in.)
    drivers/net/pxa168_eth.c: At top level:
    drivers/net/pxa168_eth.c:913: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'pxa168_eth_int_handler'
    drivers/net/pxa168_eth.c: In function 'pxa168_eth_open':
    drivers/net/pxa168_eth.c:1133: error: implicit declaration of function 'request_irq'
    drivers/net/pxa168_eth.c:1133: error: 'pxa168_eth_int_handler' undeclared (first use in this function)
    drivers/net/pxa168_eth.c:1134: error: 'IRQF_DISABLED' undeclared (first use in this function)
    drivers/net/pxa168_eth.c:1160: error: implicit declaration of function 'free_irq'
    
    Signed-off-by: Tanmay Upadhyay <tanmay.upadhyay@einfochips.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  7. @davem330

    netconsole: switch init_netconsole() to late_initcall

    Lin Ming authored davem330 committed
    Commit 88491d8(drivers/net: Kconfig & Makefile cleanup) causes a
    regression that netconsole does not work if netconsole and network
    device driver are build into kernel, because netconsole is linked
    before network device driver.
    
    Andrew Morton suggested to fix this with initcall ordering.
    Fixes it by switching init_netconsole() to late_initcall.
    
    Signed-off-by: Lin Ming <ming.m.lin@intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  8. @davem330

    gianfar: Fix overflow check and return value for gfar_get_cls_all()

    Ben Hutchings authored davem330 committed
    This function may currently fill one entry beyond the end of the
    array it is given.  It also doesn't return an error code in case
    it does detect overflow.
    
    Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  9. @davem330

    ppp_generic: fix multilink fragment MTU calculation (again)

    Henry Wong authored davem330 committed
    When using MLPPP, the maximum size of a fragment is incorrectly
    calculated with an offset of -2.
    This patch reverses the changes in the patch found here:
    http://marc.info/?l=linux-netdev&m=123541324010539&w=2
    
    The value of hdrlen includes the size of both the 2-byte PPP protocol
    field and the 2- or 4-byte multilink header (2+4=6 for long sequence
    numbers, 2+2=4 for short sequence numbers). Section 2 of RFC1661 says
    that the MRU that is negotiated (i.e., the MTU of the sending system)
    includes only the PPP payload but not the protocol field, thus the
    correct MTU should be the link's MTU minus the multilink header (mtu -
    (hdrlen-2)).
    
    The incorrect calculation causes Linux to fragment packets to a size two
    bytes smaller than the allowed MTU. While not technically illegal, this
    behaviour confounds MRU-tuning to avoid PPP-layer fragmentation.
    
    Signed-off-by: Henry Wong <henry@stuffedcow.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  10. @daniel-hellstrom @davem330

    GRETH: avoid overwrite IP-stack's IP-frags checksum

    daniel-hellstrom authored davem330 committed
    The GRETH GBIT core does not do checksum offloading for IP
    segmentation. This patch adds a check in the xmit function to
    determine if the stack has calculated the checksum for us.
    
    Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  11. @daniel-hellstrom @davem330

    GRETH: RX/TX bytes were never increased

    daniel-hellstrom authored davem330 committed
    Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  12. @davem330

    ipv6: fix a possible double free

    Roy Li authored davem330 committed
    When calling snmp6_alloc_dev fails, the snmp6 relevant memory
    are freed by snmp6_alloc_dev. Calling in6_dev_finish_destroy
    will free these memory twice.
    
    Double free will lead that undefined behavior occurs.
    
    Signed-off-by: Roy Li <rongqing.li@windriver.com>
    Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  13. @chrismason-xx
  14. @liewegas @chrismason-xx

    Btrfs: reserve sufficient space for ioctl clone

    liewegas authored chrismason-xx committed
    Fix a crash/BUG_ON in the clone ioctl due to insufficient reservation. We
    need to reserve space for:
    
     - adjusting the old extent (possibly splitting it)
     - adding the new extent
     - updating the inode
    
    Signed-off-by: Sage Weil <sage@newdream.net>
    Signed-off-by: Chris Mason <chris.mason@oracle.com>
  15. @davem330
  16. Merge git://git.samba.org/sfrench/cifs-2.6

    authored
    * git://git.samba.org/sfrench/cifs-2.6:
      cifs: Fix broken sec=ntlmv2/i sec option (try #2)
      Fix the conflict between rwpidforward and rw mount options
      CIFS: Fix ERR_PTR dereference in cifs_get_root
      cifs: fix possible memory corruption in CIFSFindNext
  17. Merge git://www.linux-watchdog.org/linux-watchdog

    authored
    * git://www.linux-watchdog.org/linux-watchdog:
      watchdog: Initconst section fixes for watchdog
      watchdog: lantiq: fix watchdogs timeout handling
      watchdog: hpwdt: prevent multiple "NMI occurred" messages
      watchdog: WatchDog Timer Driver Core - use passed watchdog_device
  18. Merge branch 'for-linus' of git://github.com/tiwai/sound

    authored
    * 'for-linus' of git://github.com/tiwai/sound:
      ALSA: HDA: Add support for IDT 92HD93
      ALSA: hda/realtek - Fix auto-mute with HP+LO configuration
  19. @linvjw
  20. watchdog: Initconst section fixes for watchdog

    Andi Kleen authored Wim Van Sebroeck committed
    Signed-off-by: Andi Kleen <ak@linux.intel.com>
    Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
  21. @blogic

    watchdog: lantiq: fix watchdogs timeout handling

    blogic authored Wim Van Sebroeck committed
    The enable function was using the global timeout variable for local operations.
    This resulted in the value of the global variable being corrupted, thus
    breaking the code.
    
    Signed-off-by: John Crispin <blogic@openwrt.org>
    Signed-off-by: Thomas Langer <thomas.langer@lantiq.com>
    Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
    Cc: linux-watchdog@vger.kernel.org
    Cc: linux-mips@linux-mips.org
Something went wrong with that request. Please try again.