Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
KVM: s390: gaccess: fix real-space designation asce handling for gmap…
… shadows For real-space designation asces the asce origin part is only a token. The asce token origin must not be used to generate an effective address for storage references. This however is erroneously done within kvm_s390_shadow_tables(). Furthermore within the same function the wrong parts of virtual addresses are used to generate a corresponding real address (e.g. the region second index is used as region first index). Both of the above can result in incorrect address translations. Only for real space designations with a token origin of zero and addresses below one megabyte the translation was correct. Furthermore replace a "!asce.r" statement with a "!*fake" statement to make it more obvious that a specific condition has nothing to do with the architecture, but with the fake handling of real space designations. Fixes: 3218f70 ("s390/mm: support real-space for gmap shadows") Cc: David Hildenbrand <[email protected]> Cc: [email protected] Signed-off-by: Heiko Carstens <[email protected]> Reviewed-by: Martin Schwidefsky <[email protected]> Signed-off-by: Christian Borntraeger <[email protected]>
- Loading branch information