Welcome to Our Community

While Linux.org has been around for a while, we recently changed management and had to purge most of the content (including users). If you signed up before April 23rd please sign up again. Thanks!

Embedded Linux Kernel Networking issue - skb headroom values

Discussion in 'Forum Assistance' started by stevenr, Aug 30, 2013.

  1. stevenr

    stevenr Guest

    Embedded Linux Kernel Networking issue using skb buffer
    Anaysis of the skb buffer shows a headroom of 2 bytes. Sometimes the headroom value of two bytes is zero and sometimes it isn't.
    In calling alloc_buffer(), skb_reserve(skb, 2), skb_put() and then csum_and_copy_from_user(), the later sometimes returns -EFAULT (-14) which seems to be bad address and sometimes it succeeds.
    I believe the failure is because it sometimes (possibly the first time) expects a specific value in the headroom (the data portion is always the same, it is a ping ICMP message). If anyone understands exactly what the headroom is supposed to contain and from where please advise.
    Thank you for your help in advance.


     

Share This Page