Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx> wrote: > If the offset is within the ethernet + vlan header size boundary, then > rebuild the ethernet + vlan header and use it to copy the bytes to the > register. Otherwise, subtract the vlan header size from the offset and > fall back to use skb_copy_bits(). > > There is one corner case though: If the offset plus the length of the > payload instruction goes over the ethernet + vlan header boundary, then, > fetch as many bytes as possible from the rebuilt ethernet + vlan header > and fall back to copy the remaining bytes through skb_copy_bits(). This looks simpler indeed. Acked-by: Florian Westphal <fw@xxxxxxxxx>