summaryrefslogtreecommitdiffstats
path: root/net/ipv4/af_inet.c
diff options
context:
space:
mode:
authorKen-ichirou MATSUZAWA <chamaken@gmail.com>2015-08-31 07:54:49 +0900
committerDavid S. Miller <davem@davemloft.net>2015-08-30 21:55:51 -0700
commit0ef707700f1cef2357ce655fc86a4de5e41fa4b5 (patch)
tree14962df2ccafdd0b86155d18b40cddd17d9e70a8 /net/ipv4/af_inet.c
parent793768f55c218a260015fe2029ae3d84676cae03 (diff)
downloadlinux-0ef707700f1cef2357ce655fc86a4de5e41fa4b5.tar.bz2
netlink: rx mmap: fix POLLIN condition
Poll() returns immediately after setting the kernel current frame (ring->head) to SKIP from user space even though there is no new frame. And in a case of all frames is VALID, user space program unintensionally sets (only) kernel current frame to UNUSED, then calls poll(), it will not return immediately even though there are VALID frames. To avoid situations like above, I think we need to scan all frames to find VALID frames at poll() like netlink_alloc_skb(), netlink_forward_ring() finding an UNUSED frame at skb allocation. Signed-off-by: Ken-ichirou MATSUZAWA <chamas@h4.dion.ne.jp> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/af_inet.c')
0 files changed, 0 insertions, 0 deletions