On 11/10/21 8:49 AM, Pavel Begunkov wrote: > It's expensive enough to post an CQE, and there are other > reasons to want to ignore them, e.g. for link handling and > it may just be more convenient for the userspace. > > Try to cover most of the use cases with one flag. The overhead > is one "if (cqe->flags & IOSQE_CQE_SKIP_SUCCESS)" check per > requests and a bit bloated req_set_fail(), should be bearable. I like the idea, one thing I'm struggling with is I think a normal use case of this would be fast IO where we still need to know if a completion event has happened, we just don't need to know the details of it since we already know what those details would be if it ends up in success. How about having a skip counter? That would supposedly also allow drain to work, and it could be mapped with the other cq parts to allow the app to see it as well. -- Jens Axboe