Bart, On 2/14/17 12:59, Bart Van Assche wrote: >>> What software generated a ZBC_IN request with type REQ_TYPE_FS? Shouldn't >>> all ZBC_IN requests be assigned type REQ_TYPE_BLOCK_PC? >> >> Any application that issues a BLKREPORTZONE ioctl (e.g. mkfs.f2fs or >> libzbc tools) or kernel component calling blkdev_report_zones (e.g. >> f2fs) will generate one or more REQ_OP_ZONE_REPORT BIO which translate >> into a REQ_TYPE_FS requests for the command ZBC_IN. That command does >> not operate on LBAs. The transfer length of the request can be any >> length larger than 64B and the reply length will be at least 64B and >> aligned on a multiple of 64. >> >> The patch "mpt3sas: Force request partial completion alignment" applied >> last week forgot this case, and frankly, I did too despite having looked >> at it. > > Hello Damien, > > How about modifying the block layer core such that it sets REQ_TYPE_BLOCK_PC > for REQ_OP_ZONE_REPORT requests? Would that be a valid alternative to the > above patch? I think so. But my understanding of REQ_TYPE_BLOCK_PC is that it is the type for requests issued internally (scsi_execute) of from things like the SG driver, so in essence, all requests not derived from a BIO... Is this correct ? If yes, then setting the BLOCK_TYPE_PC for REQ_OP_ZONE_REPORT (and REQ_OP_ZONE_RESET while at it) would break this model, wouldn't it ? Best regards. -- Damien Le Moal, Ph.D. Sr. Manager, System Software Research Group, Western Digital Corporation Damien.LeMoal@xxxxxxx (+81) 0466-98-3593 (ext. 513593) 1 kirihara-cho, Fujisawa, Kanagawa, 252-0888 Japan www.wdc.com, www.hgst.com