1. 01 11月, 2016 11 次提交
    • M
      qed: Add nvram selftest · 7a4b21b7
      Mintz, Yuval 提交于
      Signed-off-by: NYuval Mintz <Yuval.Mintz@cavium.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7a4b21b7
    • S
      qed*: Management firmware - notifications and defaults · 0fefbfba
      Sudarsana Kalluru 提交于
      Management firmware is interested in various tidbits about
      the driver - including the driver state & several configuration
      related fields [MTU, primtary MAC, etc.].
      This adds the necessray logic to update MFW with such configurations,
      some of which are passed directly via qed while for others APIs
      are provide so that qede would be able to later configure if needed.
      
      This also introduces a new default configuration for MTU which would
      replace the default inherited by being an ethernet device.
      Signed-off-by: NSudarsana Kalluru <Sudarsana.Kalluru@cavium.com>
      Signed-off-by: NYuval Mintz <Yuval.Mintz@cavium.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0fefbfba
    • J
      solos-pci: use permission-specific DEVICE_ATTR variants · 89d9123e
      Julia Lawall 提交于
      Use DEVICE_ATTR_RW for read-write attributes.  This simplifies the
      source code, improves readbility, and reduces the chance of
      inconsistencies.
      
      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)
      
      // <smpl>
      @rw@
      declarer name DEVICE_ATTR;
      identifier x,x_show,x_store;
      @@
      
      DEVICE_ATTR(x, \(0644\|S_IRUGO|S_IWUSR\), x_show, x_store);
      
      @script:ocaml@
      x << rw.x;
      x_show << rw.x_show;
      x_store << rw.x_store;
      @@
      
      if not (x^"_show" = x_show && x^"_store" = x_store)
      then Coccilib.include_match false
      
      @@
      declarer name DEVICE_ATTR_RW;
      identifier rw.x,rw.x_show,rw.x_store;
      @@
      
      - DEVICE_ATTR(x, \(0644\|S_IRUGO|S_IWUSR\), x_show, x_store);
      + DEVICE_ATTR_RW(x);
      // </smpl>
      Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      89d9123e
    • J
      ptp: use permission-specific DEVICE_ATTR variants · 63215705
      Julia Lawall 提交于
      Use DEVICE_ATTR_RO for read only attributes.  This simplifies the
      source code, improves readbility, and reduces the chance of
      inconsistencies.
      
      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)
      
      // <smpl>
      @ro@
      declarer name DEVICE_ATTR;
      identifier x,x_show;
      @@
      
      DEVICE_ATTR(x, \(0444\|S_IRUGO\), x_show, NULL);
      
      @script:ocaml@
      x << ro.x;
      x_show << ro.x_show;
      @@
      
      if not (x^"_show" = x_show) then Coccilib.include_match false
      
      @@
      declarer name DEVICE_ATTR_RO;
      identifier ro.x,ro.x_show;
      @@
      
      - DEVICE_ATTR(x, \(0444\|S_IRUGO\), x_show, NULL);
      + DEVICE_ATTR_RO(x);
      // </smpl>
      Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr>
      Acked-by: NRichard Cochran <richardcochran@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      63215705
    • D
      bpf, inode: add support for symlinks and fix mtime/ctime · 0f98621b
      Daniel Borkmann 提交于
      While commit bb35a6ef ("bpf, inode: allow for rename and link ops")
      added support for hard links that can be used for prog and map nodes,
      this work adds simple symlink support, which can be used f.e. for
      directories also when unpriviledged and works with cmdline tooling that
      understands S_IFLNK anyway. Since the switch in e27f4a94 ("bpf: Use
      mount_nodev not mount_ns to mount the bpf filesystem"), there can be
      various mount instances with mount_nodev() and thus hierarchy can be
      flattened to facilitate object sharing. Thus, we can keep bpf tooling
      also working by repointing paths.
      
      Most of the functionality can be used from vfs library operations. The
      symlink is stored in the inode itself, that is in i_link, which is
      sufficient in our case as opposed to storing it in the page cache.
      While at it, I noticed that bpf_mkdir() and bpf_mkobj() don't update
      the directories mtime and ctime, so add a common helper for it called
      bpf_dentry_finalize() that takes care of it for all cases now.
      Signed-off-by: NDaniel Borkmann <daniel@iogearbox.net>
      Acked-by: NAlexei Starovoitov <ast@kernel.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0f98621b
    • A
      ldmvsw: tx queue stuck in stopped state after LDC reset · 8778b276
      Aaron Young 提交于
      The following patch fixes an issue with the ldmvsw driver where
      the network connection of a guest domain becomes non-functional after
      the guest domain has panic'd and rebooted.
      
      The root cause was determined to be from the following series of
      events:
      
      1. Guest domain panics - resulting in the guest no longer processing
         network packets (from ldmvsw driver)
      2. The ldmvsw driver (in the control domain) eventually exerts flow
         control due to no more available tx drings and stops the tx queue
         for the guest domain
      3. The LDC of the network connection for the guest is reset when
         the guest domain reboots after the panic.
      4. The LDC reset event is received by the ldmvsw driver and the ldmvsw
         responds by clearing the tx queue for the guest.
      5. ldmvsw waits indefinitely for a DATA ACK from the guest - which is
         the normal method to re-enable the tx queue. But the ACK never comes
         because the tx queue was cleared due to the LDC reset.
      
      To fix this issue, in addition to clearing the tx queue, re-enable the
      tx queue on a LDC reset. This prevents the ldmvsw from getting caught in
      this deadlocked state of waiting for a DATA ACK which will never come.
      Signed-off-by: NAaron Young <Aaron.Young@oracle.com>
      Acked-by: NSowmini Varadhan <sowmini.varadhan@oracle.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8778b276
    • D
      Merge branch 'xps-DCB' · 04f762e8
      David S. Miller 提交于
      Alexander Duyck says:
      
      ====================
      Add support for XPS when using DCB
      
      This patch series enables proper isolation between traffic classes when
      using XPS while DCB is enabled.  Previously enabling XPS would cause the
      traffic to be potentially pulled from one traffic class into another on
      egress.  This change essentially multiplies the XPS map by the number of
      traffic classes and allows us to do a lookup per traffic class for a given
      CPU.
      
      To guarantee the isolation I invalidate the XPS map for any queues that are
      moved from one traffic class to another, or if we change the number of
      traffic classes.
      
      v2: Added sysfs to display traffic class
          Replaced do/while with for loop
          Cleaned up several other for for loops throughout the patch
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      04f762e8
    • A
      net: Add support for XPS with QoS via traffic classes · 184c449f
      Alexander Duyck 提交于
      This patch adds support for setting and using XPS when QoS via traffic
      classes is enabled.  With this change we will factor in the priority and
      traffic class mapping of the packet and use that information to correctly
      select the queue.
      
      This allows us to define a set of queues for a given traffic class via
      mqprio and then configure the XPS mapping for those queues so that the
      traffic flows can avoid head-of-line blocking between the individual CPUs
      if so desired.
      Signed-off-by: NAlexander Duyck <alexander.h.duyck@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      184c449f
    • A
      net: Refactor removal of queues from XPS map and apply on num_tc changes · 6234f874
      Alexander Duyck 提交于
      This patch updates the code for removing queues from the XPS map and makes
      it so that we can apply the code any time we change either the number of
      traffic classes or the mapping of a given block of queues.  This way we
      avoid having queues pulling traffic from a foreign traffic class.
      Signed-off-by: NAlexander Duyck <alexander.h.duyck@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6234f874
    • A
      net: Add sysfs value to determine queue traffic class · 8d059b0f
      Alexander Duyck 提交于
      Add a sysfs attribute for a Tx queue that allows us to determine the
      traffic class for a given queue.  This will allow us to more easily
      determine this in the future.  It is needed as XPS will take the traffic
      class for a group of queues into account in order to avoid pulling traffic
      from one traffic class into another.
      Signed-off-by: NAlexander Duyck <alexander.h.duyck@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      8d059b0f
    • A
      net: Move functions for configuring traffic classes out of inline headers · 9cf1f6a8
      Alexander Duyck 提交于
      The functions for configuring the traffic class to queue mappings have
      other effects that need to be addressed.  Instead of trying to export a
      bunch of new functions just relocate the functions so that we can
      instrument them directly with the functionality they will need.
      Signed-off-by: NAlexander Duyck <alexander.h.duyck@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9cf1f6a8
  2. 31 10月, 2016 24 次提交
  3. 30 10月, 2016 5 次提交