最近在使用netlink替换文件读取的方式,来获取系统的arp-proxy信息。想到一个问题,内核返回回来的数据,消息的长度最大是多少?
根据大数据模型的输出是,8192,是系统的一个默认返回消息的大小。如果实际内容大于8192,会分多个消息返回。
/*
* skb should fit one page. This choice is good for headerless malloc.
* But we should limit to 8K so that userspace does not have to
* use enormous buffer sizes on recvmsg() calls just to avoid
* MSG_TRUNC when PAGE_SIZE is very large.
*/
#if PAGE_SIZE < 8192UL