Commit c116475
s390/dasd: Fix invalid dereferencing of indirect CCW data pointer
commit b3a58f3 upstream.
Fix invalid dereferencing of indirect CCW data pointer in
dasd_eckd_dump_sense() that leads to a kernel panic in error cases.
When using indirect addressing for DASD CCWs (IDAW) the CCW CDA pointer
does not contain the data address itself but a pointer to the IDAL.
This needs to be translated from physical to virtual as well before
using it.
This dereferencing is also used for dasd_page_cache and also fixed
although it is very unlikely that this code path ever gets used.
Fixes: c0bd396 ("s390/dasd: use new address translation helpers")
Cc: stable@vger.kernel.org
Signed-off-by: Stefan Haberland <sth@linux.ibm.com>
Reviewed-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>1 parent b9ea38e commit c116475
2 files changed
Lines changed: 3 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4906 | 4906 | | |
4907 | 4907 | | |
4908 | 4908 | | |
4909 | | - | |
| 4909 | + | |
4910 | 4910 | | |
4911 | 4911 | | |
4912 | 4912 | | |
| |||
5525 | 5525 | | |
5526 | 5526 | | |
5527 | 5527 | | |
5528 | | - | |
| 5528 | + | |
5529 | 5529 | | |
5530 | 5530 | | |
5531 | 5531 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
585 | 585 | | |
586 | 586 | | |
587 | 587 | | |
588 | | - | |
| 588 | + | |
589 | 589 | | |
590 | 590 | | |
591 | 591 | | |
| |||
0 commit comments