Description: The sockfd_lookup_light() function does not set the return error status on a particular failure mode when the passed-in fd# is erroneous. Environment: 2.6.16 kernel with the -mm2 patch-set applied. Linux 2.6.17 kernels are also affected. Without the fix, a number of tests in LTP fail! Any program calling one of the syscalls listed below with a bad fd# will not get an error return indicating that the syscall failed. Fix: The attached patch correctly sets *err = -EBADF if the attempt to map the fd# to a file pointer returns NULL. The following syscalls are affected- bind() listen() accept() connect() getsockname() getpeername() setsockopt() setsockopt() shutdown() sendmsg() recvmsg()