1. 15 Jun, 2016 14 commits
  2. 14 Jun, 2016 14 commits
  3. 13 Jun, 2016 4 commits
    • David Howells's avatar
      rxrpc: Update the comments in ar-internal.h to reflect renames · 0d81a51a
      David Howells authored
      Update the section comments in ar-internal.h that indicate the locations of
      the referenced items to reflect the renames done to the .c files in
      net/rxrpc/.
      
      This also involves some rearrangement to reflect keep the sections in order
      of filename.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      0d81a51a
    • David Howells's avatar
      rxrpc: Rename files matching ar-*.c to git rid of the "ar-" prefix · 8c3e34a4
      David Howells authored
      Rename files matching net/rxrpc/ar-*.c to get rid of the "ar-" prefix.
      This will aid splitting those files by making easier to come up with new
      names.
      
      Note that the not all files are simply renamed from ar-X.c to X.c.  The
      following exceptions are made:
      
       (*) ar-call.c -> call_object.c
           ar-ack.c -> call_event.c
      
           call_object.c is going to contain the core of the call object
           handling.  Call event handling is all going to be in call_event.c.
      
       (*) ar-accept.c -> call_accept.c
      
           Incoming call handling is going to be here.
      
       (*) ar-connection.c -> conn_object.c
           ar-connevent.c -> conn_event.c
      
           The former file is going to have the basic connection object handling,
           but there will likely be some differentiation between client
           connections and service connections in additional files later.  The
           latter file will have all the connection-level event handling.
      
       (*) ar-local.c -> local_object.c
      
           This will have the local endpoint object handling code.  The local
           endpoint event handling code will later be split out into
           local_event.c.
      
       (*) ar-peer.c -> peer_object.c
      
           This will have the peer endpoint object handling code.  Peer event
           handling code will be placed in peer_event.c (for the moment, there is
           none).
      
       (*) ar-error.c -> peer_event.c
      
           This will become the peer event handling code, though for the moment
           it's actually driven from the local endpoint's perspective.
      
      Note that I haven't renamed ar-transport.c to transport_object.c as the
      intention is to delete it when the rxrpc_transport struct is excised.
      
      The only file that actually has its contents changed is net/rxrpc/Makefile.
      
      net/rxrpc/ar-internal.h will need its section marker comments updating, but
      I'll do that in a separate patch to make it easier for git to follow the
      history across the rename.  I may also want to rename ar-internal.h at some
      point - but that would mean updating all the #includes and I'd rather do
      that in a separate step.
      
      Signed-off-by: David Howells <dhowells@redhat.com.
      8c3e34a4
    • Florian Westphal's avatar
      sched: remove NET_XMIT_POLICED · 99860208
      Florian Westphal authored
      sch_atm returns this when TC_ACT_SHOT classification occurs.
      
      But all other schedulers that use tc_classify
      (htb, hfsc, drr, fq_codel ...) return NET_XMIT_SUCCESS | __BYPASS
      in this case so just do that in atm.
      
      BATMAN uses it as an intermediate return value to signal
      forwarding vs. buffering, but it did not return POLICED to
      callers outside of BATMAN.
      Reviewed-by: default avatarSven Eckelmann <sven@narfation.org>
      Signed-off-by: default avatarFlorian Westphal <fw@strlen.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      99860208
    • Stefan Wahren's avatar
      net: fec: handle small PHY reset durations more precisely · eb37c563
      Stefan Wahren authored
      Since msleep is based on jiffies the PHY reset could take longer
      than expected. So use msleep for values greater than 20 msec otherwise
      usleep_range.
      Signed-off-by: default avatarStefan Wahren <stefan.wahren@i2se.com>
      Acked-by: default avatarFugang Duan <fugang.duan@nxp.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      eb37c563
  4. 11 Jun, 2016 8 commits
    • Hannes Frederic Sowa's avatar
      ipv6: use TOS marks from sockets for routing decision · 38b7097b
      Hannes Frederic Sowa authored
      In IPv6 the ToS values are part of the flowlabel in flowi6 and get
      extracted during fib rule lookup, but we forgot to correctly initialize
      the flowlabel before the routing lookup.
      
      Reported-by: <liam.mcbirnie@boeing.com>
      Signed-off-by: default avatarHannes Frederic Sowa <hannes@stressinduktion.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      38b7097b
    • David S. Miller's avatar
      Merge branch 'remove-qdisc-throttle' · e69f73bf
      David S. Miller authored
      Eric Dumazet says:
      
      ====================
      net_sched: remove qdisc_is_throttled()
      
      HTB, CBQ and HFSC pay a very high cost updating the qdisc 'throttled'
      status that nothing but CBQ seems to use.
      
      CBQ usage is flaky anyway, since no qdisc ->enqueue() updates the
      'throttled' qdisc status.
      
      This looks like some 'optimization' that actually cost more than code
      without the optimization, and might cause latency issues with CBQ.
      
      In my tests, I could achieve a 8 % performance increase in TCP_RR
      workload through HTB qdisc, in presence of throttled classes,
      and 5 % without throttled classes.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e69f73bf
    • Eric Dumazet's avatar
      net_sched: remove generic throttled management · 45f50bed
      Eric Dumazet authored
      __QDISC_STATE_THROTTLED bit manipulation is rather expensive
      for HTB and few others.
      
      I already removed it for sch_fq in commit f2600cf0
      ("net: sched: avoid costly atomic operation in fq_dequeue()")
      and so far nobody complained.
      
      When one ore more packets are stuck in one or more throttled
      HTB class, a htb dequeue() performs two atomic operations
      to clear/set __QDISC_STATE_THROTTLED bit, while root qdisc
      lock is held.
      
      Removing this pair of atomic operations bring me a 8 % performance
      increase on 200 TCP_RR tests, in presence of throttled classes.
      
      This patch has no side effect, since nothing actually uses
      disc_is_throttled() anymore.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      45f50bed
    • Eric Dumazet's avatar
      net_sched: netem: remove qdisc_is_throttled() use · 42117927
      Eric Dumazet authored
      Looks like it is only there as some optimization attempt.
      
      Since __QDISC_STATE_THROTTLED set/unset is way too expensive,
      and netem is the last user, just remove this check.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      42117927
    • Eric Dumazet's avatar
      net_sched: cbq: remove a flaky use of qdisc_is_throttled() · cca605dd
      Eric Dumazet authored
      So far no qdisc ever unset the throttled bit at enqueue() time,
      so CBQ usage of qdisc_is_throttled() was flaky.
      
      Since __QDISC_STATE_THROTTLED set/unset is way too expensive
      considering that only CBQ was eventually caring for this status,
      it would make sense to implement a Qdisc ops ->is_throttled()
      if we find that this is needed.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      cca605dd
    • Eric Dumazet's avatar
      net_sched: sch_plug: use a private throttled status · 8fe6a79f
      Eric Dumazet authored
      We want to get rid of generic qdisc throttled management,
      so this qdisc has to use a private flag.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8fe6a79f
    • David S. Miller's avatar
      Merge branch 'mdio-iProc-SOC' · 7a04c012
      David S. Miller authored
      Pramod Kumar says:
      
      ====================
      Add MDIO bus multiplexer support for iProc SoCs
      
      Broadcom iProc based SoCs use a MDIO bus multiplexer where child buses
      could be internal as well external to SoCs. These buses could supports
      MDIO transaction compatible to C-22/C-45.
      
      Broadcom MDIO bus multiplexer is an integrated multiplexer where child bus
      selection and mdio transaction logic lies inside multiplexer itself.
      To accommodate this multiplexer in existing mux framework below changes
      were required-
      
      1. Passed MDIO parent bus via mdio_mux_init to MDIO mux framework.
      
      This patch set includes MDIO bus multiplexer driver along with above
      framework change. It includes one external bus node having Ethernet PHY
      attached and two internal bus node holding PCIe PHYs.
      
      This patch series is based on v4.7-rc1 and is available from github-
      repo: https://github.com/Broadcom/arm64-linux.git
      branch:mdio-mux-v5
      
      -Changes from v4:
      - disabled PCIe PHYs from dtsi and enabled in dts file.
      
      -Changes from v3:
      - Unregister and free the parent MDIO bus.
      - rebased on net-next/master branch.
      
      Reason for resend:
      -Rebased on v4.7-rc1
      
      Changes from v2:
      -Addressed Rob's comments in this patch regarding typo/grammers.
      -Addressed David's comments regarding local variables order.
      -Removed property "mdio-integrated-mux" and used mdiobus_register()
      in place of of_mdiobus_regsiter().
      -removed usage of IS_ERR_OR_NULL to IS_ERR in PCIe PHY driver.
      
      Changes from v1:
      - stop using "brcm,is_c45" from bus node as suggested by Andrew. MDIO
      PHY driver will logically OR MII_ADDR_C45 into the address when issues
      any C45 MDIO read/write transaction.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7a04c012
    • Pramod Kumar's avatar
      phy: Add Northstar2 PCI Phy support · 4484f730
      Pramod Kumar authored
      Add PCI Phy support for Broadcom Northstar2 SoCs.  This driver uses the
      interface from the iproc mdio mux driver to enable the devices
      respective phys.
      Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: default avatarJon Mason <jonmason@broadcom.com>
      Signed-off-by: default avatarPramod Kumar <pramod.kumar@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4484f730