All of lore.kernel.org
 help / color / mirror / Atom feed
From: Parav Pandit <pandit.parav@gmail.com>
To: Sagi Grimberg <sagig@dev.mellanox.co.il>
Cc: Christoph Hellwig <hch@lst.de>,
	linux-rdma@vger.kernel.org,
	Bart Van Assche <bart.vanassche@sandisk.com>,
	axboe@fb.com, linux-scsi@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH 07/13] IB: add a proper completion queue abstraction
Date: Sun, 17 Jan 2016 16:39:33 +0530	[thread overview]
Message-ID: <CAG53R5Vt+TTx8bm9+jyksBJ-nMh0Ug4wnhNicK7LsdqL+AGz_w@mail.gmail.com> (raw)
In-Reply-To: <569B75C8.5010709@dev.mellanox.co.il>

On Sun, Jan 17, 2016 at 4:36 PM, Sagi Grimberg <sagig@dev.mellanox.co.il> 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.

  reply	other threads:[~2016-01-17 11:09 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-07 20:51 completion queue abstraction V2 Christoph Hellwig
2015-12-07 20:51 ` Christoph Hellwig
2015-12-07 20:51 ` [PATCH 01/13] irq_poll: make blk-iopoll available outside the block layer Christoph Hellwig
2015-12-10 18:41   ` Bart Van Assche
2015-12-10 18:41     ` Bart Van Assche
2015-12-07 20:51 ` [PATCH 02/13] irq_poll: don't disable new irq_poll instances Christoph Hellwig
2015-12-10 18:41   ` Bart Van Assche
2015-12-10 18:41     ` Bart Van Assche
2015-12-07 20:51 ` [PATCH 03/13] irq_poll: fold irq_poll_sched_prep into irq_poll_sched Christoph Hellwig
2015-12-10 18:41   ` Bart Van Assche
2015-12-10 18:41     ` Bart Van Assche
     [not found]   ` <1449521512-22921-4-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
2015-12-29  9:54     ` Bart Van Assche
2015-12-29  9:54       ` Bart Van Assche
     [not found]       ` <5682584A.5030708-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
2015-12-30  9:42         ` Christoph Hellwig
2015-12-30  9:42           ` Christoph Hellwig
     [not found]           ` <20151230094253.GB12904-jcswGhMUV9g@public.gmane.org>
2016-01-20  7:02             ` Andrew Donnellan
2016-01-20  7:02               ` Andrew Donnellan
     [not found]               ` <569F3106.7000205-8fk3Idey6ehBDgjK7y7TUQ@public.gmane.org>
2016-01-20  7:15                 ` Andrew Donnellan
2016-01-20  7:15                   ` Andrew Donnellan
     [not found] ` <1449521512-22921-1-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
2015-12-07 20:51   ` [PATCH 04/13] irq_poll: fold irq_poll_disable_pending into irq_poll_softirq Christoph Hellwig
2015-12-07 20:51     ` Christoph Hellwig
2015-12-10 18:41     ` Bart Van Assche
2015-12-10 18:41       ` Bart Van Assche
2015-12-13 10:25   ` completion queue abstraction V2 Sagi Grimberg
2015-12-13 10:25     ` Sagi Grimberg
2015-12-07 20:51 ` [PATCH 05/13] irq_poll: mark __irq_poll_complete static Christoph Hellwig
2015-12-10 18:42   ` Bart Van Assche
2015-12-10 18:42     ` Bart Van Assche
2015-12-07 20:51 ` [PATCH 06/13] irq_poll: remove unused data and max fields Christoph Hellwig
     [not found]   ` <1449521512-22921-7-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
2015-12-10 18:42     ` Bart Van Assche
2015-12-10 18:42       ` Bart Van Assche
2015-12-07 20:51 ` [PATCH 07/13] IB: add a proper completion queue abstraction Christoph Hellwig
2015-12-10 18:42   ` Bart Van Assche
2015-12-10 18:42     ` Bart Van Assche
2015-12-11 14:17     ` Christoph Hellwig
     [not found]   ` <1449521512-22921-8-git-send-email-hch-jcswGhMUV9g@public.gmane.org>
2016-01-15 13:54     ` Parav Pandit
2016-01-15 13:54       ` Parav Pandit
2016-01-17  9:24       ` Sagi Grimberg
     [not found]         ` <569B5DE3.1010908-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2016-01-17 11:01           ` Parav Pandit
2016-01-17 11:01             ` Parav Pandit
2016-01-17 11:06             ` Sagi Grimberg
2016-01-17 11:09               ` Parav Pandit [this message]
2015-12-07 20:51 ` [PATCH 08/13] IB/srpt: chain RDMA READ/WRITE requests Christoph Hellwig
2015-12-10 18:42   ` Bart Van Assche
2015-12-10 18:42     ` Bart Van Assche
2015-12-29  9:58   ` Bart Van Assche
2015-12-29  9:58     ` Bart Van Assche
     [not found]     ` <56825940.5070404-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
2015-12-30  9:43       ` Christoph Hellwig
2015-12-30  9:43         ` Christoph Hellwig
2015-12-07 20:51 ` [PATCH 09/13] IB/srpt: use the new CQ API Christoph Hellwig
2015-12-10 18:42   ` Bart Van Assche
2015-12-10 18:42     ` Bart Van Assche
2015-12-07 20:51 ` [PATCH 10/13] IB/srp: " Christoph Hellwig
2015-12-10 18:42   ` Bart Van Assche
2015-12-10 18:42     ` Bart Van Assche
2015-12-11 14:22     ` Christoph Hellwig
     [not found]       ` <20151211142220.GB20201-jcswGhMUV9g@public.gmane.org>
2015-12-11 17:59         ` Doug Ledford
2015-12-11 17:59           ` Doug Ledford
2015-12-12  8:08           ` Christoph Hellwig
     [not found]             ` <20151212080833.GA32638-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2015-12-13 10:26               ` Sagi Grimberg
2015-12-13 10:26                 ` Sagi Grimberg
2015-12-14 16:26                 ` Doug Ledford
2015-12-07 20:51 ` [PATCH 11/13] IB/iser: Use a dedicated descriptor for login Christoph Hellwig
2015-12-07 20:51 ` [PATCH 12/13] IB/iser: Use helper for container_of Christoph Hellwig
2015-12-07 20:51 ` [PATCH 13/13] IB/iser: Convert to CQ abstraction Christoph Hellwig
2015-12-23 19:44 ` completion queue abstraction V2 Doug Ledford
2015-12-29  9:51 ` Bart Van Assche
2015-12-29  9:51   ` Bart Van Assche

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAG53R5Vt+TTx8bm9+jyksBJ-nMh0Ug4wnhNicK7LsdqL+AGz_w@mail.gmail.com \
    --to=pandit.parav@gmail.com \
    --cc=axboe@fb.com \
    --cc=bart.vanassche@sandisk.com \
    --cc=hch@lst.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rdma@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=sagig@dev.mellanox.co.il \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.