aboutsummaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorDoug Rabson <dfr@FreeBSD.org>2000-05-28 15:49:55 +0000
committerDoug Rabson <dfr@FreeBSD.org>2000-05-28 15:49:55 +0000
commit31891bc2bd5a74cac2022601b17759f8e9764c64 (patch)
tree121cc7924c349d66cdfa46f0a9bb6c54be8774ec /sys/dev
parent717f014e454ff63e066de0ad5ca3ae52bc7ce3f7 (diff)
Notes
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/ata/ata-disk.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/dev/ata/ata-disk.c b/sys/dev/ata/ata-disk.c
index a1cb3aa01425..8a74e83b6e9f 100644
--- a/sys/dev/ata/ata-disk.c
+++ b/sys/dev/ata/ata-disk.c
@@ -272,17 +272,18 @@ addump(dev_t dev)
ata_reinit(adp->controller);
while (count > 0) {
+ vm_offset_t va;
DELAY(1000);
if (is_physical_memory(addr))
- pmap_kenter((vm_offset_t)CADDR1, trunc_page(addr));
+ va = pmap_enter_temporary(trunc_page(addr), VM_PROT_READ);
else
- pmap_kenter((vm_offset_t)CADDR1, trunc_page(0));
+ va = pmap_enter_temporary(trunc_page(0), VM_PROT_READ);
bzero(&request, sizeof(struct ad_request));
request.device = adp;
request.blockaddr = blkno;
request.bytecount = PAGE_SIZE;
- request.data = CADDR1;
+ request.data = (int8_t *) va;
while (request.bytecount > 0) {
ad_transfer(&request);