Permalink
Commits on Jan 26, 2012
  1. @gregkh

    Linux 3.0.18

    gregkh committed Jan 26, 2012
  2. @dedekind @gregkh

    UBIFS: make debugging messages light again

    commit 1f5d78d upstream.
    
    We switch to dynamic debugging in commit
    56e4674 but did not take into account that
    now we do not control anymore whether a specific message is enabled or not.
    So now we lock the "dbg_lock" and release it in every debugging macro, which
    make them not so light-weight.
    
    This commit removes the "dbg_lock" protection from the debugging macros to
    fix the issue.
    
    The downside is that now our DBGKEY() stuff is broken, but this is not
    critical at all and will be fixed later.
    
    Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    dedekind committed with gregkh Jan 11, 2012
  3. @sgruszka @gregkh

    iwlegacy: 3945: fix hw passive scan on radar channels

    commit 68acc4a upstream.
    
    Patch fix firmware error on "iw dev wlan0 scan passive" for
    hardware scanning (with disable_hw_scan=0 module parameter).
    
     iwl3945 0000:03:00.0: Microcode SW error detected. Restarting 0x82000008.
     iwl3945 0000:03:00.0: Loaded firmware version: 15.32.2.9
     iwl3945 0000:03:00.0: Start IWL Error Log Dump:
     iwl3945 0000:03:00.0: Status: 0x0002A2E4, count: 1
     iwl3945 0000:03:00.0: Desc       Time       asrtPC blink2 ilink1  nmiPC   Line
     iwl3945 0000:03:00.0: SYSASSERT     (0x5) 0041263900 0x13756 0x0031C 0x00000 764
     iwl3945 0000:03:00.0: Error Reply type 0x000002FC cmd C_SCAN (0x80) seq 0x443E ser 0x00340000
     iwl3945 0000:03:00.0: Command C_SCAN failed: FW Error
     iwl3945 0000:03:00.0: Can't stop Rx DMA.
    
    We have disable ability to change passive scanning to active on
    particular channel when traffic is detected on that channel. Otherwise
    firmware will report error, when we try to do passive scan on radar
    channels.
    
    Reported-and-debugged-by: Pedro Francisco <pedrogfrancisco@gmail.com>
    Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    sgruszka committed with gregkh Dec 23, 2011
  4. @gregkh

    iwlagn: check for SMPS mode

    commit b2ccccd upstream.
    
    Check and report WARN only when its invalid
    
    Resolves:
    https://bugzilla.kernel.org/show_bug.cgi?id=42621
    https://bugzilla.redhat.com/show_bug.cgi?id=766071
    
    Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Wey-Yi Guy committed with gregkh Nov 10, 2011
  5. @gregkh

    mm: fix NULL ptr dereference in __count_immobile_pages

    commit 687875f upstream.
    
    Fix the following NULL ptr dereference caused by
    
      cat /sys/devices/system/memory/memory0/removable
    
    Pid: 13979, comm: sed Not tainted 3.0.13-0.5-default #1 IBM BladeCenter LS21 -[7971PAM]-/Server Blade
    RIP: __count_immobile_pages+0x4/0x100
    Process sed (pid: 13979, threadinfo ffff880221c36000, task ffff88022e788480)
    Call Trace:
      is_pageblock_removable_nolock+0x34/0x40
      is_mem_section_removable+0x74/0xf0
      show_mem_removable+0x41/0x70
      sysfs_read_file+0xfe/0x1c0
      vfs_read+0xc7/0x130
      sys_read+0x53/0xa0
      system_call_fastpath+0x16/0x1b
    
    We are crashing because we are trying to dereference NULL zone which
    came from pfn=0 (struct page ffffea0000000000). According to the boot
    log this page is marked reserved:
    e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved)
    
    and early_node_map confirms that:
    early_node_map[3] active PFN ranges
        1: 0x00000010 -> 0x0000009c
        1: 0x00000100 -> 0x000bffa3
        1: 0x00100000 -> 0x00240000
    
    The problem is that memory_present works in PAGE_SECTION_MASK aligned
    blocks so the reserved range sneaks into the the section as well.  This
    also means that free_area_init_node will not take care of those reserved
    pages and they stay uninitialized.
    
    When we try to read the removable status we walk through all available
    sections and hope that the zone is valid for all pages in the section.
    But this is not true in this case as the zone and nid are not initialized.
    
    We have only one node in this particular case and it is marked as node=1
    (rather than 0) and that made the problem visible because page_to_nid will
    return 0 and there are no zones on the node.
    
    Let's check that the zone is valid and that the given pfn falls into its
    boundaries and mark the section not removable.  This might cause some
    false positives, probably, but we do not have any sane way to find out
    whether the page is reserved by the platform or it is just not used for
    whatever other reasons.
    
    Signed-off-by: Michal Hocko <mhocko@suse.cz>
    Acked-by: Mel Gorman <mgorman@suse.de>
    Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
    Cc: Andrea Arcangeli <aarcange@redhat.com>
    Cc: David Rientjes <rientjes@google.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>
    Michal Hocko committed with gregkh Jan 20, 2012
  6. @wildea01 @gregkh

    proc: clear_refs: do not clear reserved pages

    commit 85e72aa upstream.
    
    /proc/pid/clear_refs is used to clear the Referenced and YOUNG bits for
    pages and corresponding page table entries of the task with PID pid, which
    includes any special mappings inserted into the page tables in order to
    provide things like vDSOs and user helper functions.
    
    On ARM this causes a problem because the vectors page is mapped as a
    global mapping and since ec706da ("ARM: add a vma entry for the user
    accessible vector page"), a VMA is also inserted into each task for this
    page to aid unwinding through signals and syscall restarts.  Since the
    vectors page is required for handling faults, clearing the YOUNG bit (and
    subsequently writing a faulting pte) means that we lose the vectors page
    *globally* and cannot fault it back in.  This results in a system deadlock
    on the next exception.
    
    To see this problem in action, just run:
    
    	$ echo 1 > /proc/self/clear_refs
    
    on an ARM platform (as any user) and watch your system hang.  I think this
    has been the case since 2.6.37
    
    This patch avoids clearing the aforementioned bits for reserved pages,
    therefore leaving the vectors page intact on ARM.  Since reserved pages
    are not candidates for swap, this change should not have any impact on the
    usefulness of clear_refs.
    
    Signed-off-by: Will Deacon <will.deacon@arm.com>
    Reported-by: Moussa Ba <moussaba@micron.com>
    Acked-by: Hugh Dickins <hughd@google.com>
    Cc: David Rientjes <rientjes@google.com>
    Cc: Russell King <rmk@arm.linux.org.uk>
    Acked-by: Nicolas Pitre <nico@linaro.org>
    Cc: Matt Mackall <mpm@selenic.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>
    wildea01 committed with gregkh Jan 20, 2012
  7. @gregkh

    kprobes: initialize before using a hlist

    commit d496aab upstream.
    
    Commit ef53d9c ("kprobes: improve kretprobe scalability with hashed
    locking") introduced a bug where we can potentially leak
    kretprobe_instances since we initialize a hlist head after having used
    it.
    
    Initialize the hlist head before using it.
    
    Reported by: Jim Keniston <jkenisto@us.ibm.com>
    Acked-by: Jim Keniston <jkenisto@us.ibm.com>
    Signed-off-by: Ananth N Mavinakayanahalli <ananth@in.ibm.com>
    Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
    Cc: Srinivasa D S <srinivasa@in.ibm.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>
    Ananth N Mavinakayanahalli committed with gregkh Jan 20, 2012
  8. @gregkh

    score: fix off-by-one index into syscall table

    commit c25a785 upstream.
    
    If the provided system call number is equal to __NR_syscalls, the
    current check will pass and a function pointer just after the system
    call table may be called, since sys_call_table is an array with total
    size __NR_syscalls.
    
    Whether or not this is a security bug depends on what the compiler puts
    immediately after the system call table.  It's likely that this won't do
    anything bad because there is an additional NULL check on the syscall
    entry, but if there happens to be a non-NULL value immediately after the
    system call table, this may result in local privilege escalation.
    
    Signed-off-by: Dan Rosenberg <drosenberg@vsecurity.com>
    Cc: Chen Liqin <liqin.chen@sunplusct.com>
    Cc: Lennox Wu <lennox.wu@gmail.com>
    Cc: Eugene Teo <eugeneteo@kernel.sg>
    Cc: Arnd Bergmann <arnd@arndb.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>
    Dan Rosenberg committed with gregkh Jan 20, 2012
  9. @gregkh

    i2c-eg20t: modified the setting of transfer rate.

    commit ff35e8b upstream.
    
    This patch modified the setting value of
    I2C Bus Transfer Rate Setting Counter regisrer.
    
    Signed-off-by: Toshiharu Okada <toshiharu-linux@dsn.okisemi.com>
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Toshiharu Okada committed with gregkh Sep 26, 2011
  10. @eibach @gregkh

    net: Fix driver name for mdio-gpio.c

    commit f42af6c upstream.
    
    Since commit
    "7488876... dt/net: Eliminate users of of_platform_{,un}register_driver"
    there are two platform drivers named "mdio-gpio" registered.
    I renamed the of variant to "mdio-ofgpio".
    
    Signed-off-by: Dirk Eibach <eibach@gdsys.de>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    eibach committed with gregkh Oct 18, 2011
  11. @bharrosh @gregkh

    pnfs-obj: Must return layout on IO error

    commit fe0fe83 upstream.
    
    As mandated by the standard. In case of an IO error, a pNFS
    objects layout driver must return it's layout. This is because
    all device errors are reported to the server as part of the
    layout return buffer.
    
    This is implemented the same way PNFS_LAYOUTRET_ON_SETATTR
    is done, through a bit flag on the pnfs_layoutdriver_type->flags
    member. The flag is set by the layout driver that wants a
    layout_return preformed at pnfs_ld_{write,read}_done in case
    of an error.
    (Though I have not defined a wrapper like pnfs_ld_layoutret_on_setattr
     because this code is never called outside of pnfs.c and pnfs IO
     paths)
    
    Without this patch 3.[0-2] Kernels leak memory and have an annoying
    WARN_ON after every IO error utilizing the pnfs-obj driver.
    
    Signed-off-by: Boaz Harrosh <bharrosh@panasas.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    bharrosh committed with gregkh Jan 6, 2012
  12. @bharrosh @gregkh

    pnfs-obj: pNFS errors are communicated on iodata->pnfs_error

    commit 5c0b412 upstream.
    
    Some time along the way pNFS IO errors were switched to
    communicate with a special iodata->pnfs_error member instead
    of the regular RPC members. But objlayout was not switched
    over.
    
    Fix that!
    Without this fix any IO error is hanged, because IO is not
    switched to MDS and pages are never cleared or read.
    
    Signed-off-by: Boaz Harrosh <bharrosh@panasas.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    bharrosh committed with gregkh Jan 6, 2012
  13. @sgruszka @gregkh

    rt2800pci: fix spurious interrupts generation

    commit dfd00c4 upstream.
    
    Same devices can generate interrupt without properly setting bit in
    INT_SOURCE_CSR register (spurious interrupt), what will cause IRQ line
    will be disabled by interrupts controller driver.
    
    We discovered that clearing INT_MASK_CSR stops such behaviour. We
    previously first read that register, and then clear all know interrupt
    sources bits and do not touch reserved bits. After this patch, we write
    to all register content (I believe writing to reserved bits on that
    register will not cause any problems, I tested that on my rt2800pci
    device).
    
    This fix very bad performance problem, practically making device
    unusable (since worked without interrupts), reported in:
    https://bugzilla.redhat.com/show_bug.cgi?id=658451
    
    We previously tried to workaround that issue in commit
    4ba7d99 "rt2800pci: handle spurious
    interrupts", but it was reverted in commit
    82e5fc2
    as thing, that will prevent to detect real spurious interrupts.
    
    Reported-and-tested-by: Amir Hedayaty <hedayaty@gmail.com>
    Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
    Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    sgruszka committed with gregkh Jan 13, 2012
  14. @cpwickman @gregkh

    x86/UV2: Fix BAU destination timeout initialization

    commit d059f9f upstream.
    
    Move the call to enable_timeouts() forward so that
    BAU_MISC_CONTROL is initialized before using it in
    calculate_destination_timeout().
    
    Fix the calculation of a BAU destination timeout
    for UV2 (in calculate_destination_timeout()).
    
    Signed-off-by: Cliff Wickman <cpw@sgi.com>
    Link: http://lkml.kernel.org/r/20120116211848.GB5767@sgi.com
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    cpwickman committed with gregkh Jan 16, 2012
  15. @gregkh

    I2C: OMAP: correct SYSC register offset for OMAP4

    commit 2727b17 upstream.
    
    Correct OMAP_I2C_SYSC_REG offset in omap4 register map.
    Offset 0x20 is reserved and OMAP_I2C_SYSC_REG has 0x10 as offset.
    
    Signed-off-by: Alexander Aring <a.aring@phytec.de>
    [khilman@ti.com: minor changelog edits]
    Signed-off-by: Kevin Hilman <khilman@ti.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Alexander Aring committed with gregkh Dec 8, 2011
  16. @rolandd @gregkh

    target: Set additional sense length field in sense data

    commit 895f302 upstream.
    
    The target code was not setting the additional sense length field in the
    sense data it returned, which meant that at least the Linux stack
    ignored the ASC/ASCQ fields.  For example, without this patch, on a
    tcm_loop device:
    
        # sg_raw -v /dev/sda 2 0 0 0 0 0
    
    gives
    
            cdb to send: 02 00 00 00 00 00
        SCSI Status: Check Condition
    
        Sense Information:
         Fixed format, current;  Sense key: Illegal Request
          Raw sense data (in hex):
                70 00 05 00 00 00 00 00
    
    while after the patch we correctly get the following (which matches what
    a regular disk returns):
    
            cdb to send: 02 00 00 00 00 00
        SCSI Status: Check Condition
    
        Sense Information:
         Fixed format, current;  Sense key: Illegal Request
         Additional sense: Invalid command operation code
         Raw sense data (in hex):
                70 00 05 00 00 00 00 0a  00 00 00 00 20 00 00 00
                00 00
    
    Signed-off-by: Roland Dreier <roland@purestorage.com>
    Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    rolandd committed with gregkh Dec 13, 2011
  17. @rolandd @gregkh

    target: Set response format in INQUIRY response

    commit ce13617 upstream.
    
    Current SCSI specs say that the "response format" field in the standard
    INQUIRY response should be set to 2, and all the real SCSI devices I
    have do put 2 here.  So let's do that too.
    
    Signed-off-by: Roland Dreier <roland@purestorage.com>
    Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    rolandd committed with gregkh Dec 6, 2011
  18. @psomas @gregkh

    sym53c8xx: Fix NULL pointer dereference in slave_destroy

    commit cced504 upstream.
    
    sym53c8xx_slave_destroy unconditionally assumes that sym53c8xx_slave_alloc has
    succesesfully allocated a sym_lcb. This can lead to a NULL pointer dereference
    (exposed by commit 4e6c82b).
    
    Signed-off-by: Stratos Psomadakis <psomas@gentoo.org>
    Signed-off-by: James Bottomley <JBottomley@Parallels.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    psomas committed with gregkh Dec 4, 2011
  19. @gregkh

    ACPI: processor: fix acpi_get_cpuid for UP processor

    commit d640113 upstream.
    
    For UP processor, it is likely that no _MAT method or MADT table defined.
    So currently acpi_get_cpuid(...) always return -1 for UP processor.
    This is wrong. It should return valid value for CPU0.
    
    In the other hand, BIOS may define multiple CPU handles even for UP
    processor, for example
    
            Scope (_PR)
            {
                Processor (CPU0, 0x00, 0x00000410, 0x06) {}
                Processor (CPU1, 0x01, 0x00000410, 0x06) {}
                Processor (CPU2, 0x02, 0x00000410, 0x06) {}
                Processor (CPU3, 0x03, 0x00000410, 0x06) {}
            }
    
    We should only return valid value for CPU0's acpi handle.
    And return invalid value for others.
    
    http://marc.info/?t=132329819900003&r=1&w=2
    
    Reported-and-tested-by: wallak@free.fr
    Signed-off-by: Lin Ming <ming.m.lin@intel.com>
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Lin Ming committed with gregkh Dec 13, 2011
  20. @gregkh

    ACPICA: Put back the call to acpi_os_validate_address

    commit da4d8b2 upstream.
    
    The call to acpi_os_validate_address in acpi_ds_get_region_arguments was
    removed by mistake in commit 9ad19ac(ACPICA: Split large dsopcode and
    dsload.c files).
    
    Put it back.
    
    Reported-and-bisected-by: Luca Tettamanti <kronos.it@gmail.com>
    Signed-off-by: Lin Ming <ming.m.lin@intel.com>
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Lin Ming committed with gregkh Nov 29, 2011
  21. @garloff @gregkh

    ACPI, ia64: Use SRAT table rev to use 8bit or 16/32bit PXM fields (ia64)

    commit 9f10f6a upstream.
    
    In SRAT v1, we had 8bit proximity domain (PXM) fields; SRAT v2 provides
    32bits for these. The new fields were reserved before.
    According to the ACPI spec, the OS must disregrard reserved fields.
    
    ia64 did handle the PXM fields almost consistently, but depending on
    sgi's sn2 platform. This patch leaves the sn2 logic in, but does also
    use 16/32 bits for PXM if the SRAT has rev 2 or higher.
    
    The patch also adds __init to the two pxm accessor functions, as they
    access __initdata now and are called from an __init function only anyway.
    
    Note that the code only uses 16 bits for the PXM field in the processor
    proximity field; the patch does not address this as 16 bits are more than
    enough.
    
    Signed-off-by: Kurt Garloff <kurt@garloff.de>
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    garloff committed with gregkh Jan 17, 2012
  22. @garloff @gregkh

    ACPI, x86: Use SRAT table rev to use 8bit or 32bit PXM fields (x86/x8…

    …6-64)
    
    commit cd298f6 upstream.
    
    In SRAT v1, we had 8bit proximity domain (PXM) fields; SRAT v2 provides
    32bits for these. The new fields were reserved before.
    According to the ACPI spec, the OS must disregrard reserved fields.
    
    x86/x86-64 was rather inconsistent prior to this patch; it used 8 bits
    for the pxm field in cpu_affinity, but 32 bits in mem_affinity.
    This patch makes it consistent: Either use 8 bits consistently (SRAT
    rev 1 or lower) or 32 bits (SRAT rev 2 or higher).
    
    cc: x86@kernel.org
    Signed-off-by: Kurt Garloff <kurt@garloff.de>
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    garloff committed with gregkh Jan 17, 2012
  23. @garloff @gregkh

    ACPI: Store SRAT table revision

    commit 8df0eb7 upstream.
    
    In SRAT v1, we had 8bit proximity domain (PXM) fields; SRAT v2 provides
    32bits for these. The new fields were reserved before.
    According to the ACPI spec, the OS must disregrard reserved fields.
    In order to know whether or not, we must know what version the SRAT
    table has.
    
    This patch stores the SRAT table revision for later consumption
    by arch specific __init functions.
    
    Signed-off-by: Kurt Garloff <kurt@garloff.de>
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    garloff committed with gregkh Jan 17, 2012
  24. @gregkh

    intel_idle: fix API misuse

    commit 39a74fd upstream.
    
    smp_call_function() only lets all other CPUs execute a specific function,
    while we expect all CPUs do in intel_idle.  Without the fix, we could have
    one cpu which has auto_demotion enabled or has no broadcast timer setup.
    Usually we don't see impact because auto demotion just harms power and the
    intel_idle init is called in CPU 0, where boradcast timer delivers
    interrupt, but this still could be a problem.
    
    Signed-off-by: Shaohua Li <shaohua.li@intel.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Shaohua Li committed with gregkh Jan 10, 2012
  25. @watologo1 @gregkh

    intel idle: Make idle driver more robust

    commit 5c2a9f0 upstream.
    
    kvm -cpu host passes the original cpuid info to the guest.
    
    Latest kvm version seem to return true for mwait_leaf cpuid
    function on recent Intel CPUs. But it does not return mwait
    C-states (mwait_substates), instead zero is returned.
    
    While real CPUs seem to always return non-zero values, the intel
    idle driver should not get active in kvm (mwait_substates == 0)
    case and bail out.
    Otherwise a Null pointer exception will happen later when the
    cpuidle subsystem tries to get active:
    [0.984807] BUG: unable to handle kernel NULL pointer dereference at (null)
    [0.984807] IP: [<(null)>] (null)
    ...
    [0.984807][<ffffffff8143cf34>] ? cpuidle_idle_call+0xb4/0x340
    [0.984807][<ffffffff8159e7bc>] ? __atomic_notifier_call_chain+0x4c/0x70
    [0.984807][<ffffffff81001198>] ? cpu_idle+0x78/0xd0
    
    Reference:
    https://bugzilla.novell.com/show_bug.cgi?id=726296
    
    Signed-off-by: Thomas Renninger <trenn@suse.de>
    CC: Bruno Friedmann <bruno@ioda-net.ch>
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    watologo1 committed with gregkh Dec 4, 2011
  26. @gregkh

    ALSA: HDA: Fix internal microphone on Dell Studio 16 XPS 1645

    commit ffe535e upstream.
    
    More than one user reports that changing the model from "both" to
    "dmic" makes their Internal Mic work.
    
    Tested-by: Martin Ling <martin-launchpad@earth.li>
    BugLink: https://bugs.launchpad.net/bugs/795823
    Signed-off-by: David Henningsson <david.henningsson@canonical.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    David Henningsson committed with gregkh Jan 16, 2012
  27. @cladisch @gregkh

    ALSA: virtuoso: Xonar DS: fix polarity of front output

    commit f0e48b6 upstream.
    
    The two DACs for the front output and the surround/center/LFE/back
    outputs are wired up out of phase, so when channels are duplicated,
    their sound can cancel out each other and result in a weaker bass
    response.  To fix this, reverse the polarity of the neutron flow to
    the front output.
    
    Reported-any-tested-by: Daniel Hill <daniel@enemyplanet.geek.nz>
    Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    cladisch committed with gregkh Jan 14, 2012
  28. @torvalds @gregkh

    proc: clean up and fix /proc/<pid>/mem handling

    commit e268337 upstream.
    
    Jüri Aedla reported that the /proc/<pid>/mem handling really isn't very
    robust, and it also doesn't match the permission checking of any of the
    other related files.
    
    This changes it to do the permission checks at open time, and instead of
    tracking the process, it tracks the VM at the time of the open.  That
    simplifies the code a lot, but does mean that if you hold the file
    descriptor open over an execve(), you'll continue to read from the _old_
    VM.
    
    That is different from our previous behavior, but much simpler.  If
    somebody actually finds a load where this matters, we'll need to revert
    this commit.
    
    I suspect that nobody will ever notice - because the process mapping
    addresses will also have changed as part of the execve.  So you cannot
    actually usefully access the fd across a VM change simply because all
    the offsets for IO would have changed too.
    
    Reported-by: Jüri Aedla <asd@ut.ee>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    torvalds committed with gregkh Jan 17, 2012
  29. @bonzini @gregkh

    dm: do not forward ioctls from logical volumes to the underlying device

    commit ec8013b upstream.
    
    A logical volume can map to just part of underlying physical volume.
    In this case, it must be treated like a partition.
    
    Based on a patch from Alasdair G Kergon.
    
    Cc: Alasdair G Kergon <agk@redhat.com>
    Cc: dm-devel@redhat.com
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    bonzini committed with gregkh Jan 12, 2012
  30. @bonzini @gregkh

    block: fail SCSI passthrough ioctls on partition devices

    commit 0bfc96c upstream.
    
    [ Changes with respect to 3.3: return -ENOTTY from scsi_verify_blk_ioctl
      and -ENOIOCTLCMD from sd_compat_ioctl. ]
    
    Linux allows executing the SG_IO ioctl on a partition or LVM volume, and
    will pass the command to the underlying block device.  This is
    well-known, but it is also a large security problem when (via Unix
    permissions, ACLs, SELinux or a combination thereof) a program or user
    needs to be granted access only to part of the disk.
    
    This patch lets partitions forward a small set of harmless ioctls;
    others are logged with printk so that we can see which ioctls are
    actually sent.  In my tests only CDROM_GET_CAPABILITY actually occurred.
    Of course it was being sent to a (partition on a) hard disk, so it would
    have failed with ENOTTY and the patch isn't changing anything in
    practice.  Still, I'm treating it specially to avoid spamming the logs.
    
    In principle, this restriction should include programs running with
    CAP_SYS_RAWIO.  If for example I let a program access /dev/sda2 and
    /dev/sdb, it still should not be able to read/write outside the
    boundaries of /dev/sda2 independent of the capabilities.  However, for
    now programs with CAP_SYS_RAWIO will still be allowed to send the
    ioctls.  Their actions will still be logged.
    
    This patch does not affect the non-libata IDE driver.  That driver
    however already tests for bd != bd->bd_contains before issuing some
    ioctl; it could be restricted further to forbid these ioctls even for
    programs running with CAP_SYS_ADMIN/CAP_SYS_RAWIO.
    
    Cc: linux-scsi@vger.kernel.org
    Cc: Jens Axboe <axboe@kernel.dk>
    Cc: James Bottomley <JBottomley@parallels.com>
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    [ Make it also print the command name when warning - Linus ]
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    bonzini committed with gregkh Jan 12, 2012
  31. @bonzini @gregkh

    block: add and use scsi_blk_cmd_ioctl

    commit 577ebb3 upstream.
    
    Introduce a wrapper around scsi_cmd_ioctl that takes a block device.
    
    The function will then be enhanced to detect partition block devices
    and, in that case, subject the ioctls to whitelisting.
    
    Cc: linux-scsi@vger.kernel.org
    Cc: Jens Axboe <axboe@kernel.dk>
    Cc: James Bottomley <JBottomley@parallels.com>
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    bonzini committed with gregkh Jan 12, 2012
  32. @gregkh

    fix cputime overflow in uptime_proc_show

    commit c3e0ef9 upstream.
    
    For 32-bit architectures using standard jiffies the idletime calculation
    in uptime_proc_show will quickly overflow. It takes (2^32 / HZ) seconds
    of idle-time, or e.g. 12.45 days with no load on a quad-core with HZ=1000.
    Switch to 64-bit calculations.
    
    Cc: Michael Abbott <michael.abbott@diamond.ac.uk>
    Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Martin Schwidefsky committed with gregkh Dec 15, 2011
  33. @bentiss @gregkh

    HID: multitouch: add support for 3M 32"

    commit c4fad87 upstream.
    
    Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
    Acked-by: Henrik Rydberg <rydberg@euromail.se>
    Signed-off-by: Jiri Kosina <jkosina@suse.cz>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    bentiss committed with gregkh Dec 23, 2011
  34. @gregkh

    HID: multitouch: add support for the MSI Windpad 110W

    commit 66f0612 upstream.
    
    Just another eGalax device.
    Please note that adding this device to have_special_driver
    in hid-core.c is not required anymore.
    
    Signed-off-by: Benjamin Tissoires <benjamin.tissoires@enac.fr>
    Signed-off-by: Jiri Kosina <jkosina@suse.cz>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Benjamin Tissoires committed with gregkh Nov 23, 2011
  35. @marex @gregkh

    HID: multitouch: Add egalax ID for Acer Iconia W500

    commit bb9ff21 upstream.
    
    This patch adds USB ID for the touchpanel in Acer Iconia W500. The panel
    supports up to five fingers, therefore the need for a new addition of panel
    types.
    
    Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
    Signed-off-by: Benjamin Tissoires <benjamin.tissoires@enac.fr>
    Signed-off-by: Jiri Kosina <jkosina@suse.cz>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    marex committed with gregkh Nov 23, 2011