繁体   English   中英

sk_buff copy&sk_buff clone

[英]sk_buff copy & sk_buff clone

我正在为linux内核编写一个模块,它试图窃取数据包及其相关的sk_buff 这样做我想使用struct sk_buff *skb_copy(const struct sk_buff *skb, gfp_t gfp_mask)然后在丢弃数据包时将返回类型传递给内核。

所以当内核获取有关数据包丢弃的信息时,它会尝试释放sk_buff。 这里我的问题是否会影响我新复制的skb及其数据包的指向数据? 或者现在我可以玩我的新sk_buff?

或者是否可以使用skb_clone()并使用分组数据部分而不删除旧sk_buff引用的数据,因为它将降低数据包的复制成本。

使用skb_copy会将sk_buff和数据包复制到新内存。 当内核释放另一个内核时的含义,副本不会受到影响。

另一方面, skb_clonesk_buff结构复制到新内存,而不是数据包。 释放旧版本时的含义,您的副本也将释放该数据包。

以下是一些链接:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM