On Tue, Mar 28, 2023 at 11:13:53AM +0800, Gao Xiang wrote: > > > On 2023/3/28 09:16, Ming Lei wrote: > > Hi Dan, > > > > On Mon, Mar 27, 2023 at 05:36:33PM -0700, Dan Williams wrote: > > > Ming Lei wrote: > > > > Hello Jens, > > > > > > > > Add IORING_OP_FUSED_CMD, it is one special URING_CMD, which has to > > > > be SQE128. The 1st SQE(master) is one 64byte URING_CMD, and the 2nd > > > > 64byte SQE(slave) is another normal 64byte OP. For any OP which needs > > > > to support slave OP, io_issue_defs[op].fused_slave needs to be set as 1, > > > > and its ->issue() can retrieve/import buffer from master request's > > > > fused_cmd_kbuf. The slave OP is actually submitted from kernel, part of > > > > this idea is from Xiaoguang's ublk ebpf patchset, but this patchset > > > > submits slave OP just like normal OP issued from userspace, that said, > > > > SQE order is kept, and batching handling is done too. > > > > > > Hi Ming, > > > > > > io_uring and ublk are starting to be more on my radar these days. I > > > wanted to take a look at this series, but could not get past the > > > distracting "master"/"slave" terminology in this lead-in paragraph let > > > alone start looking at patches. > > > > > > Frankly, the description sounds more like "head"/"tail", or even > > > "fuse0"/"fuse1" because, for example, who is to say you might not have > > > > The term "master/slave" is from patches. > > > > The master command not only provides buffer for slave request, but also requires > > slave request for serving master command, and master command is always completed > > after all slave request are done. > > > > That is why it is named as master/slave. Actually Jens raised the similar concern > > and I hate the name too, but it is always hard to figure out perfect name, or > > any other name for reflecting the relation? (head/tail, fuse0/1 can't > > do that, IMO) > > > > > larger fused ops in the future and need terminology to address > > > "fuse{0,1,2,3}"? > > > > Yeah, definitely, the interface can be extended in future to support > > multiple "slave" requests. > > I guess master/slave (especially now) have bad meaning to > English-language guys so it's better to avoid it. Absolutely no offense given English isn't my native language, so let's move on with V5. Thanks, Ming