Trusty now has the bug because it does not have the revert of commit d45d44e:
Trusty only has the one bad commit: d9ff970 af_unix: Revert 'lock_interruptible' in stream receive code Wily has the bad commit and the revert to fix it: 26a432a Revert "af_unix: Revert 'lock_interruptible' in stream receive code" b7a8f5d af_unix: Revert 'lock_interruptible' in stream receive code Xenial has the bad commit and the revert to fix it: d45d44e Revert "af_unix: Revert 'lock_interruptible' in stream receive code" 3822b5c af_unix: Revert 'lock_interruptible' in stream receive code This may be fixed upstream by the following commit: commit 1b92ee3d03af6643df395300ba7748f19ecdb0c5 Author: Rainer Weikusat <rweiku...@mobileactivedefense.com> Date: Mon Feb 8 18:47:19 2016 +0000 af_unix: Don't set err in unix_stream_read_generic unless there was an error -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1540731 Title: SocketMessenger::update_session_creds() fails to get client PID, causing "[ FAILED ] PromptSessionClientAPI.client_pid_is_associated_with_session" on kernel 4.4 (but kernel 4.3 works) Status in GLibC: New Status in Mir: Invalid Status in linux package in Ubuntu: In Progress Bug description: Since updating to the 4.4.0-2 kernel recvmsg() fails SCM_CREDENTIALS request with EOPNOTSUPP. This manifests as a test failure in Mir: [ RUN ] PromptSessionClientAPI.client_pid_is_associated_with_session unknown file: Failure Test case: #include <stdlib.h> #include <stdio.h> #include <sys/socket.h> #include <sys/stat.h> #include <assert.h> #include <errno.h> #include <string.h> int main() { enum { server, client, size }; int socket_fd[size]; int const opt = 1; assert(socketpair(AF_LOCAL, SOCK_STREAM, 0, socket_fd) == 0); char const msg[] = "A random message"; send(socket_fd[client], msg, sizeof msg, MSG_DONTWAIT | MSG_NOSIGNAL); assert(setsockopt(socket_fd[server], SOL_SOCKET, SO_PASSCRED, &opt, sizeof(opt)) != -1); union { struct cmsghdr cmh; char control[CMSG_SPACE(sizeof(ucred))]; } control_un; control_un.cmh.cmsg_len = CMSG_LEN(sizeof(ucred)); control_un.cmh.cmsg_level = SOL_SOCKET; control_un.cmh.cmsg_type = SCM_CREDENTIALS; msghdr msgh; msgh.msg_name = NULL; msgh.msg_namelen = 0; msgh.msg_iov = NULL; msgh.msg_iovlen = 0; msgh.msg_control = control_un.control; msgh.msg_controllen = sizeof(control_un.control); errno = 0; if (recvmsg(socket_fd[server], &msgh, MSG_PEEK) == -1) { printf("Error: %s\n", strerror(errno)); exit(EXIT_FAILURE); } else { printf("Success!\n"); exit(EXIT_SUCCESS); } } === Kernel-Description: recvmsg() fails SCM_CREDENTIALS request with EOPNOTSUPP. To manage notifications about this bug go to: https://bugs.launchpad.net/glibc/+bug/1540731/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp