Skip to content

Commit fcf7edf

Browse files
authored
Merge pull request #195 from hreinecke/disable-sqflow
fabrics: kill 'disable_sqflow' argument to nvmf_add_ctrl()
2 parents 63ea220 + 0f31881 commit fcf7edf

6 files changed

Lines changed: 18 additions & 35 deletions

File tree

examples/discover-loop.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ int main()
6969
fprintf(stderr, "Failed to allocate memory\n");
7070
return ENOMEM;
7171
}
72-
ret = nvmf_add_ctrl(h, c, &cfg, false);
72+
ret = nvmf_add_ctrl(h, c, &cfg);
7373
if (ret < 0) {
7474
fprintf(stderr, "no controller found\n");
7575
return errno;

libnvme/nvme.i

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -535,7 +535,7 @@ struct nvme_ns {
535535
connect_err = 1;
536536
return;
537537
}
538-
ret = nvmf_add_ctrl(h, $self, cfg, cfg->disable_sqflow);
538+
ret = nvmf_add_ctrl(h, $self, cfg);
539539
if (ret < 0) {
540540
connect_err = 2;
541541
return;

src/nvme/fabrics.c

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -587,14 +587,12 @@ int nvmf_add_ctrl_opts(nvme_ctrl_t c, struct nvme_fabrics_config *cfg)
587587
}
588588

589589
int nvmf_add_ctrl(nvme_host_t h, nvme_ctrl_t c,
590-
const struct nvme_fabrics_config *cfg,
591-
bool disable_sqflow)
590+
const struct nvme_fabrics_config *cfg)
592591
{
593592
char *argstr;
594593
int ret;
595594

596595
cfg = merge_config(c, cfg);
597-
nvme_ctrl_disable_sqflow(c, disable_sqflow);
598596
nvme_ctrl_set_discovered(c, true);
599597
if (traddr_is_hostname(c)) {
600598
ret = hostname2traddr(c);
@@ -627,7 +625,6 @@ nvme_ctrl_t nvmf_connect_disc_entry(nvme_host_t h,
627625
const char *transport;
628626
char *traddr = NULL, *trsvcid = NULL;
629627
nvme_ctrl_t c;
630-
bool disable_sqflow = false;
631628
int ret;
632629

633630
switch (e->trtype) {
@@ -709,24 +706,24 @@ nvme_ctrl_t nvmf_connect_disc_entry(nvme_host_t h,
709706
}
710707

711708
if (e->treq & NVMF_TREQ_DISABLE_SQFLOW)
712-
disable_sqflow = true;
709+
c->cfg.disable_sqflow = true;
713710

714711
if (e->trtype == NVMF_TRTYPE_TCP &&
715712
(e->treq & NVMF_TREQ_REQUIRED ||
716713
e->treq & NVMF_TREQ_NOT_REQUIRED))
717714
c->cfg.tls = true;
718715

719-
ret = nvmf_add_ctrl(h, c, cfg, disable_sqflow);
716+
ret = nvmf_add_ctrl(h, c, cfg);
720717
if (!ret)
721718
return c;
722719

723-
if (errno == EINVAL && disable_sqflow) {
720+
if (errno == EINVAL && c->cfg.disable_sqflow) {
724721
errno = 0;
725722
/* disable_sqflow is unrecognized option on older kernels */
726723
nvme_msg(LOG_INFO, "failed to connect controller, "
727724
"retry with disabling SQ flow control\n");
728-
disable_sqflow = false;
729-
ret = nvmf_add_ctrl(h, c, cfg, disable_sqflow);
725+
c->cfg.disable_sqflow = false;
726+
ret = nvmf_add_ctrl(h, c, cfg);
730727
if (!ret)
731728
return c;
732729
}

src/nvme/fabrics.h

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -160,17 +160,19 @@ void nvmf_default_config(struct nvme_fabrics_config *cfg);
160160
int nvmf_add_ctrl_opts(nvme_ctrl_t c, struct nvme_fabrics_config *cfg);
161161

162162
/**
163-
* nvmf_add_ctrl() -
164-
* @h:
165-
* @c:
166-
* @cfg:
167-
* @disable_sqflow:
163+
* nvmf_add_ctrl() - Connect a controller and update topology
164+
* @h: Host to which the controller should be attached
165+
* @c: Controller to be connected
166+
* @cfg: Default configuration for the controller
168167
*
169-
* Return:
168+
* Issues a 'connect' command to the NVMe-oF controller and inserts @c
169+
* into the topology using @h as parent.
170+
* @c must be initialized and not connected to the topology.
171+
*
172+
* Return: 0 on success; on failure errno is set and -1 is returned.
170173
*/
171174
int nvmf_add_ctrl(nvme_host_t h, nvme_ctrl_t c,
172-
const struct nvme_fabrics_config *cfg,
173-
bool disable_sqflow);
175+
const struct nvme_fabrics_config *cfg);
174176

175177
/**
176178
* nvmf_get_discovery_log() -

src/nvme/tree.c

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -749,13 +749,6 @@ void nvme_ctrl_set_dhchap_key(nvme_ctrl_t c, const char *key)
749749
c->dhchap_key = strdup(key);
750750
}
751751

752-
void nvme_ctrl_disable_sqflow(nvme_ctrl_t c, bool disable_sqflow)
753-
{
754-
c->cfg.disable_sqflow = disable_sqflow;
755-
if (c->s && c->s->h && c->s->h->r)
756-
c->s->h->r->modified = true;
757-
}
758-
759752
void nvme_ctrl_set_discovered(nvme_ctrl_t c, bool discovered)
760753
{
761754
c->discovered = discovered;

src/nvme/tree.h

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -873,15 +873,6 @@ void nvme_ctrl_set_discovery_ctrl(nvme_ctrl_t c, bool discovery);
873873
*/
874874
bool nvme_ctrl_is_discovery_ctrl(nvme_ctrl_t c);
875875

876-
/**
877-
* nvme_ctrl_disable_sqflow() -
878-
* @c:
879-
* @disable_sqflow:
880-
*
881-
* Return:
882-
*/
883-
void nvme_ctrl_disable_sqflow(nvme_ctrl_t c, bool disable_sqflow);
884-
885876
/**
886877
* nvme_ctrl_identify() -
887878
* @c:

0 commit comments

Comments
 (0)