The pattern still is in the kernel
In __i40e_chk_linearize:
const skb_frag_t *frag
..
frag = &skb_shinfo(skb)->frags[0];


And even in the DPDK mod code this works still:

  size = skb_frag_size(frag);

That function signature still is unchanged.
It only changed to return the new bv_len which is a union with the old size.


So both functions called have
   const skb_frag_t *frag
in their signature
static inline dma_addr_t skb_frag_dma_map(struct device *dev, const skb_frag_t 
*frag, 
static inline unsigned int skb_frag_size(const skb_frag_t *frag)

That is 'const skb_frag_t *frag' for both, but only on the latter does it 
complain?
Ah no, flooded by errors - it complains at both.

The start of it all is the derive from that pointer:
/usr/src/dpdk-rte-kni-18.11.2/ethtool/igb/igb_main.c:5352:12: error: assignment 
to ‘struct skb_frag_struct *’ from incompatible pointer type ‘skb_frag_t *’ 
{aka ‘struct bio_vec *’} [-Werror=incompatible-pointer-types]
 5352 |  for (frag = &skb_shinfo(skb)->frags[0];; frag++) {

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1848585

Title:
  dpdk 18.11.2-4 ADT test failure with linux 5.4.0-1.2

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/dpdk/+bug/1848585/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to