diff options
-rw-r--r-- | sys/dev/ata/atascsi.c | 3 | ||||
-rw-r--r-- | sys/dev/pci/ahci.c | 4 |
2 files changed, 5 insertions, 2 deletions
diff --git a/sys/dev/ata/atascsi.c b/sys/dev/ata/atascsi.c index 19d9864fe8e..f30594ef693 100644 --- a/sys/dev/ata/atascsi.c +++ b/sys/dev/ata/atascsi.c @@ -1,4 +1,4 @@ -/* $OpenBSD: atascsi.c,v 1.18 2007/03/20 06:41:38 pascoe Exp $ */ +/* $OpenBSD: atascsi.c,v 1.19 2007/03/20 06:43:06 pascoe Exp $ */ /* * Copyright (c) 2007 David Gwynne <dlg@openbsd.org> @@ -461,6 +461,7 @@ atascsi_disk_cmd_done(struct ata_xfer *xa) xa->state); } + xs->resid = xa->resid; ata_put_xfer(xa); xs->flags |= ITSDONE; diff --git a/sys/dev/pci/ahci.c b/sys/dev/pci/ahci.c index d440f544de6..0252a72157e 100644 --- a/sys/dev/pci/ahci.c +++ b/sys/dev/pci/ahci.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ahci.c,v 1.80 2007/03/20 05:46:50 pascoe Exp $ */ +/* $OpenBSD: ahci.c,v 1.81 2007/03/20 06:43:06 pascoe Exp $ */ /* * Copyright (c) 2006 David Gwynne <dlg@openbsd.org> @@ -1267,6 +1267,8 @@ ahci_unload_prdt(struct ahci_ccb *ccb) BUS_DMASYNC_POSTWRITE); bus_dmamap_unload(sc->sc_dmat, dmap); + + xa->resid = xa->datalen - letoh32(ccb->ccb_cmd_hdr->prdbc); } } |