On Sun, Jan 17, 2016 at 4:36 PM, Sagi Grimberg <sagig@xxxxxxxxxxxxxxxxxx> wrote: > >>> If we have not drained the CQ (consumed budget or more) the second >>> condition (ib_req_notify_cq) will not be invoked. We are only rearming >>> the CQ when we drained it completely. So I don't see how we can end up >>> with missed notifications. >> >> We drain the CQ completely for whatever CQEs available at that time, >> say for example, >> 33 CQEs drained at time t1. So now req_notify_cq will be invoked at time >> t2. >> During time delta t2-t1, CQ in hardware remains unarmed. >> If cqes are added during that time delta, Will event/interrupt raised >> for it, for CQ in unarmed state? >> >> At time time t2, CQ is armed containing pending CQEs. Will >> event/interrupt raised for those pending CQEs on next arming? > > > If the device did not reported missed-events then it is the device > responsibility to generate a new completion event after arming. > > Specifically, the mlx4/mlx5 HW is able to generate a completion event > in your described scenario. A device that is not capable of doing so > must report missed events to inform the core it has more completions > to consume. o.k. Thanks. -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html