mirror of
https://github.com/torvalds/linux.git
synced 2026-05-23 22:52:19 +02:00
s390/dasd_eckd: fix virtual vs physical address confusion
Fix virtual vs physical address confusion. This does not fix a bug since virtual and physical address spaces are currently the same. Reviewed-by: Stefan Haberland <sth@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
This commit is contained in:
parent
9a349be3ca
commit
99aea41a4d
|
|
@ -6239,14 +6239,14 @@ static int dasd_eckd_query_pprc_status(struct dasd_device *device,
|
|||
ccw->count = sizeof(struct dasd_psf_prssd_data);
|
||||
ccw->flags |= CCW_FLAG_CC;
|
||||
ccw->flags |= CCW_FLAG_SLI;
|
||||
ccw->cda = (__u32)(addr_t)prssdp;
|
||||
ccw->cda = (__u32)virt_to_phys(prssdp);
|
||||
|
||||
/* Read Subsystem Data - query host access */
|
||||
ccw++;
|
||||
ccw->cmd_code = DASD_ECKD_CCW_RSSD;
|
||||
ccw->count = sizeof(*pprc_data);
|
||||
ccw->flags |= CCW_FLAG_SLI;
|
||||
ccw->cda = (__u32)(addr_t)pprc_data;
|
||||
ccw->cda = (__u32)virt_to_phys(pprc_data);
|
||||
|
||||
cqr->buildclk = get_tod_clock();
|
||||
cqr->status = DASD_CQR_FILLED;
|
||||
|
|
|
|||
|
|
@ -701,7 +701,7 @@ dasd_fba_dump_sense(struct dasd_device *device, struct dasd_ccw_req * req,
|
|||
for (count = 0; count < 32 && count < act->count;
|
||||
count += sizeof(int))
|
||||
len += sprintf(page + len, " %08X",
|
||||
((int *) (addr_t) act->cda)
|
||||
((int *)phys_to_virt(act->cda))
|
||||
[(count>>2)]);
|
||||
len += sprintf(page + len, "\n");
|
||||
act++;
|
||||
|
|
@ -710,18 +710,18 @@ dasd_fba_dump_sense(struct dasd_device *device, struct dasd_ccw_req * req,
|
|||
|
||||
/* print failing CCW area */
|
||||
len = 0;
|
||||
if (act < ((struct ccw1 *)(addr_t) irb->scsw.cmd.cpa) - 2) {
|
||||
act = ((struct ccw1 *)(addr_t) irb->scsw.cmd.cpa) - 2;
|
||||
if (act < ((struct ccw1 *)phys_to_virt(irb->scsw.cmd.cpa)) - 2) {
|
||||
act = ((struct ccw1 *)phys_to_virt(irb->scsw.cmd.cpa)) - 2;
|
||||
len += sprintf(page + len, "......\n");
|
||||
}
|
||||
end = min((struct ccw1 *)(addr_t) irb->scsw.cmd.cpa + 2, last);
|
||||
end = min((struct ccw1 *)phys_to_virt(irb->scsw.cmd.cpa) + 2, last);
|
||||
while (act <= end) {
|
||||
len += sprintf(page + len, "CCW %px: %08X %08X DAT:",
|
||||
act, ((int *) act)[0], ((int *) act)[1]);
|
||||
for (count = 0; count < 32 && count < act->count;
|
||||
count += sizeof(int))
|
||||
len += sprintf(page + len, " %08X",
|
||||
((int *) (addr_t) act->cda)
|
||||
((int *)phys_to_virt(act->cda))
|
||||
[(count>>2)]);
|
||||
len += sprintf(page + len, "\n");
|
||||
act++;
|
||||
|
|
@ -738,7 +738,7 @@ dasd_fba_dump_sense(struct dasd_device *device, struct dasd_ccw_req * req,
|
|||
for (count = 0; count < 32 && count < act->count;
|
||||
count += sizeof(int))
|
||||
len += sprintf(page + len, " %08X",
|
||||
((int *) (addr_t) act->cda)
|
||||
((int *)phys_to_virt(act->cda))
|
||||
[(count>>2)]);
|
||||
len += sprintf(page + len, "\n");
|
||||
act++;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user