Lines Matching refs:port
54 pr_err("Disable port '%u' before changing attribute in %s\n",
80 struct nvmet_port *port = to_nvmet_port(item);
83 if (nvmet_is_port_enabled(port, __func__))
95 port->disc_addr.adrfam = nvmet_addr_family[i].type;
112 struct nvmet_port *port = to_nvmet_port(item);
120 if (nvmet_is_port_enabled(port, __func__))
123 port->disc_addr.portid = cpu_to_le16(portid);
132 struct nvmet_port *port = to_nvmet_port(item);
134 return snprintf(page, PAGE_SIZE, "%s\n", port->disc_addr.traddr);
140 struct nvmet_port *port = to_nvmet_port(item);
147 if (nvmet_is_port_enabled(port, __func__))
150 if (sscanf(page, "%s\n", port->disc_addr.traddr) != 1)
181 struct nvmet_port *port = to_nvmet_port(item);
182 u8 treq = port->disc_addr.treq & ~NVME_TREQ_SECURE_CHANNEL_MASK;
185 if (nvmet_is_port_enabled(port, __func__))
198 port->disc_addr.treq = treq;
207 struct nvmet_port *port = to_nvmet_port(item);
209 return snprintf(page, PAGE_SIZE, "%s\n", port->disc_addr.trsvcid);
215 struct nvmet_port *port = to_nvmet_port(item);
221 if (nvmet_is_port_enabled(port, __func__))
224 if (sscanf(page, "%s\n", port->disc_addr.trsvcid) != 1)
234 struct nvmet_port *port = to_nvmet_port(item);
236 return snprintf(page, PAGE_SIZE, "%d\n", port->inline_data_size);
242 struct nvmet_port *port = to_nvmet_port(item);
245 if (nvmet_is_port_enabled(port, __func__))
247 ret = kstrtoint(page, 0, &port->inline_data_size);
261 struct nvmet_port *port = to_nvmet_port(item);
263 return snprintf(page, PAGE_SIZE, "%d\n", port->pi_enable);
269 struct nvmet_port *port = to_nvmet_port(item);
275 if (nvmet_is_port_enabled(port, __func__))
278 port->pi_enable = val;
288 struct nvmet_port *port = to_nvmet_port(item);
292 if (port->disc_addr.trtype == nvmet_transport[i].type)
300 static void nvmet_port_init_tsas_rdma(struct nvmet_port *port)
302 port->disc_addr.tsas.rdma.qptype = NVMF_RDMA_QPTYPE_CONNECTED;
303 port->disc_addr.tsas.rdma.prtype = NVMF_RDMA_PRTYPE_NOT_SPECIFIED;
304 port->disc_addr.tsas.rdma.cms = NVMF_RDMA_CMS_RDMA_CM;
310 struct nvmet_port *port = to_nvmet_port(item);
313 if (nvmet_is_port_enabled(port, __func__))
325 memset(&port->disc_addr.tsas, 0, NVMF_TSAS_SIZE);
326 port->disc_addr.trtype = nvmet_transport[i].type;
327 if (port->disc_addr.trtype == NVMF_TRTYPE_RDMA)
328 nvmet_port_init_tsas_rdma(port);
836 struct nvmet_port *port = to_nvmet_port(parent->ci_parent);
853 list_for_each_entry(p, &port->subsystems, entry) {
858 if (list_empty(&port->subsystems)) {
859 ret = nvmet_enable_port(port);
864 list_add_tail(&link->entry, &port->subsystems);
865 nvmet_port_disc_changed(port, subsys);
879 struct nvmet_port *port = to_nvmet_port(parent->ci_parent);
884 list_for_each_entry(p, &port->subsystems, entry) {
893 nvmet_port_del_ctrls(port, subsys);
894 nvmet_port_disc_changed(port, subsys);
896 if (list_empty(&port->subsystems))
897 nvmet_disable_port(port);
1517 struct nvmet_port *port = to_nvmet_port(item);
1524 nvmet_referral_enable(parent, port);
1526 nvmet_referral_disable(parent, port);
1554 struct nvmet_port *port = to_nvmet_port(item);
1556 nvmet_referral_disable(parent, port);
1561 struct nvmet_port *port = to_nvmet_port(item);
1563 kfree(port);
1579 struct nvmet_port *port;
1581 port = kzalloc(sizeof(*port), GFP_KERNEL);
1582 if (!port)
1585 INIT_LIST_HEAD(&port->entry);
1586 config_group_init_type_name(&port->group, name, &nvmet_referral_type);
1588 return &port->group;
1613 enum nvme_ana_state state = grp->port->ana_state[grp->grpid];
1628 enum nvme_ana_state *ana_state = grp->port->ana_state;
1644 nvmet_port_send_ana_event(grp->port);
1659 if (grp == &grp->port->ana_default_group)
1663 grp->port->ana_state[grp->grpid] = NVME_ANA_INACCESSIBLE;
1667 nvmet_port_send_ana_event(grp->port);
1684 struct nvmet_port *port = ana_groups_to_port(&group->cg_item);
1701 grp->port = port;
1709 nvmet_port_send_ana_event(grp->port);
1731 struct nvmet_port *port = to_nvmet_port(item);
1735 list_del(&port->global_entry);
1737 kfree(port->ana_state);
1738 kfree(port);
1767 struct nvmet_port *port;
1774 port = kzalloc(sizeof(*port), GFP_KERNEL);
1775 if (!port)
1778 port->ana_state = kcalloc(NVMET_MAX_ANAGRPS + 1,
1779 sizeof(*port->ana_state), GFP_KERNEL);
1780 if (!port->ana_state) {
1781 kfree(port);
1787 port->ana_state[1] = NVME_ANA_OPTIMIZED;
1789 port->ana_state[i] = NVME_ANA_INACCESSIBLE;
1792 list_add(&port->global_entry, &nvmet_ports_list);
1794 INIT_LIST_HEAD(&port->entry);
1795 INIT_LIST_HEAD(&port->subsystems);
1796 INIT_LIST_HEAD(&port->referrals);
1797 port->inline_data_size = -1; /* < 0 == let the transport choose */
1799 port->disc_addr.portid = cpu_to_le16(portid);
1800 port->disc_addr.adrfam = NVMF_ADDR_FAMILY_MAX;
1801 port->disc_addr.treq = NVMF_TREQ_DISABLE_SQFLOW;
1802 config_group_init_type_name(&port->group, name, &nvmet_port_type);
1804 config_group_init_type_name(&port->subsys_group,
1806 configfs_add_default_group(&port->subsys_group, &port->group);
1808 config_group_init_type_name(&port->referrals_group,
1810 configfs_add_default_group(&port->referrals_group, &port->group);
1812 config_group_init_type_name(&port->ana_groups_group,
1814 configfs_add_default_group(&port->ana_groups_group, &port->group);
1816 port->ana_default_group.port = port;
1817 port->ana_default_group.grpid = NVMET_DEFAULT_ANA_GRPID;
1818 config_group_init_type_name(&port->ana_default_group.group,
1821 configfs_add_default_group(&port->ana_default_group.group,
1822 &port->ana_groups_group);
1824 return &port->group;