aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/bnx2fc/bnx2fc_fcoe.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/bnx2fc/bnx2fc_fcoe.c')
-rw-r--r--drivers/scsi/bnx2fc/bnx2fc_fcoe.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/scsi/bnx2fc/bnx2fc_fcoe.c b/drivers/scsi/bnx2fc/bnx2fc_fcoe.c
index 8c6156a10d90..a9af42e83632 100644
--- a/drivers/scsi/bnx2fc/bnx2fc_fcoe.c
+++ b/drivers/scsi/bnx2fc/bnx2fc_fcoe.c
@@ -322,8 +322,7 @@ static int bnx2fc_xmit(struct fc_lport *lport, struct fc_frame *fp)
322 return -ENOMEM; 322 return -ENOMEM;
323 } 323 }
324 frag = &skb_shinfo(skb)->frags[skb_shinfo(skb)->nr_frags - 1]; 324 frag = &skb_shinfo(skb)->frags[skb_shinfo(skb)->nr_frags - 1];
325 cp = kmap_atomic(skb_frag_page(frag), KM_SKB_DATA_SOFTIRQ) 325 cp = kmap_atomic(skb_frag_page(frag)) + frag->page_offset;
326 + frag->page_offset;
327 } else { 326 } else {
328 cp = (struct fcoe_crc_eof *)skb_put(skb, tlen); 327 cp = (struct fcoe_crc_eof *)skb_put(skb, tlen);
329 } 328 }
@@ -332,7 +331,7 @@ static int bnx2fc_xmit(struct fc_lport *lport, struct fc_frame *fp)
332 cp->fcoe_eof = eof; 331 cp->fcoe_eof = eof;
333 cp->fcoe_crc32 = cpu_to_le32(~crc); 332 cp->fcoe_crc32 = cpu_to_le32(~crc);
334 if (skb_is_nonlinear(skb)) { 333 if (skb_is_nonlinear(skb)) {
335 kunmap_atomic(cp, KM_SKB_DATA_SOFTIRQ); 334 kunmap_atomic(cp);
336 cp = NULL; 335 cp = NULL;
337 } 336 }
338 337