Skip to content

Make unique discovery controllers persistent as default#1765

Merged
igaw merged 4 commits intolinux-nvme:masterfrom
igaw:make-pdc-default
Jan 24, 2023
Merged

Make unique discovery controllers persistent as default#1765
igaw merged 4 commits intolinux-nvme:masterfrom
igaw:make-pdc-default

Conversation

@igaw
Copy link
Copy Markdown
Collaborator

@igaw igaw commented Jan 17, 2023

This implemention changes the default behavior considerable:

  • Try to use unique discovery controllers per default.
  • Avoid connecting to already connected or 'duplicates' controllers during discovery
  • Make unique discovery controllers persistent per default

The first two are backwards compatible, that means if the user isn't really using '--persistent' as command line option, the outcome should be the same. The last change is a bit daunting IMO. Is this really what the TP8013 mandates?

Fixes #1670

@igaw igaw force-pushed the make-pdc-default branch from d12e496 to d487dee Compare January 17, 2023 08:58
@igaw igaw marked this pull request as draft January 17, 2023 08:59
@igaw igaw force-pushed the make-pdc-default branch 3 times, most recently from 2ac2ce4 to bc074af Compare January 19, 2023 11:01
Update libnvme wrap to include the unique discovery controller API
changes.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
Currently, the well known discovery controller is used per default even
though the target might support unique discovery controller as defined
in TP8013.

Change the default behavior to use the unique discovery controller
whenever the target supports it.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
@igaw igaw force-pushed the make-pdc-default branch from bc074af to 467028c Compare January 20, 2023 07:55
@igaw igaw marked this pull request as ready for review January 20, 2023 07:56
@igaw igaw changed the title Prefer unique discovery controller over well known and don't disconnect it on default Make unique discovery controllers persistent Jan 20, 2023
@igaw igaw changed the title Make unique discovery controllers persistent Make unique discovery controllers persistent as default Jan 20, 2023
@igaw igaw force-pushed the make-pdc-default branch from 467028c to 3c5b6e4 Compare January 20, 2023 08:27
@igaw igaw requested a review from hreinecke January 20, 2023 08:27
The TP8014 adds two new flags for providing information to the host
which discovery controller is returning the same information we already
know or if the discovery controller doesn't support explicit
persistency.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
Do not disconnect unique discovery controller on default.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
@igaw igaw force-pushed the make-pdc-default branch from 3c5b6e4 to 1959d7b Compare January 20, 2023 09:01
@igaw igaw merged commit 51edeb4 into linux-nvme:master Jan 24, 2023
@igaw igaw deleted the make-pdc-default branch January 24, 2023 10:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Make PDC the default option against targets that are TP 8013/8014 compliant

2 participants