{"push_id":837577777,"size":262,"distinct_size":1,"ref":"refs/heads/squashed-arch","head":"ce5fbc12f25d1179209b7987d339bd5b8c6e52ed","before":"a5809ae5c8560be3ff955c60578ade3dd6dbf833","commits":[{"sha":"91e4921b5e8b189723916f616664f809d15f3025","author":{"email":"05c339d9f3779bdd0faff6d34f6b66b68983e570@tieto.com","name":"Marek Majtyka"},"message":"arm: KVM: Fix incorrect device to IPA mapping\n\ncommit ca09f02f122b2ecb0f5ddfc5fd47b29ed657d4fd upstream.\n\nA critical bug has been found in device memory stage1 translation for\nVMs with more then 4GB of address space. Once vm_pgoff size is smaller\nthen pa (which is true for LPAE case, u32 and u64 respectively) some\nmore significant bits of pa may be lost as a shift operation is performed\non u32 and later cast onto u64.\n\nExample: vm_pgoff(u32)=0x00210030, PAGE_SHIFT=12\n        expected pa(u64):   0x0000002010030000\n        produced pa(u64):   0x0000000010030000\n\nThe fix is to change the order of operations (casting first onto phys_addr_t\nand then shifting).\n\nReviewed-by: Marc Zyngier <marc.zyngier@arm.com>\n[maz: fixed changelog and patch formatting]\nSigned-off-by: Marek Majtyka <marek.majtyka@tieto.com>\nSigned-off-by: Marc Zyngier <marc.zyngier@arm.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/91e4921b5e8b189723916f616664f809d15f3025"},{"sha":"f9f83f3cfce00b9b862620f77b2809d13771a37b","author":{"email":"bdcdf23be75b976d8e1ad9f82e6b264941889f50@hotmail.com","name":"Wanpeng Li"},"message":"KVM: vmx: fix VPID is 0000H in non-root operation\n\ncommit 04bb92e4b4cf06a66889d37b892b78f926faa9d4 upstream.\n\nReference SDM 28.1:\n\nThe current VPID is 0000H in the following situations:\n- Outside VMX operation. (This includes operation in system-management\n  mode under the default treatment of SMIs and SMM with VMX operation;\n  see Section 34.14.)\n- In VMX root operation.\n- In VMX non-root operation when the “enable VPID” VM-execution control\n  is 0.\n\nThe VPID should never be 0000H in non-root operation when \"enable VPID\"\nVM-execution control is 1. However, commit 34a1cd60 (\"kvm: x86: vmx:\nmove some vmx setting from vmx_init() to hardware_setup()\") remove the\ncodes which reserve 0000H for VMX root operation.\n\nThis patch fix it by again reserving 0000H for VMX root operation.\n\nFixes: 34a1cd60d17f62c1f077c1478a6c2ca8c3d17af4\nReported-by: Wincy Van <fanwenyi0529@gmail.com>\nSigned-off-by: Wanpeng Li <wanpeng.li@hotmail.com>\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/f9f83f3cfce00b9b862620f77b2809d13771a37b"},{"sha":"0986ae9a1160edb74b0b75f591296f508e44f8e0","author":{"email":"808efd45667dbd241e4e026b5673172419ecb43e@redhat.com","name":"Jason Wang"},"message":"kvm: don't try to register to KVM_FAST_MMIO_BUS for non mmio eventfd\n\ncommit 8453fecbecae26edb3f278627376caab05d9a88d upstream.\n\nWe only want zero length mmio eventfd to be registered on\nKVM_FAST_MMIO_BUS. So check this explicitly when arg->len is zero to\nmake sure this.\n\nCc: Gleb Natapov <gleb@kernel.org>\nCc: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Jason Wang <jasowang@redhat.com>\nReviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/0986ae9a1160edb74b0b75f591296f508e44f8e0"},{"sha":"9efaf0e7a4c97320044a4fa43b411e269bb2a78f","author":{"email":"808efd45667dbd241e4e026b5673172419ecb43e@redhat.com","name":"Jason Wang"},"message":"kvm: fix zero length mmio searching\n\ncommit 8f4216c7d28976f7ec1b2bcbfa0a9f787133c45e upstream.\n\nCurrently, if we had a zero length mmio eventfd assigned on\nKVM_MMIO_BUS. It will never be found by kvm_io_bus_cmp() since it\nalways compares the kvm_io_range() with the length that guest\nwrote. This will cause e.g for vhost, kick will be trapped by qemu\nuserspace instead of vhost. Fixing this by using zero length if an\niodevice is zero length.\n\nCc: Gleb Natapov <gleb@kernel.org>\nCc: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Jason Wang <jasowang@redhat.com>\nReviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/9efaf0e7a4c97320044a4fa43b411e269bb2a78f"},{"sha":"141bdd6ab3f68dee0941979765a698e6a9971111","author":{"email":"808efd45667dbd241e4e026b5673172419ecb43e@redhat.com","name":"Jason Wang"},"message":"kvm: factor out core eventfd assign/deassign logic\n\ncommit 85da11ca587c8eb73993a1b503052391a73586f9 upstream.\n\nThis patch factors out core eventfd assign/deassign logic and leaves\nthe argument checking and bus index selection to callers.\n\nCc: Gleb Natapov <gleb@kernel.org>\nCc: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Jason Wang <jasowang@redhat.com>\nReviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/141bdd6ab3f68dee0941979765a698e6a9971111"},{"sha":"2ab32d6d34b15a6e058507ec387b3435774258ed","author":{"email":"808efd45667dbd241e4e026b5673172419ecb43e@redhat.com","name":"Jason Wang"},"message":"kvm: fix double free for fast mmio eventfd\n\ncommit eefd6b06b17c5478e7c24bea6f64beaa2c431ca6 upstream.\n\nWe register wildcard mmio eventfd on two buses, once for KVM_MMIO_BUS\nand once on KVM_FAST_MMIO_BUS but with a single iodev\ninstance. This will lead to an issue: kvm_io_bus_destroy() knows\nnothing about the devices on two buses pointing to a single dev. Which\nwill lead to double free[1] during exit. Fix this by allocating two\ninstances of iodevs then registering one on KVM_MMIO_BUS and another\non KVM_FAST_MMIO_BUS.\n\nCPU: 1 PID: 2894 Comm: qemu-system-x86 Not tainted 3.19.0-26-generic #28-Ubuntu\nHardware name: LENOVO 2356BG6/2356BG6, BIOS G7ET96WW (2.56 ) 09/12/2013\ntask: ffff88009ae0c4b0 ti: ffff88020e7f0000 task.ti: ffff88020e7f0000\nRIP: 0010:[<ffffffffc07e25d8>]  [<ffffffffc07e25d8>] ioeventfd_release+0x28/0x60 [kvm]\nRSP: 0018:ffff88020e7f3bc8  EFLAGS: 00010292\nRAX: dead000000200200 RBX: ffff8801ec19c900 RCX: 000000018200016d\nRDX: ffff8801ec19cf80 RSI: ffffea0008bf1d40 RDI: ffff8801ec19c900\nRBP: ffff88020e7f3bd8 R08: 000000002fc75a01 R09: 000000018200016d\nR10: ffffffffc07df6ae R11: ffff88022fc75a98 R12: ffff88021e7cc000\nR13: ffff88021e7cca48 R14: ffff88021e7cca50 R15: ffff8801ec19c880\nFS:  00007fc1ee3e6700(0000) GS:ffff88023e240000(0000) knlGS:0000000000000000\nCS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\nCR2: 00007f8f389d8000 CR3: 000000023dc13000 CR4: 00000000001427e0\nStack:\nffff88021e7cc000 0000000000000000 ffff88020e7f3be8 ffffffffc07e2622\nffff88020e7f3c38 ffffffffc07df69a ffff880232524160 ffff88020e792d80\n 0000000000000000 ffff880219b78c00 0000000000000008 ffff8802321686a8\nCall Trace:\n[<ffffffffc07e2622>] ioeventfd_destructor+0x12/0x20 [kvm]\n[<ffffffffc07df69a>] kvm_put_kvm+0xca/0x210 [kvm]\n[<ffffffffc07df818>] kvm_vcpu_release+0x18/0x20 [kvm]\n[<ffffffff811f69f7>] __fput+0xe7/0x250\n[<ffffffff811f6bae>] ____fput+0xe/0x10\n[<ffffffff81093f04>] task_work_run+0xd4/0xf0\n[<ffffffff81079358>] do_exit+0x368/0xa50\n[<ffffffff81082c8f>] ? recalc_sigpending+0x1f/0x60\n[<ffffffff81079ad5>] do_group_exit+0x45/0xb0\n[<ffffffff81085c71>] get_signal+0x291/0x750\n[<ffffffff810144d8>] do_signal+0x28/0xab0\n[<ffffffff810f3a3b>] ? do_futex+0xdb/0x5d0\n[<ffffffff810b7028>] ? __wake_up_locked_key+0x18/0x20\n[<ffffffff810f3fa6>] ? SyS_futex+0x76/0x170\n[<ffffffff81014fc9>] do_notify_resume+0x69/0xb0\n[<ffffffff817cb9af>] int_signal+0x12/0x17\nCode: 5d c3 90 0f 1f 44 00 00 55 48 89 e5 53 48 89 fb 48 83 ec 08 48 8b 7f 20 e8 06 d6 a5 c0 48 8b 43 08 48 8b 13 48 89 df 48 89 42 08 <48> 89 10 48 b8 00 01 10 00 00\n RIP  [<ffffffffc07e25d8>] ioeventfd_release+0x28/0x60 [kvm]\n RSP <ffff88020e7f3bc8>\n\nCc: Gleb Natapov <gleb@kernel.org>\nCc: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Jason Wang <jasowang@redhat.com>\nReviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/2ab32d6d34b15a6e058507ec387b3435774258ed"},{"sha":"9d7fc3585ec82c19b5265c903ad9ebb143adde2a","author":{"email":"a16cc0c82647c52d401177f8e50567df5499e36c@arm.com","name":"Marc Zyngier"},"message":"arm: KVM: Disable virtual timer even if the guest is not using it\n\ncommit 688bc577ac42ae3d07c889a1f0a72f0b23763d58 upstream.\n\nWhen running a guest with the architected timer disabled (with QEMU and\nthe kernel_irqchip=off option, for example), it is important to make\nsure the timer gets turned off. Otherwise, the guest may try to\nenable it anyway, leading to a screaming HW interrupt.\n\nThe fix is to unconditionally turn off the virtual timer on guest\nexit.\n\nSigned-off-by: Marc Zyngier <marc.zyngier@arm.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/9d7fc3585ec82c19b5265c903ad9ebb143adde2a"},{"sha":"6742cc7c113389eec23acbef066e14b6823f690c","author":{"email":"376726f239c919d31d97c9332191663ab16d47b5@redhat.com","name":"Igor Mammedov"},"message":"kvm: svm: reset mmu on VCPU reset\n\ncommit ebae871a509d3c24b32ff67af2671dadffc58770 upstream.\n\nWhen INIT/SIPI sequence is sent to VCPU which before that\nwas in use by OS, VMRUN might fail with:\n\n KVM: entry failed, hardware error 0xffffffff\n EAX=00000000 EBX=00000000 ECX=00000000 EDX=000006d3\n ESI=00000000 EDI=00000000 EBP=00000000 ESP=00000000\n EIP=00000000 EFL=00000002 [-------] CPL=0 II=0 A20=1 SMM=0 HLT=0\n ES =0000 00000000 0000ffff 00009300\n CS =9a00 0009a000 0000ffff 00009a00\n [...]\n CR0=60000010 CR2=b6f3e000 CR3=01942000 CR4=000007e0\n [...]\n EFER=0000000000000000\n\nwith corresponding SVM error:\n KVM: FAILED VMRUN WITH VMCB:\n [...]\n cpl:            0                efer:         0000000000001000\n cr0:            0000000080010010 cr2:          00007fd7fe85bf90\n cr3:            0000000187d0c000 cr4:          0000000000000020\n [...]\n\nWhat happens is that VCPU state right after offlinig:\nCR0: 0x80050033  EFER: 0xd01  CR4: 0x7e0\n  -> long mode with CR3 pointing to longmode page tables\n\nand when VCPU gets INIT/SIPI following transition happens\nCR0: 0 -> 0x60000010 EFER: 0x0  CR4: 0x7e0\n  -> paging disabled with stale CR3\n\nHowever SVM under the hood puts VCPU in Paged Real Mode*\nwhich effectively translates CR0 0x60000010 -> 80010010 after\n\n   svm_vcpu_reset()\n       -> init_vmcb()\n           -> kvm_set_cr0()\n               -> svm_set_cr0()\n\nbut from  kvm_set_cr0() perspective CR0: 0 -> 0x60000010\nonly caching bits are changed and\ncommit d81135a57aa6\n (\"KVM: x86: do not reset mmu if CR0.CD and CR0.NW are changed\")'\nregressed svm_vcpu_reset() which relied on MMU being reset.\n\nAs result VMRUN after svm_vcpu_reset() tries to run\nVCPU in Paged Real Mode with stale MMU context (longmode page tables),\nwhich causes some AMD CPUs** to bail out with VMEXIT_INVALID.\n\nFix issue by unconditionally resetting MMU context\nat init_vmcb() time.\n\n\t* AMD64 Architecture Programmerâ€™s Manual,\n\t    Volume 2: System Programming, rev: 3.25\n\t      15.19 Paged Real Mode\n\t** Opteron 1216\n\nSigned-off-by: Igor Mammedov <imammedo@redhat.com>\nFixes: d81135a57aa6\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/6742cc7c113389eec23acbef066e14b6823f690c"},{"sha":"76eaee10fb38ace8d4e0741cd27731bc11333fd8","author":{"email":"69d3ebcf5ee4e7f05a50dc23cd96655b730804b4@redhat.com","name":"Paolo Bonzini"},"message":"KVM: x86: trap AMD MSRs for the TSeg base and mask\n\ncommit 3afb1121800128aae9f5722e50097fcf1a9d4d88 upstream.\n\nThese have roughly the same purpose as the SMRR, which we do not need\nto implement in KVM.  However, Linux accesses MSR_K8_TSEG_ADDR at\nboot, which causes problems when running a Xen dom0 under KVM.\nJust return 0, meaning that processor protection of SMRAM is not\nin effect.\n\nReported-by: M A Young <m.a.young@durham.ac.uk>\nAcked-by: Borislav Petkov <bp@suse.de>\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/76eaee10fb38ace8d4e0741cd27731bc11333fd8"},{"sha":"1f3de4fb018fd8f8bff252128b1b8270f10f21e9","author":{"email":"9e65be74847981e55b2564b6266c57d86d3bac05@redhat.com","name":"Thomas Huth"},"message":"KVM: PPC: Book3S: Take the kvm->srcu lock in kvmppc_h_logical_ci_load/store()\n\ncommit 3eb4ee68254235e4f47bc0410538fcdaede39589 upstream.\n\nAccess to the kvm->buses (like with the kvm_io_bus_read() and -write()\nfunctions) has to be protected via the kvm->srcu lock.\nThe kvmppc_h_logical_ci_load() and -store() functions are missing\nthis lock so far, so let's add it there, too.\nThis fixes the problem that the kernel reports \"suspicious RCU usage\"\nwhen lock debugging is enabled.\n\nFixes: 99342cf8044420eebdf9297ca03a14cb6a7085a1\nSigned-off-by: Thomas Huth <thuth@redhat.com>\nSigned-off-by: Paul Mackerras <paulus@samba.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/1f3de4fb018fd8f8bff252128b1b8270f10f21e9"},{"sha":"eec2b28cfed52a1154ee6b8577bc1464c03b0838","author":{"email":"c13571dbffa0eb89c7f8eebdce482897b0f5a685@linux.vnet.ibm.com","name":"Gautham R. Shenoy"},"message":"KVM: PPC: Book3S HV: Pass the correct trap argument to kvmhv_commence_exit\n\ncommit 7e022e717f54897e396504306d0c9b61452adf4e upstream.\n\nIn guest_exit_cont we call kvmhv_commence_exit which expects the trap\nnumber as the argument. However r3 doesn't contain the trap number at\nthis point and as a result we would be calling the function with a\nspurious trap number.\n\nFix this by copying r12 into r3 before calling kvmhv_commence_exit as\nr12 contains the trap number.\n\nFixes: eddb60fb1443\nSigned-off-by: Gautham R. Shenoy <ego@linux.vnet.ibm.com>\nSigned-off-by: Paul Mackerras <paulus@samba.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/eec2b28cfed52a1154ee6b8577bc1464c03b0838"},{"sha":"98eee9987abe51a260ad8b521c33205ce8ea0028","author":{"email":"69d3ebcf5ee4e7f05a50dc23cd96655b730804b4@redhat.com","name":"Paolo Bonzini"},"message":"Revert \"KVM: x86: apply guest MTRR virtualization on host reserved pages\"\n\ncommit 606decd67049217684e3cb5a54104d51ddd4ef35 upstream.\n\nThis reverts commit fd717f11015f673487ffc826e59b2bad69d20fe5.\nIt was reported to cause Machine Check Exceptions (bug 104091).\n\nReported-by: harn-solo@gmx.de\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/98eee9987abe51a260ad8b521c33205ce8ea0028"},{"sha":"f943aa539655aa7105c0737791e39d09c5d9bb59","author":{"email":"69d3ebcf5ee4e7f05a50dc23cd96655b730804b4@redhat.com","name":"Paolo Bonzini"},"message":"Revert \"KVM: SVM: use NPT page attributes\"\n\ncommit fc07e76ac7ffa3afd621a1c3858a503386a14281 upstream.\n\nThis reverts commit 3c2e7f7de3240216042b61073803b61b9b3cfb22.\nInitializing the mapping from MTRR to PAT values was reported to\nfail nondeterministically, and it also caused extremely slow boot\n(due to caching getting disabled---bug 103321) with assigned devices.\n\nReported-by: Markus Trippelsdorf <markus@trippelsdorf.de>\nReported-by: Sebastian Schuette <dracon@ewetel.net>\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/f943aa539655aa7105c0737791e39d09c5d9bb59"},{"sha":"1ac987c5e08c42111fc8b81588cbf20a22c2e5bf","author":{"email":"69d3ebcf5ee4e7f05a50dc23cd96655b730804b4@redhat.com","name":"Paolo Bonzini"},"message":"Revert \"KVM: SVM: Sync g_pat with guest-written PAT value\"\n\ncommit 625422f60c55bbc368b8568ff925770b36bfc189 upstream.\n\nThis reverts commit e098223b789b4a618dacd79e5e0dad4a9d5018d1,\nwhich has a dependency on other commits being reverted.\n\nSigned-off-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/1ac987c5e08c42111fc8b81588cbf20a22c2e5bf"},{"sha":"d6402e4ecf0d9a3ec9ceee9d218dcc7605611df7","author":{"email":"33837adfb53316eae44aad04041e1240088d76fd@linaro.org","name":"John Stultz"},"message":"time: Fix timekeeping_freqadjust()'s incorrect use of abs() instead of abs64()\n\ncommit 2619d7e9c92d524cb155ec89fd72875321512e5b upstream.\n\nThe internal clocksteering done for fine-grained error\ncorrection uses a logarithmic approximation, so any time\nadjtimex() adjusts the clock steering, timekeeping_freqadjust()\nquickly approximates the correct clock frequency over a series\nof ticks.\n\nUnfortunately, the logic in timekeeping_freqadjust(), introduced\nin commit:\n\n  dc491596f639 (\"timekeeping: Rework frequency adjustments to work better w/ nohz\")\n\nused the abs() function with a s64 error value to calculate the\nsize of the approximated adjustment to be made.\n\nPer include/linux/kernel.h:\n\n  \"abs() should not be used for 64-bit types (s64, u64, long long) - use abs64()\".\n\nThus on 32-bit platforms, this resulted in the clocksteering to\ntake a quite dampended random walk trying to converge on the\nproper frequency, which caused the adjustments to be made much\nslower then intended (most easily observed when large\nadjustments are made).\n\nThis patch fixes the issue by using abs64() instead.\n\nReported-by: Nuno Gonçalves <nunojpg@gmail.com>\nTested-by: Nuno Goncalves <nunojpg@gmail.com>\nSigned-off-by: John Stultz <john.stultz@linaro.org>\nCc: Linus Torvalds <torvalds@linux-foundation.org>\nCc: Miroslav Lichvar <mlichvar@redhat.com>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: Prarit Bhargava <prarit@redhat.com>\nCc: Richard Cochran <richardcochran@gmail.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nLink: http://lkml.kernel.org/r/1441840051-20244-1-git-send-email-john.stultz@linaro.org\nSigned-off-by: Ingo Molnar <mingo@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/d6402e4ecf0d9a3ec9ceee9d218dcc7605611df7"},{"sha":"0df8a7a1a277c20fa8e55afbdbdacd7eb7c2aed4","author":{"email":"b7d524d2f5cc5aebadb6b92b08d3ab26911cde33@redhat.com","name":"Andy Grover"},"message":"target/iscsi: Fix np_ip bracket issue by removing np_ip\n\ncommit 76c28f1fcfeb42b47f798fe498351ee1d60086ae upstream.\n\nRevert commit 1997e6259, which causes double brackets on ipv6\ninaddr_any addresses.\n\nSince we have np_sockaddr, if we need a textual representation we can\nuse \"%pISc\".\n\nChange iscsit_add_network_portal() and iscsit_add_np() signatures to remove\n*ip_str parameter.\n\nFix and extend some comments earlier in the function.\n\nTested to work for :: and ::1 via iscsiadm, previously :: failed, see\nhttps://bugzilla.redhat.com/show_bug.cgi?id=1249107 .\n\nSigned-off-by: Andy Grover <agrover@redhat.com>\nSigned-off-by: Nicholas Bellinger <nab@linux-iscsi.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/0df8a7a1a277c20fa8e55afbdbdacd7eb7c2aed4"},{"sha":"4a248398eb8fab3b85bda9ba59a7834ea124a367","author":{"email":"829500b200af6c2a0eca4dfd5c388e6b8fbe8dc6@suse.com","name":"Michal Hocko"},"message":"scsi: fix scsi_error_handler vs. scsi_host_dev_release race\n\ncommit 537b604c8b3aa8b96fe35f87dd085816552e294c upstream.\n\nb9d5c6b7ef57 (\"[SCSI] cleanup setting task state in\nscsi_error_handler()\") has introduced a race between scsi_error_handler\nand scsi_host_dev_release resulting in the hang when the device goes\naway because scsi_error_handler might miss a wake up:\n\nCPU0\t\t\t\t\tCPU1\nscsi_error_handler\t\t\tscsi_host_dev_release\n  \t\t\t\t\t  kthread_stop()\n  kthread_should_stop()\n    test_bit(KTHREAD_SHOULD_STOP)\n\t\t\t\t\t    set_bit(KTHREAD_SHOULD_STOP)\n\t\t\t\t\t    wake_up_process()\n\t\t\t\t\t    wait_for_completion()\n\n  set_current_state(TASK_INTERRUPTIBLE)\n  schedule()\n\nThe most straightforward solution seems to be to invert the ordering of\nthe set_current_state and kthread_should_stop.\n\nThe issue has been noticed during reboot test on a 3.0 based kernel but\nthe current code seems to be affected in the same way.\n\n[jejb: additional comment added]\nReported-and-debugged-by: Mike Mayer <Mike.Meyer@teradata.com>\nSigned-off-by: Michal Hocko <mhocko@suse.com>\nReviewed-by: Dan Williams <dan.j.williams@intel.com>\nReviewed-by: Hannes Reinecke <hare@suse.de>\nSigned-off-by: James Bottomley <JBottomley@Odin.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/4a248398eb8fab3b85bda9ba59a7834ea124a367"},{"sha":"a361b8fa5e1b7bf1dd05b3a68f133433ea945a77","author":{"email":"978acd1567d5598152161fdf8bf3ca568f950c9b@linux-iscsi.org","name":"Nicholas Bellinger"},"message":"target: Attach EXTENDED_COPY local I/O descriptors to xcopy_pt_sess\n\ncommit 4416f89b8cfcb794d040fc3b68e5fb159b7d8d02 upstream.\n\nThis patch is a >= v4.1 regression bug-fix where control CDB\nemulation logic in commit 38b57f82 now expects a se_cmd->se_sess\npointer to exist when determining T10-PI support is to be exposed\nfor initiator host ports.\n\nTo address this bug, go ahead and add locally generated se_cmd\ndescriptors for copy-offload block-copy to it's own stand-alone\nse_session nexus, while the parent EXTENDED_COPY se_cmd descriptor\nremains associated with it's originating se_cmd->se_sess nexus.\n\nNote a valid se_cmd->se_sess is also required for future support\nof WRITE_INSERT and READ_STRIP software emulation when submitting\nbackend I/O to se_device that exposes T10-PI suport.\n\nReported-by: Alex Gorbachev <ag@iss-integration.com>\nTested-by: Alex Gorbachev <ag@iss-integration.com>\nCc: \"Martin K. Petersen\" <martin.petersen@oracle.com>\nCc: Hannes Reinecke <hare@suse.de>\nCc: Christoph Hellwig <hch@lst.de>\nCc: Doug Gilbert <dgilbert@interlog.com>\nSigned-off-by: Nicholas Bellinger <nab@linux-iscsi.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/a361b8fa5e1b7bf1dd05b3a68f133433ea945a77"},{"sha":"13d7eec73c169367ba33d8a08882ff42cb62d2a3","author":{"email":"978acd1567d5598152161fdf8bf3ca568f950c9b@linux-iscsi.org","name":"Nicholas Bellinger"},"message":"target: Fix PR registration + APTPL RCU conversion regression\n\ncommit 3ccd6e83df8a0d4a664edeecc453c4fa046395fb upstream.\n\nThis patch fixes a v4.2+ regression introduced by commit 79dc9c9e86\nwhere lookup of t10_pr_registration->pr_reg_deve and associated\n->pr_kref get was missing from __core_scsi3_do_alloc_registration(),\nwhich is responsible for setting DEF_PR_REG_ACTIVE.\n\nThis would result in REGISTER operations completing successfully,\nbut subsequent core_scsi3_pr_seq_non_holder() checking would fail\nwith !DEF_PR_REG_ACTIVE -> RESERVATION CONFLICT status.\n\nUpdate __core_scsi3_add_registration() to drop ->pr_kref reference\nafter registration and any optional ALL_TG_PT=1 processing has\ncompleted.  Update core_scsi3_decode_spec_i_port() to release\nthe new parent local_pr_reg->pr_kref as well.\n\nAlso, update __core_scsi3_check_aptpl_registration() to perform\nthe same target_nacl_find_deve() lookup + ->pr_kref get, now that\n__core_scsi3_add_registration() expects to drop the reference.\n\nFinally, since there are cases when se_dev_entry->se_lun_acl can\nstill be dereferenced in core_scsi3_lunacl_undepend_item() while\nholding ->pr_kref, go ahead and move explicit rcu_assign_pointer()\nNULL assignments within core_disable_device_list_for_node() until\nafter orig->pr_comp finishes.\n\nReported-by: Scott L. Lykens <scott@lykens.org>\nTested-by: Scott L. Lykens <scott@lykens.org>\nCc: Christoph Hellwig <hch@lst.de>\nCc: Hannes Reinecke <hare@suse.de>\nCc: Lee Duncan <lduncan@suse.com>\nSigned-off-by: Nicholas Bellinger <nab@linux-iscsi.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/13d7eec73c169367ba33d8a08882ff42cb62d2a3"},{"sha":"59eb449741154256343fb15f137c26ce7f756759","author":{"email":"274d60a4a21eeeaf59b30c36f9b7b6d5a585a612@mellanox.com","name":"Jenny Derzhavetz"},"message":"iser-target: remove command with state ISTATE_REMOVE\n\ncommit a4c15cd957cbd728f685645de7a150df5912591a upstream.\n\nAs documented in iscsit_sequence_cmd:\n/*\n * Existing callers for iscsit_sequence_cmd() will silently\n * ignore commands with CMDSN_LOWER_THAN_EXP, so force this\n * return for CMDSN_MAXCMDSN_OVERRUN as well..\n */\n\nWe need to silently finish a command when it's in ISTATE_REMOVE.\nThis fixes an teardown hang we were seeing where a mis-behaved\ninitiator (triggered by allocation error injections) sent us a\ncmdsn which was lower than expected.\n\nSigned-off-by: Jenny Derzhavetz <jennyf@mellanox.com>\nSigned-off-by: Sagi Grimberg <sagig@mellanox.com>\nSigned-off-by: Nicholas Bellinger <nab@linux-iscsi.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/zen-kernel/zen-kernel/commits/59eb449741154256343fb15f137c26ce7f756759"}]}