All of lore.kernel.org
 help / color / mirror / Atom feed
From: james.smart@broadcom.com (James Smart)
Subject: [PATCH nvme-cli rfc 0/6] Support discovery log change events
Date: Fri, 26 Apr 2019 09:17:40 -0700	[thread overview]
Message-ID: <f4594084-4f2a-33ca-77b4-d7075bbb12af@broadcom.com> (raw)
In-Reply-To: <03163041-9b14-3662-edb8-1d69f20f681f@grimberg.me>


On 4/26/2019 8:46 AM, Sagi Grimberg wrote:
>
>>> Reviving this (again).
>>>
>>> Hannes, did you have a chance to look at this? Unless there are other
>>> alternatives I suggest we go with this approach.
>>>
>>> We should be able to support discovery log change events automatically
>>> at some point...
>>
>> Yes, I did.
>> And had several discussions with the involved parties (Hello, James :-).
>> Consensus was that for FC we don't really need discovery AENs, as the 
>> transport has knowledge about the fabric and the attached ports, and 
>> will generate events on any topology change already.
>> For RDMA and TCP, OTOH, we don't know the topology, and to be able to 
>> discovery we will know the fabric ports in advance.
>> So there automatic discovery is a real win, and arguably necessary if 
>> a connection needs to be re-established after a fabric outage.
>
> Again, this is a different thing Hannes, please stop mixing stuff.
> I'm not arguing with you that we want automatically discover the fabric,
> but discovery change log events and root discovery are different things
> and only one of them is up for discussion here.
>
>> Implementation-wise I'm not thoroughly happy with the MDNS approach, 
>> as this requires quite a bit of additional infrastructure which needs 
>> to be present on both sides.
>> And my worry is that during failover scenarios we might not be able 
>> to run these services at all (seeing that the root-fs is blocked).
>> But if that is acceptable (read: if booting from those NVMe devices 
>> is not required) then I guess we could go that way.
> I'm going to ignore stuff about root discovery here (nothing personal,
> its just not the subject here), we can talk about it in a separate
> thread.
>
> Now, I'm suggesting to support discovery change log events by allowing
> the user to setup a persistent discovery controller and have the kernel
> fire to userspace discovery change log events over that controller.
>
> Any comments/feedback/alternatives on _this_?

I think it's fine, and we should be able to merge possibly what the AEN 
event looks like and the FC event.? The Events are pretty much the same 
between FC and the AEN -> go perform a connect-all against the indicated 
discovery controller.?? What is different is how do you identify the 
discovery controller, and if you are re-using an an existing controller, 
how would that connect-all occur if it doesn't create a new discovery 
controller instance.? For how to identify the discovery controller, it 
could be: a) by full discovery-log-based-address fields? (not all must 
be present; e.g. FC);? b) by /dev/nvme? name of the persistent discovery 
controller (e.g. the AEN); or c) a derivation of the /dev/nvme? name 
(aka (b)) by using (a) to see if a persistent controller exists at that 
location.
Am I getting a little off base ?

I agree - we don't need to address is how does one initially create the 
persistent discovery controller.

-- james

  reply	other threads:[~2019-04-26 16:17 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-23  2:32 [PATCH nvme-cli rfc 0/6] Support discovery log change events Sagi Grimberg
2019-02-23  2:32 ` [PATCH nvme-cli rfc 1/6] fabrics: ignore arguments that pass in "none" Sagi Grimberg
2019-05-07  9:17   ` Max Gurtovoy
2019-05-07 17:04     ` James Smart
2019-02-23  2:32 ` [PATCH nvme-cli rfc 2/6] fabrics: support persistent connections to a discovery controller Sagi Grimberg
2019-05-07  9:22   ` Max Gurtovoy
2019-02-23  2:32 ` [PATCH nvme-cli rfc 3/6] fabrics: allow user to retrieve discovery log from existing " Sagi Grimberg
2019-05-07  9:27   ` Max Gurtovoy
2019-02-23  2:32 ` [PATCH nvme-cli rfc 4/6] fabrics: add --quiet option Sagi Grimberg
2019-05-07  9:35   ` Max Gurtovoy
2019-05-07 17:12     ` James Smart
2019-05-07 18:54       ` Max Gurtovoy
2019-02-23  2:32 ` [PATCH nvme-cli rfc 5/6] fabrics: systemd and udev support for automatic discovery log changes Sagi Grimberg
2019-02-23  2:32 ` [PATCH nvme-cli rfc 6/6] fc: add autoconnect systemd service and udev rule for fc " Sagi Grimberg
2019-02-24 17:17 ` [PATCH nvme-cli rfc 0/6] Support discovery log change events Hannes Reinecke
2019-02-24 22:33   ` Sagi Grimberg
2019-03-09  2:18     ` Sagi Grimberg
2019-03-13 21:04     ` James Smart
2019-03-14  0:00       ` Sagi Grimberg
2019-03-14 20:43         ` James Smart
2019-03-14 20:50           ` James Smart
2019-03-15 12:40             ` Hannes Reinecke
2019-03-15 20:38               ` Sagi Grimberg
2019-04-25 19:10                 ` Sagi Grimberg
2019-04-26 14:19                   ` Hannes Reinecke
2019-04-26 15:46                     ` Sagi Grimberg
2019-04-26 16:17                       ` James Smart [this message]
2019-04-26 19:10                         ` Sagi Grimberg
2019-04-26 20:14                           ` James Smart
2019-05-06 22:38                             ` Arun Easi
2019-05-07 16:47                               ` James Smart
2019-04-27 11:05                           ` Hannes Reinecke
2019-04-27 10:53                       ` Hannes Reinecke
2019-03-14 21:41           ` 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=f4594084-4f2a-33ca-77b4-d7075bbb12af@broadcom.com \
    --to=james.smart@broadcom.com \
    /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.