04 Feb, 2017

1 commit

  • [ Upstream commit 0fb44559ffd67de8517098b81f675fa0210f13f0 ]

    Dmitry reported a deadlock scenario:

    unix_bind() path:
    u->bindlock ==> sb_writer

    do_splice() path:
    sb_writer ==> pipe->mutex ==> u->bindlock

    In the unix_bind() code path, unix_mknod() does not have to
    be done with u->bindlock held, since it is a pure fs operation,
    so we can just move unix_mknod() out.

    Reported-by: Dmitry Vyukov
    Tested-by: Dmitry Vyukov
    Cc: Rainer Weikusat
    Cc: Al Viro
    Signed-off-by: Cong Wang
    Signed-off-by: David S. Miller
    Signed-off-by: Greg Kroah-Hartman

    WANG Cong
     

19 Nov, 2016

1 commit

  • Commit 2b15af6f95 ("af_unix: use freezable blocking calls in read")
    converts schedule_timeout() to its freezable version, it was probably
    correct at that time, but later, commit 2b514574f7e8
    ("net: af_unix: implement splice for stream af_unix sockets") breaks
    the strong requirement for a freezable sleep, according to
    commit 0f9548ca1091:

    We shouldn't try_to_freeze if locks are held. Holding a lock can cause a
    deadlock if the lock is later acquired in the suspend or hibernate path
    (e.g. by dpm). Holding a lock can also cause a deadlock in the case of
    cgroup_freezer if a lock is held inside a frozen cgroup that is later
    acquired by a process outside that group.

    The pipe_lock is still held at that point.

    So use freezable version only for the recvmsg call path, avoid impact for
    Android.

    Fixes: 2b514574f7e8 ("net: af_unix: implement splice for stream af_unix sockets")
    Reported-by: Dmitry Vyukov
    Cc: Tejun Heo
    Cc: Colin Cross
    Cc: Rafael J. Wysocki
    Cc: Hannes Frederic Sowa
    Signed-off-by: Cong Wang
    Signed-off-by: David S. Miller

    WANG Cong
     

02 Nov, 2016

1 commit

  • Abstract unix domain socket may embed null characters,
    these should be translated to '@' when printed out to
    proc the same way the null prefix is currently being
    translated.

    This helps for tools such as netstat, lsof and the proc
    based implementation in ss to show all the significant
    bytes of the name (instead of getting cut at the first
    null occurrence).

    Signed-off-by: Isaac Boukris
    Signed-off-by: David S. Miller

    Isaac Boukris
     

04 Oct, 2016

1 commit

  • since pipe_lock is the outermost now, we don't need to drop/regain
    socket locks around the call of splice_to_pipe() from skb_splice_bits(),
    which kills the need to have a socket-specific callback; we can just
    call splice_to_pipe() and be done with that.

    Signed-off-by: Al Viro

    Al Viro
     

05 Sep, 2016

2 commits

  • Right now we use the 'readlock' both for protecting some of the af_unix
    IO path and for making the bind be single-threaded.

    The two are independent, but using the same lock makes for a nasty
    deadlock due to ordering with regards to filesystem locking. The bind
    locking would want to nest outside the VSF pathname locking, but the IO
    locking wants to nest inside some of those same locks.

    We tried to fix this earlier with commit c845acb324aa ("af_unix: Fix
    splice-bind deadlock") which moved the readlock inside the vfs locks,
    but that caused problems with overlayfs that will then call back into
    filesystem routines that take the lock in the wrong order anyway.

    Splitting the locks means that we can go back to having the bind lock be
    the outermost lock, and we don't have any deadlocks with lock ordering.

    Acked-by: Rainer Weikusat
    Acked-by: Al Viro
    Signed-off-by: Linus Torvalds
    Acked-by: Hannes Frederic Sowa
    Signed-off-by: David S. Miller

    Linus Torvalds
     
  • This reverts commit c845acb324aa85a39650a14e7696982ceea75dc1.

    It turns out that it just replaces one deadlock with another one: we can
    still get the wrong lock ordering with the readlock due to overlayfs
    calling back into the filesystem layer and still taking the vfs locks
    after the readlock.

    The proper solution ends up being to just split the readlock into two
    pieces: the bind lock (taken *outside* the vfs locks) and the IO lock
    (taken *inside* the filesystem locks). The two locks are independent
    anyway.

    Signed-off-by: Linus Torvalds
    Reviewed-by: Shmulik Ladkani
    Signed-off-by: David S. Miller

    Linus Torvalds
     

27 Jul, 2016

1 commit


12 Jun, 2016

1 commit


21 May, 2016

1 commit

  • Overlayfs uses separate inodes even in the case of hard links on the
    underlying filesystems. This is a problem for AF_UNIX socket
    implementation which indexes sockets based on the inode. This resulted in
    hard linked sockets not working.

    The fix is to use the real, underlying inode.

    Test case follows:

    -- ovl-sock-test.c --
    #include
    #include
    #include
    #include

    #define SOCK "test-sock"
    #define SOCK2 "test-sock2"

    int main(void)
    {
    int fd, fd2;
    struct sockaddr_un addr = {
    .sun_family = AF_UNIX,
    .sun_path = SOCK,
    };
    struct sockaddr_un addr2 = {
    .sun_family = AF_UNIX,
    .sun_path = SOCK2,
    };

    unlink(SOCK);
    unlink(SOCK2);
    if ((fd = socket(AF_UNIX, SOCK_STREAM, 0)) == -1)
    err(1, "socket");
    if (bind(fd, (struct sockaddr *) &addr, sizeof(addr)) == -1)
    err(1, "bind");
    if (listen(fd, 0) == -1)
    err(1, "listen");
    if (link(SOCK, SOCK2) == -1)
    err(1, "link");
    if ((fd2 = socket(AF_UNIX, SOCK_STREAM, 0)) == -1)
    err(1, "socket");
    if (connect(fd2, (struct sockaddr *) &addr2, sizeof(addr2)) == -1)
    err (1, "connect");
    return 0;
    }
    ----

    Reported-by: Alexander Morozov
    Signed-off-by: Miklos Szeredi
    Cc:

    Miklos Szeredi
     

28 Mar, 2016

1 commit


23 Feb, 2016

1 commit


20 Feb, 2016

2 commits

  • The unix_stream_read_generic function tries to use a continue statement
    to restart the receive loop after waiting for a message. This may not
    work as intended as the caller might use a recvmsg call to peek at
    control messages without specifying a message buffer. If this was the
    case, the continue will cause the function to return without an error
    and without the credential information if the function had to wait for a
    message while it had returned with the credentials otherwise. Change to
    using goto to restart the loop without checking the condition first in
    this case so that credentials are returned either way.

    Signed-off-by: Rainer Weikusat
    Acked-by: Hannes Frederic Sowa
    Signed-off-by: David S. Miller

    Rainer Weikusat
     
  • The value passed by unix_diag_get_exact to unix_lookup_by_ino has type
    __u32, but unix_lookup_by_ino's argument ino has type int, which is not
    a problem yet.
    However, when ino is compared with sock_i_ino return value of type
    unsigned long, ino is sign extended to signed long, and this results
    to incorrect comparison on 64-bit architectures for inode numbers
    greater than INT_MAX.

    This bug was found by strace test suite.

    Fixes: 5d3cae8bc39d ("unix_diag: Dumping exact socket core")
    Signed-off-by: Dmitry V. Levin
    Acked-by: Cong Wang
    Signed-off-by: David S. Miller

    Dmitry V. Levin
     

17 Feb, 2016

2 commits

  • The unix_dgram_sendmsg routine use the following test

    if (unlikely(unix_peer(other) != sk && unix_recvq_full(other))) {

    to determine if sk and other are in an n:1 association (either
    established via connect or by using sendto to send messages to an
    unrelated socket identified by address). This isn't correct as the
    specified address could have been bound to the sending socket itself or
    because this socket could have been connected to itself by the time of
    the unix_peer_get but disconnected before the unix_state_lock(other). In
    both cases, the if-block would be entered despite other == sk which
    might either block the sender unintentionally or lead to trying to unlock
    the same spin lock twice for a non-blocking send. Add a other != sk
    check to guard against this.

    Fixes: 7d267278a9ec ("unix: avoid use-after-free in ep_remove_wait_queue")
    Reported-By: Philipp Hahn
    Signed-off-by: Rainer Weikusat
    Tested-by: Philipp Hahn
    Signed-off-by: David S. Miller

    Rainer Weikusat
     
  • The present unix_stream_read_generic contains various code sequences of
    the form

    err = -EDISASTER;
    if ()
    goto out;

    This has the unfortunate side effect of possibly causing the error code
    to bleed through to the final

    out:
    return copied ? : err;

    and then to be wrongly returned if no data was copied because the caller
    didn't supply a data buffer, as demonstrated by the program available at

    http://pad.lv/1540731

    Change it such that err is only set if an error condition was detected.

    Fixes: 3822b5c2fc62 ("af_unix: Revert 'lock_interruptible' in stream receive code")
    Reported-by: Joseph Salisbury
    Signed-off-by: Rainer Weikusat
    Signed-off-by: David S. Miller

    Rainer Weikusat
     

08 Feb, 2016

2 commits

  • The commit referenced in the Fixes tag incorrectly accounted the number
    of in-flight fds over a unix domain socket to the original opener
    of the file-descriptor. This allows another process to arbitrary
    deplete the original file-openers resource limit for the maximum of
    open files. Instead the sending processes and its struct cred should
    be credited.

    To do so, we add a reference counted struct user_struct pointer to the
    scm_fp_list and use it to account for the number of inflight unix fds.

    Fixes: 712f4aad406bb1 ("unix: properly account for FDs passed over unix sockets")
    Reported-by: David Herrmann
    Cc: David Herrmann
    Cc: Willy Tarreau
    Cc: Linus Torvalds
    Suggested-by: Linus Torvalds
    Signed-off-by: Hannes Frederic Sowa
    Signed-off-by: David S. Miller

    Hannes Frederic Sowa
     
  • Remove a write-only stack variable from unix_attach_fds(). This is a
    left-over from the security fix in:

    commit 712f4aad406bb1ed67f3f98d04c044191f0ff593
    Author: willy tarreau
    Date: Sun Jan 10 07:54:56 2016 +0100

    unix: properly account for FDs passed over unix sockets

    Signed-off-by: David Herrmann
    Acked-by: Hannes Frederic Sowa
    Signed-off-by: David S. Miller

    David Herrmann
     

25 Jan, 2016

1 commit

  • Dmitry reported a struct pid leak detected by a syzkaller program.

    Bug happens in unix_stream_recvmsg() when we break the loop when a
    signal is pending, without properly releasing scm.

    Fixes: b3ca9b02b007 ("net: fix multithreaded signal handling in unix recv routines")
    Reported-by: Dmitry Vyukov
    Signed-off-by: Eric Dumazet
    Cc: Rainer Weikusat
    Signed-off-by: David S. Miller

    Eric Dumazet
     

12 Jan, 2016

1 commit


11 Jan, 2016

1 commit

  • It is possible for a process to allocate and accumulate far more FDs than
    the process' limit by sending them over a unix socket then closing them
    to keep the process' fd count low.

    This change addresses this problem by keeping track of the number of FDs
    in flight per user and preventing non-privileged processes from having
    more FDs in flight than their configured FD limit.

    Reported-by: socketpair@gmail.com
    Reported-by: Tetsuo Handa
    Mitigates: CVE-2013-4312 (Linux 2.0+)
    Suggested-by: Linus Torvalds
    Acked-by: Hannes Frederic Sowa
    Signed-off-by: Willy Tarreau
    Signed-off-by: David S. Miller

    willy tarreau
     

07 Jan, 2016

1 commit


05 Jan, 2016

1 commit

  • On 2015/11/06, Dmitry Vyukov reported a deadlock involving the splice
    system call and AF_UNIX sockets,

    http://lists.openwall.net/netdev/2015/11/06/24

    The situation was analyzed as

    (a while ago) A: socketpair()
    B: splice() from a pipe to /mnt/regular_file
    does sb_start_write() on /mnt
    C: try to freeze /mnt
    wait for B to finish with /mnt
    A: bind() try to bind our socket to /mnt/new_socket_name
    lock our socket, see it not bound yet
    decide that it needs to create something in /mnt
    try to do sb_start_write() on /mnt, block (it's
    waiting for C).
    D: splice() from the same pipe to our socket
    lock the pipe, see that socket is connected
    try to lock the socket, block waiting for A
    B: get around to actually feeding a chunk from
    pipe to file, try to lock the pipe. Deadlock.

    on 2015/11/10 by Al Viro,

    http://lists.openwall.net/netdev/2015/11/10/4

    The patch fixes this by removing the kern_path_create related code from
    unix_mknod and executing it as part of unix_bind prior acquiring the
    readlock of the socket in question. This means that A (as used above)
    will sb_start_write on /mnt before it acquires the readlock, hence, it
    won't indirectly block B which first did a sb_start_write and then
    waited for a thread trying to acquire the readlock. Consequently, A
    being blocked by C waiting for B won't cause a deadlock anymore
    (effectively, both A and B acquire two locks in opposite order in the
    situation described above).

    Dmitry Vyukov() tested the original patch.

    Signed-off-by: Rainer Weikusat
    Signed-off-by: David S. Miller

    Rainer Weikusat
     

18 Dec, 2015

2 commits

  • Conflicts:
    drivers/net/geneve.c

    Here we had an overlapping change, where in 'net' the extraneous stats
    bump was being removed whilst in 'net-next' the final argument to
    udp_tunnel6_xmit_skb() was being changed.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • With b3ca9b02b00704053a38bfe4c31dbbb9c13595d0, the AF_UNIX SOCK_STREAM
    receive code was changed from using mutex_lock(&u->readlock) to
    mutex_lock_interruptible(&u->readlock) to prevent signals from being
    delayed for an indefinite time if a thread sleeping on the mutex
    happened to be selected for handling the signal. But this was never a
    problem with the stream receive code (as opposed to its datagram
    counterpart) as that never went to sleep waiting for new messages with the
    mutex held and thus, wouldn't cause secondary readers to block on the
    mutex waiting for the sleeping primary reader. As the interruptible
    locking makes the code more complicated in exchange for no benefit,
    change it back to using mutex_lock.

    Signed-off-by: Rainer Weikusat
    Acked-by: Hannes Frederic Sowa
    Signed-off-by: David S. Miller

    Rainer Weikusat
     

07 Dec, 2015

1 commit

  • The current unix_dgram_recvsmg code acquires the u->readlock mutex in
    order to protect access to the peek offset prior to calling
    __skb_recv_datagram for actually receiving data. This implies that a
    blocking reader will go to sleep with this mutex held if there's
    presently no data to return to userspace. Two non-desirable side effects
    of this are that a later non-blocking read call on the same socket will
    block on the ->readlock mutex until the earlier blocking call releases it
    (or the readers is interrupted) and that later blocking read calls
    will wait longer than the effective socket read timeout says they
    should: The timeout will only start 'ticking' once such a reader hits
    the schedule_timeout in wait_for_more_packets (core.c) while the time it
    already had to wait until it could acquire the mutex is unaccounted for.

    The patch avoids both by using the __skb_try_recv_datagram and
    __skb_wait_for_more packets functions created by the first patch to
    implement a unix_dgram_recvmsg read loop which releases the readlock
    mutex prior to going to sleep and reacquires it as needed
    afterwards. Non-blocking readers will thus immediately return with
    -EAGAIN if there's no data available regardless of any concurrent
    blocking readers and all blocking readers will end up sleeping via
    schedule_timeout, thus honouring the configured socket receive timeout.

    Signed-off-by: Rainer Weikusat
    Signed-off-by: David S. Miller

    Rainer Weikusat
     

04 Dec, 2015

1 commit


02 Dec, 2015

2 commits

  • This patch is a cleanup to make following patch easier to
    review.

    Goal is to move SOCK_ASYNC_NOSPACE and SOCK_ASYNC_WAITDATA
    from (struct socket)->flags to a (struct socket_wq)->flags
    to benefit from RCU protection in sock_wake_async()

    To ease backports, we rename both constants.

    Two new helpers, sk_set_bit(int nr, struct sock *sk)
    and sk_clear_bit(int net, struct sock *sk) are added so that
    following patch can change their implementation.

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • The current unix_dgram_recvmsg does a wake up for every received
    datagram. This seems wasteful as only SOCK_DGRAM client sockets in an
    n:1 association with a server socket will ever wait because of the
    associated condition. The patch below changes the function such that the
    wake up only happens if wq_has_sleeper indicates that someone actually
    wants to be notified. Testing with SOCK_SEQPACKET and SOCK_DGRAM socket
    seems to confirm that this is an improvment.

    Signed-Off-By: Rainer Weikusat

    Signed-off-by: David S. Miller

    Rainer Weikusat
     

01 Dec, 2015

2 commits

  • sendpage did not care about credentials at all. This could lead to
    situations in which because of fd passing between processes we could
    append data to skbs with different scm data. It is illegal to splice those
    skbs together. Instead we have to allocate a new skb and if requested
    fill out the scm details.

    Fixes: 869e7c62486ec ("net: af_unix: implement stream sendpage support")
    Reported-by: Al Viro
    Cc: Al Viro
    Cc: Eric Dumazet
    Signed-off-by: Hannes Frederic Sowa
    Signed-off-by: David S. Miller

    Hannes Frederic Sowa
     
  • The memory barrier in the helper wq_has_sleeper is needed by just
    about every user of waitqueue_active. This patch generalises it
    by making it take a wait_queue_head_t directly. The existing
    helper is renamed to skwq_has_sleeper.

    Signed-off-by: Herbert Xu
    Signed-off-by: David S. Miller

    Herbert Xu
     

24 Nov, 2015

1 commit

  • Rainer Weikusat writes:
    An AF_UNIX datagram socket being the client in an n:1 association with
    some server socket is only allowed to send messages to the server if the
    receive queue of this socket contains at most sk_max_ack_backlog
    datagrams. This implies that prospective writers might be forced to go
    to sleep despite none of the message presently enqueued on the server
    receive queue were sent by them. In order to ensure that these will be
    woken up once space becomes again available, the present unix_dgram_poll
    routine does a second sock_poll_wait call with the peer_wait wait queue
    of the server socket as queue argument (unix_dgram_recvmsg does a wake
    up on this queue after a datagram was received). This is inherently
    problematic because the server socket is only guaranteed to remain alive
    for as long as the client still holds a reference to it. In case the
    connection is dissolved via connect or by the dead peer detection logic
    in unix_dgram_sendmsg, the server socket may be freed despite "the
    polling mechanism" (in particular, epoll) still has a pointer to the
    corresponding peer_wait queue. There's no way to forcibly deregister a
    wait queue with epoll.

    Based on an idea by Jason Baron, the patch below changes the code such
    that a wait_queue_t belonging to the client socket is enqueued on the
    peer_wait queue of the server whenever the peer receive queue full
    condition is detected by either a sendmsg or a poll. A wake up on the
    peer queue is then relayed to the ordinary wait queue of the client
    socket via wake function. The connection to the peer wait queue is again
    dissolved if either a wake up is about to be relayed or the client
    socket reconnects or a dead peer is detected or the client socket is
    itself closed. This enables removing the second sock_poll_wait from
    unix_dgram_poll, thus avoiding the use-after-free, while still ensuring
    that no blocked writer sleeps forever.

    Signed-off-by: Rainer Weikusat
    Fixes: ec0d215f9420 ("af_unix: fix 'poll for write'/connected DGRAM sockets")
    Reviewed-by: Jason Baron
    Signed-off-by: David S. Miller

    Rainer Weikusat
     

18 Nov, 2015

1 commit

  • While possibly in future we don't necessarily need to use
    sk_buff_head.lock this is a rather larger change, as it affects the
    af_unix fd garbage collector, diag and socket cleanups. This is too much
    for a stable patch.

    For the time being grab sk_buff_head.lock without disabling bh and irqs,
    so don't use locked skb_queue_tail.

    Fixes: 869e7c62486e ("net: af_unix: implement stream sendpage support")
    Cc: Eric Dumazet
    Signed-off-by: Hannes Frederic Sowa
    Reported-by: Eric Dumazet
    Acked-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Hannes Frederic Sowa
     

17 Nov, 2015

1 commit

  • In case multiple writes to a unix stream socket race we could end up in a
    situation where we pre-allocate a new skb for use in unix_stream_sendpage
    but have to free it again in the locked section because another skb
    has been appended meanwhile, which we must use. Accidentally we didn't
    clear the pointer after consuming it and so we touched freed memory
    while appending it to the sk_receive_queue. So, clear the pointer after
    consuming the skb.

    This bug has been found with syzkaller
    (http://github.com/google/syzkaller) by Dmitry Vyukov.

    Fixes: 869e7c62486e ("net: af_unix: implement stream sendpage support")
    Reported-by: Dmitry Vyukov
    Cc: Dmitry Vyukov
    Cc: Eric Dumazet
    Signed-off-by: Hannes Frederic Sowa
    Acked-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Hannes Frederic Sowa
     

16 Nov, 2015

1 commit

  • During splicing an af-unix socket to a pipe we have to drop all
    af-unix socket locks. While doing so we allow another reader to enter
    unix_stream_read_generic which can read, copy and finally free another
    skb. If exactly this skb is just in process of being spliced we get a
    use-after-free report by kasan.

    First, we must make sure to not have a free while the skb is used during
    the splice operation. We simply increment its use counter before unlocking
    the reader lock.

    Stream sockets have the nice characteristic that we don't care about
    zero length writes and they never reach the peer socket's queue. That
    said, we can take the UNIXCB.consumed field as the indicator if the
    skb was already freed from the socket's receive queue. If the skb was
    fully consumed after we locked the reader side again we know it has been
    dropped by a second reader. We indicate a short read to user space and
    abort the current splice operation.

    This bug has been found with syzkaller
    (http://github.com/google/syzkaller) by Dmitry Vyukov.

    Fixes: 2b514574f7e8 ("net: af_unix: implement splice for stream af_unix sockets")
    Reported-by: Dmitry Vyukov
    Cc: Dmitry Vyukov
    Cc: Eric Dumazet
    Acked-by: Eric Dumazet
    Signed-off-by: Hannes Frederic Sowa
    Signed-off-by: David S. Miller

    Hannes Frederic Sowa
     

25 Oct, 2015

1 commit

  • poll(POLLOUT) on a listener should not report fd is ready for
    a write().

    This would break some applications using poll() and pfd.events = -1,
    as they would not block in poll()

    Signed-off-by: Eric Dumazet
    Reported-by: Alan Burlison
    Tested-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     

05 Oct, 2015

1 commit

  • Now send with MSG_PEEK can return data from multiple SKBs.

    Unfortunately we take into account the peek offset for each skb,
    that is wrong. We need to apply the peek offset only once.

    In addition, the peek offset should be used only if MSG_PEEK is set.

    Cc: "David S. Miller" (maintainer:NETWORKING
    Cc: Eric Dumazet (commit_signer:1/14=7%)
    Cc: Aaron Conole
    Fixes: 9f389e35674f ("af_unix: return data from multiple SKBs on recv() with MSG_PEEK flag")
    Signed-off-by: Andrey Vagin
    Tested-by: Aaron Conole
    Signed-off-by: David S. Miller

    Andrey Vagin
     

30 Sep, 2015

1 commit

  • AF_UNIX sockets now return multiple skbs from recv() when MSG_PEEK flag
    is set.

    This is referenced in kernel bugzilla #12323 @
    https://bugzilla.kernel.org/show_bug.cgi?id=12323

    As described both in the BZ and lkml thread @
    http://lkml.org/lkml/2008/1/8/444 calling recv() with MSG_PEEK on an
    AF_UNIX socket only reads a single skb, where the desired effect is
    to return as much skb data has been queued, until hitting the recv
    buffer size (whichever comes first).

    The modified MSG_PEEK path will now move to the next skb in the tree
    and jump to the again: label, rather than following the natural loop
    structure. This requires duplicating some of the loop head actions.

    This was tested using the python socketpair python code attached to
    the bugzilla issue.

    Signed-off-by: Aaron Conole
    Signed-off-by: David S. Miller

    Aaron Conole
     

11 Jun, 2015

1 commit

  • SCM_SECURITY was originally only implemented for datagram sockets,
    not for stream sockets. However, SCM_CREDENTIALS is supported on
    Unix stream sockets. For consistency, implement Unix stream support
    for SCM_SECURITY as well. Also clean up the existing code and get
    rid of the superfluous UNIXSID macro.

    Motivated by https://bugzilla.redhat.com/show_bug.cgi?id=1224211,
    where systemd was using SCM_CREDENTIALS and assumed wrongly that
    SCM_SECURITY was also supported on Unix stream sockets.

    Signed-off-by: Stephen Smalley
    Acked-by: Paul Moore
    Signed-off-by: David S. Miller

    Stephen Smalley
     

02 Jun, 2015

1 commit

  • Conflicts:
    drivers/net/phy/amd-xgbe-phy.c
    drivers/net/wireless/iwlwifi/Kconfig
    include/net/mac80211.h

    iwlwifi/Kconfig and mac80211.h were both trivial overlapping
    changes.

    The drivers/net/phy/amd-xgbe-phy.c file got removed in 'net-next' and
    the bug fix that happened on the 'net' side is already integrated
    into the rest of the amd-xgbe driver.

    Signed-off-by: David S. Miller

    David S. Miller
     

27 May, 2015

1 commit