On Tuesday, July 8, 2025 9:45 AM, Jakub Kicinski <kuba@xxxxxxxxxx> wrote: >On Tue, 8 Jul 2025 01:34:13 +0000 Song, Yoong Siang wrote: >> >For normal XDP my understanding is that its the driver's responsibility >> >to move the "reserved" stuff out of place before presenting the frame to >> >program. >> >> Is it means that driver needs to move out the "reserved" stuff before XDP program >> and then move back the stuff after XDP program for certain situation, like >XDP_PASS? > >Why would the driver need to move it back? >On XDP_PASS an skb is constructed, so the metadata should >be transferred to the skb. There is no need to copy it back >as a prepend. I said so because I thought need to put back the timestamp as prepend and then point skb_shared_hwtstamps.netdev_data to it to support the ndo_get_tstamp(). I haven't study the code flow in detail, so I might be missing something.