{"push_id":2550687046,"size":9,"distinct_size":9,"ref":"refs/heads/mko-mr1","head":"a2cad2bea19e222f7cfe4ae06c431a74e23fbccc","before":"1b386d82549863cf936628908963b01f98236d23","commits":[{"sha":"0613aedcb1b4b570fde8f4893acd98d5d5137db0","author":{"name":"Li Jinyue","email":"45c85f10674f4db47cce26d34d806709a7722127@huawei.com"},"message":"BACKPORT: futex: Prevent overflow by strengthen input validation\n\nUBSAN reports signed integer overflow in kernel/futex.c:\n\n UBSAN: Undefined behaviour in kernel/futex.c:2041:18\n signed integer overflow:\n 0 - -2147483648 cannot be represented in type 'int'\n\nAdd a sanity check to catch negative values of nr_wake and nr_requeue.\n\nSigned-off-by: Li Jinyue <lijinyue@huawei.com>\nSigned-off-by: Thomas Gleixner <tglx@linutronix.de>\nSigned-off-by: Erick Reyes <erickreyes@google.com>\nCc: peterz@infradead.org\nCc: dvhart@infradead.org\nCc: stable@vger.kernel.org\n\nLink: https://lkml.kernel.org/r/1513242294-31786-1-git-send-email-lijinyue@huawei.com\nCherry-picked from fbe0e839d1e22d88810f3ee3e2f1479be4c0aa4a\n\nChange-Id: I954cc2848678318b60ec3f103d0c15f87b4605a4","distinct":true,"url":"https://api.github.com/repos/MoKee/android_kernel_oneplus_msm8994/commits/0613aedcb1b4b570fde8f4893acd98d5d5137db0"},{"sha":"d77e1a40abfe59aa9ba57dbff026a4cbf037e60e","author":{"name":"Johannes Thumshirn","email":"76e27a2cf2160151c27b307564ef391a743f57c5@suse.de"},"message":"UPSTREAM: scsi: sg: don't return bogus Sg_requests\n\nIf the list search in sg_get_rq_mark() fails to find a valid request, we\nreturn a bogus element. This then can later lead to a GPF in\nsg_remove_scat().\n\nSo don't return bogus Sg_requests in sg_get_rq_mark() but NULL in case\nthe list search doesn't find a valid request.\n\nSigned-off-by: Johannes Thumshirn <jthumshirn@suse.de>\nReported-by: Andrey Konovalov <andreyknvl@google.com>\nCc: Hannes Reinecke <hare@suse.de>\nCc: Christoph Hellwig <hch@lst.de>\nCc: Doug Gilbert <dgilbert@interlog.com>\nReviewed-by: Hannes Reinecke <hare@suse.de>\nAcked-by: Doug Gilbert <dgilbert@interlog.com>\nSigned-off-by: Martin K. Petersen <martin.petersen@oracle.com>\nSigned-off-by: Chenbo Feng <fengc@google.com>\n(cherry picked from commit 48ae8484e9fc324b4968d33c585e54bc98e44d61)\n\nChange-Id: If95d1a8eef3748c9937201e524184b89a5eaaf2e\nBug: 75300370","distinct":true,"url":"https://api.github.com/repos/MoKee/android_kernel_oneplus_msm8994/commits/d77e1a40abfe59aa9ba57dbff026a4cbf037e60e"},{"sha":"3c415d02684d5ad94307f630e19738d7b4802ca1","author":{"name":"Christian Borntraeger","email":"49712f635b03c16d7f4c43df70e49ec8c565813d@de.ibm.com"},"message":"UPSTREAM: kernel: Provide READ_ONCE and ASSIGN_ONCE\n\nACCESS_ONCE does not work reliably on non-scalar types. For\nexample gcc 4.6 and 4.7 might remove the volatile tag for such\naccesses during the SRA (scalar replacement of aggregates) step\nhttps://gcc.gnu.org/bugzilla/show_bug.cgi?id=58145)\n\nLet's provide READ_ONCE/ASSIGN_ONCE that will do all accesses via\nscalar types as suggested by Linus Torvalds. Accesses larger than\nthe machines word size cannot be guaranteed to be atomic. These\nmacros will use memcpy and emit a build warning.\n\nSigned-off-by: Christian Borntraeger <borntraeger@de.ibm.com>\n\nBug: 28705983\n(cherry picked from commit 230fa253df6352af12ad0a16128760b5cb3f92df)\nChange-Id: I6235247c7b3a5e14093d477417000ed82f7586a3","distinct":true,"url":"https://api.github.com/repos/MoKee/android_kernel_oneplus_msm8994/commits/3c415d02684d5ad94307f630e19738d7b4802ca1"},{"sha":"2d691d65ea5a1063c877d4e0378e28562c4d76ad","author":{"name":"Mel Gorman","email":"39ea6a09710987173e32e37c86918024a0f441c1@suse.de"},"message":"BACKPORT: futex: Remove requirement for lock_page() in get_futex_key()\n\ncommit 65d8fc777f6dcfee12785c057a6b57f679641c90 upstream.\n\nWhen dealing with key handling for shared futexes, we can drastically reduce\nthe usage/need of the page lock. 1) For anonymous pages, the associated futex\nobject is the mm_struct which does not require the page lock. 2) For inode\nbased, keys, we can check under RCU read lock if the page mapping is still\nvalid and take reference to the inode. This just leaves one rare race that\nrequires the page lock in the slow path when examining the swapcache.\n\nAdditionally realtime users currently have a problem with the page lock being\ncontended for unbounded periods of time during futex operations.\n\nTask A\n     get_futex_key()\n     lock_page()\n    ---> preempted\n\nNow any other task trying to lock that page will have to wait until\ntask A gets scheduled back in, which is an unbound time.\n\nWith this patch, we pretty much have a lockless futex_get_key().\n\nExperiments show that this patch can boost/speedup the hashing of shared\nfutexes with the perf futex benchmarks (which is good for measuring such\nchange) by up to 45% when there are high (> 100) thread counts on a 60 core\nWestmere. Lower counts are pretty much in the noise range or less than 10%,\nbut mid range can be seen at over 30% overall throughput (hash ops/sec).\nThis makes anon-mem shared futexes much closer to its private counterpart.\n\nSigned-off-by: Mel Gorman <mgorman@suse.de>\n[ Ported on top of thp refcount rework, changelog, comments, fixes. ]\nSigned-off-by: Davidlohr Bueso <dbueso@suse.de>\nReviewed-by: Thomas Gleixner <tglx@linutronix.de>\nCc: Chris Mason <clm@fb.com>\nCc: Darren Hart <dvhart@linux.intel.com>\nCc: Hugh Dickins <hughd@google.com>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Mel Gorman <mgorman@techsingularity.net>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>\nCc: dave@stgolabs.net\nLink: http://lkml.kernel.org/r/1455045314-8305-3-git-send-email-dave@stgolabs.net\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Chenbo Feng <fengc@google.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\n\nBug: 74250718\nChange-Id: I80e300aa740a553fbbbf84143d6a4165f31c8a90","distinct":true,"url":"https://api.github.com/repos/MoKee/android_kernel_oneplus_msm8994/commits/2d691d65ea5a1063c877d4e0378e28562c4d76ad"},{"sha":"6de1a679279601c73a9ec6b1f317e8ebebb52de3","author":{"name":"Ritesh Harjani","email":"9dca834b0a38e96a2a5a05425ca5e3d7c89ca765@codeaurora.org"},"message":"ANDROID: sdcardfs: Fix sdcardfs to stop creating cases-sensitive duplicate entries.\n\nsdcardfs_name_match gets a 'name' argument from the underlying FS.\nThis need not be null terminated string.\nSo in sdcardfs_name_match -> qstr_case_eq -> we should use\nstr_n_case_eq.\n\nThis happens because few of the entries in lower level FS may not be\nNULL terminated and may have some garbage characters passed while\ndoing sdcardfs_name_match.\n\nFor e.g.\n # dmesg |grep Download\n [  103.646386] sdcardfs_name_match: q1->name=.nomedia, q1->len=8,\n q2->name=Download\\x17\\x80\\x03, q2->len=8\n [  104.021340] sdcardfs_name_match: q1->name=.nomedia, q1->len=8,\n q2->name=Download\\x17\\x80\\x03, q2->len=8\n [  105.196864] sdcardfs_name_match: q1->name=.nomedia, q1->len=8,\n q2->name=Download\\x17\\x80\\x03, q2->len=8\n [  109.113521] sdcardfs_name_match: q1->name=logs, q1->len=4,\n q2->name=Download\\x17\\x80\\x03, q2->len=8\n\nNow when we try to create a directory with different case for a such\nfiles. SDCARDFS creates a entry if it could not find the underlying\nentry in it's dcache.\n\nTo reproduce:-\n1. bootup the device wait for some time after sdcardfs mounting to\n   complete.\n2. cd /storage/emulated/0\n3. echo 3 > /proc/sys/vm/drop_caches\n4. mkdir download\n\nWe now start seeing two entries with name.\nDownload & download.\n\nChange-Id: I976d92a220a607dd8cdb96c01c2041c5c2bc3326\nSigned-off-by: Ritesh Harjani <riteshh@codeaurora.org>\nbug: 75987238","distinct":true,"url":"https://api.github.com/repos/MoKee/android_kernel_oneplus_msm8994/commits/6de1a679279601c73a9ec6b1f317e8ebebb52de3"},{"sha":"1017841ccffa18565745e0db0fe0bcc478fcff61","author":{"name":"Ritesh Harjani","email":"9dca834b0a38e96a2a5a05425ca5e3d7c89ca765@codeaurora.org"},"message":"ANDROID: fuse: Add null terminator to path in canonical path to avoid issue\n\npage allocated in fuse_dentry_canonical_path to be handled in\nfuse_dev_do_write is allocated using __get_free_pages(GFP_KERNEL).\nThis may not return a page with data filled with 0. Now this\npage may not have a null terminator at all.\nIf this happens and userspace fuse daemon screws up by passing a string\nto kernel which is not NULL terminated (or did not fill anything),\nthen inside fuse driver in kernel when we try to do\nstrlen(fuse_dev_write->kern_path->getname_kernel)\non that page data -> it may give us issue with kernel paging request.\n\nUnable to handle kernel paging request at virtual address\n------------[ cut here ]------------\n<..>\nPC is at strlen+0x10/0x90\nLR is at getname_kernel+0x2c/0xf4\n<..>\nstrlen+0x10/0x90\nkern_path+0x28/0x4c\nfuse_dev_do_write+0x5b8/0x694\nfuse_dev_write+0x74/0x94\ndo_iter_readv_writev+0x80/0xb8\ndo_readv_writev+0xec/0x1cc\nvfs_writev+0x54/0x64\nSyS_writev+0x64/0xe4\nel0_svc_naked+0x24/0x28\n\nTo avoid this we should ensure in case of FUSE_CANONICAL_PATH,\nthe page is null terminated.\n\nChange-Id: I33ca7cc76b4472eaa982c67bb20685df451121f5\nSigned-off-by: Ritesh Harjani <riteshh@codeaurora.org>\nBug: 75984715\n[Daniel - small edit, using args size ]\nSigned-off-by: Daniel Rosenberg <drosen@google.com>","distinct":true,"url":"https://api.github.com/repos/MoKee/android_kernel_oneplus_msm8994/commits/1017841ccffa18565745e0db0fe0bcc478fcff61"},{"sha":"fd2f746d711574f18d72241b818a71fce7cd8f42","author":{"name":"Daniel Rosenberg","email":"b28fe47f344ea47a742972f6caa7ef1537d21708@google.com"},"message":"ANDROID: sdcardfs: Check for private data earlier\n\nWhen an sdcardfs dentry is destroyed, it may not yet\nhave its fsdata initialized. It must be checked before\nwe try to access the paths in its private data.\n\nAdditionally, when cleaning up the superblock after\na failure, we don't have our sb private data, so\ncheck for that case.\n\nBug: 77923821\nChange-Id: I89caf6e121ed86480b42024664453fe0031bbcf3\nSigned-off-by: Daniel Rosenberg <drosen@google.com>","distinct":true,"url":"https://api.github.com/repos/MoKee/android_kernel_oneplus_msm8994/commits/fd2f746d711574f18d72241b818a71fce7cd8f42"},{"sha":"47da6a183fed11c7cae65dc55449c96adaf3a33f","author":{"name":"Daniel Rosenberg","email":"b28fe47f344ea47a742972f6caa7ef1537d21708@google.com"},"message":"ANDROID: sdcardfs: d_make_root calls iput\n\nd_make_root will call iput on failure, so we\nshouldn't try to do that ourselves.\n\nSigned-off-by: Daniel Rosenberg <drosen@google.com>\nBug: 77923821\nChange-Id: I1abb4afb0f894ab917b7c6be8c833676f436beb7","distinct":true,"url":"https://api.github.com/repos/MoKee/android_kernel_oneplus_msm8994/commits/47da6a183fed11c7cae65dc55449c96adaf3a33f"},{"sha":"a2cad2bea19e222f7cfe4ae06c431a74e23fbccc","author":{"name":"Daniel Rosenberg","email":"b28fe47f344ea47a742972f6caa7ef1537d21708@google.com"},"message":"ANDROID: sdcardfs: Set s_root to NULL after putting\n\nSigned-off-by: Daniel Rosenberg <drosen@google.com>\nBug: 77923821\nChange-Id: I1705bfd146009561d2d1da5f0e6a342ec6932a1c","distinct":true,"url":"https://api.github.com/repos/MoKee/android_kernel_oneplus_msm8994/commits/a2cad2bea19e222f7cfe4ae06c431a74e23fbccc"}]}
{"actor":{"display_login":"mokeeopensource"}}