Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 7 Nov 2014 05:07:59 +0530
From:      Sibananda Sahu <sibananda.sahu@avagotech.com>
To:        freebsd-scsi@freebsd.org
Subject:   Query regarding Unmapped IO, PIM_UNMAPPED and bus_dmamap_load_ccb()
Message-ID:  <b27d51d8c4bd9b42ce90b82d1cbf9845@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi All,



I have raised this query regarding the following mail:

https://lists.freebsd.org/pipermail/freebsd-scsi/2014-July/006407.html



Where Alexander Motin talks of Unmapped I/O.

As per his direction I have declared the below statement in my driver code:



ccb->cpi.hba_misc = PIM_NOBUSRESET | PIM_UNMAPPED;



Before enabling PIM_UNMAPPED I was getting the (ccb->ccb_h.flags &
CAM_DATA_MASK) as CAM_DATA_VADDR and handling accordingly.

But after enabling PIM_UNMAPPED in cpi.hba_misc I am getting the
(ccb->ccb_h.flags & CAM_DATA_MASK) as CAM_DATA_BIO and handling the data
that comes with bus_dma_load_ccb().



I just did the same thing according to the mps(4) driver as referred by
Alexander Motin.



So I just wanted to know what exactly happening when I am enabling the
PIM_UNMAPPED in the cpi.hba_misc field.

And what the CAM_DATA_BIO really means in the CAM_DATA_MASK.





It would be great idea if somebody explains what exactly happening or at
least give me some references where can I have a look and move forward.





Thanks,

Sibananda Sahu



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?b27d51d8c4bd9b42ce90b82d1cbf9845>