Lines Matching refs:fp
865 static bool fcoe_oem_match(struct fc_frame *fp) in fcoe_oem_match() argument
867 struct fc_frame_header *fh = fc_frame_header_get(fp); in fcoe_oem_match()
870 if (fc_fcp_is_read(fr_fsp(fp)) && in fcoe_oem_match()
871 (fr_fsp(fp)->data_len > fcoe_ddp_min)) in fcoe_oem_match()
873 else if ((fr_fsp(fp) == NULL) && in fcoe_oem_match()
876 fcp = fc_frame_payload_get(fp, sizeof(*fcp)); in fcoe_oem_match()
1586 static int fcoe_xmit(struct fc_lport *lport, struct fc_frame *fp) in fcoe_xmit() argument
1604 WARN_ON((fr_len(fp) % sizeof(u32)) != 0); in fcoe_xmit()
1606 fh = fc_frame_header_get(fp); in fcoe_xmit()
1607 skb = fp_skb(fp); in fcoe_xmit()
1619 sof = fr_sof(fp); in fcoe_xmit()
1620 eof = fr_eof(fp); in fcoe_xmit()
1635 crc = fcoe_fc_crc(fp); in fcoe_xmit()
1697 if (lport->seq_offload && fr_max_payload(fp)) { in fcoe_xmit()
1699 skb_shinfo(skb)->gso_size = fr_max_payload(fp); in fcoe_xmit()
1711 fr_dev(fp) = lport; in fcoe_xmit()
1733 struct fc_frame *fp) in fcoe_filter_frames() argument
1738 struct sk_buff *skb = (struct sk_buff *)fp; in fcoe_filter_frames()
1747 fr_flags(fp) &= ~FCPHF_CRC_UNCHECKED; in fcoe_filter_frames()
1749 fr_flags(fp) |= FCPHF_CRC_UNCHECKED; in fcoe_filter_frames()
1752 fh = fc_frame_header_get(fp); in fcoe_filter_frames()
1758 if (is_fip_mode(ctlr) && fc_frame_payload_op(fp) == ELS_LOGO && in fcoe_filter_frames()
1764 if (!(fr_flags(fp) & FCPHF_CRC_UNCHECKED) || in fcoe_filter_frames()
1765 le32_to_cpu(fr_crc(fp)) == ~crc32(~0, skb->data, skb->len)) { in fcoe_filter_frames()
1766 fr_flags(fp) &= ~FCPHF_CRC_UNCHECKED; in fcoe_filter_frames()
1789 struct fc_frame *fp; in fcoe_recv_frame() local
1836 fp = (struct fc_frame *)skb; in fcoe_recv_frame()
1837 fc_frame_init(fp); in fcoe_recv_frame()
1838 fr_dev(fp) = lport; in fcoe_recv_frame()
1839 fr_sof(fp) = hp->fcoe_sof; in fcoe_recv_frame()
1844 fr_eof(fp) = crc_eof.fcoe_eof; in fcoe_recv_frame()
1845 fr_crc(fp) = crc_eof.fcoe_crc32; in fcoe_recv_frame()
1849 if (!fcoe_filter_frames(lport, fp)) { in fcoe_recv_frame()
1851 fc_exch_recv(lport, fp); in fcoe_recv_frame()
2733 static void fcoe_flogi_resp(struct fc_seq *seq, struct fc_frame *fp, void *arg) in fcoe_flogi_resp() argument
2740 if (IS_ERR(fp)) in fcoe_flogi_resp()
2743 mac = fr_cb(fp)->granted_mac; in fcoe_flogi_resp()
2746 fcoe_ctlr_recv_flogi(fip, lport, fp); in fcoe_flogi_resp()
2750 fc_lport_flogi_resp(seq, fp, lport); in fcoe_flogi_resp()
2762 static void fcoe_logo_resp(struct fc_seq *seq, struct fc_frame *fp, void *arg) in fcoe_logo_resp() argument
2767 if (!IS_ERR(fp)) in fcoe_logo_resp()
2769 fc_lport_logo_resp(seq, fp, lport); in fcoe_logo_resp()
2782 struct fc_frame *fp, unsigned int op, in fcoe_elsct_send() argument
2791 struct fc_frame_header *fh = fc_frame_header_get(fp); in fcoe_elsct_send()
2798 return fc_elsct_send(lport, did, fp, op, fcoe_flogi_resp, in fcoe_elsct_send()
2804 return fc_elsct_send(lport, did, fp, op, fcoe_logo_resp, in fcoe_elsct_send()
2807 return fc_elsct_send(lport, did, fp, op, resp, arg, timeout); in fcoe_elsct_send()
2914 struct fc_frame *fp; in fcoe_set_vport_symbolic_name() local
2925 fp = fc_frame_alloc(lport, in fcoe_set_vport_symbolic_name()
2928 if (!fp) in fcoe_set_vport_symbolic_name()
2930 lport->tt.elsct_send(lport, FC_FID_DIR_SERV, fp, FC_NS_RSPN_ID, in fcoe_set_vport_symbolic_name()
2957 u32 port_id, struct fc_frame *fp) in fcoe_set_port_id() argument
2963 if (fp && fc_frame_payload_op(fp) == ELS_FLOGI) in fcoe_set_port_id()
2964 fcoe_ctlr_recv_flogi(ctlr, lport, fp); in fcoe_set_port_id()