[lvc-project] [EXT] [PATCH] net: atlantic: Fix NULL dereference of skb pointer in

Igor Russkikh irusskikh at marvell.com
Mon Dec 4 19:06:46 MSK 2023


Hi Daniil,

> If is_ptp_ring == true in the loop of __aq_ring_xdp_clean function,
> then a timestamp is stored from a packet in a field of skb object,
> which is not allocated at the moment of the call (skb == NULL).
> 
> Generalize aq_ptp_extract_ts and other affected functions so they don't
> work with struct sk_buff*, but with struct skb_shared_hwtstamps*.
> 
> Found by Linux Verification Center (linuxtesting.org) with SVACE

Thanks for finding this and working on this.

Have you reproduced it in wild, or this just comes out of static analysis?

I'm asking because looking into the flow you described - it looks like XDP
mode should immediately fail with null pointer access on any rx traffic.
But that was never reported.

I will try to debug and validate the fix, but this may take some time.

So for now 

Reviewed-by: Igor Russkikh <irusskikh at marvell.com>


Thanks
  Igor



More information about the lvc-project mailing list