1. 01 Dec, 2015 3 commits
    • Nikolay Aleksandrov's avatar
      net: add support for netdev notifier error injection · 02fff96a
      Nikolay Aleksandrov authored
      This module allows to insert errors in some of netdevice's notifier
      events. All network drivers use these notifiers to signal various events
      and to check if they are allowed, e.g. PRECHANGEMTU and CHANGEMTU
      afterwards. Until recently I had to run failure tests by injecting
      a custom module, but now this infrastructure makes it trivial to test
      these failure paths. Some of the recent bugs I fixed were found using
      this module.
      Here's an example:
       $ cd /sys/kernel/debug/notifier-error-inject/netdev
       $ echo -22 > actions/NETDEV_CHANGEMTU/error
       $ ip link set eth0 mtu 1024
       RTNETLINK answers: Invalid argument
      
      CC: Akinobu Mita <akinobu.mita@gmail.com>
      CC: "David S. Miller" <davem@davemloft.net>
      CC: netdev <netdev@vger.kernel.org>
      Signed-off-by: default avatarNikolay Aleksandrov <nikolay@cumulusnetworks.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      02fff96a
    • Vitaly Kuznetsov's avatar
      hv_netvsc: rework link status change handling · 27a70af3
      Vitaly Kuznetsov authored
      There are several issues in hv_netvsc driver with regards to link status
      change handling:
      - RNDIS_STATUS_NETWORK_CHANGE results in calling userspace helper doing
        '/etc/init.d/network restart' and this is inappropriate and broken for
        many reasons.
      - link_watch infrastructure only sends one notification per second and
        in case of e.g. paired disconnect/connect events we get only one
        notification with last status. This makes it impossible to handle such
        situations in userspace.
      
      Redo link status changes handling in the following way:
      - Create a list of reconfig events in network device context.
      - On a reconfig event add it to the list of events and schedule
        netvsc_link_change().
      - In netvsc_link_change() ensure 2-second delay between link status
        changes.
      - Handle RNDIS_STATUS_NETWORK_CHANGE as a paired disconnect/connect event.
      Signed-off-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      27a70af3
    • Rainer Weikusat's avatar
      unix: use wq_has_sleeper in unix_dgram_recvmsg · 77b75f4d
      Rainer Weikusat authored
      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: default avatarRainer Weikusat <rweikusat@mobileactivedefense.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      77b75f4d
  2. 30 Nov, 2015 17 commits
  3. 25 Nov, 2015 17 commits
  4. 24 Nov, 2015 3 commits