Re: modifying struct sk_buff

From: Sharma Sushant
Date: Fri Jun 04 2004 - 13:53:49 EST



Hi Bart
thanks for replying.
I was thinking functions calling the alloc_skb will not
consider the size of new variable which I will add, thats
why I thought of adding the size my self while allocating
space.

I am using kernel 2.6.3 and here are few line from skbuff.h

> /*
> * This is the control buffer. It is free to use for every
> * layer. Please put your private variables there. If you
> * want to keep them across layers you have to do a skb_clone()
> * first. This is owned by whoever has the skb queued ATM.
> */
> uint32_t skBufId; /* by sushant */
> char cb[48];

skBufId is the variable i added and I want to assign unique value
to this id whenever alloc_skb is called.
Do you think it will be fine to modify alloc_skb(..)
and just assigning a unique value to this new variable which I added
or will there be some side effects of this.

Thanks
Sushant





On Fri, 4 Jun 2004, Bart Trojanowski wrote:

> * Sushant Sharma <sushant@xxxxxxxxxx> [040603 20:24]:
> > Hi
> > I want to add a new member (say uint32_t) in the
> > struct sk_buff{...}
> > in the file include/linux/skbuff.h.
> <snip>
> > Do I need to allocate memory for this member
> > ( ie add sizeof(_new-member_) to *size* while doing kmalloc() )
>
> Hi Sushant,
>
> I think you are confusing the allocation of 'data' with the allocation
> of 'skb'.
>
> If you add the uint32_t to struct sk_buff you don't have to modify
> alloc_skb. The skbuff_head_cache is informed what size the sk_buff
> structure is in skb_init().
>
> -Bart
>
> --
> WebSig: http://www.jukie.net/~bart/sig/
>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/