Skip to content

Commit

Permalink
uml: fix recvmsg return value checking
Browse files Browse the repository at this point in the history
Stupid bug - we need to compare the return value of recvmsg to the value of
iov_len, not its size.  This caused port_helper processes not to be killed on
shutdown on x86_64 because the pids weren't being passed out properly.

Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Jeff Dike authored and Linus Torvalds committed Nov 15, 2007
1 parent df9d177 commit d4d5d20
Showing 1 changed file with 1 addition and 2 deletions.
3 changes: 1 addition & 2 deletions arch/um/os-Linux/file.c
Original file line number Diff line number Diff line change
Expand Up @@ -496,8 +496,7 @@ int os_rcv_fd(int fd, int *helper_pid_out)
n = recvmsg(fd, &msg, 0);
if(n < 0)
return -errno;

else if(n != sizeof(iov.iov_len))
else if(n != iov.iov_len)
*helper_pid_out = -1;

cmsg = CMSG_FIRSTHDR(&msg);
Expand Down

0 comments on commit d4d5d20

Please sign in to comment.