我认为内核恐慌或者可能会发生等同的灾难性事件,但是否可能是NETLINK套接字上的发送或接收错误?
鉴于AF_NETLINK
套接字的AF_NETLINK
是与内核进行通信, 理论上 send
调用失败肯定是可能的,因为内核将检查递交给它的数据,并且可以决定所述数据是无意义的并拒绝send
(与任何errno它喜欢)。
更实际的是,由于您提供了数据指针,因此您可以提供一个无效指针(与任何send
或recv
调用一样),并立即发生EFAULT
错误。
如果recv
缓冲区有效且足够大, recv
一般不会失败(除了像EINTR
东西)。
我想你可以用更具体的代码得到更具体的答案。