@@ -1688,6 +1688,15 @@ qed_iwarp_parse_rx_pkt(struct qed_hwfn *p_hwfn,
1688
1688
1689
1689
eth_hlen = ETH_HLEN + (vlan_valid ? sizeof (u32 ) : 0 );
1690
1690
1691
+ if (!ether_addr_equal (ethh -> h_dest ,
1692
+ p_hwfn -> p_rdma_info -> iwarp .mac_addr )) {
1693
+ DP_VERBOSE (p_hwfn ,
1694
+ QED_MSG_RDMA ,
1695
+ "Got unexpected mac %pM instead of %pM\n" ,
1696
+ ethh -> h_dest , p_hwfn -> p_rdma_info -> iwarp .mac_addr );
1697
+ return - EINVAL ;
1698
+ }
1699
+
1691
1700
ether_addr_copy (remote_mac_addr , ethh -> h_source );
1692
1701
ether_addr_copy (local_mac_addr , ethh -> h_dest );
1693
1702
@@ -2605,7 +2614,7 @@ qed_iwarp_ll2_start(struct qed_hwfn *p_hwfn,
2605
2614
struct qed_iwarp_info * iwarp_info ;
2606
2615
struct qed_ll2_acquire_data data ;
2607
2616
struct qed_ll2_cbs cbs ;
2608
- u32 mpa_buff_size ;
2617
+ u32 buff_size ;
2609
2618
u16 n_ooo_bufs ;
2610
2619
int rc = 0 ;
2611
2620
int i ;
@@ -2632,7 +2641,7 @@ qed_iwarp_ll2_start(struct qed_hwfn *p_hwfn,
2632
2641
2633
2642
memset (& data , 0 , sizeof (data ));
2634
2643
data .input .conn_type = QED_LL2_TYPE_IWARP ;
2635
- data .input .mtu = QED_IWARP_MAX_SYN_PKT_SIZE ;
2644
+ data .input .mtu = params -> max_mtu ;
2636
2645
data .input .rx_num_desc = QED_IWARP_LL2_SYN_RX_SIZE ;
2637
2646
data .input .tx_num_desc = QED_IWARP_LL2_SYN_TX_SIZE ;
2638
2647
data .input .tx_max_bds_per_packet = 1 ; /* will never be fragmented */
@@ -2654,9 +2663,10 @@ qed_iwarp_ll2_start(struct qed_hwfn *p_hwfn,
2654
2663
goto err ;
2655
2664
}
2656
2665
2666
+ buff_size = QED_IWARP_MAX_BUF_SIZE (params -> max_mtu );
2657
2667
rc = qed_iwarp_ll2_alloc_buffers (p_hwfn ,
2658
2668
QED_IWARP_LL2_SYN_RX_SIZE ,
2659
- QED_IWARP_MAX_SYN_PKT_SIZE ,
2669
+ buff_size ,
2660
2670
iwarp_info -> ll2_syn_handle );
2661
2671
if (rc )
2662
2672
goto err ;
@@ -2710,10 +2720,9 @@ qed_iwarp_ll2_start(struct qed_hwfn *p_hwfn,
2710
2720
if (rc )
2711
2721
goto err ;
2712
2722
2713
- mpa_buff_size = QED_IWARP_MAX_BUF_SIZE (params -> max_mtu );
2714
2723
rc = qed_iwarp_ll2_alloc_buffers (p_hwfn ,
2715
2724
data .input .rx_num_desc ,
2716
- mpa_buff_size ,
2725
+ buff_size ,
2717
2726
iwarp_info -> ll2_mpa_handle );
2718
2727
if (rc )
2719
2728
goto err ;
@@ -2726,7 +2735,7 @@ qed_iwarp_ll2_start(struct qed_hwfn *p_hwfn,
2726
2735
2727
2736
iwarp_info -> max_num_partial_fpdus = (u16 )p_hwfn -> p_rdma_info -> num_qps ;
2728
2737
2729
- iwarp_info -> mpa_intermediate_buf = kzalloc (mpa_buff_size , GFP_KERNEL );
2738
+ iwarp_info -> mpa_intermediate_buf = kzalloc (buff_size , GFP_KERNEL );
2730
2739
if (!iwarp_info -> mpa_intermediate_buf )
2731
2740
goto err ;
2732
2741
0 commit comments