{"push_id":822826920,"size":60,"distinct_size":60,"ref":"refs/heads/caf/korg/linux-3.18.y","head":"ac6d8ef9174fc00b7ea3ff2474fc57f531d312c2","before":"fcd9bfdb9d884f1aab89124dee894e7d821bb5dc","commits":[{"sha":"26969919d18736cd7fd36a0eccee31da9856e5ae","author":{"email":"b41c17b861974b03cec38e3ec2992769b9bfae55@oracle.com","name":"Boris Ostrovsky"},"message":"x86/xen: Initialize cr4 shadow for 64-bit PV(H) guests\n\n[ Upstream commit 5054daa285beaf706f051fbd395dc36c9f0f907f ]\n\nCommit 1e02ce4cccdc (\"x86: Store a per-cpu shadow copy of CR4\")\nintroduced CR4 shadows.\n\nThese shadows are initialized in early boot code. The commit missed\ninitialization for 64-bit PV(H) guests that this patch adds.\n\nSigned-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>\nSigned-off-by: David Vrabel <david.vrabel@citrix.com>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/26969919d18736cd7fd36a0eccee31da9856e5ae"},{"sha":"38b50c47c25e12826f5c617b6b7d7cb8ed7708cf","author":{"email":"521f5e275cfb2d7a088db6fd2470049d61870456@redhat.com","name":"Herton R. Krzesinski"},"message":"ipc,sem: fix use after free on IPC_RMID after a task using same semaphore set exits\n\n[ Upstream commit 602b8593d2b4138c10e922eeaafe306f6b51817b ]\n\nThe current semaphore code allows a potential use after free: in\nexit_sem we may free the task's sem_undo_list while there is still\nanother task looping through the same semaphore set and cleaning the\nsem_undo list at freeary function (the task called IPC_RMID for the same\nsemaphore set).\n\nFor example, with a test program [1] running which keeps forking a lot\nof processes (which then do a semop call with SEM_UNDO flag), and with\nthe parent right after removing the semaphore set with IPC_RMID, and a\nkernel built with CONFIG_SLAB, CONFIG_SLAB_DEBUG and\nCONFIG_DEBUG_SPINLOCK, you can easily see something like the following\nin the kernel log:\n\n   Slab corruption (Not tainted): kmalloc-64 start=ffff88003b45c1c0, len=64\n   000: 6b 6b 6b 6b 6b 6b 6b 6b 00 6b 6b 6b 6b 6b 6b 6b  kkkkkkkk.kkkkkkk\n   010: ff ff ff ff 6b 6b 6b 6b ff ff ff ff ff ff ff ff  ....kkkk........\n   Prev obj: start=ffff88003b45c180, len=64\n   000: 00 00 00 00 ad 4e ad de ff ff ff ff 5a 5a 5a 5a  .....N......ZZZZ\n   010: ff ff ff ff ff ff ff ff c0 fb 01 37 00 88 ff ff  ...........7....\n   Next obj: start=ffff88003b45c200, len=64\n   000: 00 00 00 00 ad 4e ad de ff ff ff ff 5a 5a 5a 5a  .....N......ZZZZ\n   010: ff ff ff ff ff ff ff ff 68 29 a7 3c 00 88 ff ff  ........h).<....\n   BUG: spinlock wrong CPU on CPU#2, test/18028\n   general protection fault: 0000 [#1] SMP\n   Modules linked in: 8021q mrp garp stp llc nf_conntrack_ipv4 nf_defrag_ipv4 ip6t_REJECT nf_reject_ipv6 nf_conntrack_ipv6 nf_defrag_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables binfmt_misc ppdev input_leds joydev parport_pc parport floppy serio_raw virtio_balloon virtio_rng virtio_console virtio_net iosf_mbi crct10dif_pclmul crc32_pclmul ghash_clmulni_intel pcspkr qxl ttm drm_kms_helper drm snd_hda_codec_generic i2c_piix4 snd_hda_intel snd_hda_codec snd_hda_core snd_hwdep snd_seq snd_seq_device snd_pcm snd_timer snd soundcore crc32c_intel virtio_pci virtio_ring virtio pata_acpi ata_generic [last unloaded: speedstep_lib]\n   CPU: 2 PID: 18028 Comm: test Not tainted 4.2.0-rc5+ #1\n   Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.8.1-20150318_183358- 04/01/2014\n   RIP: spin_dump+0x53/0xc0\n   Call Trace:\n     spin_bug+0x30/0x40\n     do_raw_spin_unlock+0x71/0xa0\n     _raw_spin_unlock+0xe/0x10\n     freeary+0x82/0x2a0\n     ? _raw_spin_lock+0xe/0x10\n     semctl_down.clone.0+0xce/0x160\n     ? __do_page_fault+0x19a/0x430\n     ? __audit_syscall_entry+0xa8/0x100\n     SyS_semctl+0x236/0x2c0\n     ? syscall_trace_leave+0xde/0x130\n     entry_SYSCALL_64_fastpath+0x12/0x71\n   Code: 8b 80 88 03 00 00 48 8d 88 60 05 00 00 48 c7 c7 a0 2c a4 81 31 c0 65 8b 15 eb 40 f3 7e e8 08 31 68 00 4d 85 e4 44 8b 4b 08 74 5e <45> 8b 84 24 88 03 00 00 49 8d 8c 24 60 05 00 00 8b 53 04 48 89\n   RIP  [<ffffffff810d6053>] spin_dump+0x53/0xc0\n    RSP <ffff88003750fd68>\n   ---[ end trace 783ebb76612867a0 ]---\n   NMI watchdog: BUG: soft lockup - CPU#3 stuck for 22s! [test:18053]\n   Modules linked in: 8021q mrp garp stp llc nf_conntrack_ipv4 nf_defrag_ipv4 ip6t_REJECT nf_reject_ipv6 nf_conntrack_ipv6 nf_defrag_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables binfmt_misc ppdev input_leds joydev parport_pc parport floppy serio_raw virtio_balloon virtio_rng virtio_console virtio_net iosf_mbi crct10dif_pclmul crc32_pclmul ghash_clmulni_intel pcspkr qxl ttm drm_kms_helper drm snd_hda_codec_generic i2c_piix4 snd_hda_intel snd_hda_codec snd_hda_core snd_hwdep snd_seq snd_seq_device snd_pcm snd_timer snd soundcore crc32c_intel virtio_pci virtio_ring virtio pata_acpi ata_generic [last unloaded: speedstep_lib]\n   CPU: 3 PID: 18053 Comm: test Tainted: G      D         4.2.0-rc5+ #1\n   Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.8.1-20150318_183358- 04/01/2014\n   RIP: native_read_tsc+0x0/0x20\n   Call Trace:\n     ? delay_tsc+0x40/0x70\n     __delay+0xf/0x20\n     do_raw_spin_lock+0x96/0x140\n     _raw_spin_lock+0xe/0x10\n     sem_lock_and_putref+0x11/0x70\n     SYSC_semtimedop+0x7bf/0x960\n     ? handle_mm_fault+0xbf6/0x1880\n     ? dequeue_task_fair+0x79/0x4a0\n     ? __do_page_fault+0x19a/0x430\n     ? kfree_debugcheck+0x16/0x40\n     ? __do_page_fault+0x19a/0x430\n     ? __audit_syscall_entry+0xa8/0x100\n     ? do_audit_syscall_entry+0x66/0x70\n     ? syscall_trace_enter_phase1+0x139/0x160\n     SyS_semtimedop+0xe/0x10\n     SyS_semop+0x10/0x20\n     entry_SYSCALL_64_fastpath+0x12/0x71\n   Code: 47 10 83 e8 01 85 c0 89 47 10 75 08 65 48 89 3d 1f 74 ff 7e c9 c3 0f 1f 44 00 00 55 48 89 e5 e8 87 17 04 00 66 90 c9 c3 0f 1f 00 <55> 48 89 e5 0f 31 89 c1 48 89 d0 48 c1 e0 20 89 c9 48 09 c8 c9\n   Kernel panic - not syncing: softlockup: hung tasks\n\nI wasn't able to trigger any badness on a recent kernel without the\nproper config debugs enabled, however I have softlockup reports on some\nkernel versions, in the semaphore code, which are similar as above (the\nscenario is seen on some servers running IBM DB2 which uses semaphore\nsyscalls).\n\nThe patch here fixes the race against freeary, by acquiring or waiting\non the sem_undo_list lock as necessary (exit_sem can race with freeary,\nwhile freeary sets un->semid to -1 and removes the same sem_undo from\nlist_proc or when it removes the last sem_undo).\n\nAfter the patch I'm unable to reproduce the problem using the test case\n[1].\n\n[1] Test case used below:\n\n    #include <stdio.h>\n    #include <sys/types.h>\n    #include <sys/ipc.h>\n    #include <sys/sem.h>\n    #include <sys/wait.h>\n    #include <stdlib.h>\n    #include <time.h>\n    #include <unistd.h>\n    #include <errno.h>\n\n    #define NSEM 1\n    #define NSET 5\n\n    int sid[NSET];\n\n    void thread()\n    {\n            struct sembuf op;\n            int s;\n            uid_t pid = getuid();\n\n            s = rand() % NSET;\n            op.sem_num = pid % NSEM;\n            op.sem_op = 1;\n            op.sem_flg = SEM_UNDO;\n\n            semop(sid[s], &op, 1);\n            exit(EXIT_SUCCESS);\n    }\n\n    void create_set()\n    {\n            int i, j;\n            pid_t p;\n            union {\n                    int val;\n                    struct semid_ds *buf;\n                    unsigned short int *array;\n                    struct seminfo *__buf;\n            } un;\n\n            /* Create and initialize semaphore set */\n            for (i = 0; i < NSET; i++) {\n                    sid[i] = semget(IPC_PRIVATE , NSEM, 0644 | IPC_CREAT);\n                    if (sid[i] < 0) {\n                            perror(\"semget\");\n                            exit(EXIT_FAILURE);\n                    }\n            }\n            un.val = 0;\n            for (i = 0; i < NSET; i++) {\n                    for (j = 0; j < NSEM; j++) {\n                            if (semctl(sid[i], j, SETVAL, un) < 0)\n                                    perror(\"semctl\");\n                    }\n            }\n\n            /* Launch threads that operate on semaphore set */\n            for (i = 0; i < NSEM * NSET * NSET; i++) {\n                    p = fork();\n                    if (p < 0)\n                            perror(\"fork\");\n                    if (p == 0)\n                            thread();\n            }\n\n            /* Free semaphore set */\n            for (i = 0; i < NSET; i++) {\n                    if (semctl(sid[i], NSEM, IPC_RMID))\n                            perror(\"IPC_RMID\");\n            }\n\n            /* Wait for forked processes to exit */\n            while (wait(NULL)) {\n                    if (errno == ECHILD)\n                            break;\n            };\n    }\n\n    int main(int argc, char **argv)\n    {\n            pid_t p;\n\n            srand(time(NULL));\n\n            while (1) {\n                    p = fork();\n                    if (p < 0) {\n                            perror(\"fork\");\n                            exit(EXIT_FAILURE);\n                    }\n                    if (p == 0) {\n                            create_set();\n                            goto end;\n                    }\n\n                    /* Wait for forked processes to exit */\n                    while (wait(NULL)) {\n                            if (errno == ECHILD)\n                                    break;\n                    };\n            }\n    end:\n            return 0;\n    }\n\n[akpm@linux-foundation.org: use normal comment layout]\nSigned-off-by: Herton R. Krzesinski <herton@redhat.com>\nAcked-by: Manfred Spraul <manfred@colorfullife.com>\nCc: Davidlohr Bueso <dave@stgolabs.net>\nCc: Rafael Aquini <aquini@redhat.com>\nCC: Aristeu Rozanski <aris@redhat.com>\nCc: David Jeffery <djeffery@redhat.com>\nCc: <stable@vger.kernel.org>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\n\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/38b50c47c25e12826f5c617b6b7d7cb8ed7708cf"},{"sha":"ff12efa03da1ca3acb973b7c92c0794a312a785e","author":{"email":"e4eddfaff1fc5d7affa656f47ee4d83207ccac30@colorfullife.com","name":"Manfred Spraul"},"message":"ipc/sem.c: update/correct memory barriers\n\n[ Upstream commit 3ed1f8a99d70ea1cd1508910eb107d0edcae5009 ]\n\nsem_lock() did not properly pair memory barriers:\n\n!spin_is_locked() and spin_unlock_wait() are both only control barriers.\nThe code needs an acquire barrier, otherwise the cpu might perform read\noperations before the lock test.\n\nAs no primitive exists inside <include/spinlock.h> and since it seems\nnoone wants another primitive, the code creates a local primitive within\nipc/sem.c.\n\nWith regards to -stable:\n\nThe change of sem_wait_array() is a bugfix, the change to sem_lock() is a\nnop (just a preprocessor redefinition to improve the readability).  The\nbugfix is necessary for all kernels that use sem_wait_array() (i.e.:\nstarting from 3.10).\n\nSigned-off-by: Manfred Spraul <manfred@colorfullife.com>\nReported-by: Oleg Nesterov <oleg@redhat.com>\nAcked-by: Peter Zijlstra (Intel) <peterz@infradead.org>\nCc: \"Paul E. McKenney\" <paulmck@linux.vnet.ibm.com>\nCc: Kirill Tkhai <ktkhai@parallels.com>\nCc: Ingo Molnar <mingo@redhat.com>\nCc: Josh Poimboeuf <jpoimboe@redhat.com>\nCc: Davidlohr Bueso <dave@stgolabs.net>\nCc: <stable@vger.kernel.org>\t[3.10+]\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/ff12efa03da1ca3acb973b7c92c0794a312a785e"},{"sha":"478f59c075a9927f7a45214d4a4ba6bc89f5f8f3","author":{"email":"bdcdf23be75b976d8e1ad9f82e6b264941889f50@hotmail.com","name":"Wanpeng Li"},"message":"mm/hwpoison: fix page refcount of unknown non LRU page\n\n[ Upstream commit 4f32be677b124a49459e2603321c7a5605ceb9f8 ]\n\nAfter trying to drain pages from pagevec/pageset, we try to get reference\ncount of the page again, however, the reference count of the page is not\nreduced if the page is still not on LRU list.\n\nFix it by adding the put_page() to drop the page reference which is from\n__get_any_page().\n\nSigned-off-by: Wanpeng Li <wanpeng.li@hotmail.com>\nAcked-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>\nCc: <stable@vger.kernel.org>\t[3.9+]\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/478f59c075a9927f7a45214d4a4ba6bc89f5f8f3"},{"sha":"088873456a149b7f469d821808c4ffffa7182b89","author":{"email":"8e7a128cd0264d3269a891fb3e87507c2985f8af@ah.jp.nec.com","name":"Naoya Horiguchi"},"message":"mm: hugetlb: introduce page_huge_active\n\n[ Upstream commit bcc54222309c70ebcb6c69c156fba4a13dee0a3b ]\n\nWe are not safe from calling isolate_huge_page() on a hugepage\nconcurrently, which can make the victim hugepage in invalid state and\nresults in BUG_ON().\n\nThe root problem of this is that we don't have any information on struct\npage (so easily accessible) about hugepages' activeness.  Note that\nhugepages' activeness means just being linked to\nhstate->hugepage_activelist, which is not the same as normal pages'\nactiveness represented by PageActive flag.\n\nNormal pages are isolated by isolate_lru_page() which prechecks PageLRU\nbefore isolation, so let's do similarly for hugetlb with a new\npaeg_huge_active().\n\nset/clear_page_huge_active() should be called within hugetlb_lock.  But\nhugetlb_cow() and hugetlb_no_page() don't do this, being justified because\nin these functions set_page_huge_active() is called right after the\nhugepage is allocated and no other thread tries to isolate it.\n\n[akpm@linux-foundation.org: s/PageHugeActive/page_huge_active/, make it return bool]\n[fengguang.wu@intel.com: set_page_huge_active() can be static]\nSigned-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>\nCc: Hugh Dickins <hughd@google.com>\nReviewed-by: Michal Hocko <mhocko@suse.cz>\nCc: Mel Gorman <mgorman@suse.de>\nCc: Johannes Weiner <hannes@cmpxchg.org>\nCc: David Rientjes <rientjes@google.com>\nSigned-off-by: Fengguang Wu <fengguang.wu@intel.com>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\n\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/088873456a149b7f469d821808c4ffffa7182b89"},{"sha":"075ad72d356b8d74547afd2a342dba7b2abb7fcf","author":{"email":"bdcdf23be75b976d8e1ad9f82e6b264941889f50@hotmail.com","name":"Wanpeng Li"},"message":"mm/hwpoison: fix fail isolate hugetlbfs page w/ refcount held\n\n[ Upstream commit 036138080a4376e5f3e5d0cca8ac99084c5cf06e ]\n\nHugetlbfs pages will get a refcount in get_any_page() or\nmadvise_hwpoison() if soft offlining through madvise.  The refcount which\nis held by the soft offline path should be released if we fail to isolate\nhugetlbfs pages.\n\nFix it by reducing the refcount for both isolation success and failure.\n\nSigned-off-by: Wanpeng Li <wanpeng.li@hotmail.com>\nAcked-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>\nCc: <stable@vger.kernel.org>\t[3.9+]\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/075ad72d356b8d74547afd2a342dba7b2abb7fcf"},{"sha":"71ae6a566657e8df4f8797ef91d6cf1a0e1bc7e4","author":{"email":"f1431bf4ea962ea2009f7275289c2e0b23d8aceb@oracle.com","name":"Bob Liu"},"message":"xen-blkfront: don't add indirect pages to list when !feature_persistent\n\n[ Upstream commit 7b0767502b5db11cb1f0daef2d01f6d71b1192dc ]\n\nWe should consider info->feature_persistent when adding indirect page to list\ninfo->indirect_pages, else the BUG_ON() in blkif_free() would be triggered.\n\nWhen we are using persistent grants the indirect_pages list\nshould always be empty because blkfront has pre-allocated enough\npersistent pages to fill all requests on the ring.\n\nCC: stable@vger.kernel.org\nAcked-by: Roger Pau Monné <roger.pau@citrix.com>\nSigned-off-by: Bob Liu <bob.liu@oracle.com>\nSigned-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/71ae6a566657e8df4f8797ef91d6cf1a0e1bc7e4"},{"sha":"92eea3808638b5cbce8b542135892cf15e4ae0ad","author":{"email":"f1431bf4ea962ea2009f7275289c2e0b23d8aceb@oracle.com","name":"Bob Liu"},"message":"xen-blkback: replace work_pending with work_busy in purge_persistent_gnt()\n\n[ Upstream commit 53bc7dc004fecf39e0ba70f2f8d120a1444315d3 ]\n\nThe BUG_ON() in purge_persistent_gnt() will be triggered when previous purge\nwork haven't finished.\n\nThere is a work_pending() before this BUG_ON, but it doesn't account if the work\nis still currently running.\n\nCC: stable@vger.kernel.org\nAcked-by: Roger Pau Monné <roger.pau@citrix.com>\nSigned-off-by: Bob Liu <bob.liu@oracle.com>\nSigned-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/92eea3808638b5cbce8b542135892cf15e4ae0ad"},{"sha":"c08266ad1aa01aa974f1ac1c960b93f70a0c7915","author":{"email":"3fddac958924aef220f202ca567388ddab3f14a8@infradead.org","name":"Peter Zijlstra"},"message":"perf: Fix fasync handling on inherited events\n\n[ Upstream commit fed66e2cdd4f127a43fd11b8d92a99bdd429528c ]\n\nVince reported that the fasync signal stuff doesn't work proper for\ninherited events. So fix that.\n\nInstalling fasync allocates memory and sets filp->f_flags |= FASYNC,\nwhich upon the demise of the file descriptor ensures the allocation is\nfreed and state is updated.\n\nNow for perf, we can have the events stick around for a while after the\noriginal FD is dead because of references from child events. So we\ncannot copy the fasync pointer around. We can however consistently use\nthe parent's fasync, as that will be updated.\n\nReported-and-Tested-by: Vince Weaver <vincent.weaver@maine.edu>\nSigned-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>\nCc: <stable@vger.kernel.org>\nCc: Arnaldo Carvalho deMelo <acme@kernel.org>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: eranian@google.com\nLink: http://lkml.kernel.org/r/1434011521.1495.71.camel@twins\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/c08266ad1aa01aa974f1ac1c960b93f70a0c7915"},{"sha":"a19bd3d535bcd02802b50d5cfd7b148fd183e9e7","author":{"email":"3fddac958924aef220f202ca567388ddab3f14a8@infradead.org","name":"Peter Zijlstra"},"message":"perf: Fix PERF_EVENT_IOC_PERIOD migration race\n\n[ Upstream commit c7999c6f3fed9e383d3131474588f282ae6d56b9 ]\n\nI ran the perf fuzzer, which triggered some WARN()s which are due to\ntrying to stop/restart an event on the wrong CPU.\n\nUse the normal IPI pattern to ensure we run the code on the correct CPU.\n\nSigned-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>\nCc: Vince Weaver <vincent.weaver@maine.edu>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Thomas Gleixner <tglx@linutronix.de>\nFixes: bad7192b842c (\"perf: Fix PERF_EVENT_IOC_PERIOD to force-reset the period\")\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/a19bd3d535bcd02802b50d5cfd7b148fd183e9e7"},{"sha":"e01ddf27abe9bf1e84860e0d426c3e86bc76a53e","author":{"email":"ed0f1d78b8c21b2970494a178da4bdfa8beba2a7@lwfinger.net","name":"Larry Finger"},"message":"rtlwifi: rtl8723be: Add module parameter for MSI interrupts\n\n[ Upstream commit 741e3b9902d11585e18bfc7f8d47e913616bb070 ]\n\nThe driver code allows for the disabling of MSI interrupts; however the\nmodule_parm line was missed and the option fails to show with modinfo.\n\nSigned-off-by: Larry Finger <Larry.Finger@lwfinger.net>\nCc: Stable <stable@vger.kernel.org> [3.15+]\nSigned-off-by: Kalle Valo <kvalo@codeaurora.org>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/e01ddf27abe9bf1e84860e0d426c3e86bc76a53e"},{"sha":"03152d7cff8f0083bac4a260df2c75c124af9399","author":{"email":"e7e312fea4c2c1aad2bb075d739111890e1ce08b@zx2c4.com","name":"Jason A. Donenfeld"},"message":"x86/xen: build \"Xen PV\" APIC driver for domU as well\n\n[ Upstream commit fc5fee86bdd3d720e2d1d324e4fae0c35845fa63 ]\n\nIt turns out that a PV domU also requires the \"Xen PV\" APIC\ndriver. Otherwise, the flat driver is used and we get stuck in busy\nloops that never exit, such as in this stack trace:\n\n(gdb) target remote localhost:9999\nRemote debugging using localhost:9999\n__xapic_wait_icr_idle () at ./arch/x86/include/asm/ipi.h:56\n56              while (native_apic_mem_read(APIC_ICR) & APIC_ICR_BUSY)\n(gdb) bt\n #0  __xapic_wait_icr_idle () at ./arch/x86/include/asm/ipi.h:56\n #1  __default_send_IPI_shortcut (shortcut=<optimized out>,\ndest=<optimized out>, vector=<optimized out>) at\n./arch/x86/include/asm/ipi.h:75\n #2  apic_send_IPI_self (vector=246) at arch/x86/kernel/apic/probe_64.c:54\n #3  0xffffffff81011336 in arch_irq_work_raise () at\narch/x86/kernel/irq_work.c:47\n #4  0xffffffff8114990c in irq_work_queue (work=0xffff88000fc0e400) at\nkernel/irq_work.c:100\n #5  0xffffffff8110c29d in wake_up_klogd () at kernel/printk/printk.c:2633\n #6  0xffffffff8110ca60 in vprintk_emit (facility=0, level=<optimized\nout>, dict=0x0 <irq_stack_union>, dictlen=<optimized out>,\nfmt=<optimized out>, args=<optimized out>)\n    at kernel/printk/printk.c:1778\n #7  0xffffffff816010c8 in printk (fmt=<optimized out>) at\nkernel/printk/printk.c:1868\n #8  0xffffffffc00013ea in ?? ()\n #9  0x0000000000000000 in ?? ()\n\nMailing-list-thread: https://lkml.org/lkml/2015/8/4/755\nSigned-off-by: Jason A. Donenfeld <Jason@zx2c4.com>\nCc: <stable@vger.kernel.org>\nSigned-off-by: David Vrabel <david.vrabel@citrix.com>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/03152d7cff8f0083bac4a260df2c75c124af9399"},{"sha":"c03b0a447fcb80f7698c05d3dec1aae378f45f52","author":{"email":"61d5fad70554ae22d57a37634e04f12f58acc678@redhat.com","name":"Joe Thornber"},"message":"dm thin metadata: delete btrees when releasing metadata snapshot\n\n[ Upstream commit 7f518ad0a212e2a6fd68630e176af1de395070a7 ]\n\nThe device details and mapping trees were just being decremented\nbefore.  Now btree_del() is called to do a deep delete.\n\nSigned-off-by: Joe Thornber <ejt@redhat.com>\nSigned-off-by: Mike Snitzer <snitzer@redhat.com>\nCc: stable@vger.kernel.org\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/c03b0a447fcb80f7698c05d3dec1aae378f45f52"},{"sha":"0212b0c3b25fac7e29973d2aa2373bd2e6d74fa1","author":{"email":"320bca71fc381a4a025636043ca86e734e31cf8b@nod.at","name":"Richard Weinberger"},"message":"localmodconfig: Use Kbuild files too\n\n[ Upstream commit c0ddc8c745b7f89c50385fd7aa03c78dc543fa7a ]\n\nIn kbuild it is allowed to define objects in files named \"Makefile\"\nand \"Kbuild\".\nCurrently localmodconfig reads objects only from \"Makefile\"s and misses\nmodules like nouveau.\n\nLink: http://lkml.kernel.org/r/1437948415-16290-1-git-send-email-richard@nod.at\n\nCc: stable@vger.kernel.org\nReported-and-tested-by: Leonidas Spyropoulos <artafinde@gmail.com>\nSigned-off-by: Richard Weinberger <richard@nod.at>\nSigned-off-by: Steven Rostedt <rostedt@goodmis.org>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/0212b0c3b25fac7e29973d2aa2373bd2e6d74fa1"},{"sha":"4db77254bcd9da65990488883d26110ca9bdfde4","author":{"email":"17b9e1c64588c7fa6419b4d29dc1f4426279ba01@walle.cc","name":"Michael Walle"},"message":"EDAC, ppc4xx: Access mci->csrows array elements properly\n\n[ Upstream commit 5c16179b550b9fd8114637a56b153c9768ea06a5 ]\n\nThe commit\n\n  de3910eb79ac (\"edac: change the mem allocation scheme to\n\t\t make Documentation/kobject.txt happy\")\n\nchanged the memory allocation for the csrows member. But ppc4xx_edac was\nforgotten in the patch. Fix it.\n\nSigned-off-by: Michael Walle <michael@walle.cc>\nCc: <stable@vger.kernel.org>\nCc: linux-edac <linux-edac@vger.kernel.org>\nCc: Mauro Carvalho Chehab <mchehab@osg.samsung.com>\nLink: http://lkml.kernel.org/r/1437469253-8611-1-git-send-email-michael@walle.cc\nSigned-off-by: Borislav Petkov <bp@suse.de>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/4db77254bcd9da65990488883d26110ca9bdfde4"},{"sha":"8f3d4573077eadb5c7c4be9f3464cd5147a70726","author":{"email":"08dc22c6156113f2deff178e35e3ed9b24d6af9e@amd.com","name":"Alex Deucher"},"message":"drm/radeon: add new OLAND pci id\n\n[ Upstream commit e037239e5e7b61007763984aa35a8329596d8c88 ]\n\nSigned-off-by: Alex Deucher <alexander.deucher@amd.com>\nCc: stable@vger.kernel.org\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/8f3d4573077eadb5c7c4be9f3464cd5147a70726"},{"sha":"96052befa5765735962fac305fc50846298ae97e","author":{"email":"a26490dfbee4be3d38287ad6448444504f58193c@vmware.com","name":"Thomas Hellstrom"},"message":"drm/vmwgfx: Fix execbuf locking issues\n\n[ Upstream commit 3e04e2fe6d87807d27521ad6ebb9e7919d628f25 ]\n\nThis addresses two issues that cause problems with viewperf maya-03 in\nsituation with memory pressure.\n\nThe first issue causes attempts to unreserve buffers if batched\nreservation fails due to, for example, a signal pending. While previously\nthe ttm_eu api was resistant against this type of error, it is no longer\nand the lockdep code will complain about attempting to unreserve buffers\nthat are not reserved. The issue is resolved by avoid calling\nttm_eu_backoff_reservation in the buffer reserve error path.\n\nThe second issue is that the binding_mutex may be held when user-space\nfence objects are created and hence during memory reclaims. This may cause\nrecursive attempts to grab the binding mutex. The issue is resolved by not\nholding the binding mutex across fence creation and submission.\n\nSigned-off-by: Thomas Hellstrom <thellstrom@vmware.com>\nReviewed-by: Sinclair Yeh <syeh@vmware.com>\nCc: <stable@vger.kernel.org>\nSigned-off-by: Dave Airlie <airlied@redhat.com>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/96052befa5765735962fac305fc50846298ae97e"},{"sha":"532a0a6693852856c1520271d12b2a3217de47e3","author":{"email":"28563a2d387a4f8f033bf7abbf80937064dfbe0c@sandisk.com","name":"Bart Van Assche"},"message":"libfc: Fix fc_exch_recv_req() error path\n\n[ Upstream commit f6979adeaab578f8ca14fdd32b06ddee0d9d3314 ]\n\nDue to patch \"libfc: Do not invoke the response handler after\nfc_exch_done()\" (commit ID 7030fd62) the lport_recv() call\nin fc_exch_recv_req() is passed a dangling pointer. Avoid this\nby moving the fc_frame_free() call from fc_invoke_resp() to its\ncallers. This patch fixes the following crash:\n\ngeneral protection fault: 0000 [#3] PREEMPT SMP\nRIP: fc_lport_recv_req+0x72/0x280 [libfc]\nCall Trace:\n fc_exch_recv+0x642/0xde0 [libfc]\n fcoe_percpu_receive_thread+0x46a/0x5ed [fcoe]\n kthread+0x10a/0x120\n ret_from_fork+0x42/0x70\n\nSigned-off-by: Bart Van Assche <bart.vanassche@sandisk.com>\nCc: stable <stable@vger.kernel.org>\nSigned-off-by: Vasu Dev <vasu.dev@intel.com>\nSigned-off-by: James Bottomley <JBottomley@Odin.com>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/532a0a6693852856c1520271d12b2a3217de47e3"},{"sha":"b278b43bf686f872eb4a29d6d3c053b6df998f71","author":{"email":"28563a2d387a4f8f033bf7abbf80937064dfbe0c@sandisk.com","name":"Bart Van Assche"},"message":"libfc: Fix fc_fcp_cleanup_each_cmd()\n\n[ Upstream commit 8f2777f53e3d5ad8ef2a176a4463a5c8e1a16431 ]\n\nSince fc_fcp_cleanup_cmd() can sleep this function must not\nbe called while holding a spinlock. This patch avoids that\nfc_fcp_cleanup_each_cmd() triggers the following bug:\n\nBUG: scheduling while atomic: sg_reset/1512/0x00000202\n1 lock held by sg_reset/1512:\n #0:  (&(&fsp->scsi_pkt_lock)->rlock){+.-...}, at: [<ffffffffc0225cd5>] fc_fcp_cleanup_each_cmd.isra.21+0xa5/0x150 [libfc]\nPreemption disabled at:[<ffffffffc0225cd5>] fc_fcp_cleanup_each_cmd.isra.21+0xa5/0x150 [libfc]\nCall Trace:\n [<ffffffff816c612c>] dump_stack+0x4f/0x7b\n [<ffffffff810828bc>] __schedule_bug+0x6c/0xd0\n [<ffffffff816c87aa>] __schedule+0x71a/0xa10\n [<ffffffff816c8ad2>] schedule+0x32/0x80\n [<ffffffffc0217eac>] fc_seq_set_resp+0xac/0x100 [libfc]\n [<ffffffffc0218b11>] fc_exch_done+0x41/0x60 [libfc]\n [<ffffffffc0225cff>] fc_fcp_cleanup_each_cmd.isra.21+0xcf/0x150 [libfc]\n [<ffffffffc0225f43>] fc_eh_device_reset+0x1c3/0x270 [libfc]\n [<ffffffff814a2cc9>] scsi_try_bus_device_reset+0x29/0x60\n [<ffffffff814a3908>] scsi_ioctl_reset+0x258/0x2d0\n [<ffffffff814a2650>] scsi_ioctl+0x150/0x440\n [<ffffffff814b3a9d>] sd_ioctl+0xad/0x120\n [<ffffffff8132f266>] blkdev_ioctl+0x1b6/0x810\n [<ffffffff811da608>] block_ioctl+0x38/0x40\n [<ffffffff811b4e08>] do_vfs_ioctl+0x2f8/0x530\n [<ffffffff811b50c1>] SyS_ioctl+0x81/0xa0\n [<ffffffff816cf8b2>] system_call_fastpath+0x16/0x7a\n\nSigned-off-by: Bart Van Assche <bart.vanassche@sandisk.com>\nCc: stable <stable@vger.kernel.org>\nSigned-off-by: Vasu Dev <vasu.dev@intel.com>\nSigned-off-by: James Bottomley <JBottomley@Odin.com>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/b278b43bf686f872eb4a29d6d3c053b6df998f71"},{"sha":"86e467779a160702ae922578e316babc0cf178c8","author":{"email":"8e4aa0015eb43ed5ca66aaca3fb498609e1e427c@opensource.wolfsonmicro.com","name":"Charles Keepax"},"message":"mfd: arizona: Fix initialisation of the PM runtime\n\n[ Upstream commit 72e43164fd472f6c2659c8313b87da962322dbcf ]\n\nThe PM runtime core by default assumes a chip is suspended when runtime\nPM is enabled. Currently the arizona driver enables runtime PM when the\nchip is fully active and then disables the DCVDD regulator at the end of\narizona_dev_init. This however has several problems, firstly the if we\nreach the end of arizona_dev_init, we did not properly follow all the\nproceedures for shutting down the chip, and most notably we never marked\nthe chip as cache only so any writes occurring between then and the next\nPM runtime resume will be lost. Secondly, if we are already resumed when\nwe reach the end of dev_init, then at best we get unbalanced regulator\nenable/disables at work we lose DCVDD whilst we need it.\n\nAdditionally, since the commit 4f0216409f7c (\"mfd: arizona: Add better\nsupport for system suspend\"), the PM runtime operations may\ndisable/enable the IRQ, so the IRQs must now be enabled before we call\nany PM operations.\n\nThis patch adds a call to pm_runtime_set_active to inform the PM core\nthat the device is starting up active and moves the PM enabling to\naround the IRQ initialisation to avoid any PM callbacks happening until\nthe IRQs are initialised.\n\nCc: stable@vger.kernel.org # v3.5+\nSigned-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>\nSigned-off-by: Lee Jones <lee.jones@linaro.org>\nSigned-off-by: Sasha Levin <sasha.levin@oracle.com>","distinct":true,"url":"https://api.github.com/repos/Rashed97/caf-kernel-msm/commits/86e467779a160702ae922578e316babc0cf178c8"}]}