From eb0489e0c5300f04c2a6fc78d47b914b07ad8ee6 Mon Sep 17 00:00:00 2001 From: smh Date: Wed, 29 Oct 2014 11:11:54 +0000 Subject: [PATCH] MFS10 r273814 MFC r273704 Fix ATA CF ERASE breakage caused by 268205 PR: 194606 Approved by: re (marius) Sponsored by: Multiplay git-svn-id: svn://svn.freebsd.org/base/releng/10.1@273818 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f --- sys/cam/ata/ata_da.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sys/cam/ata/ata_da.c b/sys/cam/ata/ata_da.c index 636be162d..9029ce1ff 100644 --- a/sys/cam/ata/ata_da.c +++ b/sys/cam/ata/ata_da.c @@ -1467,9 +1467,15 @@ ada_dsmtrim(struct ada_softc *softc, struct bio *bp, struct ccb_ataio *ataio) static void ada_cfaerase(struct ada_softc *softc, struct bio *bp, struct ccb_ataio *ataio) { + struct trim_request *req = &softc->trim_req; uint64_t lba = bp->bio_pblkno; uint16_t count = bp->bio_bcount / softc->params.secsize; + bzero(req, sizeof(*req)); + TAILQ_INIT(&req->bps); + bioq_remove(&softc->trim_queue, bp); + TAILQ_INSERT_TAIL(&req->bps, bp, bio_queue); + cam_fill_ataio(ataio, ada_retry_count, adadone, -- 2.42.0