commit 1798326e7ecd25c0f6498362c196d688f5f85139
Author: Jiri Slaby <jslaby@suse.cz>
Date:   Tue Aug 4 16:25:15 2015 +0200

    Linux 3.12.46

commit aba300b9c26f063efcaee374e54264c79a611f22
Author: Al Viro <viro@zeniv.linux.org.uk>
Date:   Sat Mar 21 20:08:18 2015 -0400

    sg_start_req(): make sure that there's not too many elements in iovec
    
    commit 451a2886b6bf90e2fb378f7c46c655450fb96e81 upstream.
    
    unfortunately, allowing an arbitrary 16bit value means a possibility of
    overflow in the calculation of total number of pages in bio_map_user_iov() -
    we rely on there being no more than PAGE_SIZE members of sum in the
    first loop there.  If that sum wraps around, we end up allocating
    too small array of pointers to pages and it's easy to overflow it in
    the second loop.
    
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
    [bwh: s/MAX_UIOVEC/UIO_MAXIOV/. This was fixed upstream by commit
     fdc81f45e9f5 ("sg_start_req(): use import_iovec()"), but we don't
     have that function.]
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 8c2552742bcbf034f25baf2a9417968aeeed1721
Author: Chad Dupuis <chad.dupuis@qlogic.com>
Date:   Thu Sep 25 05:17:01 2014 -0400

    qla2xxx: Mark port lost when we receive an RSCN for it.
    
    commit ef86cb2059a14b4024c7320999ee58e938873032 upstream.
    
    Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com>
    Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com>
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Cc: Himanshu Madhani <himanshu.madhani@qlogic.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit c81091b32079bbc46119530dd5ccbdac671ab934
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Thu Jul 9 11:20:01 2015 -0700

    Fix firmware loader uevent buffer NULL pointer dereference
    
    commit 6f957724b94cb19f5c1c97efd01dd4df8ced323c upstream.
    
    The firmware class uevent function accessed the "fw_priv->buf" buffer
    without the proper locking and testing for NULL.  This is an old bug
    (looks like it goes back to 2012 and commit 1244691c73b2: "firmware
    loader: introduce firmware_buf"), but for some reason it's triggering
    only now in 4.2-rc1.
    
    Shuah Khan is trying to bisect what it is that causes this to trigger
    more easily, but in the meantime let's just fix the bug since others are
    hitting it too (at least Ingo reports having seen it as well).
    
    Reported-and-tested-by: Shuah Khan <shuahkh@osg.samsung.com>
    Acked-by: Ming Lei <ming.lei@canonical.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 679151c0555af3d73c3e5c53baaba6c4035085e2
Author: Joe Perches <joe@perches.com>
Date:   Thu Mar 26 20:47:10 2015 -0700

    hpfs: hpfs_error: Remove static buffer, use vsprintf extension %pV instead
    
    commit a28e4b2b18ccb90df402da3f21e1a83c9d4f8ec1 upstream.
    
    Removing unnecessary static buffers is good.
    Use the vsprintf %pV extension instead.
    
    Signed-off-by: Joe Perches <joe@perches.com>
    Signed-off-by: Mikulas Patocka <mikulas@twibright.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 1ccf9bef80418c6a505dc19bd67c7b8e1b9d2fad
Author: Christoffer Dall <christoffer.dall@linaro.org>
Date:   Wed Jul 1 14:08:31 2015 +0200

    arm64: Don't report clear pmds and puds as huge
    
    commit fd28f5d439fca77348c129d5b73043a56f8a0296 upstream.
    
    The current pmd_huge() and pud_huge() functions simply check if the table
    bit is not set and reports the entries as huge in that case.  This is
    counter-intuitive as a clear pmd/pud cannot also be a huge pmd/pud, and
    it is inconsistent with at least arm and x86.
    
    To prevent others from making the same mistake as me in looking at code
    that calls these functions and to fix an issue with KVM on arm64 that
    causes memory corruption due to incorrect page reference counting
    resulting from this mistake, let's change the behavior.
    
    Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
    Reviewed-by: Steve Capper <steve.capper@linaro.org>
    Acked-by: Marc Zyngier <marc.zyngier@arm.com>
    Fixes: 084bd29810a5 ("ARM64: mm: HugeTLB support.")
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit cb676aeba939b9e17af2546fab266fd356e878a5
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Sun Jun 28 14:18:16 2015 +0100

    agp/intel: Fix typo in needs_ilk_vtd_wa()
    
    commit 8b572a4200828b4e75cc22ed2f494b58d5372d65 upstream.
    
    In needs_ilk_vtd_wa(), we pass in the GPU device but compared it against
    the ids for the mobile GPU and the mobile host bridge. That latter is
    impossible and so likely was just a typo for the desktop GPU device id
    (which is also buggy).
    
    Fixes commit da88a5f7f7d434e2cde1b3e19d952e6d84533662
    Author: Chris Wilson <chris@chris-wilson.co.uk>
    Date:   Wed Feb 13 09:31:53 2013 +0000
    
        drm/i915: Disable WC PTE updates to w/a buggy IOMMU on ILK
    
    Reported-by: Ting-Wei Lan <lantw44@gmail.com>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91127
    References: https://bugzilla.freedesktop.org/show_bug.cgi?id=60391
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
    Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit fc5ae8b222da22bdb3c1c738c26ebc36a2ddc139
Author: Ilya Dryomov <idryomov@gmail.com>
Date:   Wed Jun 24 17:24:33 2015 +0300

    rbd: use GFP_NOIO in rbd_obj_request_create()
    
    commit 5a60e87603c4c533492c515b7f62578189b03c9c upstream.
    
    rbd_obj_request_create() is called on the main I/O path, so we need to
    use GFP_NOIO to make sure allocation doesn't blow back on us.  Not all
    callers need this, but I'm still hardcoding the flag inside rather than
    making it a parameter because a) this is going to stable, and b) those
    callers shouldn't really use rbd_obj_request_create() and will be fixed
    in the future.
    
    More memory allocation fixes will follow.
    
    Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
    Reviewed-by: Alex Elder <elder@linaro.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 85e77d46dc5ce2aa0bedd940cc755b8a237c4deb
Author: Al Viro <viro@zeniv.linux.org.uk>
Date:   Sun Jul 12 10:34:29 2015 -0400

    9p: don't leave a half-initialized inode sitting around
    
    commit 0a73d0a204a4a04a1e110539c5a524ae51f91d6d upstream.
    
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 45a2159c5708e7816fdc531aeb275c77579ab6c2
Author: Al Viro <viro@zeniv.linux.org.uk>
Date:   Sat Jul 4 16:04:19 2015 -0400

    9p: forgetting to cancel request on interrupted zero-copy RPC
    
    commit a84b69cb6e0a41e86bc593904faa6def3b957343 upstream.
    
    If we'd already sent a request and decide to abort it, we *must*
    issue TFLUSH properly and not just blindly reuse the tag, or
    we'll get seriously screwed when response eventually arrives
    and we confuse it for response to later request that had reused
    the same tag.
    
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit eb7650cb5d61c9bc71265cad3c0a098704da4712
Author: Trond Myklebust <trond.myklebust@primarydata.com>
Date:   Mon Jun 1 15:10:25 2015 -0400

    SUNRPC: Fix a memory leak in the backchannel code
    
    commit 88de6af24f2b48b06c514d3c3d0a8f22fafe30bd upstream.
    
    req->rq_private_buf isn't initialised when xprt_setup_backchannel calls
    xprt_free_allocation.
    
    Fixes: fb7a0b9addbdb ("nfs41: New backchannel helper routines")
    Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit d636bf2af4943d6e379633f253544f6c9bdcfdd5
Author: Jeff Layton <jlayton@poochiereds.net>
Date:   Tue Jun 9 19:43:56 2015 -0400

    nfs: increase size of EXCHANGE_ID name string buffer
    
    commit 764ad8ba8cd4c6f836fca9378f8c5121aece0842 upstream.
    
    The current buffer is much too small if you have a relatively long
    hostname. Bring it up to the size of the one that SETCLIENTID has.
    
    Reported-by: Michael Skralivetsky <michael.skralivetsky@primarydata.com>
    Signed-off-by: Jeff Layton <jeff.layton@primarydata.com>
    Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 0db91a2b975428b2295256ae8e5cc7b178b8ce59
Author: Olga Kornievskaia <kolga@netapp.com>
Date:   Fri May 15 11:45:31 2015 -0400

    fixing infinite OPEN loop in 4.0 stateid recovery
    
    commit e8d975e73e5fa05f983fbf2723120edcf68e0b38 upstream.
    
    Problem: When an operation like WRITE receives a BAD_STATEID, even though
    recovery code clears the RECLAIM_NOGRACE recovery flag before recovering
    the open state, because of clearing delegation state for the associated
    inode, nfs_inode_find_state_and_recover() gets called and it makes the
    same state with RECLAIM_NOGRACE flag again. As a results, when we restart
    looking over the open states, we end up in the infinite loop instead of
    breaking out in the next test of state flags.
    
    Solution: unset the RECLAIM_NOGRACE set because of
    calling of nfs_inode_find_state_and_recover() after returning from calling
    recover_open() function.
    
    Signed-off-by: Olga Kornievskaia <kolga@netapp.com>
    Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit c582bf92ab39e7c48f080de0082785ce220d1f81
Author: Chuck Lever <chuck.lever@oracle.com>
Date:   Tue May 26 11:53:52 2015 -0400

    NFS: Fix size of NFSACL SETACL operations
    
    commit d683cc49daf7c5afca8cd9654aaa1bf63cdf2ad9 upstream.
    
    When encoding the NFSACL SETACL operation, reserve just the estimated
    size of the ACL rather than a fixed maximum. This eliminates needless
    zero padding on the wire that the server ignores.
    
    Fixes: ee5dc7732bd5 ('NFS: Fix "kernel BUG at fs/nfs/nfs3xdr.c:1338!"')
    Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
    Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 85ba7d89f351412b8841eb86925348ea5eb4c0ee
Author: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Date:   Wed Apr 29 20:38:46 2015 +0200

    watchdog: omap: assert the counter being stopped before reprogramming
    
    commit 530c11d432727c697629ad5f9d00ee8e2864d453 upstream.
    
    The omap watchdog has the annoying behaviour that writes to most
    registers don't have any effect when the watchdog is already running.
    Quoting the AM335x reference manual:
    
    	To modify the timer counter value (the WDT_WCRR register),
    	prescaler ratio (the WDT_WCLR[4:2] PTV bit field), delay
    	configuration value (the WDT_WDLY[31:0] DLY_VALUE bit field), or
    	the load value (the WDT_WLDR[31:0] TIMER_LOAD bit field), the
    	watchdog timer must be disabled by using the start/stop sequence
    	(the WDT_WSPR register).
    
    Currently the timer is stopped in the .probe callback but still there
    are possibilities that yield to a situation where omap_wdt_start is
    entered with the timer running (e.g. when /dev/watchdog is closed
    without stopping and then reopened). In such a case programming the
    timeout silently fails!
    
    To circumvent this stop the timer before reprogramming.
    
    Assuming one of the first things the watchdog user does is setting the
    timeout explicitly nothing too bad should happen because this explicit
    setting works fine.
    
    Fixes: 7768a13c252a ("[PATCH] OMAP: Add Watchdog driver support")
    Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
    Reviewed-by: Guenter Roeck <linux@roeck-us.net>
    Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit fe4f4ced37ee0acde613a7993c71d5909cd3c244
Author: Alan Stern <stern@rowland.harvard.edu>
Date:   Thu Jan 29 11:29:13 2015 -0500

    USB: usbfs: allow URBs to be reaped after disconnection
    
    commit 3f2cee73b650921b2e214bf487b2061a1c266504 upstream.
    
    The usbfs API has a peculiar hole: Users are not allowed to reap their
    URBs after the device has been disconnected.  There doesn't seem to be
    any good reason for this; it is an ad-hoc inconsistency.
    
    The patch allows users to issue the USBDEVFS_REAPURB and
    USBDEVFS_REAPURBNDELAY ioctls (together with their 32-bit counterparts
    on 64-bit systems) even after the device is gone.  If no URBs are
    pending for a disconnected device then the ioctls will return -ENODEV
    rather than -EAGAIN, because obviously no new URBs will ever be able
    to complete.
    
    The patch also adds a new capability flag for
    USBDEVFS_GET_CAPABILITIES to indicate that the reap-after-disconnect
    feature is supported.
    
    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
    Tested-by: Chris Dickens <christopher.a.dickens@gmail.com>
    Acked-by: Hans de Goede <hdegoede@redhat.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 6fefe16344a1f6b4618610a0908345969401bfbc
Author: Pali Rohár <pali.rohar@gmail.com>
Date:   Tue Jun 23 10:11:19 2015 +0200

    dell-laptop: Fix allocating & freeing SMI buffer page
    
    commit b8830a4e71b15d0364ac8e6c55301eea73f211da upstream.
    
    This commit fix kernel crash when probing for rfkill devices in dell-laptop
    driver failed. Function free_page() was incorrectly used on struct page *
    instead of virtual address of SMI buffer.
    
    This commit also simplify allocating page for SMI buffer by using
    __get_free_page() function instead of sequential call of functions
    alloc_page() and page_address().
    
    Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
    Acked-by: Michal Hocko <mhocko@suse.cz>
    Signed-off-by: Darren Hart <dvhart@linux.intel.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 3b1221b1eccef318d19b917ec78e8b30c8a75df6
Author: Arnd Bergmann <arnd@arndb.de>
Date:   Sat Jun 13 15:23:33 2015 +0200

    ideapad: fix software rfkill setting
    
    commit 4b200b4604bec3388426159f1656109d19fadf6e upstream.
    
    This fixes a several year old regression that I found while trying
    to get the Yoga 3 11 to work. The ideapad_rfk_set function is meant
    to send a command to the embedded controller through ACPI, but
    as of c1f73658ed, it sends the index of the rfkill device instead
    of the command, and ignores the opcode field.
    
    This changes it back to the original behavior, which indeed
    flips the rfkill state as seen in the debugfs interface.
    
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Fixes: c1f73658ed ("ideapad: pass ideapad_priv as argument (part 2)")
    Signed-off-by: Darren Hart <dvhart@linux.intel.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 19364fe163ee1d2bd14b45b162cba5621c1ea591
Author: Damian Eppel <d.eppel@samsung.com>
Date:   Fri Jun 26 15:23:04 2015 +0200

    clocksource: exynos_mct: Avoid blocking calls in the cpu hotplug notifier
    
    commit 56a94f13919c0db5958611b388e1581b4852f3c9 upstream.
    
    Whilst testing cpu hotplug events on kernel configured with
    DEBUG_PREEMPT and DEBUG_ATOMIC_SLEEP we get following BUG message,
    caused by calling request_irq() and free_irq() in the context of
    hotplug notification (which is in this case atomic context).
    
    [   40.785859] CPU1: Software reset
    [   40.786660] BUG: sleeping function called from invalid context at mm/slub.c:1241
    [   40.786668] in_atomic(): 1, irqs_disabled(): 128, pid: 0, name: swapper/1
    [   40.786678] Preemption disabled at:[<  (null)>]   (null)
    [   40.786681]
    [   40.786692] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 3.19.0-rc4-00024-g7dca860 #36
    [   40.786698] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
    [   40.786728] [<c0014a00>] (unwind_backtrace) from [<c0011980>] (show_stack+0x10/0x14)
    [   40.786747] [<c0011980>] (show_stack) from [<c0449ba0>] (dump_stack+0x70/0xbc)
    [   40.786767] [<c0449ba0>] (dump_stack) from [<c00c6124>] (kmem_cache_alloc+0xd8/0x170)
    [   40.786785] [<c00c6124>] (kmem_cache_alloc) from [<c005d6f8>] (request_threaded_irq+0x64/0x128)
    [   40.786804] [<c005d6f8>] (request_threaded_irq) from [<c0350b8c>] (exynos4_local_timer_setup+0xc0/0x13c)
    [   40.786820] [<c0350b8c>] (exynos4_local_timer_setup) from [<c0350ca8>] (exynos4_mct_cpu_notify+0x30/0xa8)
    [   40.786838] [<c0350ca8>] (exynos4_mct_cpu_notify) from [<c003b330>] (notifier_call_chain+0x44/0x84)
    [   40.786857] [<c003b330>] (notifier_call_chain) from [<c0022fd4>] (__cpu_notify+0x28/0x44)
    [   40.786873] [<c0022fd4>] (__cpu_notify) from [<c0013714>] (secondary_start_kernel+0xec/0x150)
    [   40.786886] [<c0013714>] (secondary_start_kernel) from [<40008764>] (0x40008764)
    
    Interrupts cannot be requested/freed in the CPU_STARTING/CPU_DYING
    notifications which run on the hotplugged cpu with interrupts and
    preemption disabled.
    
    To avoid the issue, request the interrupts for all possible cpus in
    the boot code. The interrupts are marked NO_AUTOENABLE to avoid a racy
    request_irq/disable_irq() sequence. The flag prevents the
    request_irq() code from enabling the interrupt immediately.
    
    The interrupt is then enabled in the CPU_STARTING notifier of the
    hotplugged cpu and again disabled with disable_irq_nosync() in the
    CPU_DYING notifier.
    
    [ tglx: Massaged changelog to match the patch ]
    
    Fixes: 7114cd749a12 ("clocksource: exynos_mct: use (request/free)_irq calls for local timer registration")
    Reported-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
    Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
    Tested-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
    Tested-by: Marcin Jabrzyk <m.jabrzyk@samsung.com>
    Signed-off-by: Damian Eppel <d.eppel@samsung.com>
    Cc: m.szyprowski@samsung.com
    Cc: kyungmin.park@samsung.com
    Cc: daniel.lezcano@linaro.org
    Cc: kgene@kernel.org
    Cc: linux-arm-kernel@lists.infradead.org
    Link: http://lkml.kernel.org/r/1435324984-7328-1-git-send-email-d.eppel@samsung.com
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 5afbdddca09da48ab6cdb8d816246a95209a40cc
Author: Michal Kazior <michal.kazior@tieto.com>
Date:   Fri May 22 10:22:40 2015 +0200

    mac80211: prevent possible crypto tx tailroom corruption
    
    commit ab499db80fcf07c18e4053f91a619500f663e90e upstream.
    
    There was a possible race between
    ieee80211_reconfig() and
    ieee80211_delayed_tailroom_dec(). This could
    result in inability to transmit data if driver
    crashed during roaming or rekeying and subsequent
    skbs with insufficient tailroom appeared.
    
    This race was probably never seen in the wild
    because a device driver would have to crash AND
    recover within 0.5s which is very unlikely.
    
    I was able to prove this race exists after
    changing the delay to 10s locally and crashing
    ath10k via debugfs immediately after GTK
    rekeying. In case of ath10k the counter went below
    0. This was harmless but other drivers which
    actually require tailroom (e.g. for WEP ICV or
    MMIC) could end up with the counter at 0 instead
    of >0 and introduce insufficient skb tailroom
    failures because mac80211 would not resize skbs
    appropriately anymore.
    
    Fixes: 8d1f7ecd2af5 ("mac80211: defer tailroom counter manipulation when roaming")
    Signed-off-by: Michal Kazior <michal.kazior@tieto.com>
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 2b9adf421a99b7af3a9f49bf14d9173204b111c7
Author: Vasily Averin <vvs@virtuozzo.com>
Date:   Thu Jun 25 15:01:44 2015 -0700

    security_syslog() should be called once only
    
    commit d194e5d666225b04c7754471df0948f645b6ab3a upstream.
    
    The final version of commit 637241a900cb ("kmsg: honor dmesg_restrict
    sysctl on /dev/kmsg") lost few hooks, as result security_syslog() are
    processed incorrectly:
    
    - open of /dev/kmsg checks syslog access permissions by using
      check_syslog_permissions() where security_syslog() is not called if
      dmesg_restrict is set.
    
    - syslog syscall and /proc/kmsg calls do_syslog() where security_syslog
      can be executed twice (inside check_syslog_permissions() and then
      directly in do_syslog())
    
    With this patch security_syslog() is called once only in all
    syslog-related operations regardless of dmesg_restrict value.
    
    Fixes: 637241a900cb ("kmsg: honor dmesg_restrict sysctl on /dev/kmsg")
    Signed-off-by: Vasily Averin <vvs@virtuozzo.com>
    Cc: Kees Cook <keescook@chromium.org>
    Cc: Josh Boyer <jwboyer@redhat.com>
    Cc: Eric Paris <eparis@redhat.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 75ad64dc348105bdf1c19b92566a224e9f87883b
Author: Chris Metcalf <cmetcalf@ezchip.com>
Date:   Thu Jun 25 15:02:08 2015 -0700

    __bitmap_parselist: fix bug in empty string handling
    
    commit 2528a8b8f457d7432552d0e2b6f0f4046bb702f4 upstream.
    
    bitmap_parselist("", &mask, nmaskbits) will erroneously set bit zero in
    the mask.  The same bug is visible in cpumask_parselist() since it is
    layered on top of the bitmask code, e.g.  if you boot with "isolcpus=",
    you will actually end up with cpu zero isolated.
    
    The bug was introduced in commit 4b060420a596 ("bitmap, irq: add
    smp_affinity_list interface to /proc/irq") when bitmap_parselist() was
    generalized to support userspace as well as kernelspace.
    
    Fixes: 4b060420a596 ("bitmap, irq: add smp_affinity_list interface to /proc/irq")
    Signed-off-by: Chris Metcalf <cmetcalf@ezchip.com>
    Cc: Rasmus Villemoes <linux@rasmusvillemoes.dk>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit f21dad05bb0219480fad3c4873fec923023431e4
Author: Ding Wang <justin.wang@spreadtrum.com>
Date:   Mon May 18 20:14:15 2015 +0800

    mmc: card: Fixup request missing in mmc_blk_issue_rw_rq
    
    commit 29535f7b797df35cc9b6b3bca635591cdd3dd2a8 upstream.
    
    The current handler of MMC_BLK_CMD_ERR in mmc_blk_issue_rw_rq function
    may cause new coming request permanent missing when the ongoing
    request (previoulsy started) complete end.
    
    The problem scenario is as follows:
    (1) Request A is ongoing;
    (2) Request B arrived, and finally mmc_blk_issue_rw_rq() is called;
    (3) Request A encounters the MMC_BLK_CMD_ERR error;
    (4) In the error handling of MMC_BLK_CMD_ERR, suppose mmc_blk_cmd_err()
        end request A completed and return zero. Continue the error handling,
        suppose mmc_blk_reset() reset device success;
    (5) Continue the execution, while loop completed because variable ret
        is zero now;
    (6) Finally, mmc_blk_issue_rw_rq() return without processing request B.
    
    The process related to the missing request may wait that IO request
    complete forever, possibly crashing the application or hanging the system.
    
    Fix this issue by starting new request when reset success.
    
    Signed-off-by: Ding Wang <justin.wang@spreadtrum.com>
    Fixes: 67716327eec7 ("mmc: block: add eMMC hardware reset support")
    Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 6b10c0fdc48e7ad1076703609a2ae0b9ec18f767
Author: Sagi Grimberg <sagig@mellanox.com>
Date:   Thu Jun 4 19:49:20 2015 +0300

    iser-target: release stale iser connections
    
    commit 2f1b6b7d9a815f341b18dfd26a363f37d4d3c96a upstream.
    
    When receiving a new iser connect request we serialize
    the pending requests by adding the newly created iser connection
    to the np accept list and let the login thread process the connect
    request one by one (np_accept_wait).
    
    In case we received a disconnect request before the iser_conn
    has begun processing (still linked in np_accept_list) we should
    detach it from the list and clean it up and not have the login
    thread process a stale connection. We do it only when the connection
    state is not already terminating (initiator driven disconnect) as
    this might lead us to access np_accept_mutex after the np was released
    in live shutdown scenarios.
    
    Signed-off-by: Sagi Grimberg <sagig@mellanox.com>
    Signed-off-by: Jenny Falkovich <jennyf@mellanox.com>
    Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit eb9136b7c59f5af4a83c8134ea08bb5836f4db25
Author: Sagi Grimberg <sagig@mellanox.com>
Date:   Sun Mar 29 15:52:04 2015 +0300

    iser-target: Fix possible deadlock in RDMA_CM connection error
    
    commit 4a579da2586bd3b79b025947ea24ede2bbfede62 upstream.
    
    Before we reach to connection established we may get an
    error event. In this case the core won't teardown this
    connection (never established it), so we take care of freeing
    it ourselves.
    
    Signed-off-by: Sagi Grimberg <sagig@mellanox.com>
    Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit fbd29aea83ac72093ebefb9e66e94b58431288d5
Author: Nicholas Bellinger <nab@linux-iscsi.org>
Date:   Thu Feb 26 22:19:15 2015 -0800

    iscsi-target: Convert iscsi_thread_set usage to kthread.h
    
    commit 88dcd2dab5c23b1c9cfc396246d8f476c872f0ca upstream.
    
    This patch converts iscsi-target code to use modern kthread.h API
    callers for creating RX/TX threads for each new iscsi_conn descriptor,
    and releasing associated RX/TX threads during connection shutdown.
    
    This is done using iscsit_start_kthreads() -> kthread_run() to start
    new kthreads from within iscsi_post_login_handler(), and invoking
    kthread_stop() from existing iscsit_close_connection() code.
    
    Also, convert iscsit_logout_post_handler_closesession() code to use
    cmpxchg when determing when iscsit_cause_connection_reinstatement()
    needs to sleep waiting for completion.
    
    Reported-by: Sagi Grimberg <sagig@mellanox.com>
    Tested-by: Sagi Grimberg <sagig@mellanox.com>
    Cc: Slava Shwartsman <valyushash@gmail.com>
    Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit c5ba5dae7e02eb7a1ff3a7b1bdbefc7242f329a4
Author: Lv Zheng <lv.zheng@intel.com>
Date:   Wed Jul 1 14:43:26 2015 +0800

    ACPICA: Tables: Fix an issue that FACS initialization is performed twice
    
    commit c04be18448355441a0c424362df65b6422e27bda upstream.
    
    ACPICA commit 90f5332a15e9d9ba83831ca700b2b9f708274658
    
    This patch adds a new FACS initialization flag for acpi_tb_initialize().
    acpi_enable_subsystem() might be invoked several times in OS bootup process,
    and we don't want FACS initialization to be invoked twice. Lv Zheng.
    
    Link: https://github.com/acpica/acpica/commit/90f5332a
    Signed-off-by: Lv Zheng <lv.zheng@intel.com>
    Signed-off-by: Bob Moore <robert.moore@intel.com>
    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 85a5064b5c4fa42a2bd73feba46a5f96f56edabe
Author: Ilya Dryomov <idryomov@gmail.com>
Date:   Mon Jun 29 19:30:23 2015 +0300

    crush: fix a bug in tree bucket decode
    
    commit 82cd003a77173c91b9acad8033fb7931dac8d751 upstream.
    
    struct crush_bucket_tree::num_nodes is u8, so ceph_decode_8_safe()
    should be used.  -Wconversion catches this, but I guess it went
    unnoticed in all the noise it spews.  The actual problem (at least for
    common crushmaps) isn't the u32 -> u8 truncation though - it's the
    advancement by 4 bytes instead of 1 in the crushmap buffer.
    
    Fixes: http://tracker.ceph.com/issues/2759
    
    Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
    Reviewed-by: Josh Durgin <jdurgin@redhat.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 41e8d434d480fbf5385035aa800d4f0db67b8ecd
Author: Miklos Szeredi <mszeredi@suse.cz>
Date:   Wed Jul 1 16:25:55 2015 +0200

    fuse: initialize fc->release before calling it
    
    commit 0ad0b3255a08020eaf50e34ef0d6df5bdf5e09ed upstream.
    
    fc->release is called from fuse_conn_put() which was used in the error
    cleanup before fc->release was initialized.
    
    [Jeremiah Mahler <jmmahler@gmail.com>: assign fc->release after calling
    fuse_conn_init(fc) instead of before.]
    
    Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
    Fixes: a325f9b92273 ("fuse: update fuse_conn_init() and separate out fuse_conn_kill()")
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit aca98714893b8275bf04927b3c73d1db70def1f6
Author: Filipe Manana <fdmanana@suse.com>
Date:   Fri Jul 3 08:36:11 2015 +0100

    Btrfs: fix memory leak in the extent_same ioctl
    
    commit 497b4050e0eacd4c746dd396d14916b1e669849d upstream.
    
    We were allocating memory with memdup_user() but we were never releasing
    that memory. This affected pretty much every call to the ioctl, whether
    it deduplicated extents or not.
    
    This issue was reported on IRC by Julian Taylor and on the mailing list
    by Marcel Ritter, credit goes to them for finding the issue.
    
    Reported-by: Julian Taylor <jtaylor.debian@googlemail.com>
    Reported-by: Marcel Ritter <ritter.marcel@gmail.com>
    Signed-off-by: Filipe Manana <fdmanana@suse.com>
    Reviewed-by: Mark Fasheh <mfasheh@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit db2697540738d052a6a972d2009c18a41d736e5e
Author: Filipe Manana <fdmanana@suse.com>
Date:   Sat Jun 13 06:52:56 2015 +0100

    Btrfs: use kmem_cache_free when freeing entry in inode cache
    
    commit c3f4a1685bb87e59c886ee68f7967eae07d4dffa upstream.
    
    The free space entries are allocated using kmem_cache_zalloc(),
    through __btrfs_add_free_space(), therefore we should use
    kmem_cache_free() and not kfree() to avoid any confusion and
    any potential problem. Looking at the kfree() definition at
    mm/slab.c it has the following comment:
    
      /*
       * (...)
       *
       * Don't free memory not originally allocated by kmalloc()
       * or you will run into trouble.
       */
    
    So better be safe and use kmem_cache_free().
    
    Signed-off-by: Filipe Manana <fdmanana@suse.com>
    Reviewed-by: David Sterba <dsterba@suse.cz>
    Signed-off-by: Chris Mason <clm@fb.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 3f3556dd0a0a5ed1c489fcd3daf50fc355bdaf45
Author: Firo Yang <firogm@gmail.com>
Date:   Thu Jun 11 09:41:10 2015 +0800

    md: fix a build warning
    
    commit 4e023612325a9034a542bfab79f78b1fe5ebb841 upstream.
    
    Warning like this:
    
    drivers/md/md.c: In function "update_array_info":
    drivers/md/md.c:6394:26: warning: logical not is only applied
    to the left hand side of comparison [-Wlogical-not-parentheses]
          !mddev->persistent  != info->not_persistent||
    
    Fix it as Neil Brown said:
    mddev->persistent != !info->not_persistent ||
    
    Signed-off-by: Firo Yang <firogm@gmail.com>
    Signed-off-by: NeilBrown <neilb@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit dab00c734ec3fe7bd5ed0ececf6c6b5339d74075
Author: Stevens, Nick <Nick.Stevens@digi.com>
Date:   Wed Jul 1 16:07:41 2015 +0000

    hwmon: (mcp3021) Fix broken output scaling
    
    commit 347d7e45bd09ce09cbc30d5cea9de377eb22f55c upstream.
    
    The mcp3021 scaling code is dividing the VDD (full-scale) value in
    millivolts by the A2D resolution to obtain the scaling factor. When VDD
    is 3300mV (the standard value) and the resolution is 12-bit (4096
    divisions), the result is a scale factor of 3300/4096, which is always
    one.  Effectively, the raw A2D reading is always being returned because
    no scaling is applied.
    
    This patch fixes the issue and simplifies the register-to-volts
    calculation, removing the unneeded "output_scale" struct member.
    
    Signed-off-by: Nick Stevens <Nick.Stevens@digi.com>
    [Guenter Roeck: Dropped unnecessary value check]
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 0c07c995fbb0c3f44b7f4b472a8b750e684d8585
Author: Lior Amsalem <alior@marvell.com>
Date:   Tue May 26 15:07:32 2015 +0200

    dmaengine: mv_xor: bug fix for racing condition in descriptors cleanup
    
    commit 9136291f1dbc1d4d1cacd2840fb35f4f3ce16c46 upstream.
    
    This patch fixes a bug in the XOR driver where the cleanup function can be
    called and free descriptors that never been processed by the engine (which
    result in data errors).
    
    The cleanup function will free descriptors based on the ownership bit in
    the descriptors.
    
    Fixes: ff7b04796d98 ("dmaengine: DMA engine driver for Marvell XOR engine")
    Signed-off-by: Lior Amsalem <alior@marvell.com>
    Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
    Reviewed-by: Ofer Heifetz <oferh@marvell.com>
    Signed-off-by: Vinod Koul <vinod.koul@intel.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 7cad6416f78c2f30fc081942251bfc1b85364bd4
Author: Steven Rostedt (Red Hat) <rostedt@goodmis.org>
Date:   Tue Jul 7 15:05:03 2015 -0400

    tracing: Have branch tracer use recursive field of task struct
    
    commit 6224beb12e190ff11f3c7d4bf50cb2922878f600 upstream.
    
    Fengguang Wu's tests triggered a bug in the branch tracer's start up
    test when CONFIG_DEBUG_PREEMPT set. This was because that config
    adds some debug logic in the per cpu field, which calls back into
    the branch tracer.
    
    The branch tracer has its own recursive checks, but uses a per cpu
    variable to implement it. If retrieving the per cpu variable calls
    back into the branch tracer, you can see how things will break.
    
    Instead of using a per cpu variable, use the trace_recursion field
    of the current task struct. Simply set a bit when entering the
    branch tracing and clear it when leaving. If the bit is set on
    entry, just don't do the tracing.
    
    There's also the case with lockdep, as the local_irq_save() called
    before the recursion can also trigger code that can call back into
    the function. Changing that to a raw_local_irq_save() will protect
    that as well.
    
    This prevents the recursion and the inevitable crash that follows.
    
    Link: http://lkml.kernel.org/r/20150630141803.GA28071@wfg-t540p.sh.intel.com
    
    Reported-by: Fengguang Wu <fengguang.wu@intel.com>
    Tested-by: Fengguang Wu <fengguang.wu@intel.com>
    Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 57f70dbbbd686aa337376ef416b5fb50ed41a024
Author: Steven Rostedt (Red Hat) <rostedt@goodmis.org>
Date:   Thu Jun 25 18:10:09 2015 -0400

    tracing/filter: Do not allow infix to exceed end of string
    
    commit 6b88f44e161b9ee2a803e5b2b1fbcf4e20e8b980 upstream.
    
    While debugging a WARN_ON() for filtering, I found that it is possible
    for the filter string to be referenced after its end. With the filter:
    
     # echo '>' > /sys/kernel/debug/events/ext4/ext4_truncate_exit/filter
    
    The filter_parse() function can call infix_get_op() which calls
    infix_advance() that updates the infix filter pointers for the cnt
    and tail without checking if the filter is already at the end, which
    will put the cnt to zero and the tail beyond the end. The loop then calls
    infix_next() that has
    
    	ps->infix.cnt--;
    	return ps->infix.string[ps->infix.tail++];
    
    The cnt will now be below zero, and the tail that is returned is
    already passed the end of the filter string. So far the allocation
    of the filter string usually has some buffer that is zeroed out, but
    if the filter string is of the exact size of the allocated buffer
    there's no guarantee that the charater after the nul terminating
    character will be zero.
    
    Luckily, only root can write to the filter.
    
    Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 8e3d684307a83cb8ff682bd90a35a0a78882ecb5
Author: Steven Rostedt (Red Hat) <rostedt@goodmis.org>
Date:   Thu Jun 25 18:02:29 2015 -0400

    tracing/filter: Do not WARN on operand count going below zero
    
    commit b4875bbe7e68f139bd3383828ae8e994a0df6d28 upstream.
    
    When testing the fix for the trace filter, I could not come up with
    a scenario where the operand count goes below zero, so I added a
    WARN_ON_ONCE(cnt < 0) to the logic. But there is legitimate case
    that it can happen (although the filter would be wrong).
    
     # echo '>' > /sys/kernel/debug/events/ext4/ext4_truncate_exit/filter
    
    That is, a single operation without any operands will hit the path
    where the WARN_ON_ONCE() can trigger. Although this is harmless,
    and the filter is reported as a error. But instead of spitting out
    a warning to the kernel dmesg, just fail nicely and report it via
    the proper channels.
    
    Link: http://lkml.kernel.org/r/558C6082.90608@oracle.com
    
    Reported-by: Vince Weaver <vincent.weaver@maine.edu>
    Reported-by: Sasha Levin <sasha.levin@oracle.com>
    Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 4d1e399304796bd0f151c973f1e605ce66a632cf
Author: Arne Fitzenreiter <arne_f@ipfire.org>
Date:   Wed Jul 15 13:54:37 2015 +0200

    libata: force disable trim for SuperSSpeed S238
    
    commit cda57b1b05cf7b8b99ab4b732bea0b05b6c015cc upstream.
    
    This device loses blocks, often the partition table area, on trim.
    Disable TRIM.
    http://pcengines.ch/msata16a.htm
    
    Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
    Signed-off-by: Tejun Heo <tj@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 52335e40ca525484a6995d7b0c1260faa0de1edd
Author: Arne Fitzenreiter <arne_f@ipfire.org>
Date:   Wed Jul 15 13:54:36 2015 +0200

    libata: add ATA_HORKAGE_NOTRIM
    
    commit 71d126fd28de2d4d9b7b2088dbccd7ca62fad6e0 upstream.
    
    Some devices lose data on TRIM whether queued or not.  This patch adds
    a horkage to disable TRIM.
    
    tj: Collapsed unnecessary if() nesting.
    
    Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
    Signed-off-by: Tejun Heo <tj@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 7306b7b3de26a0773270799e257d78fde6bce68e
Author: Hon Ching \\(Vicky\\) Lo <honclo@linux.vnet.ibm.com>
Date:   Fri May 22 13:23:02 2015 -0400

    vTPM: set virtual device before passing to ibmvtpm_reset_crq
    
    commit 9d75f08946e8485109458ccf16f714697c207f41 upstream.
    
    tpm_ibmvtpm_probe() calls ibmvtpm_reset_crq(ibmvtpm) without having yet
    set the virtual device in the ibmvtpm structure. So in ibmvtpm_reset_crq,
    the phype call contains empty unit addresses, ibmvtpm->vdev->unit_address.
    
    Signed-off-by: Hon Ching(Vicky) Lo <honclo@linux.vnet.ibm.com>
    Signed-off-by: Joy Latten <jmlatten@linux.vnet.ibm.com>
    Reviewed-by: Ashley Lai <ashley@ahsleylai.com>
    Fixes: 132f76294744 ("drivers/char/tpm: Add new device driver to support IBM vTPM")
    Signed-off-by: Peter Huewe <peterhuewe@gmx.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit e0432d32fc1a3d30c3c99cdebd4b1c0c697b438d
Author: Eric Sandeen <sandeen@redhat.com>
Date:   Mon Jun 22 09:42:48 2015 +1000

    xfs: fix remote symlinks on V5/CRC filesystems
    
    commit 2ac56d3d4bd625450a54d4c3f9292d58f6b88232 upstream.
    
    If we create a CRC filesystem, mount it, and create a symlink with
    a path long enough that it can't live in the inode, we get a very
    strange result upon remount:
    
    # ls -l mnt
    total 4
    lrwxrwxrwx. 1 root root 929 Jun 15 16:58 link -> XSLM
    
    XSLM is the V5 symlink block header magic (which happens to be
    followed by a NUL, so the string looks terminated).
    
    xfs_readlink_bmap() advanced cur_chunk by the size of the header
    for CRC filesystems, but never actually used that pointer; it
    kept reading from bp->b_addr, which is the start of the block,
    rather than the start of the symlink data after the header.
    
    Looks like this problem goes back to v3.10.
    
    Fixing this gets us reading the proper link target, again.
    
    Signed-off-by: Eric Sandeen <sandeen@redhat.com>
    Reviewed-by: Dave Chinner <dchinner@redhat.com>
    Signed-off-by: Dave Chinner <david@fromorbit.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 1adcad7eb68cfe1bac83f9bb91b2f7aeafef196a
Author: Zhao Junwang <zhjwpku@gmail.com>
Date:   Tue Jul 7 17:08:35 2015 +0800

    drm: add a check for x/y in drm_mode_setcrtc
    
    commit 01447e9f04ba1c49a9534ae6a5a6f26c2bb05226 upstream.
    
    legacy setcrtc ioctl does take a 32 bit value which might indeed
    overflow
    
    the checks of crtc_req->x > INT_MAX and crtc_req->y > INT_MAX aren't
    needed any more with this
    
    v2: -polish the annotation according to Daniel's comment
    
    Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
    Signed-off-by: Zhao Junwang <zhjwpku@gmail.com>
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit f369ecf9afbc4f1f0ec7de5593314d1464f4ccf3
Author: Alex Deucher <alexander.deucher@amd.com>
Date:   Thu Jul 9 21:08:17 2015 -0400

    drm/radeon: add a dpm quirk for Sapphire Radeon R9 270X 2GB GDDR5
    
    commit 5dfc71bc44d91d1620505c064fa22b0b3db58a9d upstream.
    
    bug:
    https://bugs.freedesktop.org/show_bug.cgi?id=76490
    
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 1a9f8f2378ba1b5ef8e321df43097d07e79d0496
Author: Michel Dänzer <michel.daenzer@amd.com>
Date:   Fri Jul 3 10:02:27 2015 +0900

    drm/radeon: Don't flush the GART TLB if rdev->gart.ptr == NULL
    
    commit 233709d2cd6bbaaeda0aeb8d11f6ca7f98563b39 upstream.
    
    This can be the case when the GPU is powered off, e.g. via vgaswitcheroo
    or runpm. When the GPU is powered up again, radeon_gart_table_vram_pin
    flushes the TLB after setting rdev->gart.ptr to non-NULL.
    
    Fixes panic on powering off R7xx GPUs.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=61529
    Reviewed-by: Christian König <christian.koenig@amd.com>
    Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 607272f1e72f8e3ea0ece948d12b97ecc8b8f86c
Author: Jérôme Glisse <jglisse@redhat.com>
Date:   Fri Jun 19 10:32:16 2015 -0400

    drm/radeon: SDMA fix hibernation (CI GPU family).
    
    commit 2ba8d1bb8f6b589037f7db1f01144fc80750e8f7 upstream.
    
    In order for hibernation to reliably work we need to properly turn
    off the SDMA block, sadly after numerous attemps i haven't not found
    proper sequence for clean and full shutdown. So simply reset both
    SDMA block, this makes hibernation works reliably on sea island GPU
    family (CI)
    
    Hibernation and suspend to ram were tested (several times) on :
    Bonaire
    Hawaii
    Mullins
    Kaveri
    Kabini
    
    Signed-off-by: Jérôme Glisse <jglisse@redhat.com>
    Reviewed-by: Christian König <christian.koenig@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 65d1e93200ae8e4d35abd2848a448884bfd52ecd
Author: Jérôme Glisse <jglisse@redhat.com>
Date:   Fri Jun 19 10:32:15 2015 -0400

    drm/radeon: compute ring fix hibernation (CI GPU family) v2.
    
    commit 161569deaa03cf3c00ed63352006193f250b0648 upstream.
    
    In order for hibernation to reliably work we need to cleanup more
    thoroughly the compute ring. Hibernation is different from suspend
    resume as when we resume from hibernation the hardware is first
    fully initialize by regular kernel then freeze callback happens
    (which correspond to a suspend inside the radeon kernel driver)
    and turn off each of the block. It turns out we were not cleanly
    shutting down the compute ring. This patch fix that.
    
    Hibernation and suspend to ram were tested (several times) on :
    Bonaire
    Hawaii
    Mullins
    Kaveri
    Kabini
    
    Changed since v1:
      - Factor the ring stop logic into a function taking ring as arg.
    
    Signed-off-by: Jérôme Glisse <jglisse@redhat.com>
    Reviewed-by: Christian König <christian.koenig@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 013cda6a53f6c35cf00911c7b938a9b0d9c50882
Author: Alex Deucher <alexander.deucher@amd.com>
Date:   Fri May 15 11:48:52 2015 -0400

    drm/radeon: take the mode_config mutex when dealing with hpds (v2)
    
    commit 39fa10f7e21574a70cecf1fed0f9b36535aa68a0 upstream.
    
    Since we are messing with state in the worker.
    
    v2: drop the changes in the mst worker
    
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 82e75d738c91b79a91b8f5504b49e2d715da377f
Author: Frediano Ziglio <fziglio@redhat.com>
Date:   Wed Jun 3 12:09:10 2015 +0100

    drm/qxl: Do not leak memory if qxl_release_list_add fails
    
    commit 8451cc964c1d193b989c41a44e5e77109cc696f8 upstream.
    
    If the function fails reference counter to the object is not decremented
    causing leaks.
    This is hard to spot as it happens only on very low memory situations.
    
    Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
    Reviewed-by: Dave Airlie <airlied@redhat.com>
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 75efb8988a3adbf6a518a76a002f168917ff317c
Author: Frediano Ziglio <fziglio@redhat.com>
Date:   Wed Jun 3 12:09:09 2015 +0100

    drm/qxl: Do not cause spice-server to clean our objects
    
    commit 2fa19535ca6abcbfd1ccc9ef694db52f49f77747 upstream.
    
    If objects are moved back from system memory to VRAM (and spice id
    created again) memory is already initialized so we need to set flag
    to not clear memory.
    If you don't do it after a while using desktop many images turns to
    black or transparents.
    
    Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
    Reviewed-by: Dave Airlie <airlied@redhat.com>
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit dcb919c0256e4319d07de8fbb5e549a7ecfeb294
Author: Tomas Winkler <tomas.winkler@intel.com>
Date:   Thu Jul 16 15:50:45 2015 +0200

    mmc: block: Add missing mmc_blk_put() in power_ro_lock_show()
    
    commit 9098f84cced870f54d8c410dd2444cfa61467fa0 upstream.
    
    Enclosing mmc_blk_put() is missing in power_ro_lock_show() sysfs handler,
    let's add it.
    
    Fixes: add710eaa886 ("mmc: boot partition ro lock support")
    Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
    Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit c3195fb188fd965efca9e388a1b1b4b3bad7e988
Author: Joe Thornber <ejt@redhat.com>
Date:   Fri Jul 3 14:51:32 2015 +0100

    dm btree: silence lockdep lock inversion in dm_btree_del()
    
    commit 1c7518794a3647eb345d59ee52844e8a40405198 upstream.
    
    Allocate memory using GFP_NOIO when deleting a btree.  dm_btree_del()
    can be called via an ioctl and we don't want to recurse into the FS or
    block layer.
    
    Signed-off-by: Joe Thornber <ejt@redhat.com>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit cc9ea63e193a7419e7fd0d37ea9d9821bfe9f6f4
Author: Dennis Yang <shinrairis@gmail.com>
Date:   Fri Jun 26 15:25:48 2015 +0100

    dm btree remove: fix bug in redistribute3
    
    commit 4c7e309340ff85072e96f529582d159002c36734 upstream.
    
    redistribute3() shares entries out across 3 nodes.  Some entries were
    being moved the wrong way, breaking the ordering.  This manifested as a
    BUG() in dm-btree-remove.c:shift() when entries were removed from the
    btree.
    
    For additional context see:
    https://www.redhat.com/archives/dm-devel/2015-May/msg00113.html
    
    Signed-off-by: Dennis Yang <shinrairis@gmail.com>
    Signed-off-by: Joe Thornber <ejt@redhat.com>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 76a51cc518f330a23b54f2fa967486c2e5a9a1a2
Author: Joe Thornber <ejt@redhat.com>
Date:   Wed Jun 17 13:35:19 2015 +0100

    dm space map metadata: fix occasional leak of a metadata block on resize
    
    commit 6096d91af0b65a3967139b32d5adbb3647858a26 upstream.
    
    The metadata space map has a simplified 'bootstrap' mode that is
    operational when extending the space maps.  Whilst in this mode it's
    possible for some refcount decrement operations to become queued (eg, as
    a result of shadowing one of the bitmap indexes).  These decrements were
    not being applied when switching out of bootstrap mode.
    
    The effect of this bug was the leaking of a 4k metadata block.  This is
    detected by the latest version of thin_check as a non fatal error.
    
    Signed-off-by: Joe Thornber <ejt@redhat.com>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit b4ca5e5571316d94f6d03a68716d3015cd2441f0
Author: Mikulas Patocka <mpatocka@redhat.com>
Date:   Fri Jun 5 09:50:42 2015 -0400

    dm stats: fix divide by zero if 'number_of_areas' arg is zero
    
    commit dd4c1b7d0c95be1c9245118a3accc41a16f1db67 upstream.
    
    If the number_of_areas argument was zero the kernel would crash on
    div-by-zero.  Add better input validation.
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 28d1a88bcd8f76794fd541f2f4c1f07debbe05f6
Author: AMAN DEEP <aman.deep@samsung.com>
Date:   Tue Jul 21 17:20:27 2015 +0300

    usb: xhci: Bugfix for NULL pointer deference in xhci_endpoint_init() function
    
    commit 3496810663922617d4b706ef2780c279252ddd6a upstream.
    
    virt_dev->num_cached_rings counts on freed ring and is not updated
    correctly. In xhci_free_or_cache_endpoint_ring() function, the free ring
    is added into cache and then num_rings_cache is incremented as below:
    		virt_dev->ring_cache[rings_cached] =
    			virt_dev->eps[ep_index].ring;
    		virt_dev->num_rings_cached++;
    here, free ring pointer is added to a current index and then
    index is incremented.
    So current index always points to empty location in the ring cache.
    For getting available free ring, current index should be decremented
    first and then corresponding ring buffer value should be taken from ring
    cache.
    
    But In function xhci_endpoint_init(), the num_rings_cached index is
    accessed before decrement.
    		virt_dev->eps[ep_index].new_ring =
    			virt_dev->ring_cache[virt_dev->num_rings_cached];
    		virt_dev->ring_cache[virt_dev->num_rings_cached] = NULL;
    		virt_dev->num_rings_cached--;
    This is bug in manipulating the index of ring cache.
    And it should be as below:
    		virt_dev->num_rings_cached--;
    		virt_dev->eps[ep_index].new_ring =
    			virt_dev->ring_cache[virt_dev->num_rings_cached];
    		virt_dev->ring_cache[virt_dev->num_rings_cached] = NULL;
    
    Signed-off-by: Aman Deep <aman.deep@samsung.com>
    Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit b3c0f92891b1df3f686630da222dc15bf1bae47b
Author: Johannes Thumshirn <jthumshirn@suse.de>
Date:   Wed Jul 8 17:26:37 2015 +0200

    USB: serial: Destroy serial_minors IDR on module exit
    
    commit d23f47d4927fd2f61b3a754d83c7bcec215b5cfe upstream.
    
    Destroy serial_minors IDR on module exit, reclaiming the allocated memory.
    
    This was detected by the following semantic patch (written by Luis
    Rodriguez <mcgrof@suse.com>)
    
    <SmPL>
    @ defines_module_init @
    declarer name module_init, module_exit;
    declarer name DEFINE_IDR;
    identifier init;
    @@
    
    module_init(init);
    
    @ defines_module_exit @
    identifier exit;
    @@
    
    module_exit(exit);
    
    @ declares_idr depends on defines_module_init && defines_module_exit @
    identifier idr;
    @@
    
    DEFINE_IDR(idr);
    
    @ on_exit_calls_destroy depends on declares_idr && defines_module_exit @
    identifier declares_idr.idr, defines_module_exit.exit;
    @@
    
    exit(void)
    {
     ...
     idr_destroy(&idr);
     ...
    }
    
    @ missing_module_idr_destroy depends on declares_idr && defines_module_exit && !on_exit_calls_destroy @
    identifier declares_idr.idr, defines_module_exit.exit;
    @@
    
    exit(void)
    {
     ...
     +idr_destroy(&idr);
    }
    </SmPL>
    
    Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de>
    Signed-off-by: Johan Hovold <johan@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 1ab47e93a44b92f8c5b872a40faf9c31462d959e
Author: Claudio Cappelli <claudio.cappelli.linux@gmail.com>
Date:   Wed Jun 10 20:38:30 2015 +0200

    USB: option: add 2020:4000 ID
    
    commit f6d7fb37f92622479ef6da604f27561f5045ba1e upstream.
    
    Add device Olivetti Olicard 300 (Network Connect: MT6225) - IDs 2020:4000.
    
    T:  Bus=01 Lev=02 Prnt=04 Port=00 Cnt=01 Dev#= 10 Spd=480 MxCh= 0
    D:  Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs=  1
    P:  Vendor=2020 ProdID=4000 Rev=03.00
    S:  Manufacturer=Network Connect
    S:  Product=MT6225
    C:  #Ifs= 7 Cfg#= 1 Atr=a0 MxPwr=500mA
    I:  If#= 0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=0e Prot=00 Driver=cdc_mbim
    I:  If#= 1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim
    I:  If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=02 Prot=01 Driver=option
    I:  If#= 3 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:  If#= 4 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:  If#= 5 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
    I:  If#= 6 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
    
    Signed-off-by: Claudio Cappelli <claudio.cappelli.linux@gmail.com>
    Suggested-by: Lars Melin <larsm17@gmail.com>
    [johan: amend commit message with devices info ]
    Signed-off-by: Johan Hovold <johan@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 5d277aecb3b9611e9b0f9c483fd2e8891968fec4
Author: Peter Sanford <peter@sanford.io>
Date:   Thu Jun 25 17:40:05 2015 -0700

    USB: cp210x: add ID for Aruba Networks controllers
    
    commit f98a7aa81eeeadcad25665c3501c236d531d4382 upstream.
    
    Add the USB serial console device ID for Aruba Networks 7xxx series
    controllers which have a USB port for their serial console.
    
    Signed-off-by: Peter Sanford <peter@sanford.io>
    Signed-off-by: Johan Hovold <johan@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit f4cdd06db178a22cbc5c044e23487292c7d7f6a6
Author: Felipe Balbi <balbi@ti.com>
Date:   Tue Jun 2 13:03:36 2015 -0500

    usb: musb: host: rely on port_mode to call musb_start()
    
    commit be9d39881fc4fa39a64b6eed6bab5d9ee5125344 upstream.
    
    Currently, we're calling musb_start() twice for DRD ports
    in some situations. This has been observed to cause enumeration
    issues after suspend/resume cycles with AM335x.
    
    In order to fix the problem, we just have to fix the check
    on musb_has_gadget() so that it only returns true if
    current mode is Host and ignore the fact that we have or
    not a gadget driver loaded.
    
    Fixes: ae44df2e21b5 (usb: musb: call musb_start() only once in OTG mode)
    Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
    Tested-by: Sekhar Nori <nsekhar@ti.com>
    Signed-off-by: Felipe Balbi <balbi@ti.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 2ee731c0009b7a3c72daa4a257c8a7ac4b512110
Author: Dan Carpenter <dan.carpenter@oracle.com>
Date:   Mon May 18 15:29:51 2015 +0300

    USB: devio: fix a condition in async_completed()
    
    commit 83ed07c5db71bc02bd646d6eb60b48908235cdf9 upstream.
    
    Static checkers complain that the current condition is never true.  It
    seems pretty likely that it's a typo and "URB" was intended instead of
    "USB".
    
    Fixes: 3d97ff63f899 ('usbdevfs: Use scatter-gather lists for large bulk transfers')
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Acked-by: Alan Stern <stern@rowland.harvard.edu>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 21c793da548244b01eb62164477825e3f1c0ef82
Author: John Youn <John.Youn@synopsys.com>
Date:   Mon Sep 17 00:00:00 2001 -0700

    usb: dwc3: Reset the transfer resource index on SET_INTERFACE
    
    commit aebda618718157a69c0dc0adb978d69bc2b8723c upstream.
    
    This fixes an issue introduced in commit b23c843992b6 (usb: dwc3:
    gadget: fix DEPSTARTCFG for non-EP0 EPs) that made sure we would
    only use DEPSTARTCFG once per SetConfig.
    
    The trick is that we should use one DEPSTARTCFG per SetConfig *OR*
    SetInterface. SetInterface was completely missed from the original
    patch.
    
    This problem became aparent after commit 76e838c9f776 (usb: dwc3:
    gadget: return error if command sent to DEPCMD register fails)
    added checking of the return status of device endpoint commands.
    
    'Set Endpoint Transfer Resource' command was caught failing
    occasionally. This is because the Transfer Resource
    Index was not getting reset during a SET_INTERFACE request.
    
    Finally, to fix the issue, was we have to do is make sure that
    our start_config_issued flag gets reset whenever we receive a
    SetInterface request.
    
    To verify the problem (and its fix), all we have to do is run
    test 9 from testusb with 'testusb -t 9 -s 2048 -a -c 5000'.
    
    Tested-by: Huang Rui <ray.huang@amd.com>
    Tested-by: Subbaraya Sundeep Bhatta <subbaraya.sundeep.bhatta@xilinx.com>
    Fixes: b23c843992b6 (usb: dwc3: gadget: fix DEPSTARTCFG for non-EP0 EPs)
    Signed-off-by: John Youn <johnyoun@synopsys.com>
    Signed-off-by: Felipe Balbi <balbi@ti.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 5a9c0a8cb5486320ad49f2c263c7d49548427436
Author: Subbaraya Sundeep Bhatta <subbaraya.sundeep.bhatta@xilinx.com>
Date:   Thu May 21 15:46:48 2015 +0530

    usb: dwc3: gadget: return error if command sent to DEPCMD register fails
    
    commit 76e838c9f7765f9a6205b4d558d75a66104bc60d upstream.
    
    We need to return error to caller if command is not sent to
    controller succesfully.
    
    Signed-off-by: Subbaraya Sundeep Bhatta <sbhatta@xilinx.com>
    Fixes: 72246da40f37 (usb: Introduce DesignWare USB3 DRD Driver)
    Signed-off-by: Felipe Balbi <balbi@ti.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 73ffe550e87d555697ea6888a428796f7a63d26b
Author: Subbaraya Sundeep Bhatta <subbaraya.sundeep.bhatta@xilinx.com>
Date:   Thu May 21 15:46:47 2015 +0530

    usb: dwc3: gadget: return error if command sent to DGCMD register fails
    
    commit 891b1dc022955d36cf4c0f42d383226a930db7ed upstream.
    
    We need to return error to caller if command is not sent to
    controller succesfully.
    
    Signed-off-by: Subbaraya Sundeep Bhatta <sbhatta@xilinx.com>
    Fixes: b09bb64239c8 (usb: dwc3: gadget: implement Global Command support)
    Signed-off-by: Felipe Balbi <balbi@ti.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 289af13384c9acef62331918dc76840920c5816f
Author: Mikulas Patocka <mpatocka@redhat.com>
Date:   Wed Jul 8 13:06:12 2015 -0400

    libata: increase the timeout when setting transfer mode
    
    commit d531be2ca2f27cca5f041b6a140504999144a617 upstream.
    
    I have a ST4000DM000 disk. If Linux is booted while the disk is spun down,
    the command that sets transfer mode causes the disk to spin up. The
    spin-up takes longer than the default 5s timeout, so the command fails and
    timeout is reported.
    
    Fix this by increasing the timeout to 15s, which is enough for the disk to
    spin up.
    
    Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
    Signed-off-by: Tejun Heo <tj@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 4fe64d35f180093795a849af964c9aaf9731d89b
Author: Aleksei Mamlin <mamlinav@gmail.com>
Date:   Wed Jul 1 13:48:30 2015 +0300

    libata: add ATA_HORKAGE_BROKEN_FPDMA_AA quirk for HP 250GB SATA disk VB0250EAVER
    
    commit 08c85d2a599d967ede38a847f5594447b6100642 upstream.
    
    Enabling AA on HP 250GB SATA disk VB0250EAVER causes errors:
    
    [    3.788362] ata3.00: failed to enable AA (error_mask=0x1)
    [    3.789243] ata3.00: failed to enable AA (error_mask=0x1)
    
    Add the ATA_HORKAGE_BROKEN_FPDMA_AA for this specific harddisk.
    
    tj: Collected FPDMA_AA entries and updated comment.
    
    Signed-off-by: Aleksei Mamlin <mamlinav@gmail.com>
    Signed-off-by: Tejun Heo <tj@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 9ee8ab9116d208d1451653a8e4b222a73be05b67
Author: Zidan Wang <zidan.wang@freescale.com>
Date:   Thu Jun 11 19:14:36 2015 +0800

    ASoC: wm8960: the enum of "DAC Polarity" should be wm8960_enum[1]
    
    commit a077e81ec61e07a7f86997d045109f06719fbffe upstream.
    
    the enum of "DAC Polarity" should be wm8960_enum[1].
    
    Signed-off-by: Zidan Wang <zidan.wang@freescale.com>
    Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit d7db755ee3fa3d82648f2ef96b511113fb366e02
Author: Axel Lin <axel.lin@ingics.com>
Date:   Mon May 11 09:04:06 2015 +0800

    ASoC: wm8903: Fix define for WM8903_VMID_RES_250K
    
    commit ebb6ad73e645b8f2d098dd3c41d2ff0da4146a02 upstream.
    
    VMID Control 0 BIT[2:1] is VMID Divider Enable and Select
    
    00 = VMID disabled (for OFF mode)
    01 = 2 x 50kΩ divider (for normal operation)
    10 = 2 x 250kΩ divider (for low power standby)
    11 = 2 x 5kΩ divider (for fast start-up)
    
    So WM8903_VMID_RES_250K should be 2 << 1, which is 4.
    
    Signed-off-by: Axel Lin <axel.lin@ingics.com>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 12be43de6b8c62e0bc32179bff6201fad776b4bd
Author: Axel Lin <axel.lin@ingics.com>
Date:   Fri May 15 09:15:16 2015 +0800

    ASoC: wm8955: Fix setting wrong register for WM8955_K_8_0_MASK bits
    
    commit 12c350050538c7dc779c083b7342bfd20f74949c upstream.
    
    WM8955_K_8_0_MASK bits is controlled by WM8955_PLL_CONTROL_3 rather than
    WM8955_PLL_CONTROL_2.
    
    Signed-off-by: Axel Lin <axel.lin@ingics.com>
    Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit b2b32b3eee20ae61f3febe5b38f19b441dcd382b
Author: Axel Lin <axel.lin@ingics.com>
Date:   Sun May 10 11:35:06 2015 +0800

    ASoC: wm8737: Fixup setting VMID Impedance control register
    
    commit 14ba3ec1de043260cecd9e828ea2e3a0ad302893 upstream.
    
    According to the datasheet:
    R10 (0Ah) VMID Impedance Control
    
    BIT 3:2 VMIDSEL DEFAULT 00
    
    DESCRIPTION: VMID impedance selection control
    00: 75kΩ output
    01: 300kΩ output
    10: 2.5kΩ output
    
    WM8737_VMIDSEL_MASK is 0xC (VMIDSEL - [3:2]),
    so it needs to left shift WM8737_VMIDSEL_SHIFT bits for setting these bits.
    
    Signed-off-by: Axel Lin <axel.lin@ingics.com>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit aaaebc4d03adb863281b671948cf14b3743cc12a
Author: Dan Carpenter <dan.carpenter@oracle.com>
Date:   Wed Jun 10 18:37:23 2015 +0300

    ASoC: imx-wm8962: Add a missing error check
    
    commit 474ff0ae23b834e9fc18374d14bb5f3e7b3828b4 upstream.
    
    My static checker complains that:
    
    	sound/soc/fsl/imx-wm8962.c:196 imx_wm8962_probe() warn:
    	we tested 'ret' before and it was 'false'
    
    The intent was that we use "ret" to check imx_audmux_v2_configure_port().
    
    Fixes: 8de2ae2a7f1f ('ASoC: fsl: add imx-wm8962 machine driver')
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Otherwise, Acked-by: Nicolin Chen <nicoleotsuka@gmail.com>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit b9eee50fe1028eb9744421bb60252ffdf9efbc34
Author: Richard Fitzgerald <rf@opensource.wolfsonmicro.com>
Date:   Thu May 28 14:28:12 2015 +0100

    ASoC: arizona: Fix noise generator gain TLV
    
    commit 15575ed544910464715df5c45a44b9732e415b93 upstream.
    
    The Arizona codec drivers had an incorrect dB scaling for the
    noise generator gain that started at 0dB and went upwards.
    Actually the highest setting is 0dB.
    
    Signed-off-by: Richard Fitzgerald <rf@opensource.wolfsonmicro.com>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit da0f41c912a624883a79ff47321b0e9f76d7f27a
Author: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Date:   Tue Apr 28 18:51:17 2015 -0300

    cx24116: fix a buffer overflow when checking userspace params
    
    commit 1fa2337a315a2448c5434f41e00d56b01a22283c upstream.
    
    The maximum size for a DiSEqC command is 6, according to the
    userspace API. However, the code allows to write up much more values:
    	drivers/media/dvb-frontends/cx24116.c:983 cx24116_send_diseqc_msg() error: buffer overflow 'd->msg' 6 <= 23
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 058004b7e7af8761e94edbe0566f164323bba2f2
Author: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Date:   Tue Apr 28 18:34:40 2015 -0300

    s5h1420: fix a buffer overflow when checking userspace params
    
    commit 12f4543f5d6811f864e6c4952eb27253c7466c02 upstream.
    
    The maximum size for a DiSEqC command is 6, according to the
    userspace API. However, the code allows to write up to 7 values:
    	drivers/media/dvb-frontends/s5h1420.c:193 s5h1420_send_master_cmd() error: buffer overflow 'cmd->msg' 6 <= 7
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit d74d53765b952c03a5b36bcac935bc2c4e313650
Author: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Date:   Tue Apr 28 19:02:19 2015 -0300

    af9013: Don't accept invalid bandwidth
    
    commit d7b76c91f471413de9ded837bddeca2164786571 upstream.
    
    If userspace sends an invalid bandwidth, it should either return
    EINVAL or switch to auto mode.
    
    This driver will go past an array and program the hardware on a
    wrong way if this happens.
    
    Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 7934fe3254792d761bdbb8e10b8e451d1ebc414c
Author: Jan Leupold <leupold@rsi-elektrotechnik.de>
Date:   Wed Jun 17 18:21:36 2015 +0200

    iio: adc: at91_adc: allow to use full range of startup time
    
    commit 2ab5f39bc7825808e0fa1e7e5f0b23e174563467 upstream.
    
    The DT-Property "atmel,adc-startup-time" is stored in an u8 for a microsecond
    value. When trying to increase the value of STARTUP in Register AT91_ADC_MR
    some higher values can't be reached.
    
    Change the type in function parameter and private structure field from u8 to
    u32.
    
    Signed-off-by: Jan Leupold <leupold@rsi-elektrotechnik.de>
    [nicolas.ferre@atmel.com: change commit message, increase u16 to u32 for startup time]
    Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
    Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
    Signed-off-by: Jonathan Cameron <jic23@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz> [-js: only change at91_adc_state for 3.12]

commit 01f57f0290a69404414e8c3c5a1072a5a0287022
Author: JM Friedt <jmfriedt@femto-st.fr>
Date:   Fri Jun 19 14:48:06 2015 +0200

    iio: DAC: ad5624r_spi: fix bit shift of output data value
    
    commit adfa969850ae93beca57f7527f0e4dc10cbe1309 upstream.
    
    The value sent on the SPI bus is shifted by an erroneous number of bits.
    The shift value was already computed in the iio_chan_spec structure and
    hence subtracting this argument to 16 yields an erroneous data position
    in the SPI stream.
    
    Signed-off-by: JM Friedt <jmfriedt@femto-st.fr>
    Acked-by: Lars-Peter Clausen <lars@metafoo.de>
    Signed-off-by: Jonathan Cameron <jic23@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit aff49470b3c4f028470e8fd61f01e2ba1d48c50d
Author: Cyrille Pitchen <cyrille.pitchen@atmel.com>
Date:   Tue Jun 9 18:22:14 2015 +0200

    i2c: at91: fix a race condition when using the DMA controller
    
    commit 93563a6a71bb69dd324fc7354c60fb05f84aae6b upstream.
    
    For TX transactions, the TXCOMP bit in the Status Register is cleared
    when the first data is written into the Transmit Holding Register.
    
    In the lines from at91_do_twi_transfer():
    at91_twi_write_data_dma(dev);
    at91_twi_write(dev, AT91_TWI_IER, AT91_TWI_TXCOMP);
    
    the TXCOMP interrupt may be enabled before the DMA controller has
    actually started to write into the THR. In such a case, the TXCOMP bit
    is still set into the Status Register so the interrupt is triggered
    immediately. The driver understands that a transaction completion has
    occurred but this transaction hasn't started yet. Hence the TXCOMP
    interrupt is no longer enabled by at91_do_twi_transfer() but instead
    by at91_twi_write_data_dma_callback().
    
    Also, the TXCOMP bit in the Status Register in not a clear on read flag
    but a snapshot of the transmission state at the time the Status
    Register is read.
    When a NACK error is dectected by the I2C controller, the TXCOMP, NACK
    and TXRDY bits are set together to 1 in the SR. If enabled, the TXCOMP
    interrupt is triggered at the same time. Also setting the TXRDY to 1
    triggers the DMA controller to write the next data into the THR. Such
    a write resets the TXCOMP bit to 0 in the SR. So depending on when the
    interrupt handler reads the SR, it may fail to detect the NACK error
    if it relies on the TXCOMP bit. The NACK bit and its interrupt should
    be used instead.
    
    For RX transactions, the TXCOMP bit in the Status Register is cleared
    when the START bit is set into the Control Register. However to unify
    the management of the TXCOMP bit when the DMA controller is used, the
    TXCOMP interrupt is now enabled by the DMA callbacks for both TX and
    RX transfers.
    
    Signed-off-by: Cyrille Pitchen <cyrille.pitchen@atmel.com>
    Acked-by: Ludovic Desroches <ludovic.desroches@atmel.com>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 484b68fc1f5c0c979f35c5d0783ef64826857a46
Author: Joseph Qi <joseph.qi@huawei.com>
Date:   Mon Jun 15 14:36:01 2015 -0400

    jbd2: fix ocfs2 corrupt when updating journal superblock fails
    
    commit 6f6a6fda294506dfe0e3e0a253bb2d2923f28f0a upstream.
    
    If updating journal superblock fails after journal data has been
    flushed, the error is omitted and this will mislead the caller as a
    normal case.  In ocfs2, the checkpoint will be treated successfully
    and the other node can get the lock to update. Since the sb_start is
    still pointing to the old log block, it will rewrite the journal data
    during journal recovery by the other node. Thus the new updates will
    be overwritten and ocfs2 corrupts.  So in above case we have to return
    the error, and ocfs2_commit_cache will take care of the error and
    prevent the other node to do update first.  And only after recovering
    journal it can do the new updates.
    
    The issue discussion mail can be found at:
    https://oss.oracle.com/pipermail/ocfs2-devel/2015-June/010856.html
    http://comments.gmane.org/gmane.comp.file-systems.ext4/48841
    
    [ Fixed bug in patch which allowed a non-negative error return from
      jbd2_cleanup_journal_tail() to leak out of jbd2_fjournal_flush(); this
      was causing xfstests ext4/306 to fail. -- Ted ]
    
    Reported-by: Yiwen Jiang <jiangyiwen@huawei.com>
    Signed-off-by: Joseph Qi <joseph.qi@huawei.com>
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Tested-by: Yiwen Jiang <jiangyiwen@huawei.com>
    Cc: Junxiao Bi <junxiao.bi@oracle.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit f8745bce849650fe4d1584d7312a5f022de62770
Author: Dmitry Monakhov <dmonakhov@openvz.org>
Date:   Mon Jun 15 00:18:02 2015 -0400

    jbd2: use GFP_NOFS in jbd2_cleanup_journal_tail()
    
    commit b4f1afcd068f6e533230dfed00782cd8a907f96b upstream.
    
    jbd2_cleanup_journal_tail() can be invoked by jbd2__journal_start()
    So allocations should be done with GFP_NOFS
    
    [Full stack trace snipped from 3.10-rh7]
    [<ffffffff815c4bd4>] dump_stack+0x19/0x1b
    [<ffffffff8105dba1>] warn_slowpath_common+0x61/0x80
    [<ffffffff8105dcca>] warn_slowpath_null+0x1a/0x20
    [<ffffffff815c2142>] slab_pre_alloc_hook.isra.31.part.32+0x15/0x17
    [<ffffffff8119c045>] kmem_cache_alloc+0x55/0x210
    [<ffffffff811477f5>] ? mempool_alloc_slab+0x15/0x20
    [<ffffffff811477f5>] mempool_alloc_slab+0x15/0x20
    [<ffffffff81147939>] mempool_alloc+0x69/0x170
    [<ffffffff815cb69e>] ? _raw_spin_unlock_irq+0xe/0x20
    [<ffffffff8109160d>] ? finish_task_switch+0x5d/0x150
    [<ffffffff811f1a8e>] bio_alloc_bioset+0x1be/0x2e0
    [<ffffffff8127ee49>] blkdev_issue_flush+0x99/0x120
    [<ffffffffa019a733>] jbd2_cleanup_journal_tail+0x93/0xa0 [jbd2] -->GFP_KERNEL
    [<ffffffffa019aca1>] jbd2_log_do_checkpoint+0x221/0x4a0 [jbd2]
    [<ffffffffa019afc7>] __jbd2_log_wait_for_space+0xa7/0x1e0 [jbd2]
    [<ffffffffa01952d8>] start_this_handle+0x2d8/0x550 [jbd2]
    [<ffffffff811b02a9>] ? __memcg_kmem_put_cache+0x29/0x30
    [<ffffffff8119c120>] ? kmem_cache_alloc+0x130/0x210
    [<ffffffffa019573a>] jbd2__journal_start+0xba/0x190 [jbd2]
    [<ffffffff811532ce>] ? lru_cache_add+0xe/0x10
    [<ffffffffa01c9549>] ? ext4_da_write_begin+0xf9/0x330 [ext4]
    [<ffffffffa01f2c77>] __ext4_journal_start_sb+0x77/0x160 [ext4]
    [<ffffffffa01c9549>] ext4_da_write_begin+0xf9/0x330 [ext4]
    [<ffffffff811446ec>] generic_file_buffered_write_iter+0x10c/0x270
    [<ffffffff81146918>] __generic_file_write_iter+0x178/0x390
    [<ffffffff81146c6b>] __generic_file_aio_write+0x8b/0xb0
    [<ffffffff81146ced>] generic_file_aio_write+0x5d/0xc0
    [<ffffffffa01bf289>] ext4_file_write+0xa9/0x450 [ext4]
    [<ffffffff811c31d9>] ? pipe_read+0x379/0x4f0
    [<ffffffff811b93f0>] do_sync_write+0x90/0xe0
    [<ffffffff811b9b6d>] vfs_write+0xbd/0x1e0
    [<ffffffff811ba5b8>] SyS_write+0x58/0xb0
    [<ffffffff815d4799>] system_call_fastpath+0x16/0x1b
    
    Signed-off-by: Dmitry Monakhov <dmonakhov@openvz.org>
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 5ee7802aa8090e6a2a5073af6d49e443a4711acf
Author: Michal Hocko <mhocko@suse.cz>
Date:   Sun Jul 5 12:33:44 2015 -0400

    ext4: replace open coded nofail allocation in ext4_free_blocks()
    
    commit 7444a072c387a93ebee7066e8aee776954ab0e41 upstream.
    
    ext4_free_blocks is looping around the allocation request and mimics
    __GFP_NOFAIL behavior without any allocation fallback strategy. Let's
    remove the open coded loop and replace it with __GFP_NOFAIL. Without the
    flag the allocator has no way to find out never-fail requirement and
    cannot help in any way.
    
    Signed-off-by: Michal Hocko <mhocko@suse.cz>
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit e275aeb62ca0102a415b94a1a9af49c06282ec8c
Author: Eryu Guan <guaneryu@gmail.com>
Date:   Sat Jul 4 00:03:44 2015 -0400

    ext4: correctly migrate a file with a hole at the beginning
    
    commit 8974fec7d72e3e02752fe0f27b4c3719c78d9a15 upstream.
    
    Currently ext4_ind_migrate() doesn't correctly handle a file which
    contains a hole at the beginning of the file.  This caused the migration
    to be done incorrectly, and then if there is a subsequent following
    delayed allocation write to the "hole", this would reclaim the same data
    blocks again and results in fs corruption.
    
      # assmuing 4k block size ext4, with delalloc enabled
      # skip the first block and write to the second block
      xfs_io -fc "pwrite 4k 4k" -c "fsync" /mnt/ext4/testfile
    
      # converting to indirect-mapped file, which would move the data blocks
      # to the beginning of the file, but extent status cache still marks
      # that region as a hole
      chattr -e /mnt/ext4/testfile
    
      # delayed allocation writes to the "hole", reclaim the same data block
      # again, results in i_blocks corruption
      xfs_io -c "pwrite 0 4k" /mnt/ext4/testfile
      umount /mnt/ext4
      e2fsck -nf /dev/sda6
      ...
      Inode 53, i_blocks is 16, should be 8.  Fix? no
      ...
    
    Signed-off-by: Eryu Guan <guaneryu@gmail.com>
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit fea167d1eff08178ba2af0b22eb0f8c6993411ed
Author: Eryu Guan <guaneryu@gmail.com>
Date:   Fri Jul 3 23:56:50 2015 -0400

    ext4: be more strict when migrating to non-extent based file
    
    commit d6f123a9297496ad0b6335fe881504c4b5b2a5e5 upstream.
    
    Currently the check in ext4_ind_migrate() is not enough before doing the
    real conversion:
    
    a) delayed allocated extents could bypass the check on eh->eh_entries
       and eh->eh_depth
    
    This can be demonstrated by this script
    
      xfs_io -fc "pwrite 0 4k" -c "pwrite 8k 4k" /mnt/ext4/testfile
      chattr -e /mnt/ext4/testfile
    
    where testfile has two extents but still be converted to non-extent
    based file format.
    
    b) only extent length is checked but not the offset, which would result
       in data lose (delalloc) or fs corruption (nodelalloc), because
       non-extent based file only supports at most (12 + 2^10 + 2^20 + 2^30)
       blocks
    
    This can be demostrated by
    
      xfs_io -fc "pwrite 5T 4k" /mnt/ext4/testfile
      chattr -e /mnt/ext4/testfile
      sync
    
    If delalloc is enabled, dmesg prints
      EXT4-fs warning (device dm-4): ext4_block_to_path:105: block 1342177280 > max in inode 53
      EXT4-fs (dm-4): Delayed block allocation failed for inode 53 at logical offset 1342177280 with max blocks 1 with error 5
      EXT4-fs (dm-4): This should not happen!! Data will be lost
    
    If delalloc is disabled, e2fsck -nf shows corruption
      Inode 53, i_size is 5497558142976, should be 4096.  Fix? no
    
    Fix the two issues by
    
    a) forcing all delayed allocation blocks to be allocated before checking
       eh->eh_depth and eh->eh_entries
    b) limiting the last logical block of the extent is within direct map
    
    Signed-off-by: Eryu Guan <guaneryu@gmail.com>
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit db8d470933df21693ff7e7af48d85c15154bf876
Author: Lukas Czerner <lczerner@redhat.com>
Date:   Fri Jul 3 21:13:55 2015 -0400

    ext4: fix reservation release on invalidatepage for delalloc fs
    
    commit 9705acd63b125dee8b15c705216d7186daea4625 upstream.
    
    On delalloc enabled file system on invalidatepage operation
    in ext4_da_page_release_reservation() we want to clear the delayed
    buffer and remove the extent covering the delayed buffer from the extent
    status tree.
    
    However currently there is a bug where on the systems with page size >
    block size we will always remove extents from the start of the page
    regardless where the actual delayed buffers are positioned in the page.
    This leads to the errors like this:
    
    EXT4-fs warning (device loop0): ext4_da_release_space:1225:
    ext4_da_release_space: ino 13, to_free 1 with only 0 reserved data
    blocks
    
    This however can cause data loss on writeback time if the file system is
    in ENOSPC condition because we're releasing reservation for someones
    else delayed buffer.
    
    Fix this by only removing extents that corresponds to the part of the
    page we want to invalidate.
    
    This problem is reproducible by the following fio receipt (however I was
    only able to reproduce it with fio-2.1 or older.
    
    [global]
    bs=8k
    iodepth=1024
    iodepth_batch=60
    randrepeat=1
    size=1m
    directory=/mnt/test
    numjobs=20
    [job1]
    ioengine=sync
    bs=1k
    direct=1
    rw=randread
    filename=file1:file2
    [job2]
    ioengine=libaio
    rw=randwrite
    direct=1
    filename=file1:file2
    [job3]
    bs=1k
    ioengine=posixaio
    rw=randwrite
    direct=1
    filename=file1:file2
    [job5]
    bs=1k
    ioengine=sync
    rw=randread
    filename=file1:file2
    [job7]
    ioengine=libaio
    rw=randwrite
    filename=file1:file2
    [job8]
    ioengine=posixaio
    rw=randwrite
    filename=file1:file2
    [job10]
    ioengine=mmap
    rw=randwrite
    bs=1k
    filename=file1:file2
    [job11]
    ioengine=mmap
    rw=randwrite
    direct=1
    filename=file1:file2
    
    Signed-off-by: Lukas Czerner <lczerner@redhat.com>
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Reviewed-by: Jan Kara <jack@suse.cz>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 592eb13673e8b083fbf72b54f410c711f950fb71
Author: Darrick J. Wong <darrick.wong@oracle.com>
Date:   Sun Jun 21 21:10:51 2015 -0400

    ext4: don't retry file block mapping on bigalloc fs with non-extent file
    
    commit 292db1bc6c105d86111e858859456bcb11f90f91 upstream.
    
    ext4 isn't willing to map clusters to a non-extent file.  Don't signal
    this with an out of space error, since the FS will retry the
    allocation (which didn't fail) forever.  Instead, return EUCLEAN so
    that the operation will fail immediately all the way back to userspace.
    
    (The fix is either to run e2fsck -E bmap2extent, or to chattr +e the file.)
    
    Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 18cb11c2ca2e4e786aa1b1f58c978aa33885944a
Author: Theodore Ts'o <tytso@mit.edu>
Date:   Sat Jun 20 22:50:33 2015 -0400

    ext4: call sync_blockdev() before invalidate_bdev() in put_super()
    
    commit 89d96a6f8e6491f24fc8f99fd6ae66820e85c6c1 upstream.
    
    Normally all of the buffers will have been forced out to disk before
    we call invalidate_bdev(), but there will be some cases, where a file
    system operation was aborted due to an ext4_error(), where there may
    still be some dirty buffers in the buffer cache for the device.  So
    try to force them out to memory before calling invalidate_bdev().
    
    This fixes a warning triggered by generic/081:
    
    WARNING: CPU: 1 PID: 3473 at /usr/projects/linux/ext4/fs/block_dev.c:56 __blkdev_put+0xb5/0x16f()
    
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit ea7fac0e77d18783fd70cc40abc390d88aac8422
Author: Theodore Ts'o <tytso@mit.edu>
Date:   Fri Jun 12 23:45:33 2015 -0400

    ext4: fix race between truncate and __ext4_journalled_writepage()
    
    commit bdf96838aea6a265f2ae6cbcfb12a778c84a0b8e upstream.
    
    The commit cf108bca465d: "ext4: Invert the locking order of page_lock
    and transaction start" caused __ext4_journalled_writepage() to drop
    the page lock before the page was written back, as part of changing
    the locking order to jbd2_journal_start -> page_lock.  However, this
    introduced a potential race if there was a truncate racing with the
    data=journalled writeback mode.
    
    Fix this by grabbing the page lock after starting the journal handle,
    and then checking to see if page had gotten truncated out from under
    us.
    
    This fixes a number of different warnings or BUG_ON's when running
    xfstests generic/086 in data=journalled mode, including:
    
    jbd2_journal_dirty_metadata: vdc-8: bad jh for block 115643: transaction (ee3fe7
    c0, 164), jh->b_transaction (  (null), 0), jh->b_next_transaction (  (null), 0), jlist 0
    
    	      	      	  - and -
    
    kernel BUG at /usr/projects/linux/ext4/fs/jbd2/transaction.c:2200!
        ...
    Call Trace:
     [<c02b2ded>] ? __ext4_journalled_invalidatepage+0x117/0x117
     [<c02b2de5>] __ext4_journalled_invalidatepage+0x10f/0x117
     [<c02b2ded>] ? __ext4_journalled_invalidatepage+0x117/0x117
     [<c027d883>] ? lock_buffer+0x36/0x36
     [<c02b2dfa>] ext4_journalled_invalidatepage+0xd/0x22
     [<c0229139>] do_invalidatepage+0x22/0x26
     [<c0229198>] truncate_inode_page+0x5b/0x85
     [<c022934b>] truncate_inode_pages_range+0x156/0x38c
     [<c0229592>] truncate_inode_pages+0x11/0x15
     [<c022962d>] truncate_pagecache+0x55/0x71
     [<c02b913b>] ext4_setattr+0x4a9/0x560
     [<c01ca542>] ? current_kernel_time+0x10/0x44
     [<c026c4d8>] notify_change+0x1c7/0x2be
     [<c0256a00>] do_truncate+0x65/0x85
     [<c0226f31>] ? file_ra_state_init+0x12/0x29
    
    	      	      	  - and -
    
    WARNING: CPU: 1 PID: 1331 at /usr/projects/linux/ext4/fs/jbd2/transaction.c:1396
    irty_metadata+0x14a/0x1ae()
        ...
    Call Trace:
     [<c01b879f>] ? console_unlock+0x3a1/0x3ce
     [<c082cbb4>] dump_stack+0x48/0x60
     [<c0178b65>] warn_slowpath_common+0x89/0xa0
     [<c02ef2cf>] ? jbd2_journal_dirty_metadata+0x14a/0x1ae
     [<c0178bef>] warn_slowpath_null+0x14/0x18
     [<c02ef2cf>] jbd2_journal_dirty_metadata+0x14a/0x1ae
     [<c02d8615>] __ext4_handle_dirty_metadata+0xd4/0x19d
     [<c02b2f44>] write_end_fn+0x40/0x53
     [<c02b4a16>] ext4_walk_page_buffers+0x4e/0x6a
     [<c02b59e7>] ext4_writepage+0x354/0x3b8
     [<c02b2f04>] ? mpage_release_unused_pages+0xd4/0xd4
     [<c02b1b21>] ? wait_on_buffer+0x2c/0x2c
     [<c02b5a4b>] ? ext4_writepage+0x3b8/0x3b8
     [<c02b5a5b>] __writepage+0x10/0x2e
     [<c0225956>] write_cache_pages+0x22d/0x32c
     [<c02b5a4b>] ? ext4_writepage+0x3b8/0x3b8
     [<c02b6ee8>] ext4_writepages+0x102/0x607
     [<c019adfe>] ? sched_clock_local+0x10/0x10e
     [<c01a8a7c>] ? __lock_is_held+0x2e/0x44
     [<c01a8ad5>] ? lock_is_held+0x43/0x51
     [<c0226dff>] do_writepages+0x1c/0x29
     [<c0276bed>] __writeback_single_inode+0xc3/0x545
     [<c0277c07>] writeback_sb_inodes+0x21f/0x36d
        ...
    
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit a938f91f718bb135ee404efaedfa44566b0b123c
Author: Haggai Eran <haggai.eran@gmail.com>
Date:   Sat May 23 23:13:51 2015 +0300

    staging: rtl8712: prevent buffer overrun in recvbuf2recvframe
    
    commit cab462140f8a183e3cca0b51c8b59ef715cb6148 upstream.
    
    With an RTL8191SU USB adaptor, sometimes the hints for a fragmented
    packet are set, but the packet length is too large. Allocate enough
    space to prevent memory corruption and a resulting kernel panic [1].
    
    [1] http://www.spinics.net/lists/linux-wireless/msg136546.html
    
    Signed-off-by: Haggai Eran <haggai.eran@gmail.com>
    ACKed-by: Larry Finger <Larry.Finger@lwfinger.net>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit a3dc241993081e61ff4080d677f725dff823b698
Author: Felix Fietkau <nbd@openwrt.org>
Date:   Tue Jun 2 10:38:32 2015 +0200

    ath9k: fix DMA stop sequence for AR9003+
    
    commit 300f77c08ded96d33f492aaa02549103852f0c12 upstream.
    
    AR93xx and newer needs to stop rx before tx to avoid getting the DMA
    engine or MAC into a stuck state.
    This should reduce/fix the occurence of "Failed to stop Tx DMA" logspam.
    
    Signed-off-by: Felix Fietkau <nbd@openwrt.org>
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 5afb62a71c1496a70151f106e8a574bf9a6d0349
Author: Marcel Holtmann <marcel@holtmann.org>
Date:   Sun Jun 7 09:42:19 2015 +0200

    Bluetooth: btusb: Fix memory leak in Intel setup routine
    
    commit ecffc80478cdce122f0ecb6a4e4f909132dd5c47 upstream.
    
    The SKB returned from the Intel specific version information command is
    missing a kfree_skb.
    
    Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
    Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 10292b8519eada04b59a19718f74164ec2af5373
Author: Boris BREZILLON <b.brezillon.dev@gmail.com>
Date:   Sat Feb 1 19:10:28 2014 +0100

    mtd: nand: fix erroneous read_buf call in nand_write_page_raw_syndrome
    
    commit 60c3bc1fd6f1fa40b415ef5b83e2948a89a3d79c upstream.
    
    read_buf is called in place of write_buf in the
    nand_write_page_raw_syndrome function.
    
    Signed-off-by: Boris BREZILLON <b.brezillon.dev@gmail.com>
    Signed-off-by: Brian Norris <computersforpeace@gmail.com>
    Cc: Mason <slash.tmp@free.fr>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 0842ca9e0f168e64a6bf5906299557f95cc2445a
Author: Len Brown <len.brown@intel.com>
Date:   Tue Feb 10 15:42:03 2015 -0500

    intel_idle: support additional Broadwell model
    
    commit bea57077e44ec9c1e6d3a3c142c8a3c0289e290d upstream.
    
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 6a54bbc670a70f85d740e66c9b280a36c32d08af
Author: Len Brown <len.brown@intel.com>
Date:   Tue Feb 4 23:56:40 2014 -0500

    intel_idle: Broadwell support
    
    commit a138b56800f4b83a7af69a9958d04f0f124eb37b upstream.
    
    Broadwell (BDW) is similar to Haswell (HSW), the preceding processor generation.
    
    Currently, the only difference in their C-state tables is that PC3 max exit latency
    is 33usec on HSW and 40usec on BDW.
    
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 6c1ad037a144bb56db6e70b00a4108ce7ff7c950
Author: Martin Schwidefsky <schwidefsky@de.ibm.com>
Date:   Thu Apr 16 14:47:33 2015 +0200

    kexec: allocate the kexec control page with KEXEC_CONTROL_MEMORY_GFP
    
    commit 7e01b5acd88b3f3108d8c4ce44e3205d67437202 upstream.
    
    Introduce KEXEC_CONTROL_MEMORY_GFP to allow the architecture code
    to override the gfp flags of the allocation for the kexec control
    page. The loop in kimage_alloc_normal_control_pages allocates pages
    with GFP_KERNEL until a page is found that happens to have an
    address smaller than the KEXEC_CONTROL_MEMORY_LIMIT. On systems
    with a large memory size but a small KEXEC_CONTROL_MEMORY_LIMIT
    the loop will keep allocating memory until the oom killer steps in.
    
    Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit cbe04187a6cac63ce4c6277b9759d370de68cb00
Author: Devin Ryles <devin.ryles@intel.com>
Date:   Wed Nov 5 16:30:03 2014 -0500

    i2c: i801: Add DeviceIDs for SunrisePoint LP
    
    commit 3eee1799aed90e990e02a73a89bfcff1982c74dd upstream.
    
    Signed-off-by: Devin Ryles <devin.ryles@intel.com>
    Reviewed-by: Jean Delvare <jdelvare@suse.de>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit be64eb91760cad26a10c838fe6d112d65095e5e2
Author: james.d.ralston@intel.com <james.d.ralston@intel.com>
Date:   Mon Oct 13 15:20:24 2014 -0700

    i2c: i801: Add Device IDs for Intel Sunrise Point PCH
    
    commit 3e27a8445c21f8056517f188303827450590d868 upstream.
    
    This patch adds the I2C/SMBus Device IDs for the Intel Sunrise Point PCH.
    
    Signed-off-by: James Ralston <james.d.ralston@intel.com>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 185567e9c14642ffbb4307eeff88ab2ff15a7d3e
Author: Alan Cox <alan@linux.intel.com>
Date:   Tue Aug 19 17:37:28 2014 +0300

    i2c: i801: Add PCI ID for Intel Braswell
    
    commit 39e8e30ee544a62c148033d64a979028b958ca05 upstream.
    
    The SMBus host controller is the same as used in Baytrail so add the new
    PCI ID to the driver's list of supported IDs.
    
    Signed-off-by: Alan Cox <alan@linux.intel.com>
    Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit f7aac2b1d85083b248e3854d19f4639a715d7607
Author: Jean Delvare <jdelvare@suse.de>
Date:   Thu Jul 17 15:04:41 2014 +0200

    i2c: i801: Add device ID for Intel Wildcat Point PCH
    
    commit b299de839157852c563b9f133c8b7e630545a9c3 upstream.
    
    Signed-off-by: Jean Delvare <jdelvare@suse.de>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 082bc6f26b8ed16c81626ac3ae8f8815080db68c
Author: Jean Delvare <jdelvare@suse.de>
Date:   Thu Jul 17 15:03:24 2014 +0200

    i2c: i801: Fix the alignment of the device table
    
    commit ce3161106ab57afbfbe1c33d95bf4a569405983a upstream.
    
    A long name broke the alignment, shift the columns a bit to fix it and
    make the table look nice again. While we're here, switch to the
    standard comment style to make checkpatch happy, and use tabs instead
    of spaces for column alignment.
    
    Signed-off-by: Jean Delvare <jdelvare@suse.de>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 309300219be7b14807f013dd19bc9ebb626d708e
Author: Bob Moore <Robert.Moore@intel.com>
Date:   Tue Feb 11 10:25:27 2014 +0800

    ACPICA: Add "Windows 2013" string to _OSI support.
    
    commit faae404ebdc6bba744919d82e64c16448eb24a36 upstream.
    
    This urgent patch is cherry picked from ACPICA upstream.
    It is reported that some platforms fail to boot without this new _OSI
    string.
    
    This change adds this string for Windows 8.1 and Server 2012 R2.
    
    Reported-by: Zhang Rui <rui.zhang@intel.com>
    Signed-off-by: Bob Moore <Robert.Moore@intel.com>
    Signed-off-by: Lv Zheng <lv.zheng@intel.com>
    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 02ef28c67b1f8f6fd654e9f0628ac626ec2dab49
Author: Mika Westerberg <mika.westerberg@linux.intel.com>
Date:   Tue Nov 12 11:57:30 2013 +0200

    i2c: designware: add new ACPI IDs
    
    commit 25b3dfc87bff80317d67ddd2cd4cfb91e6fe7d79 upstream.
    
    Newer Intel PCHs with LPSS have the same Designware I2C controllers than
    Haswell but the ACPI IDs differ. Add these IDs to the driver list.
    
    Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit aeb078dfe2f89582be0e1aa9ff640057dc940825
Author: Mika Westerberg <mika.westerberg@linux.intel.com>
Date:   Tue Nov 12 11:52:32 2013 +0200

    gpio/lynxpoint: add new ACPI ID
    
    commit 4edd7901eee13f878e7b5fd5efba610e70b09313 upstream.
    
    Newer Intel PCHs have the same GPIO controller than Haswell but the ACPI ID
    is different. Add this ID to the driver supported IDs list.
    
    Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 89512fd5eac04f604e7f594fea632c8163344a72
Author: Mike Christie <michaelc@cs.wisc.edu>
Date:   Thu Dec 19 01:16:21 2013 -0600

    [SCSI] be2iscsi: fix bad if expression
    
    commit 126e964a444f125bd428757fb88c24c730f6fcf9 upstream.
    
    https://bugzilla.kernel.org/show_bug.cgi?id=67091
    
    Cc: Jayamohan Kallickal <Jayamohan.Kallickal@emulex.com>
    Signed-off-by: James Bottomley <JBottomley@Parallels.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 52a9a225c9fe34380dd262d54109ad075fdfcedc
Author: Martin K. Petersen <martin.petersen@oracle.com>
Date:   Thu Jun 18 14:50:18 2015 -0400

    libata: Do not blacklist Micron M500DC
    
    commit 243918be6393f643e513a26e7882e6ae06ff7717 upstream.
    
    Queued TRIM got disabled on Micron M500DC drives thanks to the
    "Micron_M500*" pattern we had in place to accommodate the previous
    generation of this drive family. Tweak the blacklist entry slightly so
    we only disable queued TRIM for the non-DC variants of M500 drives.
    
    Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
    Cc: stable@vger.kernel.org
    Signed-off-by: Tejun Heo <tj@kernel.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 70d19f924273801f7b0e8250ef1905a092189736
Author: Jan Kara <jack@suse.cz>
Date:   Wed Aug 6 19:43:56 2014 +0200

    reiserfs: Fix use after free in journal teardown
    
    commit 01777836c87081e4f68c4a43c9abe6114805f91e upstream.
    
    If do_journal_release() races with do_journal_end() which requeues
    delayed works for transaction flushing, we can leave work items for
    flushing outstanding transactions queued while freeing them. That
    results in use after free and possible crash in run_timers_softirq().
    
    Fix the problem by not requeueing works if superblock is being shut down
    (MS_ACTIVE not set) and using cancel_delayed_work_sync() in
    do_journal_release().
    
    Cc: stable@vger.kernel.org
    Signed-off-by: Jan Kara <jack@suse.cz>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 8986a67aa7da0e7c6dc8e595f6aa8401b655d02d
Author: Takashi Iwai <tiwai@suse.de>
Date:   Fri May 2 18:17:06 2014 +0200

    ALSA: usb-audio: Fix deadlocks at resuming
    
    commit 1ee23fe07ee83a38ecee927e701f762888ada942 upstream.
    
    The recent addition of the USB audio mixer suspend/resume may lead to
    deadlocks when the driver tries to call usb_autopm_get_interface()
    recursively, since the function tries to sync with the finish of the
    other calls.  For avoiding it, introduce a flag indicating the resume
    operation and avoids the recursive usb_autopm_get_interface() calls
    during the resume.
    
    Reported-and-tested-by: Bryan Quigley <gquigs@gmail.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 708183150dad5f6a2bdde67e8292954012782171
Author: Takashi Iwai <tiwai@suse.de>
Date:   Fri May 2 18:14:42 2014 +0200

    ALSA: usb-audio: Save mixer status only once at suspend
    
    commit 1c53e7253ed8769a00afa0f06777d731dbe1ba6f upstream.
    
    The suspend callback of usb-audio driver may be called multiple times
    per suspend when multiple USB interfaces are bound to a single sound
    card instance.  In such a case, it's superfluous to save the mixer
    values multiple times.  This patch fixes it by checking the counter.
    
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit c26da265bd7f71ab7a9c3f5839dff58122787b06
Author: Takashi Iwai <tiwai@suse.de>
Date:   Mon Jan 20 16:51:16 2014 +0100

    ALSA: usb-audio: Resume mixer values properly
    
    commit 400362f1d8dcfda3562e80e88cfc2a92cffaf9bf upstream.
    
    Implement reset_resume callback so that the mixer values are properly
    restored.  Still no boot quirks are called, so it might not work well
    on some devices.
    
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit aeb35ac1eb13d1b59a0832eae21901c52601ed87
Author: Libin Yang <libin.yang@intel.com>
Date:   Tue Dec 16 13:17:34 2014 +0800

    ALSA: hda/hdmi - apply Haswell fix-ups to Skylake display codec
    
    commit 432ac1a2c028acb289d90f918e3a7b79e4ac8c07 upstream.
    
    Skylake and Haswell have the same behavior on display audio. So this patch
    applys Haswell fix-ups to Skylake.
    
    Signed-off-by: Libin Yang <libin.yang@intel.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit c4bbc5b1fa118f40a52187d068c029df4ac25dbe
Author: Libin Yang <libin.yang@intel.com>
Date:   Mon Dec 15 12:49:42 2014 +0800

    ALSA: hda - add codec ID for Skylake display audio codec
    
    commit 99fcb3778b0ec12a8fa8b58435d75e9203bb430d upstream.
    
    This patch adds codec ID (0x80862809) and module alias for Skylake
    display codec.
    
    Signed-off-by: Libin Yang <libin.yang@intel.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 8098e16ab91768a357c891a9d7e3ab2c5813cd79
Author: Libin Yang <libin.yang@intel.com>
Date:   Thu Mar 26 13:28:39 2015 +0800

    ALSA: hda_intel: apply the Seperate stream_tag for Sunrise Point
    
    commit db48abf4367cb1f9e118defee0a37238638c2752 upstream.
    
    The total stream number of Sunrise Point's input and output stream
    exceeds 15, which will cause some streams do not work because
    of the overflow on SDxCTL.STRM field if using the legacy
    stream tag allocation method.
    
    This patch uses the new stream tag allocation method by add
    the flag AZX_DCAPS_SEPARATE_STREAM_TAG for Skylake platform.
    
    Signed-off-by: Libin Yang <libin.yang@intel.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 866b1fbbd04514c12c3b35b3daf9a2e1185762c5
Author: Libin Yang <libin.yang@intel.com>
Date:   Fri Dec 19 08:44:31 2014 +0800

    ALSA: hda_intel: apply the Seperate stream_tag for Skylake
    
    commit d6795827bd79b28fef1abdaf7e525fcca506b831 upstream.
    
    The total stream number of Skylake's input and output stream
    exceeds 15, which will cause some streams do not work because
    of the overflow on SDxCTL.STRM field if using the legacy
    stream tag allocation method.
    
    This patch uses the new stream tag allocation method by add
    the flag AZX_DCAPS_SEPARATE_STREAM_TAG for Skylake platform.
    
    Signed-off-by: Libin Yang <libin.yang@intel.com>
    Reviewed-by: Vinod Koul <vinod.koul@intel.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 31930d62c1cca7096533480dbc77634b8cb4219a
Author: Rafal Redzimski <rafal.f.redzimski@intel.com>
Date:   Fri Dec 19 08:44:30 2014 +0800

    ALSA: hda_controller: Separate stream_tag for input and output streams.
    
    commit 93e3423e6ba4b0ddaf056ecbdf5bc46f18f41deb upstream.
    
    Implemented separate stream_tag assignment for input and output streams.
    According to hda specification stream tag must be unique throughout the
    input streams group, however an output stream might use a stream tag
    which is already in use by an input stream. This change is necessary
    to support HW which provides a total of more than 15 stream DMA engines
    which with legacy implementation causes an overflow on SDxCTL.STRM
    field (and the whole SDxCTL register) and as a result usage of
    Reserved value 0 in the SDxCTL.STRM field which confuses HDA controller.
    
    Signed-off-by: Rafal Redzimski <rafal.f.redzimski@intel.com>
    Signed-off-by: Jayachandran B <jayachandran.b@intel.com>
    Signed-off-by: Libin Yang <libin.yang@intel.com>
    Reviewed-by: Vinod Koul <vinod.koul@intel.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit ce3d400e040815c9e0fc23be4b1b8b3b47d99660
Author: Mengdong Lin <mengdong.lin@intel.com>
Date:   Thu Mar 20 13:01:06 2014 +0800

    ALSA: hda - verify pin:cvt connection on preparing a stream for Intel HDMI codec
    
    commit 2df6742f613840a0b0a1590fb28f7af5b058a673 upstream.
    
    This is a temporary fix for some Intel HDMI codecs to avoid no sound output for
    a resuming playback after S3.
    
    After S3, the audio driver restores pin:cvt connection selections by
    snd_hda_codec_resume_cache(). However this can happen before the gfx side is
    ready and such connect selection is overlooked by HW. After gfx is ready, the
    pins make the default selection again. And this will cause multiple pins share
    a same convertor and mute control will affect each other. Thus a resumed audio
    playback become silent after S3.
    
    This patch verifies pin:cvt connection on preparing a stream, to assure the pin
    selects the right convetor and an assigned convertor is not shared by other
    unused pins. Apply this fix-up on Haswell, Broadwell and Valleyview (Baytrail).
    
    We need this temporary fix before a reliable software communication channel is
    established between audio and gfx, to sync audio/gfx operations.
    
    Signed-off-by: Mengdong Lin <mengdong.lin@intel.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit ddda55a42886ad502e7d394b8930b9d15454c08c
Author: Devin Ryles <devin.ryles@intel.com>
Date:   Fri Nov 7 18:02:47 2014 -0500

    ALSA: hda_intel: Add DeviceIDs for Sunrise Point-LP
    
    commit b4565913460cbd7d86c6bd52913dfaa07fa384aa upstream.
    
    This patch adds DeviceIDs for Sunrise Point-LP
    
    Signed-off-by: Devin Ryles <devin.ryles@intel.com>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit c001bc71cdae953124168ace71e3bf689bce7fc1
Author: James Ralston <james.d.ralston@intel.com>
Date:   Mon Oct 13 15:22:03 2014 -0700

    ALSA: hda_intel: Add Device IDs for Intel Sunrise Point PCH
    
    commit c8b00fd2f4c504a564adcad5b8bd6952ab850b02 upstream.
    
    This patch adds the HD Audio Device IDs for the Intel Sunrise Point PCH.
    
    [the item position rearranged by tiwai]
    
    Signed-off-by: James Ralston <james.d.ralston@intel.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 2ad0e54d3a3c12f2a771d562ace899bd6ecdc2f4
Author: Takashi Iwai <tiwai@suse.de>
Date:   Thu Oct 17 17:56:25 2013 +0200

    ALSA: hda - Treat zero connection as non-error
    
    commit 4758fed912d7cd0ba53d2694e89b884114de6580 upstream.
    
    The zero-length connection list happens so often on Haswell HDMI, and
    it results in warning messages like
        ALSA: hda_codec: invalid CONNECT_LIST verb 5[1]:0
    at each time the codec resumes from the power-save, which is fairly
    annoying.
    
    Since this is no real error, make it shown only in the verbose debug
    mode.
    
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit b376a94686f023d8dc151aee9d23b3ba4f6c6c17
Author: Takashi Iwai <tiwai@suse.de>
Date:   Tue May 6 17:34:42 2014 +0200

    ALSA: hda - Add dock pin setups for Thinkpad T440
    
    commit 1c37c22332a2d2c1b4ab32177a4f847c7fe06e38 upstream.
    
    The headphone and mic jacks on Thinkpad T440 are assigned to pins NID
    0x16 and 0x19, respectively.  These need to be set up manually by a
    fixup.
    
    Reported-and-tested-by: Joschi Brauchle <joschi.brauchle@tum.de>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit cda28549b632e62f662ce15242b7266cce90c128
Author: Paolo Bonzini <pbonzini@redhat.com>
Date:   Sat May 30 14:31:24 2015 +0200

    kvm: x86: fix kvm_apic_has_events to check for NULL pointer
    
    commit ce40cd3fc7fa40a6119e5fe6c0f2bc0eb4541009 upstream.
    
    Malicious (or egregiously buggy) userspace can trigger it, but it
    should never happen in normal operation.
    
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    Acked-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit ffe2efe053c02c1bc2f2d68ff4305962147f2edd
Author: Fabio Estevam <fabio.estevam@freescale.com>
Date:   Wed May 13 15:06:09 2015 -0300

    iio: accel: hid-sensor-accel-3d: Fix memory leak in probe()
    
    commit b136faff9bc2f4adea050ed2119c01199f9a86a5 upstream.
    
    'channels' is allocated via kmemdup and it is never freed in the
    subsequent error paths.
    
    Use 'indio_dev->channels' directly instead, so that we avoid such
    memory leak problem.
    
    Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
    Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
    Signed-off-by: Jonathan Cameron <jic23@kernel.org>
    Cc: Oliver Neukum <ONeukum@suse.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 898e353d27b0fd355f379814bc9be31afce37029
Author: Fabio Estevam <fabio.estevam@freescale.com>
Date:   Wed May 13 15:06:10 2015 -0300

    iio: gyro: hid-sensor-gyro-3d: Fix memory leak in probe()
    
    commit d8c9d23e29e3d758ea477adaa95e28cbf3556518 upstream.
    
    'channels' is allocated via kmemdup and it is never freed in the
    subsequent error paths.
    
    Use 'indio_dev->channels' directly instead, so that we avoid such
    memory leak problem.
    
    Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
    Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
    Signed-off-by: Jonathan Cameron <jic23@kernel.org>
    Cc: Oliver Neukum <ONeukum@suse.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit e9c7313ab3c0f1ebe1f6aa6740c69f1a2d89d445
Author: Fabio Estevam <fabio.estevam@freescale.com>
Date:   Wed May 13 15:06:11 2015 -0300

    iio: light: hid-sensor-als.c: Fix memory leak in probe()
    
    commit 9ecdbed7903921f29adae63a3155814b453e7186 upstream.
    
    'channels' is allocated via kmemdup and it is never freed in the
    subsequent error paths.
    
    Use 'indio_dev->channels' directly instead, so that we avoid such
    memory leak problem.
    
    Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
    Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
    Signed-off-by: Jonathan Cameron <jic23@kernel.org>
    Cc: Oliver Neukum <ONeukum@suse.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit 7562c6fb07eadc6d0d9b6643dadad3d20af4d867
Author: Dan Carpenter <dan.carpenter@oracle.com>
Date:   Thu Jan 23 15:53:45 2014 -0800

    drivers/mailbox/omap: make mbox->irq signed for error handling
    
    commit 4a102b4d144f0422eb8b0a59c7cb194bf12163a9 upstream.
    
    There is a bug in omap2_mbox_probe() where we try do:
    
    		mbox->irq = platform_get_irq(pdev, info->irq_id);
    		if (mbox->irq < 0) {
    
    The problem is that mbox->irq is unsigned so the error handling doesn't
    work.  I've changed it to a signed integer.
    
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Cc: Suman Anna <s-anna@ti.com>
    Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Cc: Omar Ramirez Luna <omar.ramirez@copitl.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Oliver Neukum <ONeukum@suse.com>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>

commit fe2a2e06fd8af3a00d18691ffeb2b636f685bee4
Author: Bill Richardson <wfrichar@chromium.org>
Date:   Thu Apr 17 12:32:17 2014 -0700

    mfd: cros_ec: cleanup: cros_ec.c is GPL licensed, like all the others.
    
    commit a865a589144da6dbf26750b7193a9748da159305 upstream.
    
    This module has always been GPL licensed. It was just missing the explicit
    declaration to avoid tainting the kernel.
    
    Signed-off-by: Bill Richardson <wfrichar@chromium.org>
    Signed-off-by: Doug Anderson <dianders@chromium.org>
    Signed-off-by: Lee Jones <lee.jones@linaro.org>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>