[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
** Tags added: triage-g -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Zesty: In Progress Status in linux source package in Artful: In Progress Bug description: == SRU Justification == POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The fix is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is commit 5080332c2c89 from linux-next which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. Commit ccd3cd361341 is needed as a prereq for Artful. Commits a3d96f70c147 and ccd3cd361341 are needed as prereqs for Zesty. == Fixes == a3d96f70c147 ("powerpc/64s: Fix system reset vs general interrupt reentrancy") ccd3cd361341 ("powerpc/mce: Move 64-bit machine check code into mce.c") 5080332c2c89 ("powerpc/64s: Add workaround for P9 vector CI load issue") == Regression Potential == These commits are specific to powerpc. They required some back porting but have been tested by IBM. -- Problem Description -- When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
Thanks for the update, Mauricio. It would be great if you could re-submit the backports you have. -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Zesty: In Progress Status in linux source package in Artful: In Progress Bug description: == SRU Justification == POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The fix is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is commit 5080332c2c89 from linux-next which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. Commit ccd3cd361341 is needed as a prereq for Artful. Commits a3d96f70c147 and ccd3cd361341 are needed as prereqs for Zesty. == Fixes == a3d96f70c147 ("powerpc/64s: Fix system reset vs general interrupt reentrancy") ccd3cd361341 ("powerpc/mce: Move 64-bit machine check code into mce.c") 5080332c2c89 ("powerpc/64s: Add workaround for P9 vector CI load issue") == Regression Potential == These commits are specific to powerpc. They required some back porting but have been tested by IBM. -- Problem Description -- When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
Joseph, Again, thanks. I had a few suggestions on the submitted backports, and observed a subtle problem in one of them. If you prefer, I can submit the ones I have here, if that saves you some cycles. cheers, Mauricio -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Zesty: In Progress Status in linux source package in Artful: In Progress Bug description: == SRU Justification == POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The fix is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is commit 5080332c2c89 from linux-next which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. Commit ccd3cd361341 is needed as a prereq for Artful. Commits a3d96f70c147 and ccd3cd361341 are needed as prereqs for Zesty. == Fixes == a3d96f70c147 ("powerpc/64s: Fix system reset vs general interrupt reentrancy") ccd3cd361341 ("powerpc/mce: Move 64-bit machine check code into mce.c") 5080332c2c89 ("powerpc/64s: Add workaround for P9 vector CI load issue") == Regression Potential == These commits are specific to powerpc. They required some back porting but have been tested by IBM. -- Problem Description -- When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
SRU requests submitted: Artful: https://lists.ubuntu.com/archives/kernel-team/2017-October/087488.html Zesty: https://lists.ubuntu.com/archives/kernel-team/2017-October/087491.html -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Zesty: In Progress Status in linux source package in Artful: In Progress Bug description: == SRU Justification == POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The fix is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is commit 5080332c2c89 from linux-next which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. Commit ccd3cd361341 is needed as a prereq for Artful. Commits a3d96f70c147 and ccd3cd361341 are needed as prereqs for Zesty. == Fixes == a3d96f70c147 ("powerpc/64s: Fix system reset vs general interrupt reentrancy") ccd3cd361341 ("powerpc/mce: Move 64-bit machine check code into mce.c") 5080332c2c89 ("powerpc/64s: Add workaround for P9 vector CI load issue") == Regression Potential == These commits are specific to powerpc. They required some back porting but have been tested by IBM. -- Problem Description -- When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
** Description changed: - -- Problem Description -- + + == SRU Justification == POWER9 DD2.1 and earlier has an issue where some cache inhibited - vector load will return bad data. The workaround is two part, one + vector load will return bad data. The fix is two part, one firmware/microcode part triggers HMI interrupts when hitting such - loads, the other part is this patch which then emulates the - instructions in Linux. + loads, the other part is commit 5080332c2c89 from linux-next which then + emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. + + Commit ccd3cd361341 is needed as a prereq for Artful. + Commits a3d96f70c147 and ccd3cd361341 are needed as prereqs for Zesty. + + == Fixes == + a3d96f70c147 ("powerpc/64s: Fix system reset vs general interrupt reentrancy") + ccd3cd361341 ("powerpc/mce: Move 64-bit machine check code into mce.c") + 5080332c2c89 ("powerpc/64s: Add workaround for P9 vector CI load issue") + + == Regression Potential == + These commits are specific to powerpc. They required some back porting but + have been tested by IBM. + + + -- Problem Description -- When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Zesty: In Progress Status in linux source package in Artful: In Progress Bug description: == SRU Justification == POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The fix is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is commit 5080332c2c89 from linux-next which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. Commit ccd3cd361341 is needed as a prereq for Artful. Commits a3d96f70c147 and ccd3cd361341 are needed as prereqs for Zesty. == Fixes == a3d96f70c147 ("powerpc/64s: Fix system reset vs general interrupt reentrancy") ccd3cd361341 ("powerpc/mce: Move 64-bit machine check code into mce.c") 5080332c2c89 ("powerpc/64s: Add workaround for P9 vector CI load issue") == Regression Potential == These commits are specific to powerpc. They required some back porting but have been tested by IBM. -- Problem Description -- When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
** Changed in: linux (Ubuntu Zesty) Status: Triaged => In Progress ** Changed in: linux (Ubuntu Zesty) Assignee: (unassigned) => Joseph Salisbury (jsalisbury) -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Zesty: In Progress Status in linux source package in Artful: In Progress Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
Hi @jsalisbury > I also built a 4.10 based test kernel(16.04.3). [snip] Thanks. > Can you test this kernel and see if it resolves this bug? Yes, it does. I have verified both the patched one (4.10.0-35.39~lp1721070), which passes, and its original version (4.10.0-35.39), which fails; so the patches are OK. Similarly to @breno-leitao, the main problem is resolved (and that's really good enough for now), and a few test-cases report failures, which can likely be resolved with some other apparently unrelated commits which we are digging, and would like to submit later on. cheers, Mauricio -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Zesty: Triaged Status in linux source package in Artful: In Progress Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
Joseph, Quick update on this bug. I tested your artful test and: a) It didn't cause any regression. I tested on two P9 with different processor level and P8 and the code runs fine. b) It seems to be fixing the issue that is proposed to fix. c) There are some test cases that are still failing, and might require extra and we will might request those in another bug. -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Zesty: Triaged Status in linux source package in Artful: In Progress Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
I also built a 4.10 based test kernel(16.04.3). It required commit ccd3cd361 and a3d96f70c1 as prerequisites. The test kernel can be downloaded from: http://kernel.ubuntu.com/~jsalisbury/lp1721070/zesty Can you test this kernel and see if it resolves this bug? -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Zesty: Triaged Status in linux source package in Artful: In Progress Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
The commits are in the master branch: 0f5d387 powerpc/64s: Add workaround for P9 vector CI load issue d401742 powerpc/mce: Move 64-bit machine check code into mce.c 1e3dad9 UBUNTU: Ubuntu-4.13.0-12.13 1f46464 UBUNTU: [Config] CONFIG_I2C_XLP9XX=m I'll check to ensure I tar'd up the right tree. ** Also affects: linux (Ubuntu Zesty) Importance: Undecided Status: New ** Changed in: linux (Ubuntu Zesty) Status: New => Triaged ** Changed in: linux (Ubuntu Zesty) Importance: Undecided => Critical -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Zesty: Triaged Status in linux source package in Artful: In Progress Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
I do see them in that tar file. Can you run: tar -xvf lp1721070-source.tar cd ubuntu-artful/ git log --oneline -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Zesty: Triaged Status in linux source package in Artful: In Progress Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
Joseph, Which branch did you use? I can't find the commits at master or master- next: [root@ltc-wspoon9 ubuntu-artful]# git log --oneline js-master | head -n 20 1e3dad9 UBUNTU: Ubuntu-4.13.0-12.13 1f46464 UBUNTU: [Config] CONFIG_I2C_XLP9XX=m 39ae1ca perf/x86: Fix data source decoding for Skylake f473bf9 perf/x86: Move Nehalem PEBS code to flag a8725d5 UBUNTU: [Config] CONFIG_DRM_VBOXVIDEO=n 30d9497 UBUNTU: [Config] Disable CONFIG_IPMMU_VMSA on arm64 806240e scsi: cxlflash: Fix vlun resize failure in the shrink path 69f4910 fs: aio: fix the increment of aio-nr and counting against aio-max-nr 675f3cd UBUNTU: [Config] CONFIG_PINCTRL_DENVERTON=m ebaccf7 libnvdimm, btt: rework error clearing 4bda159 libnvdimm: fix potential deadlock while clearing errors adfc036 libnvdimm, btt: cache sector_size in arena_info b79a931 libnvdimm, btt: ensure that flags were also unchanged during a map_read 45f43c2 libnvdimm, btt: refactor map entry operations with macros 36a7c4e libnvdimm, btt: fix a missed NVDIMM_IO_ATOMIC case in the write path 3f6cafd dax: move all DAX radix tree defs to fs/dax.c 52522e9 dax: remove DAX code from page_cache_tree_insert() 54585e3 dax: use common 4k zero page for dax mmap reads 7b6956d dax: relocate some dax functions a9342b2 mm: add vm_insert_mixed_mkwrite() [root@ltc-wspoon9 ubuntu-artful]# git log --oneline js-master-next | head -n 20 f30326f4 UBUNTU: Start new release ba39ad1 UBUNTU: Ubuntu-4.13.0-15.16 655913c Revert "powerpc/powernv: Add IMC OPAL APIs" 4bab524 Revert "powerpc/powernv: Detect and create IMC device" 192a8d2 Revert "powerpc/perf: Add nest IMC PMU support" 1b9f175 Revert "powerpc/powernv: Add support for powercap framework" 386a56a Revert "powerpc/powernv: Add support to set power-shifting-ratio" 8dc96fd Revert "powerpc/powernv: Enable PCI peer-to-peer" fdea4c4 Revert "powerpc/powernv/vas: Define macros, register fields and structures" 258fa77 Revert "powerpc/powernv: Move GET_FIELD/SET_FIELD to vas.h" efb0381 Revert "powerpc/powernv/vas: Define vas_init() and vas_exit()" 18c0c36 Revert "powerpc/powernv/vas: Define helpers to access MMIO regions" b717098 Revert "powerpc/powernv/vas: Define helpers to init window context" cef2434 Revert "powerpc/powernv/vas: Define helpers to alloc/free windows" 8d6ed22 Revert "powerpc/powernv/vas: Define vas_rx_win_open() interface" 15b835b Revert "powerpc/powernv/vas: Define vas_win_close() interface" 47073e3 Revert "powerpc/powernv/vas: Define vas_tx_win_open()" 5afb9ea Revert "powerpc/powernv/vas: Define copy/paste interfaces" 9cf4ce8 Revert "UBUNTU: [Config] CONFIG_PPC_VAS=y" b22a1be Revert "crypto/nx: Rename nx842_powernv_function as icswx function" -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Artful: In Progress Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
The source code for the kernel posted in comment #3 is the ubuntu-artful repo with commits ccd3cd361 and 5080332c2c89 on top. The artful repo is available at: git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/artful Both commits were clean picks and did not need back porting. I also tar'd up the source I used and put it here as the file name lp1721070-source.tar: http://kernel.ubuntu.com/~jsalisbury/lp1721070/ -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Artful: In Progress Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
Joseph, Do you have a kernel source for this package that I can take a deeper look? -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Artful: In Progress Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
** Changed in: ubuntu-power-systems Status: Triaged => In Progress -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: In Progress Status in linux package in Ubuntu: In Progress Status in linux source package in Artful: In Progress Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
I built a 17.10(Artful) test kernel with a pick of commit 5080332c2c89. It required commit ccd3cd361 as a prerequisite. The test kernel can be downloaded from: http://kernel.ubuntu.com/~jsalisbury/lp1721070/artful/ Can you test this kernel and see if it resolves this bug? Also, is this patch needed in 17.04/16.04.3(4.10 kernels)? If so, we will need to identify all the needed prereq commits. ** Changed in: linux (Ubuntu Artful) Assignee: Ubuntu on IBM Power Systems Bug Triage (ubuntu-power-triage) => Joseph Salisbury (jsalisbury) ** Changed in: linux (Ubuntu Artful) Status: Triaged => In Progress -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: Triaged Status in linux package in Ubuntu: In Progress Status in linux source package in Artful: In Progress Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
** No longer affects: linux (Ubuntu Zesty) -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: Triaged Status in linux package in Ubuntu: Triaged Status in linux source package in Artful: Triaged Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
** Changed in: ubuntu-power-systems Status: New => Triaged -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: Triaged Status in linux package in Ubuntu: Triaged Status in linux source package in Zesty: Triaged Status in linux source package in Artful: Triaged Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
** Changed in: linux (Ubuntu Zesty) Importance: Medium => Critical ** Changed in: linux (Ubuntu Artful) Importance: Medium => Critical -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: New Status in linux package in Ubuntu: Triaged Status in linux source package in Zesty: Triaged Status in linux source package in Artful: Triaged Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
** Also affects: ubuntu-power-systems Importance: Undecided Status: New ** Changed in: ubuntu-power-systems Importance: Undecided => Critical ** Changed in: ubuntu-power-systems Assignee: (unassigned) => Canonical Kernel Team (canonical-kernel-team) -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in The Ubuntu-power-systems project: New Status in linux package in Ubuntu: Triaged Status in linux source package in Zesty: Triaged Status in linux source package in Artful: Triaged Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp
[Kernel-packages] [Bug 1721070] Re: powerpc/64s: Add workaround for P9 vector CI load issuenext
** Changed in: linux (Ubuntu) Status: New => Triaged ** Changed in: linux (Ubuntu) Importance: Undecided => Medium ** Also affects: linux (Ubuntu Artful) Importance: Medium Assignee: Ubuntu on IBM Power Systems Bug Triage (ubuntu-power-triage) Status: Triaged ** Also affects: linux (Ubuntu Zesty) Importance: Undecided Status: New ** Changed in: linux (Ubuntu Zesty) Status: New => Triaged ** Changed in: linux (Ubuntu Zesty) Importance: Undecided => Medium ** Tags added: kernel-da-key -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1721070 Title: powerpc/64s: Add workaround for P9 vector CI load issuenext Status in linux package in Ubuntu: Triaged Status in linux source package in Zesty: Triaged Status in linux source package in Artful: Triaged Bug description: -- Problem Description -- POWER9 DD2.1 and earlier has an issue where some cache inhibited vector load will return bad data. The workaround is two part, one firmware/microcode part triggers HMI interrupts when hitting such loads, the other part is this patch which then emulates the instructions in Linux. The affected instructions are limited to lxvd2x, lxvw4x, lxvb16x and lxvh8x. When an instruction triggers the HMI, all threads in the core will be sent to the HMI handler, not just the one running the vector load. In general, these spurious HMIs are detected by the emulation code and we just return back to the running process. Unfortunately, if a spurious interrupt occurs on a vector load that's to normal memory we have no way to detect that it's spurious (unless we walk the page tables, which is very expensive). In this case we emulate the load but we need do so using a vector load itself to ensure 128bit atomicity is preserved. Some additional debugfs emulated instruction counters are added also. In order to solve this bug, we need to cherry pick the following patch https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?h=next=5080332c2c893118dbc18755f35c8b0131cf0fc4 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1721070/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp