Message ID | 8e3c0fc229bbbc549e2529e3c174b7ef477b181c.1483487887.git.mirq-linux@rere.qmqm.pl |
---|---|
State | Changes Requested, archived |
Delegated to: | David Miller |
Headers | show |
Hi Michał, [auto build test ERROR on net-next/master] url: https://github.com/0day-ci/linux/commits/Micha-Miros-aw/ibmvnic-fix-accelerated-VLAN-handling/20170104-095210 config: powerpc-allmodconfig (attached as .config) compiler: powerpc64-linux-gnu-gcc (Debian 6.1.1-9) 6.1.1 20160705 reproduce: wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree make.cross ARCH=powerpc All errors (new ones prefixed by >>): drivers/net/ethernet/ibm/ibmvnic.c: In function 'ibmvnic_xmit': >> drivers/net/ethernet/ibm/ibmvnic.c:768:40: error: implicit declaration of function 'skb_vlan_tag_present' [-Werror=implicit-function-declaration] if (adapter->vlan_header_insertion && skb_vlan_tag_present(skb)) { ^~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/ibm/ibmvnic.c: In function 'ibmvnic_poll': >> drivers/net/ethernet/ibm/ibmvnic.c:968:4: error: implicit declaration of function '__vlan_hwaccel_put_tag' [-Werror=implicit-function-declaration] __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), be16_to_cpu(next->rx_comp.vlan_tci)); ^~~~~~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +/skb_vlan_tag_present +768 drivers/net/ethernet/ibm/ibmvnic.c 762 tx_crq.v1.flags1 = IBMVNIC_TX_COMP_NEEDED; 763 tx_crq.v1.correlator = cpu_to_be32(index); 764 tx_crq.v1.dma_reg = cpu_to_be16(tx_pool->long_term_buff.map_id); 765 tx_crq.v1.sge_len = cpu_to_be32(skb->len); 766 tx_crq.v1.ioba = cpu_to_be64(data_dma_addr); 767 > 768 if (adapter->vlan_header_insertion && skb_vlan_tag_present(skb)) { 769 tx_crq.v1.flags2 |= IBMVNIC_TX_VLAN_INSERT; 770 tx_crq.v1.vlan_id = cpu_to_be16(skb->vlan_tci); 771 } --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
diff --git a/drivers/net/ethernet/ibm/ibmvnic.c b/drivers/net/ethernet/ibm/ibmvnic.c index c12596676bbb..c7664db9019c 100644 --- a/drivers/net/ethernet/ibm/ibmvnic.c +++ b/drivers/net/ethernet/ibm/ibmvnic.c @@ -765,7 +765,7 @@ static int ibmvnic_xmit(struct sk_buff *skb, struct net_device *netdev) tx_crq.v1.sge_len = cpu_to_be32(skb->len); tx_crq.v1.ioba = cpu_to_be64(data_dma_addr); - if (adapter->vlan_header_insertion) { + if (adapter->vlan_header_insertion && skb_vlan_tag_present(skb)) { tx_crq.v1.flags2 |= IBMVNIC_TX_VLAN_INSERT; tx_crq.v1.vlan_id = cpu_to_be16(skb->vlan_tci); } @@ -964,7 +964,8 @@ static int ibmvnic_poll(struct napi_struct *napi, int budget) skb = rx_buff->skb; skb_copy_to_linear_data(skb, rx_buff->data + offset, length); - skb->vlan_tci = be16_to_cpu(next->rx_comp.vlan_tci); + if (flags & IBMVNIC_VLAN_STRIPPED) + __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), be16_to_cpu(next->rx_comp.vlan_tci)); /* free the entry */ next->rx_comp.first = 0; remove_buff_from_pool(adapter, rx_buff);
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl> --- drivers/net/ethernet/ibm/ibmvnic.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)