Re: [mkl-can:testing 1/1] include/linux/can/dev.h:113: undefined reference to `can_skb_headroom_valid'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Marc,

I built a Linux 5.5 rc1 with your patch without any problems. Any idea about this kbuild test failure?

So far vcan.o was not linked to dev.o as we only had the inline functions can_dropped_invalid_skb() and can_create_echo_skb() in dev.h.

dev.o contains all the netlink stuff for real CAN hardware which we are now linking as a whole.

Should we stay with can_skb_headroom_valid() as an inline function and do the clean-up later?

Regards,
Oliver


On 09/12/2019 21.44, kbuild test robot wrote:
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can.git testing
head:   c2e15330b56ee5a41ad98c7266de21a3af259647
commit: c2e15330b56ee5a41ad98c7266de21a3af259647 [1/1] can: ensure an initialized headroom in outgoing CAN sk_buffs
config: x86_64-randconfig-s0-20191210 (attached as .config)
compiler: gcc-6 (Debian 6.3.0-18+deb9u1) 6.3.0 20170516
reproduce:
         git checkout c2e15330b56ee5a41ad98c7266de21a3af259647
         # save the attached .config to linux build tree
         make ARCH=x86_64

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

    ld: drivers/net/can/vcan.o: in function `can_dropped_invalid_skb':
include/linux/can/dev.h:113: undefined reference to `can_skb_headroom_valid'

vim +113 include/linux/can/dev.h

     95	
     96	/* Drop a given socketbuffer if it does not contain a valid CAN frame. */
     97	static inline bool can_dropped_invalid_skb(struct net_device *dev,
     98						  struct sk_buff *skb)
     99	{
    100		const struct canfd_frame *cfd = (struct canfd_frame *)skb->data;
    101	
    102		if (skb->protocol == htons(ETH_P_CAN)) {
    103			if (unlikely(skb->len != CAN_MTU ||
    104				     cfd->len > CAN_MAX_DLEN))
    105				goto inval_skb;
    106		} else if (skb->protocol == htons(ETH_P_CANFD)) {
    107			if (unlikely(skb->len != CANFD_MTU ||
    108				     cfd->len > CANFD_MAX_DLEN))
    109				goto inval_skb;
    110		} else
    111			goto inval_skb;
    112	
  > 113		if (!can_skb_headroom_valid(dev, skb))
    114			goto inval_skb;
    115	
    116		return false;
    117	
    118	inval_skb:
    119		kfree_skb(skb);
    120		dev->stats.tx_dropped++;
    121		return true;
    122	}
    123	

---
0-DAY kernel test infrastructure                 Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx Intel Corporation




[Index of Archives]     [Automotive Discussions]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]     [CAN Bus]

  Powered by Linux