{"push_id":1071961718,"size":7,"distinct_size":7,"ref":"refs/heads/master","head":"95d0c4277c27520cabdc40646f5a2e507fcd315a","before":"c3b46c73264b03000d1e18b22f5caf63332547c9","commits":[{"sha":"b707c65ae70e24c47a0ce4a7279224ce8f0ffb7f","author":{"email":"34be3ca399e9e73d80098c083a5b58614c3ca6da@linux.vnet.ibm.com","name":"Sebastian Ott"},"message":"s390/scm_blk: fix deadlock for requests != REQ_TYPE_FS\n\nWhen we refuse a non REQ_TYPE_FS request in the build request function\nwe already hold the queue lock. Thus we must not call blk_end_request_all\nbut __blk_end_request_all.\n\nReported-by: Peter Oberparleiter <oberpar@linux.vnet.ibm.com>\nFixes: de9587a ('s390/scm_blk: fix endless loop for requests != REQ_TYPE_FS')\nSigned-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>\nSigned-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>","distinct":true,"url":"https://api.github.com/repos/moontide/linux/commits/b707c65ae70e24c47a0ce4a7279224ce8f0ffb7f"},{"sha":"9d89d9e61d361f3adb75e1aebe4bb367faf16cfa","author":{"email":"34be3ca399e9e73d80098c083a5b58614c3ca6da@linux.vnet.ibm.com","name":"Sebastian Ott"},"message":"s390/pci: add extra padding to function measurement block\n\nNewer machines might use a different (larger) format for function\nmeasurement blocks. To ensure that we comply with the alignment\nrequirement on these machines and prevent memory corruption (when\nfirmware writes more data than we expect) add 16 padding bytes\nat the end of the fmb.\n\nCc: stable@vger.kernel.org # v4.1+\nSigned-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>\nSigned-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>","distinct":true,"url":"https://api.github.com/repos/moontide/linux/commits/9d89d9e61d361f3adb75e1aebe4bb367faf16cfa"},{"sha":"4f375903ccbff78e1da02133e51e37a097cd3313","author":{"email":"551ae05ce198473af5b9da594240f54df5f81e31@gmail.com","name":"Sudip Mukherjee"},"message":"s390/seccomp: include generic seccomp header file\n\nFixes this build error on linux-next:\n\nkernel/seccomp.c: In function '__secure_computing_strict':\nkernel/seccomp.c:526:3: error: implicit declaration of function\n\t\t\t\t'get_compat_mode1_syscalls'\n\nThe retrieval of compat syscall numbers were moved into inline function\ndefined in asm-generic header but the asm-generic header is not being\nused by s390.\n\n[heiko.carstens@de.ibm.com]: even though the build error will trigger\nonly in the next merge window it makes sense to include the generic\nheader file already now.\n\nFixes: (\"seccomp: Get compat syscalls from asm-generic header\")\nCc: Matt Redfearn <matt.redfearn@imgtec.com>\nSigned-off-by: Sudip Mukherjee <sudip.mukherjee@codethink.co.uk>\nSigned-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>\nSigned-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>","distinct":true,"url":"https://api.github.com/repos/moontide/linux/commits/4f375903ccbff78e1da02133e51e37a097cd3313"},{"sha":"1378a683443753923eb22d01ce322e92a383ba8a","author":{"email":"7a67bf9a8691f9f1ca8ce9577e14c37413ea5f58@de.ibm.com","name":"Gerald Schaefer"},"message":"s390/dcssblk: fix possible deadlock in remove vs. per-device attributes\n\ndcssblk_remove_store() holds the dcssblk_devices_sem semaphore while\ncalling device_unregister(), which in turn tries to acquire the kernfs\nkn->dev_map rwsem for the device sysfs subtree. The same rwsem is also\nacquired when using the per-device sysfs attributes in the device sub-tree,\nand the attribute handlers then also acquire the dcssblk_devices_sem.\n\nThis can lead to a deadlock when removing a DCSS while concurrently\nreading from / writing to one of its sysfs attributes. The following\nlockdep warning hinted towards the issue (CPU0 = dcssblk_remove_store,\nCPU1 = dcssblk_shared_store):\n\n[   76.496047]  Possible unsafe locking scenario:\n\n[   76.496054]        CPU0                    CPU1\n[   76.496059]        ----                    ----\n[   76.496087]   lock(&dcssblk_devices_sem);\n[   76.496090]                                lock(s_active#175);\n[   76.496106]                                lock(&dcssblk_devices_sem);\n[   76.496110]   lock(s_active#175);\n[   76.496115]\n *** DEADLOCK ***\n\nFix this by releasing the dcssblk_devices_sem semaphore, which only\nprotects internal DCSS data, before calling device_unregister().\n\nSigned-off-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>\nSigned-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>","distinct":true,"url":"https://api.github.com/repos/moontide/linux/commits/1378a683443753923eb22d01ce322e92a383ba8a"},{"sha":"8497695243f70fd19ed6cf28b63584f1b608b5f9","author":{"email":"8dcf0f69152f32f23184f83357a3731522e56b9c@de.ibm.com","name":"Heiko Carstens"},"message":"s390/spinlock: avoid yield to non existent cpu\n\narch_spin_lock_wait_flags() checks if a spinlock is not held before\ntrying a compare and swap instruction. If the lock is unlocked it\ntries the compare and swap instruction, however if a different cpu\ngrabbed the lock in the meantime the instruction will fail as\nexpected.\n\nSubsequently the arch_spin_lock_wait_flags() incorrectly tries to\nfigure out if the cpu that holds the lock is running. However it is\nusing the wrong cpu number for this (-1) and then will also yield the\ncurrent cpu to the wrong cpu.\n\nFix this by adding a missing continue statement.\n\nFixes: 470ada6b1a1d (\"s390/spinlock: refactor arch_spin_lock_wait[_flags]\")\nSigned-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>\nAcked-by: Martin Schwidefsky <schwidefsky@de.ibm.com>","distinct":true,"url":"https://api.github.com/repos/moontide/linux/commits/8497695243f70fd19ed6cf28b63584f1b608b5f9"},{"sha":"2fd92273646abad21766ddfbfa00b6f927362308","author":{"email":"8dcf0f69152f32f23184f83357a3731522e56b9c@de.ibm.com","name":"Heiko Carstens"},"message":"s390: add CPU_BIG_ENDIAN config option\n\nMake sure that s390 appears to be a big endian machine by defining\nthis config option.\n\nWithout this s390 appears to be little endian as seen by e.g. the\nrecordmount script: \"perl ./scripts/recordmcount.pl \"s390\" \"little\"\n\"64\"\"\nThis has no practical impact within the script since the endian\nvariable is only evaluated for mips. However there are already a\ncouple of common code places which evaluate this config option. None\nof them is relevant for s390 currently though.\n\nTo avoid any issues in the future (and fix the recordmcount oddity)\nadd the new config option.\n\nSigned-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>\nSigned-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>","distinct":true,"url":"https://api.github.com/repos/moontide/linux/commits/2fd92273646abad21766ddfbfa00b6f927362308"},{"sha":"95d0c4277c27520cabdc40646f5a2e507fcd315a","author":{"email":"69652caca27c8b940640ad396ab71f93cacec34f@linux-foundation.org","name":"Linus Torvalds"},"message":"Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux\n\nPull s390 fixes from Martin Schwidefsky:\n \"A couple of bug fixes\"\n\n* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:\n  s390: add CPU_BIG_ENDIAN config option\n  s390/spinlock: avoid yield to non existent cpu\n  s390/dcssblk: fix possible deadlock in remove vs. per-device attributes\n  s390/seccomp: include generic seccomp header file\n  s390/pci: add extra padding to function measurement block\n  s390/scm_blk: fix deadlock for requests != REQ_TYPE_FS","distinct":true,"url":"https://api.github.com/repos/moontide/linux/commits/95d0c4277c27520cabdc40646f5a2e507fcd315a"}]}