Lines Matching refs:newrec
353 struct nvme_fc_lport *newrec;
373 newrec = nvme_fc_attach_to_unreg_lport(pinfo, template, dev);
376 if (IS_ERR(newrec)) {
377 ret = PTR_ERR(newrec);
381 } else if (newrec) {
382 *portptr = &newrec->localport;
388 newrec = kmalloc((sizeof(*newrec) + template->local_priv_sz),
390 if (!newrec) {
406 INIT_LIST_HEAD(&newrec->port_list);
407 INIT_LIST_HEAD(&newrec->endp_list);
408 kref_init(&newrec->ref);
409 atomic_set(&newrec->act_rport_cnt, 0);
410 newrec->ops = template;
411 newrec->dev = dev;
412 ida_init(&newrec->endp_cnt);
414 newrec->localport.private = &newrec[1];
416 newrec->localport.private = NULL;
417 newrec->localport.node_name = pinfo->node_name;
418 newrec->localport.port_name = pinfo->port_name;
419 newrec->localport.port_role = pinfo->port_role;
420 newrec->localport.port_id = pinfo->port_id;
421 newrec->localport.port_state = FC_OBJSTATE_ONLINE;
422 newrec->localport.port_num = idx;
425 list_add_tail(&newrec->port_list, &nvme_fc_lport_list);
431 *portptr = &newrec->localport;
437 kfree(newrec);
670 struct nvme_fc_rport *newrec;
684 newrec = nvme_fc_attach_to_suspended_rport(lport, pinfo);
687 if (IS_ERR(newrec)) {
688 ret = PTR_ERR(newrec);
692 } else if (newrec) {
694 __nvme_fc_set_dev_loss_tmo(newrec, pinfo);
695 nvme_fc_signal_discovery_scan(lport, newrec);
696 *portptr = &newrec->remoteport;
702 newrec = kmalloc((sizeof(*newrec) + lport->ops->remote_priv_sz),
704 if (!newrec) {
715 INIT_LIST_HEAD(&newrec->endp_list);
716 INIT_LIST_HEAD(&newrec->ctrl_list);
717 INIT_LIST_HEAD(&newrec->ls_req_list);
718 INIT_LIST_HEAD(&newrec->disc_list);
719 kref_init(&newrec->ref);
720 atomic_set(&newrec->act_ctrl_cnt, 0);
721 spin_lock_init(&newrec->lock);
722 newrec->remoteport.localport = &lport->localport;
723 INIT_LIST_HEAD(&newrec->ls_rcv_list);
724 newrec->dev = lport->dev;
725 newrec->lport = lport;
727 newrec->remoteport.private = &newrec[1];
729 newrec->remoteport.private = NULL;
730 newrec->remoteport.port_role = pinfo->port_role;
731 newrec->remoteport.node_name = pinfo->node_name;
732 newrec->remoteport.port_name = pinfo->port_name;
733 newrec->remoteport.port_id = pinfo->port_id;
734 newrec->remoteport.port_state = FC_OBJSTATE_ONLINE;
735 newrec->remoteport.port_num = idx;
736 __nvme_fc_set_dev_loss_tmo(newrec, pinfo);
737 INIT_WORK(&newrec->lsrcv_work, nvme_fc_handle_ls_rqst_work);
740 list_add_tail(&newrec->endp_list, &lport->endp_list);
743 nvme_fc_signal_discovery_scan(lport, newrec);
745 *portptr = &newrec->remoteport;
749 kfree(newrec);