[Backport] Crypto VMX Fixes

Bug #1841984 reported by bugproxy
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
The Ubuntu-power-systems project
Fix Released
High
Frank Heimes
linux (Ubuntu)
Fix Released
High
Canonical Kernel Team

Bug Description

Ubuntu Disco is missing the fix for "5c380d623ed3 - crypto: vmx - Add support for VMS instructions by ASM (4 years, 5 months ago) <Leonidas S. Barbosa>" ... which is fixed by 'crypto: vmx - fix copy-paste error in CTR mode', it fixes a couple of incorrect branch targets, and usage of an incorrect vector assembly instruction.

The others two patches ("crypto: vmx - CTR: always increment IV as quadword ", "crypto: vmx - ghash: do nosimd fallback manually ") fixes for ghash replaces the fallback mechanism that is used on powerpc an operation is required to operate in interrupt context.

Not having these patches might lead to data integrity issues.

patches
crypto: vmx - fix copy-paste error in CTR mode
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=dcf7b48212c0fab7df69e84fab22d6cb7c8c0fb9

crypto: vmx - CTR: always increment IV as quadword
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=009b30ac7444c17fae34c4f435ebce8e8e2b3250

crypto: vmx - ghash: do nosimd fallback manually
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=357d065a44cdd77ed5ff35155a989f2a763e96ef

Revision history for this message
bugproxy (bugproxy) wrote : Backport of "crypto: vmx - ghash: do nosimd fallback manually"

Default Comment by Bridge

tags: added: architecture-ppc64le bugnameltc-177980 severity-high targetmilestone-inin1904
Changed in ubuntu:
assignee: nobody → Ubuntu on IBM Power Systems Bug Triage (ubuntu-power-triage)
affects: ubuntu → linux (Ubuntu)
Revision history for this message
Frank Heimes (fheimes) wrote :

This topic was today also discussed here:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1841488/comments/5
With this ticket opened against disco (still in service, compared to LP 1841488 which is about cosmic, that's no longer in service) I suggest that we close LP 1841488 (set to Invalid) and work on these patches based on this ticket (LP 1841984).

Nevertheless, the disco master-next tree already includes all patches (they probably came is via a stable upstream release update):

$ git log --oneline | grep -m 1 "fix copy-paste error in CTR mode"
6cef65e crypto: vmx - fix copy-paste error in CTR mode

$ git log --oneline | grep -m 1 "always increment IV as quadword"
b5df7b3 crypto: vmx - CTR: always increment IV as quadword

$ git log --oneline | grep -m 1 "do nosimd fallback manually"
c438f2b crypto: vmx - ghash: do nosimd fallback manually

(
$ git log --oneline | grep -m 1 "Add support for VMS instructions by ASM"
5c380d6 crypto: vmx - Add support for VMS instructions by ASM
)

(Notice that disco master-next ID hashes might be different to upstream hashes)

Hence this is already in progress and I suggest that we just wait for the next and upcoming disco/19.10 kernel to land in proposed, test the proposed kernel to be sure that these commit IDs really solve the problem, and close this LP once the kernel got rolled out to the main pocket.

Changed in ubuntu-power-systems:
status: New → In Progress
Changed in linux (Ubuntu):
status: New → In Progress
Changed in ubuntu-power-systems:
importance: Undecided → High
assignee: nobody → Frank Heimes (frank-heimes)
Revision history for this message
Frank Heimes (fheimes) wrote :

An updated disco master-next tree now shows the following:
$ git log --oneline | grep -m 1 "do nosimd fallback manually"
ccfd9be crypto: vmx - ghash: do nosimd fallback manually
$ git describe --tags --contains ccfd9be
Ubuntu-5.0.0-26.27~34
$ git log --oneline | grep -m 1 "always increment IV as quadword"
b5df7b3 crypto: vmx - CTR: always increment IV as quadword
$ git describe --tags --contains b5df7b3
Ubuntu-5.0.0-26.27~394
$ git log --oneline | grep -m 1 "fix copy-paste error in CTR mode"
6cef65e crypto: vmx - fix copy-paste error in CTR mode
$ git describe --tags --contains 6cef65e
Ubuntu-5.0.0-24.25~116

That kernel "Ubuntu-5.0.0-26" incl. everything needed and 5.0.0.27 is in disco proposed:
 linux-generic | 5.0.0.27.28 | disco-proposed | s390x

Hence, would you mind re-trying with the latest disco-proposed kernel?

Changed in ubuntu-power-systems:
status: In Progress → Fix Committed
Changed in linux (Ubuntu):
status: In Progress → Fix Committed
Manoj Iyer (manjo)
Changed in linux (Ubuntu):
assignee: Ubuntu on IBM Power Systems Bug Triage (ubuntu-power-triage) → Canonical Kernel Team (canonical-kernel-team)
importance: Undecided → High
Revision history for this message
Andrew Cloke (andrew-cloke) wrote :

Marking as "Fix Committed" as this was picked up with the latest 5.0 stable update sync.

Revision history for this message
Frank Heimes (fheimes) wrote :

Patches landed in between in disco release pocket - changing to Fix Released.

Changed in linux (Ubuntu):
status: Fix Committed → Fix Released
Changed in ubuntu-power-systems:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.