Skip to content
Commits on Nov 3, 2009
  1. @torvalds

    Linux 2.6.32-rc6

    torvalds committed
  2. @torvalds

    Merge branch 'for-linus' of git://github.com/at91linux/linux-2.6-at91

    torvalds committed
    * 'for-linus' of git://github.com/at91linux/linux-2.6-at91:
      at91: at91sam9g45 family: identify several chip versions
      avr32: add two new at91 to cpu.h definition
  3. @noglitch

    at91: at91sam9g45 family: identify several chip versions

    noglitch committed
    cpu_is_xxx() macros are identifying generic at91sam9g45 chip. This patch adds
    the capacity to differentiate Engineering Samples and final lots through the
    inclusion of  at91_cpu_fully_identify() and the related chip IDs with chip
    version field preserved.
    
    Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
    Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
    Acked-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
  4. @noglitch

    avr32: add two new at91 to cpu.h definition

    noglitch committed
    Somme common drivers will need those at91 cpu_is_xxx() definitions. As
    at91sam9g10 and at91sam9g45 are on the way to linus' tree, here is the patch
    that adds those chips to cpu.h in AVR32 architecture.
    
    Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
    Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
  5. @torvalds

    Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-…

    torvalds committed
    …linus
    
    * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (38 commits)
      MIPS: O32: Fix ppoll
      MIPS: Oprofile: Rename cpu_type from godson2 to loongson2
      MIPS: Alchemy: Fix hang with high-frequency edge interrupts
      MIPS: TXx9: Fix spi-baseclk value
      MIPS: bcm63xx: Set the correct BCM3302 CPU name
      MIPS: Loongson 2: Set cpu_has_dc_aliases and cpu_icache_snoops_remote_store
      MIPS: Avoid potential hazard on Context register
      MIPS: Octeon: Use lockless interrupt controller operations when possible.
      MIPS: Octeon: Use write_{un,}lock_irq{restore,save} to set irq affinity
      MIPS: Set S-cache linesize to 64-bytes for MTI's S-cache
      MIPS: SMTC: Avoid queing multiple reschedule IPIs
      MIPS: GCMP: Avoid accessing registers when they are not present
      MIPS: GIC: Random fixes and enhancements.
      MIPS: CMP: Fix memory barriers for correct operation of amon_cpu_start
      MIPS: Fix abs.[sd] and neg.[sd] emulation for NaN operands
      MIPS: SPRAM: Clean up support code a little
      MIPS: 1004K: Enable SPRAM support.
      MIPS: Malta: Enable PCI 2.1 compatibility in PIIX4
      MIPS: Kconfig: Fix duplicate default value for MIPS_L1_CACHE_SHIFT.
      MIPS: MTI: Fix accesses to device registers on MIPS boards
      ...
  6. @torvalds

    Merge branch 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/…

    torvalds committed
    …git/rafael/suspend-2.6
    
    * 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:
      PM: Remove some debug messages producing too much noise
      PM: Fix warning on suspend errors
      PM / Hibernate: Add newline to load_image() fail path
      PM / Hibernate: Fix error handling in save_image()
      PM / Hibernate: Fix blkdev refleaks
      PM / yenta: Split resume into early and late parts (rev. 4)
  7. @torvalds

    Correct nr_processes() when CPUs have been unplugged

    Ian Campbell committed with torvalds
    nr_processes() returns the sum of the per cpu counter process_counts for
    all online CPUs. This counter is incremented for the current CPU on
    fork() and decremented for the current CPU on exit(). Since a process
    does not necessarily fork and exit on the same CPU the process_count for
    an individual CPU can be either positive or negative and effectively has
    no meaning in isolation.
    
    Therefore calculating the sum of process_counts over only the online
    CPUs omits the processes which were started or stopped on any CPU which
    has since been unplugged. Only the sum of process_counts across all
    possible CPUs has meaning.
    
    The only caller of nr_processes() is proc_root_getattr() which
    calculates the number of links to /proc as
            stat->nlink = proc_root.nlink + nr_processes();
    
    You don't have to be all that unlucky for the nr_processes() to return a
    negative value leading to a negative number of links (or rather, an
    apparently enormous number of links). If this happens then you can get
    failures where things like "ls /proc" start to fail because they got an
    -EOVERFLOW from some stat() call.
    
    Example with some debugging inserted to show what goes on:
            # ps haux|wc -l
            nr_processes: CPU0:     90
            nr_processes: CPU1:     1030
            nr_processes: CPU2:     -900
            nr_processes: CPU3:     -136
            nr_processes: TOTAL:    84
            proc_root_getattr. nlink 12 + nr_processes() 84 = 96
            84
            # echo 0 >/sys/devices/system/cpu/cpu1/online
            # ps haux|wc -l
            nr_processes: CPU0:     85
            nr_processes: CPU2:     -901
            nr_processes: CPU3:     -137
            nr_processes: TOTAL:    -953
            proc_root_getattr. nlink 12 + nr_processes() -953 = -941
            75
            # stat /proc/
            nr_processes: CPU0:     84
            nr_processes: CPU2:     -901
            nr_processes: CPU3:     -137
            nr_processes: TOTAL:    -954
            proc_root_getattr. nlink 12 + nr_processes() -954 = -942
              File: `/proc/'
              Size: 0               Blocks: 0          IO Block: 1024   directory
            Device: 3h/3d   Inode: 1           Links: 4294966354
            Access: (0555/dr-xr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
            Access: 2009-11-03 09:06:55.000000000 +0000
            Modify: 2009-11-03 09:06:55.000000000 +0000
            Change: 2009-11-03 09:06:55.000000000 +0000
    
    I'm not 100% convinced that the per_cpu regions remain valid for offline
    CPUs, although my testing suggests that they do. If not then I think the
    correct solution would be to aggregate the process_count for a given CPU
    into a global base value in cpu_down().
    
    This bug appears to pre-date the transition to git and it looks like it
    may even have been present in linux-2.6.0-test7-bk3 since it looks like
    the code Rusty patched in http://lwn.net/Articles/64773/ was already
    wrong.
    
    Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Rusty Russell <rusty@rustcorp.com.au>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  8. @torvalds

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

    torvalds committed
    …/git/dtor/input
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
      Input: gpio-keys - use IRQF_SHARED
      Input: winbond-cir - select LEDS_TRIGGERS
      Input: i8042 - try to get stable CTR value when initializing
      Input: atkbd - add a quirk for OQO 01+ multimedia keys
  9. @torvalds

    Merge branch 'fixes-s3c-2632-rc5' of git://git.fluff.org/bjdooks/linux

    torvalds committed
    * 'fixes-s3c-2632-rc5' of git://git.fluff.org/bjdooks/linux:
      ARM: S3C2410: Fix sparse warnings in arch/arm/mach-s3c2410/gpio.c
      ARM: S3C2440: mini2440: Fix spare warnings
      ARM: S3C24XX: Fix warnings in arch/arm/plat-s3c24xx/gpio.c
      ARM: S3C2440: mini2440: Fix missing CONFIG_S3C_DEV_USB_HOST
      ARM: S3C24XX: arch/arm/plat-s3c24xx: Move dereference after NULL test
      ARM: S3C: Fix adc function exports
      ARM: S3C2410: Fix link if CONFIG_S3C2410_IOTIMING is not set
      ARM: S3C24XX: Introduce S3C2442B CPU
      ARM: S3C24XX: Define a macro to avoid compilation error
      ARM: S3C: Add info for supporting circular DMA buffers
      ARM: S3C64XX: Set rate of crystal mux
      ARM: S3C64XX: Fix S3C64XX_CLKDIV0_ARM_MASK value
  10. @torvalds

    Merge branch 'i2c-fixes' of git://git.fluff.org/bjdooks/linux

    torvalds committed
    * 'i2c-fixes' of git://git.fluff.org/bjdooks/linux:
      i2c-mpc: Do not generate STOP after read.
      i2c: imx: disable clock when it's possible to save power.
      i2c: imx: only imx1 needs disable delay
      i2c: imx: check busy bit when START/STOP
  11. @torvalds

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

    torvalds committed
    …/git/ryusuke/nilfs2
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2:
      nilfs2: add zero-fill for new btree node buffers
      nilfs2: fix irregular checkpoint creation due to data flush
      nilfs2: fix dirty page accounting leak causing hang at write
  12. @torvalds

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6

    torvalds committed
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits)
      mac80211: check interface is down before type change
      cfg80211: fix NULL ptr deref
      libertas if_usb: Fix crash on 64-bit machines
      mac80211: fix reason code output endianness
      mac80211: fix addba timer
      ath9k: fix misplaced semicolon on rate control
      b43: Fix DMA TX bounce buffer copying
      mac80211: fix BSS leak
      rt73usb.c : more ids
      ipw2200: fix oops on missing firmware
      gre: Fix dev_addr clobbering for gretap
      sky2: set carrier off in probe
      net: fix sk_forward_alloc corruption
      pcnet_cs: add cis of PreMax PE-200 ethernet pcmcia card
      r8169: Fix card drop incoming VLAN tagged MTU byte large jumbo frames
      ibmtr: possible Read buffer overflow?
      net: Fix RPF to work with policy routing
      net: fix kmemcheck annotations
      e1000e: rework disable K1 at 1000Mbps for 82577/82578
      e1000e: config PHY via software after resets
      ...
  13. @pavelmachek @rjwysocki

    PM: Remove some debug messages producing too much noise

    pavelmachek committed with rjwysocki
    pm_runtime_idle() is somewhat noisy. Remove debug prints.
    
    Signed-off-by: Pavel Machek <pavel@ucw.cz>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
  14. @rjwysocki

    PM: Fix warning on suspend errors

    Romit Dasgupta committed with rjwysocki
    Fixes the point where we need to complete the power transition when
    device suspend fails, so that we don't print warnings about devices
    added to the device hierarchy after a failing suspend.
    
    [rjw: Modified changelog.]
    
    Signed-off-by: Romit Dasgupta <romit@ti.com>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
  15. @jirislaby @rjwysocki

    PM / Hibernate: Add newline to load_image() fail path

    jirislaby committed with rjwysocki
    Finish a line by \n when load_image fails in the middle of loading.
    
    Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
    Acked-by: Pavel Machek <pavel@ucw.cz>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
  16. @jirislaby @rjwysocki

    PM / Hibernate: Fix error handling in save_image()

    jirislaby committed with rjwysocki
    There are too many retval variables in save_image(). Thus error return
    value from snapshot_read_next() may be ignored and only part of the
    snapshot (successfully) written.
    
    Remove 'error' variable, invert the condition in the do-while loop
    and convert the loop to use only 'ret' variable.
    
    Switch the rest of the function to consider only 'ret'.
    
    Also make sure we end printed line by \n if an error occurs.
    
    Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
    Acked-by: Pavel Machek <pavel@ucw.cz>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
  17. @jirislaby @rjwysocki

    PM / Hibernate: Fix blkdev refleaks

    jirislaby committed with rjwysocki
    While cruising through the swsusp code I found few blkdev reference
    leaks of resume_bdev.
    
    swsusp_read: remove blkdev_put altogether. Some fail paths do
                 not do that.
    swsusp_check: make sure we always put a reference on fail paths
    software_resume: all fail paths between swsusp_check and swsusp_read
                     omit swsusp_close. Add it in those cases. And since
                     swsusp_read doesn't drop the reference anymore, do
                     it here unconditionally.
    
    [rjw: Fixed a small coding style issue.]
    
    Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
  18. @rjwysocki

    PM / yenta: Split resume into early and late parts (rev. 4)

    rjwysocki committed
    Commit 0c570cd
    (PM / yenta: Fix cardbus suspend/resume regression) caused resume to
    fail on systems with two CardBus bridges.  While the exact nature
    of the failure is not known at the moment, it can be worked around by
    splitting the yenta resume into an early part, executed during the
    early phase of resume, that will only resume the socket and power it
    up if there was a card in it during suspend, and a late part,
    executed during "regular" resume, that will carry out all of the
    remaining yenta resume operations.
    
    Fixes http://bugzilla.kernel.org/show_bug.cgi?id=14334, which is a
    listed regression from 2.6.31.
    
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    Acked-by: Dominik Brodowski <linux@dominikbrodowski.net>
    Reported-by: Stephen J. Gowdy <gowdy@cern.ch>
    Tested-by: Jose Marino <braket@hotmail.com>
  19. @lumag @dtor

    Input: gpio-keys - use IRQF_SHARED

    lumag committed with dtor
    There is nothing that disallows gpio-keys to share it's IRQ line
    w/ other drivers. Make it use IRQF_SHARED in request_irq().
    
    An example of other driver with which I'd like to share IRQ line
    for GPIO buttons is ledtrig-gpio.
    
    Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
    Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
  20. @Alphix @dtor

    Input: winbond-cir - select LEDS_TRIGGERS

    Alphix committed with dtor
    drivers/input/misc/winbond-cir.c depends on LEDS_TRIGGERS so
    add an appropriate select to drivers/input/misc/Kconfig
    
    Signed-off-by: David Härdeman <david@hardeman.nu>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
  21. @dtor

    Input: i8042 - try to get stable CTR value when initializing

    dtor committed
    If user presses keys while i8042 is being initialized there is a chance
    that keyboard data will be mistaken for results of Read Control Register
    command causing futher troubles. Work around this issue by reading CTR
    several times and stop when we get matching results.
    
    Reported-and-tested-by: Dave Young <hidave.darkstar@gmail.com>
    Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
  22. @dtor
  23. @konis

    nilfs2: add zero-fill for new btree node buffers

    konis committed
    Adds missing initialization of newly allocated b-tree node buffers.
    This avoids garbage data to be mixed in b-tree node blocks.
    
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
  24. @konis

    nilfs2: fix irregular checkpoint creation due to data flush

    konis committed
    When nilfs flushes out dirty data to reduce memory pressure, creation
    of checkpoints is wrongly postponed.  This bug causes irregular
    checkpoint creation especially in small footprint systems.
    
    To correct this issue, a timer for the checkpoint creation has to be
    continued if a log writer does not create a checkpoint.
    
    This will do the correction.
    
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
  25. @konis

    nilfs2: fix dirty page accounting leak causing hang at write

    konis committed
    Bruno Prémont and Dunphy, Bill noticed me that NILFS will certainly
    hang on ARM-based targets.
    
    I found this was caused by an underflow of dirty pages counter.  A
    b-tree cache routine was marking page dirty without adjusting page
    account information.
    
    This fixes the dirty page accounting leak and resolves the hang on
    arm-based targets.
    
    Reported-by: Bruno Prémont <bonbons@linux-vserver.org>
    Reported-by: Dunphy, Bill <WDunphy@tandbergdata.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
    Tested-by: Bruno Prémont <bonbons@linux-vserver.org>
    Cc: stable <stable@kernel.org>
  26. @davem330
Commits on Nov 2, 2009
  1. @joakim-tjernlund

    i2c-mpc: Do not generate STOP after read.

    joakim-tjernlund committed with Ben Dooks
    The driver always ends a read with a STOP condition which
    breaks subsequent I2C reads/writes in the same transaction as
    these expect to do a repeated START(ReSTART).
    
    This will also help I2C multimaster as the bus will not be released
    after the first read, but when the whole transaction ends.
    
    Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
  2. @riczhao

    i2c: imx: disable clock when it's possible to save power.

    riczhao committed with Ben Dooks
    Enable clock before START, disable it after STOP.
    
    Signed-off-by: Richard Zhao <linuxzsc@gmail.com>
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
  3. @riczhao

    i2c: imx: only imx1 needs disable delay

    riczhao committed with Ben Dooks
    check cpu_is_mx1() when disable delay.
    
    Signed-off-by: Richard Zhao <linuxzsc@gmail.com>
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
  4. @riczhao

    i2c: imx: check busy bit when START/STOP

    riczhao committed with Ben Dooks
    The controller can't do anything else before it actually generates START/STOP.
    So we check busy bit to make sure START/STOP is successfully finished.
    
    If we don't check busy bit, START/STOP may fail on some fast CPUs.
    
    Signed-off-by: Richard Zhao <linuxzsc@gmail.com>
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
  5. @torvalds

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

    torvalds committed
    …/git/ericvh/v9fs
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
      9p: fix readdir corner cases
      9p: fix readlink
      9p: fix a small bug in readdir for long directories
  6. @jmberg @linvjw

    mac80211: check interface is down before type change

    jmberg committed with linvjw
    For some strange reason the netif_running() check
    ended up after the actual type change instead of
    before, potentially causing all kinds of problems
    if the interface is up while changing the type;
    one of the problems manifests itself as a warning:
    
    WARNING: at net/mac80211/iface.c:651 ieee80211_teardown_sdata+0xda/0x1a0 [mac80211]()
    Hardware name: Aspire one
    Pid: 2596, comm: wpa_supplicant Tainted: G        W  2.6.31-10-generic #32-Ubuntu
    Call Trace:
     [] warn_slowpath_common+0x6d/0xa0
     [] warn_slowpath_null+0x15/0x20
     [] ieee80211_teardown_sdata+0xda/0x1a0 [mac80211]
     [] ieee80211_if_change_type+0x4a/0xc0 [mac80211]
     [] ieee80211_change_iface+0x61/0xa0 [mac80211]
     [] cfg80211_wext_siwmode+0xc7/0x120 [cfg80211]
     [] ioctl_standard_call+0x58/0xf0
    
    (http://www.kerneloops.org/searchweek.php?search=ieee80211_teardown_sdata)
    
    Cc: Arjan van de Ven <arjan@infradead.org>
    Cc: stable@kernel.org
    Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
  7. @jmberg @linvjw

    cfg80211: fix NULL ptr deref

    jmberg committed with linvjw
    commit 211a4d12abf86fe0df4cd68fc6327cbb58f56f81
      Author: Johannes Berg <johannes@sipsolutions.net>
      Date:   Tue Oct 20 15:08:53 2009 +0900
    
          cfg80211: sme: deauthenticate on assoc failure
    
    introduced a potential NULL pointer dereference that
    some people have been hitting for some reason -- the
    params.bssid pointer is not guaranteed to be non-NULL
    for what seems to be a race between various ways of
    reaching the same thing.
    
    While I'm trying to analyse the problem more let's
    first fix the crash. I think the real fix may be to
    avoid doing _anything_ if it ended up being NULL, but
    right now I'm not sure yet.
    
    I think
    http://bugzilla.kernel.org/show_bug.cgi?id=14342
    might also be this issue.
    
    Reported-by: Parag Warudkar <parag.lkml@gmail.com>
    Tested-by: Parag Warudkar <parag.lkml@gmail.com>
    Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
  8. @torvalds

    Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/g…

    torvalds committed
    …it/aegl/linux-2.6
    
    * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
      Revert "[IA64] fix percpu warnings"
      [IA64] fix percpu warnings
      [IA64] SMT friendly version of spin_unlock_wait()
      [IA64] use printk_once() unaligned.c/io_common.c
      [IA64] Require SAL 3.2 in order to do extended config space ops
      [IA64] unsigned cannot be less than 0 in sn_hwperf_ioctl()
      [IA64] Restore registers in the stack on INIT
      [IA64] Re-implement spinaphores using ticket lock concepts
      [IA64] Squeeze ticket locks back into 4 bytes.
  9. @torvalds

    Revert "ext4: Remove journal_checksum mount option and enable it by d…

    torvalds committed
    …efault"
    
    This reverts commit d0646f7, as
    requested by Eric Sandeen.
    
    It can basically cause an ext4 filesystem to miss recovery (and thus get
    mounted with errors) if the journal checksum does not match.
    
    Quoth Eric:
    
       "My hand-wavy hunch about what is happening is that we're finding a
        bad checksum on the last partially-written transaction, which is
        not surprising, but if we have a wrapped log and we're doing the
        initial scan for head/tail, and we abort scanning on that bad
        checksum, then we are essentially running an unrecovered filesystem.
    
        But that's hand-wavy and I need to go look at the code.
    
        We lived without journal checksums on by default until now, and at
        this point they're doing more harm than good, so we should revert
        the default-changing commit until we can fix it and do some good
        power-fail testing with the fixes in place."
    
    See
    
    	http://bugzilla.kernel.org/show_bug.cgi?id=14354
    
    for all the gory details.
    
    Requested-by: Eric Sandeen <sandeen@redhat.com>
    Cc: Theodore Tso <tytso@mit.edu>
    Cc: Alexey Fisher <bug-track@fisher-privat.net>
    Cc: Maxim Levitsky <maximlevitsky@gmail.com>
    Cc: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
    Cc: Mathias Burén <mathias.buren@gmail.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Something went wrong with that request. Please try again.