All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Belanger, Martin" <Martin.Belanger@dell.com>
To: Sagi Grimberg <sagi@grimberg.me>, Hannes Reinecke <hare@suse.de>,
	Martin Belanger <nitram_67@hotmail.com>,
	"linux-nvme@lists.infradead.org" <linux-nvme@lists.infradead.org>
Cc: "kbusch@kernel.org" <kbusch@kernel.org>,
	"axboe@fb.com" <axboe@fb.com>, "hch@lst.de" <hch@lst.de>
Subject: RE: [PATCH 3/4] nvme-fabrics: add tp8010 support
Date: Mon, 31 Jan 2022 12:08:28 +0000	[thread overview]
Message-ID: <SJ0PR19MB4544E634C5B347F231783B20F2259@SJ0PR19MB4544.namprd19.prod.outlook.com> (raw)
In-Reply-To: <13c327cf-8f04-e005-298f-0e43bb39b89e@grimberg.me>

> > [ .. ]
> >>>> It would be nice to have different events because if we use the
> >>>> "change"
> >>>> uevent for both "log pages have changed" and "connection has been
> >>>> restored", then the user-space app will have to send both an
> >>>> "explicit registration" and a "get log page" whenever it receives a
> "change"
> >>>> uevent.
> >>>> It won’t be able to tell what that "change" uevent is for.
> >>>>
> >>>
> >>> Au contraire.
> >>> Change events come with a full payload detailing out what the event
> >>> is about.
> >>> In the case of a 'log page changed' uevent the event points to the
> >>> controller device, and payload is a string 'NVME_AEN=<aen number>'.
> >>> In the case of the 'path reinstated' uevent the event points to the
> >>> block device.
> >>
> >> There is no *block device*. It's a connection to a Discover Controller.
> >>
> > Ah. Correct. Guess we'll have to add an uevent here.
> 
> Yes, thgere is no bdev for discovery controllers. We may add a uevent for
> userspace to consume as soon as the transport reconnects or when a
> controller (re)starts.
> 
> Don't see any point for the disconnect part as this is async and will not have
> any ordering with the actual disconnect. userspace will need to do it before it
> disconnects the discovery controller.

Hi Sagi. Thanks for the code snippet. I just had a question about your comment.

You say that you don’t see any point to send an event on the disconnect 
because it is async.  I don’t quite understand that part. For example, I've
observed that when connectivity is lost the kernel will try to connect every
10 sec. And it will keep trying to connect 60 times (i.e. 10 min) before 
giving up. Wouldn't sending an "offline" event when connectivity is lost 
give user space apps a heads up that the nvme device may not respond.

Thanks,
Martin

Internal Use - Confidential

  parent reply	other threads:[~2022-01-31 12:09 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20220125145956.14746-1-nitram_67@hotmail.com>
2022-01-25 14:59 ` [PATCH 1/4] nvme-fabrics: add discovery controller type Martin Belanger
2022-01-27  9:16   ` Hannes Reinecke
2022-01-27 13:37     ` Belanger, Martin
2022-01-27 13:16   ` Sagi Grimberg
2022-01-25 14:59 ` [PATCH 2/4] nvme: add host symbolic name Martin Belanger
2022-01-27  9:18   ` Hannes Reinecke
2022-01-27 13:20   ` Sagi Grimberg
2022-01-25 14:59 ` [PATCH 3/4] nvme-fabrics: add tp8010 support Martin Belanger
2022-01-27  9:30   ` Hannes Reinecke
2022-01-27 13:12     ` Sagi Grimberg
2022-01-27 13:30       ` Belanger, Martin
2022-01-27 14:28         ` Hannes Reinecke
2022-01-27 21:59         ` Sagi Grimberg
2022-01-28 17:55           ` Belanger, Martin
2022-01-28 21:49             ` Hannes Reinecke
2022-01-28 23:02               ` Belanger, Martin
2022-01-29  8:43                 ` Hannes Reinecke
2022-01-29 12:23                   ` Belanger, Martin
2022-01-29 12:47                     ` Hannes Reinecke
2022-01-30  8:46                       ` Sagi Grimberg
2022-01-30 13:18                         ` Sagi Grimberg
2022-01-31 12:08                         ` Belanger, Martin [this message]
2022-01-31 16:05                           ` Sagi Grimberg
2022-01-31 16:16                             ` Belanger, Martin
2022-01-31 18:56                               ` Sagi Grimberg
2022-02-02  8:36                               ` Hannes Reinecke
2022-01-31 17:03   ` John Meneghini
2022-01-31 17:17     ` Belanger, Martin
2022-01-31 18:28       ` John Meneghini
2022-01-25 14:59 ` [PATCH 4/4] nvme-fabrics: add explicit deregistration on disconnect Martin Belanger
2022-01-27  9:31   ` Hannes Reinecke
2022-01-27 13:14     ` Sagi Grimberg

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=SJ0PR19MB4544E634C5B347F231783B20F2259@SJ0PR19MB4544.namprd19.prod.outlook.com \
    --to=martin.belanger@dell.com \
    --cc=axboe@fb.com \
    --cc=hare@suse.de \
    --cc=hch@lst.de \
    --cc=kbusch@kernel.org \
    --cc=linux-nvme@lists.infradead.org \
    --cc=nitram_67@hotmail.com \
    --cc=sagi@grimberg.me \
    /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.