38 lines · plain
1.. SPDX-License-Identifier: GPL-2.02 3struct sk_buff4==============5 6:c:type:`sk_buff` is the main networking structure representing7a packet.8 9Basic sk_buff geometry10----------------------11 12.. kernel-doc:: include/linux/skbuff.h13 :doc: Basic sk_buff geometry14 15Shared skbs and skb clones16--------------------------17 18:c:member:`sk_buff.users` is a simple refcount allowing multiple entities19to keep a struct sk_buff alive. skbs with a ``sk_buff.users != 1`` are referred20to as shared skbs (see skb_shared()).21 22skb_clone() allows for fast duplication of skbs. None of the data buffers23get copied, but caller gets a new metadata struct (struct sk_buff).24&skb_shared_info.refcount indicates the number of skbs pointing at the same25packet data (i.e. clones).26 27dataref and headerless skbs28---------------------------29 30.. kernel-doc:: include/linux/skbuff.h31 :doc: dataref and headerless skbs32 33Checksum information34--------------------35 36.. kernel-doc:: include/linux/skbuff.h37 :doc: skb checksums38