diff --git a/net/socket.c b/net/socket.c index 1030a612423be3eb0924a86380c2ec2850d7d0c4..29169045dcfe5b7777a4a538069c0abf28a0b563 100644 --- a/net/socket.c +++ b/net/socket.c @@ -474,7 +474,7 @@ static struct socket *sockfd_lookup_light(int fd, int *err, int *fput_needed) if (f.file) { sock = sock_from_file(f.file, err); if (likely(sock)) { - *fput_needed = f.flags; + *fput_needed = f.flags & FDPUT_FPUT; return sock; } fdput(f);