Netdev List
 help / color / mirror / Atom feed
* Re: Big performance loss from 3.4.63 to 3.10.13 when routing ipv4
From: David Miller @ 2013-10-22 19:46 UTC (permalink / raw)
  To: linux; +Cc: hannes, netdev, klassert
In-Reply-To: <3928724.bDaZagpRh6@h2o.as.studentenwerk.mhn.de>

From: Wolfgang Walter <linux@stwm.de>
Date: Tue, 22 Oct 2013 21:07:41 +0200

> Am Mittwoch, 2. Oktober 2013, 00:20:02 schrieb Hannes Frederic Sowa:
>> On Tue, Oct 01, 2013 at 06:39:32PM +0200, Wolfgang Walter wrote:
>> > All network traffic over the router become slow and sluggish. If one pings
>> > the router there is a packet loss. After about 2 minutes the traffic
>> > completely stalls for about 1 minute. Then it works again as in the
>> > beginning to then stall again. And so on.
>> 
>> Maybe dropwatch can give a first hint?
>> 
> 
> I finally found the problem:
> 
> In 3.10.x and 3.11.x the value of /proc/sys/net/ipv4/xfrm4_gc_thresh is 1024.
> 
> It is much higher in 3.4.x. If I increase this value in 3.10.x to the one I 
> see on 3.4.x all works fine with 3.10.x

Steffen, here is yet another report about this issue.

I think we should resolve this soon, even bumping it to 2048 or 4096
and leaving it at that would be I think acceptable.

Thanks.

^ permalink raw reply

* Re: [PATCH 1/4 net-next] net: phy: add Generic Netlink Ethernet switch configuration API
From: David Miller @ 2013-10-22 19:46 UTC (permalink / raw)
  To: dcbw; +Cc: f.fainelli, netdev, s.hauer, nbd, blogic, jogo, gary
In-Reply-To: <1382469746.19269.55.camel@dcbw.foobar.com>

From: Dan Williams <dcbw@redhat.com>
Date: Tue, 22 Oct 2013 14:22:26 -0500

> On Tue, 2013-10-22 at 11:23 -0700, Florian Fainelli wrote:
>> This patch adds an Ethernet Switch generic netlink configuration API
>> which allows for doing the required configuration of managed Ethernet
>> switches commonly found in Wireless/Cable/DSL routers in the market.
> 
> "swconfig" probably means "switch config", but is there any way to
> rename this away from the "sw" prefix, since "sw" typically means
> "software" and not "switch"?

Agreed.

^ permalink raw reply

* Re: [PATCH 1/4 net-next] net: phy: add Generic Netlink Ethernet switch configuration API
From: David Miller @ 2013-10-22 19:47 UTC (permalink / raw)
  To: f.fainelli; +Cc: dcbw, netdev, s.hauer, nbd, blogic, jogo, gary
In-Reply-To: <CAGVrzcYCK3QBMgHnZ2T=wzeckX-enwJOu7DEcKHg3s=ABivLDQ@mail.gmail.com>

From: Florian Fainelli <f.fainelli@gmail.com>
Date: Tue, 22 Oct 2013 12:32:29 -0700

> 2013/10/22 Dan Williams <dcbw@redhat.com>:
>> On Tue, 2013-10-22 at 11:23 -0700, Florian Fainelli wrote:
>>> This patch adds an Ethernet Switch generic netlink configuration API
>>> which allows for doing the required configuration of managed Ethernet
>>> switches commonly found in Wireless/Cable/DSL routers in the market.
>>
>> "swconfig" probably means "switch config", but is there any way to
>> rename this away from the "sw" prefix, since "sw" typically means
>> "software" and not "switch"?
> 
> Sure, how about something like "enetsw"? I would like to avoid using
> "switch" too much since this is a C reserved keyword.

"swtch"? :-)

^ permalink raw reply

* Re: [net-next v2 00/14][pull request] Intel Wired LAN Driver Updates
From: David Miller @ 2013-10-22 19:53 UTC (permalink / raw)
  To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann
In-Reply-To: <1382451757-9817-1-git-send-email-jeffrey.t.kirsher@intel.com>

From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Tue, 22 Oct 2013 07:22:23 -0700

> This series contains updates to i40e only.
> 
> Jesse provides 6 patches against i40e.  First is a patch to reduce
> CPU utilization by reducing read-flush to read in the hot path.  Next
> couple of patches resolve coverity issues reported by Hannes Frederic
> Sowa <hannes@stressinduktion.org>.  Then Jesse refactored i40e to cleanup
> functions which used cpu_to_xxx(foo) which caused a lot of line wrapping.
> 
> Mitch provides 2 i40e patches.  First fixes a panic when tx_rings[0]
> are not allocated, his second patch corrects a math error when
> assigning MSI-X vectors to VFs.  The vectors-per-vf value reported
> by the hardware already conveniently reports one less than the actual
> value.
> 
> Shannon provides 5 patches against i40e.  His first patch corrects a
> number of little bugs in the error handling of irq setup, most of
> which ended up panicing the kernel.  Next he fixes the overactive
> IRQ issue seen in testing and allows the use of the legacy interrupt.
> Shannon then provides a cleanup of the arguments declared at the
> beginning of each function.  Then he provides a patch to make sure
> that there are really rings and queues before trying to dump
> information in them.  Lastly he simplifies the code by using an
> already existing variable.
> 
> Catherine provides an i40e patch to bump the version.

Pulled, thanks Jeff.

Just a note for the future, and I decided not to push back this time when
I saw it in this series.  When you have a construct like:

	if (x)
		for( ... ) {
		}

Put the top-level condition in braces too as it's much easier to read
and audit:

	if (x) {
		for ( ... ) {
		}
	}

Thanks.

^ permalink raw reply

* Re: [PATCH 1/4 net-next] net: phy: add Generic Netlink Ethernet switch configuration API
From: John Fastabend @ 2013-10-22 19:53 UTC (permalink / raw)
  To: Florian Fainelli
  Cc: netdev, davem, s.hauer, nbd, blogic, jogo, gary, Jamal Hadi Salim,
	Neil Horman
In-Reply-To: <1382466229-15123-2-git-send-email-f.fainelli@gmail.com>

On 10/22/2013 11:23 AM, Florian Fainelli wrote:
> This patch adds an Ethernet Switch generic netlink configuration API
> which allows for doing the required configuration of managed Ethernet
> switches commonly found in Wireless/Cable/DSL routers in the market.
>
> Since this API is based on the Generic Netlink infrastructure it is very
> easy to extend a particular switch driver to support additional features
> and to adapt it to specific switches.
>

> So far the API includes support for:
>
> - getting/setting a port VLAN id
> - getting/setting VLAN port membership
> - getting a port link status
> - getting a port statistics counters
> - resetting a switch device
> - applying a configuration to a switch device
>

Did you consider exposing each physical switch port as a netdevice on
the host? I would assume your switch driver could do this.

Then you can drop the port specific attributes (link status, stats, etc)
and use existing interfaces. The win being my tools work equally well on
your real switch as they do on my software switch. Also by exposing net
devices you provide a mechanism to send packets over the port and trap
control packets.

Next instead of creating a switch specific netlink API could you use
the existing FDB API? Again what I would like is for my existing
applications to run on the switch without having to rewrite them. For
example it would be great to have 'bridge fdb show dev myswitch' report
the correct tables for both the Sw bridge, a real switch bridge, and
for the embedded SR-IOV bridge case.

I added Jamal and Neil because I think I remember talking about similar
ideas with them before.

Thanks,
.John

^ permalink raw reply

* hello dearest
From: Diasy Bali @ 2013-10-22 19:30 UTC (permalink / raw)



Hello,How are you,I hope you're well,my name is Diasy Bali,I'm medium height and fair in complexion,i love,caring and I decided to contact you.I really want to have a good relationship with you.Next I have a special something I want to discuss with you,and tell you more about my self.Hope hear from you soon.age is not matter for our relationship,I need your love and affection.I will give my best. Yours Miss Diasy Bali.

^ permalink raw reply

* Re: [PATCH 1/4 net-next] net: phy: add Generic Netlink Ethernet switch configuration API
From: Florian Fainelli @ 2013-10-22 19:59 UTC (permalink / raw)
  To: John Fastabend
  Cc: netdev, David Miller, Sascha Hauer, Felix Fietkau, John Crispin,
	Jonas Gorski, Gary Thomas, Jamal Hadi Salim, Neil Horman
In-Reply-To: <5266D7D6.9000309@intel.com>

2013/10/22 John Fastabend <john.r.fastabend@intel.com>:
> On 10/22/2013 11:23 AM, Florian Fainelli wrote:
>>
>> This patch adds an Ethernet Switch generic netlink configuration API
>> which allows for doing the required configuration of managed Ethernet
>> switches commonly found in Wireless/Cable/DSL routers in the market.
>>
>> Since this API is based on the Generic Netlink infrastructure it is very
>> easy to extend a particular switch driver to support additional features
>> and to adapt it to specific switches.
>>
>
>> So far the API includes support for:
>>
>> - getting/setting a port VLAN id
>> - getting/setting VLAN port membership
>> - getting a port link status
>> - getting a port statistics counters
>> - resetting a switch device
>> - applying a configuration to a switch device
>>
>
> Did you consider exposing each physical switch port as a netdevice on
> the host? I would assume your switch driver could do this.
>
> Then you can drop the port specific attributes (link status, stats, etc)
> and use existing interfaces. The win being my tools work equally well on
> your real switch as they do on my software switch. Also by exposing net
> devices you provide a mechanism to send packets over the port and trap
> control packets.

Well this is exactly what DSA does and which I do not like because it
is completely overkill for most switches out there which are using
802.1q tags and do not prepend/append proprietary tags for internal
traffic classification.

>
> Next instead of creating a switch specific netlink API could you use
> the existing FDB API? Again what I would like is for my existing
> applications to run on the switch without having to rewrite them. For
> example it would be great to have 'bridge fdb show dev myswitch' report
> the correct tables for both the Sw bridge, a real switch bridge, and
> for the embedded SR-IOV bridge case.

Ok, I know nothing about the FDB API, but will take a look and see if
that sounds suitable for the embedded use cases.

>
> I added Jamal and Neil because I think I remember talking about similar
> ideas with them before.

Thanks!
-- 
Florian

^ permalink raw reply

* Re: [net-next v2 00/14][pull request] Intel Wired LAN Driver Updates
From: Jeff Kirsher @ 2013-10-22 20:00 UTC (permalink / raw)
  To: David Miller; +Cc: netdev, gospo, sassmann
In-Reply-To: <20131022.155336.2066350912394604583.davem@davemloft.net>

[-- Attachment #1: Type: text/plain, Size: 2010 bytes --]

On Tue, 2013-10-22 at 15:53 -0400, David Miller wrote:
> From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
> Date: Tue, 22 Oct 2013 07:22:23 -0700
> 
> > This series contains updates to i40e only.
> > 
> > Jesse provides 6 patches against i40e.  First is a patch to reduce
> > CPU utilization by reducing read-flush to read in the hot path.  Next
> > couple of patches resolve coverity issues reported by Hannes Frederic
> > Sowa <hannes@stressinduktion.org>.  Then Jesse refactored i40e to cleanup
> > functions which used cpu_to_xxx(foo) which caused a lot of line wrapping.
> > 
> > Mitch provides 2 i40e patches.  First fixes a panic when tx_rings[0]
> > are not allocated, his second patch corrects a math error when
> > assigning MSI-X vectors to VFs.  The vectors-per-vf value reported
> > by the hardware already conveniently reports one less than the actual
> > value.
> > 
> > Shannon provides 5 patches against i40e.  His first patch corrects a
> > number of little bugs in the error handling of irq setup, most of
> > which ended up panicing the kernel.  Next he fixes the overactive
> > IRQ issue seen in testing and allows the use of the legacy interrupt.
> > Shannon then provides a cleanup of the arguments declared at the
> > beginning of each function.  Then he provides a patch to make sure
> > that there are really rings and queues before trying to dump
> > information in them.  Lastly he simplifies the code by using an
> > already existing variable.
> > 
> > Catherine provides an i40e patch to bump the version.
> 
> Pulled, thanks Jeff.
> 
> Just a note for the future, and I decided not to push back this time when
> I saw it in this series.  When you have a construct like:
> 
> 	if (x)
> 		for( ... ) {
> 		}
> 
> Put the top-level condition in braces too as it's much easier to read
> and audit:
> 
> 	if (x) {
> 		for ( ... ) {
> 		}
> 	}
> 
> Thanks.

I agree, I will add that to my list of checks for the future.  Thanks
Dave.

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply

* Re: [PATCH 1/4 net-next] net: phy: add Generic Netlink Ethernet switch configuration API
From: Neil Horman @ 2013-10-22 20:25 UTC (permalink / raw)
  To: Florian Fainelli
  Cc: John Fastabend, netdev, David Miller, Sascha Hauer, Felix Fietkau,
	John Crispin, Jonas Gorski, Gary Thomas, Jamal Hadi Salim
In-Reply-To: <CAGVrzcZS4SGiUFoCnhau1Fvv9F4ffS7tA+PT4r-qLCj8HV8BqQ@mail.gmail.com>

On Tue, Oct 22, 2013 at 12:59:12PM -0700, Florian Fainelli wrote:
> 2013/10/22 John Fastabend <john.r.fastabend@intel.com>:
> > On 10/22/2013 11:23 AM, Florian Fainelli wrote:
> >>
> >> This patch adds an Ethernet Switch generic netlink configuration API
> >> which allows for doing the required configuration of managed Ethernet
> >> switches commonly found in Wireless/Cable/DSL routers in the market.
> >>
> >> Since this API is based on the Generic Netlink infrastructure it is very
> >> easy to extend a particular switch driver to support additional features
> >> and to adapt it to specific switches.
> >>
> >
> >> So far the API includes support for:
> >>
> >> - getting/setting a port VLAN id
> >> - getting/setting VLAN port membership
> >> - getting a port link status
> >> - getting a port statistics counters
> >> - resetting a switch device
> >> - applying a configuration to a switch device
> >>
> >
> > Did you consider exposing each physical switch port as a netdevice on
> > the host? I would assume your switch driver could do this.
> >
> > Then you can drop the port specific attributes (link status, stats, etc)
> > and use existing interfaces. The win being my tools work equally well on
> > your real switch as they do on my software switch. Also by exposing net
> > devices you provide a mechanism to send packets over the port and trap
> > control packets.
> 
> Well this is exactly what DSA does and which I do not like because it
> is completely overkill for most switches out there which are using
> 802.1q tags and do not prepend/append proprietary tags for internal
> traffic classification.
> 
> >
> > Next instead of creating a switch specific netlink API could you use
> > the existing FDB API? Again what I would like is for my existing
> > applications to run on the switch without having to rewrite them. For
> > example it would be great to have 'bridge fdb show dev myswitch' report
> > the correct tables for both the Sw bridge, a real switch bridge, and
> > for the embedded SR-IOV bridge case.
> 
> Ok, I know nothing about the FDB API, but will take a look and see if
> that sounds suitable for the embedded use cases.
> 
Further to Johns comments, why are you creating a new netlink protocol for this?
It seems that 90% of what you want to accomplish above is handled by rtnetlink.
As long as you write your driver properly, most of that should "just work".

Neil

^ permalink raw reply

* [GIT] Networking
From: David Miller @ 2013-10-22 20:36 UTC (permalink / raw)
  To: torvalds; +Cc: akpm, netdev, linux-kernel


Sorry I let so much accumulate, I was in Buffalo and wanted a few
things to cook in my tree for a while before sending to you.  Anyways,
it's a lot of little things as usual at this stage in the game.

1) Make bonding MAINTAINERS entry reflect reality, from Andy Gospodarek.

2) Fix accidental sock_put() on timewait mini sockets, from Eric
   Dumazet.

3) Fix crashes in l2tp due to mis-handling of ipv4 mapped ipv6 addresses,
   from François CACHEREUL.

4) Fix heap overflow in __audit_sockaddr(), from the eagle eyed Dan
   Carpenter.

5) tcp_shifted_skb() doesn't take handle FINs properly, from Eric
   Dumazet.

6) SFC driver bug fixes from Ben Hutchings.

7) Fix TX packet scheduling wedge after channel change in ath9k driver,
   from Felix Fietkau.

8) Fix user after free in BPF JIT code, from Alexei Starovoitov.

9) Source address selection test is reversed in __ip_route_output_key(),
   fix from Jiri Benc.

10) VLAN and CAN layer mis-size netlink attributes, from Marc
    Kleine-Budde.

11) Fix permission checks in sysctls to use current_euid() instead of
    current_uid().  From Eric W. Biederman.

12) IPSEC policies can go away while a timer is still pending for them,
    add appropriate ref-counting to fix, from Steffen Klassert.

13) Fix mis-programming of FDR and RMCR registers on R8A7740 sh_eth
    chips, from Nguyen Hong Ky and Simon Horman.

14) MLX4 forgets to DMA unmap pages on RX, fix from Amir Vadai.

15) IPV6 GRE tunnel MTU upper limit is miscalculated, from Oussama
    Ghorbel.

16) Fix typo in fq_change(), we were assigning "initial quantum" to
    "quantum".  From Eric Dumazet.

17) Set a more appropriate sk_pacing_rate for non-TCP sockets, otherwise
    FQ packet scheduler does not pace those flows properly.  Also from
    Eric Dumazet.

18) rtlwifi miscalculates packet pointers, from Mark Cave-Ayland.

19) l2tp_xmit_skb() can be called from process context, not just
    softirq context, so we must always make sure to BH disable
    around it.  From Eric Dumazet.

20) On qdisc reset, we forget to purge the RB tree of SKBs in netem
    packet scheduler.  From Stephen Hemminger.

21) Fix info leak in farsync WAN driver ioctl() handler, from Dan
    Carpenter and Salva Peiró.

22) Fix PHY reset and other issues in dm9000 driver, from Nikita
    Kiryanov and Michael Abbott.

23) When hardware can do SCTP crc32 checksums, we accidently don't
    disable the csum offload when IPSEC transformations have been
    applied.  From Fan Du and Vlad Yasevich.

24) Tail loss probing in TCP leaves the socket in the wrong congestion
    avoidance state.  From Yuchung Cheng.

25) In CPSW driver, enable NAPI before interrupts are turned on, from
    Markus Pargmann.

26) Integer underflow and dual-assignment in YAM hamradio driver, from
    Dan Carpenter.

27) If we are going to mangle a packet in tcp_set_skb_tso_segs() we must
    unclone it.  This fixes various hard to track down crashes in drivers
    where the SKBs ->gso_segs was changing right from underneath the
    driver during TX queueing.  From Eric Dumazet.

28) Fix the handling of VLAN IDs, and in particular the special IDs 0 and
    4095, in the bridging layer.  From Toshiaki Makita.

29) Another info leak, this time in wanxl WAN driver, from Salva Peiró.

30) Fix race in socket credential passing, from Daniel Borkmann.

31) WHen NETLABEL is disabled, we don't validate CIPSO packets properly,
    from Seif Mazareeb.

32) Fix identification of fragmented frames in ipv4/ipv6 UDP
    Fragmentation Offload output paths, from Jiri Pirko.

33) Virtual Function fixes in bnx2x driver from Yuval Mintz and Ariel
    Elior.

34) When we removed the explicit neighbour pointer from ipv6 routes
    a slight regression was introduced for users such as IPVS, xt_TEE,
    and raw sockets.  We mix up the users requested destination address
    with the routes assigned nexthop/gateway.  From Julian Anastasov
    and Simon Horman.

35) Fix stack overruns in rt6_probe(), the issue is that can end up
    doing two full packet xmit paths at the same time when emitting
    neighbour discovery messages.  From Hannes Frederic Sowa.

36) davinci_emac driver doesn't handle IFF_ALLMULTI correctly, from
    Mariusz Ceier.

37) Make sure to set TCP sk_pacing_rate after the first legitimate
    RTT sample, from Neal Cardwell.

38) Wrong netlink attribute passed to xfrm_replay_verify_len(), from
    Steffen Klassert.

Please pull, thanks a lot!

The following changes since commit c31eeaced22ce8bd61268a3c595d542bb38c0a4f:

  Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net (2013-10-01 12:58:48 -0700)

are available in the git repository at:


  git://git.kernel.org/pub/scm/linux/kernel/git/davem/net master

for you to fetch changes up to f11a5bc148a313ad37c361c87c9aff2331a8b149:

  ax88179_178a: Add VID:DID for Samsung USB Ethernet Adapter (2013-10-22 15:43:43 -0400)

----------------------------------------------------------------
Alan Ott (5):
      6lowpan: Only make 6lowpan links to IEEE802154 devices
      6lowpan: Sync default hardware address of lowpan links to their wpan
      mrf24j40: Move INIT_COMPLETION() to before packet transmission
      mrf24j40: Use threaded IRQ handler
      mrf24j40: Use level-triggered interrupts

Alexander Bondar (1):
      iwlwifi: mvm: Disable uAPSD for D3 image

Alexandre Belloni (1):
      mac802154: correct a typo in ieee802154_alloc_device() prototype

Alexei Starovoitov (1):
      net: fix unsafe set_memory_rw from softirq

Amir Vadai (2):
      net/mlx4_en: Rename name of mlx4_en_rx_alloc members
      net/mlx4_en: Fix pages never dma unmapped on rx

Amitkumar Karwar (1):
      mwifiex: fix SDIO interrupt lost issue

Andi Kleen (2):
      igb: Avoid uninitialized advertised variable in eee_set_cur
      tcp: Always set options to 0 before calling tcp_established_options

Andy Gospodarek (1):
      bonding: update MAINTAINERS

Ariel Elior (3):
      bnx2x: Unlock VF-PF channel on MAC/VLAN config error
      bnx2x: Fix config when SR-IOV and iSCSI are enabled
      bnx2x: Lock DMAE when used by statistic flow

Avinash Patil (2):
      mwifiex: inform cfg80211 about disconnect if device is removed
      mwifiex: inform cfg80211 about disconnect for P2P client interface

Ben Hutchings (1):
      sfc: Only bind to EF10 functions with the LinkCtrl and Trusted flags

Bruno Randolf (1):
      cfg80211: fix warning when using WEXT for IBSS

Christophe Gouault (1):
      vti: get rid of nf mark rule in prerouting

Chun-Yeow Yeoh (1):
      mac80211: fix the setting of extended supported rate IE

Claudiu Manoil (3):
      gianfar: Enable eTSEC-A002 erratum w/a for all parts
      gianfar: Use mpc85xx support for errata detection
      gianfar: Enable eTSEC-20 erratum w/a for P2020 Rev1

Dan Carpenter (3):
      net: heap overflow in __audit_sockaddr()
      yam: integer underflow in yam_ioctl()
      yam: remove a no-op in yam_ioctl()

Daniel Borkmann (1):
      net: unix: inherit SOCK_PASS{CRED, SEC} flags from socket to fix race

David S. Miller (20):
      Merge branch 'connector'
      Merge branch 'calxedaxgmac'
      Merge branch 'mv643xx'
      Merge tag 'batman-adv-fix-for-davem' of git://git.open-mesh.org/linux-merge
      Merge branch 'for-davem' of git://git.kernel.org/.../linville/wireless
      Merge branch '6lowpan'
      Merge branch 'mrf24j40'
      l2tp: Fix build warning with ipv6 disabled.
      Merge branch 'mlx4'
      Merge branch 'sfc-3.12' of git://git.kernel.org/.../bwh/sfc
      Merge branch 'master' of git://git.kernel.org/.../klassert/ipsec
      Merge branch 'gianfar'
      Merge branch 'for-davem' of git://git.kernel.org/.../linville/wireless
      Merge branch 'dm9000'
      Merge branch 'sctp_csum'
      Merge branch 'for-davem' of git://git.kernel.org/.../linville/wireless
      Merge branch 'bridge_pvid'
      Merge branch 'ufo_fixes'
      Merge branch 'bnx2x'
      Merge branch 'rt6i_gateway'

David Vrabel (1):
      xen-netback: transition to CLOSED when removing a VIF

Dmitry Kravkov (2):
      bnx2x: Fix Coalescing configuration
      bnx2x: Don't pretend during register dump

Edward Cree (3):
      sfc: Fix internal indices of ethtool stats for EF10
      sfc: Refactor EF10 stat mask code to allow for more conditional stats
      sfc: Add PM and RXDP drop counters to ethtool stats

Emmanuel Grumbach (6):
      iwlwifi: pcie: don't reset the TX queue counter
      iwlwifi: don't WARN on host commands sent when firmware is dead
      iwlwifi: pcie: add SKUs for 6000, 6005 and 6235 series
      iwlwifi: mvm: call ieee80211_scan_completed when needed
      mac80211: correctly close cancelled scans
      cfg80211: don't add p2p device while in RFKILL

Enrico Mioso (1):
      net: qmi_wwan: Olivetti Olicard 200 support

Eric Dumazet (8):
      net: do not call sock_put() on TIMEWAIT sockets
      tcp: do not forget FIN in tcp_shifted_skb()
      pkt_sched: fq: fix typo for initial_quantum
      pkt_sched: fq: fix non TCP flows pacing
      l2tp: must disable bh before calling l2tp_xmit_skb()
      bnx2x: record rx queue for LRO packets
      tcp: must unclone packets before mangling them
      tcp: remove the sk_can_gso() check from tcp_set_skb_tso_segs()

Eric W. Biederman (1):
      net: Update the sysctl permissions handler to test effective uid/gid

Fabio Estevam (1):
      net: secure_seq: Fix warning when CONFIG_IPV6 and CONFIG_INET are not selected

Fan Du (2):
      xfrm: Guard IPsec anti replay window against replay bitmap
      sctp: Use software crc32 checksum when xfrm transform will happen.

Felix Fietkau (5):
      mac80211: drop spoofed packets in ad-hoc mode
      mac80211: use sta_info_get_bss() for nl80211 tx and client probing
      mac80211: update sta->last_rx on acked tx frames
      ath9k: fix powersave response handling for BA session packets
      ath9k: fix tx queue scheduling after channel changes

François Cachereul (1):
      l2tp: fix kernel panic when using IPv4-mapped IPv6 addresses

Freddy Xin (2):
      ax88179_178a: Correct the RX error definition in RX header
      ax88179_178a: Add VID:DID for Samsung USB Ethernet Adapter

Hannes Frederic Sowa (1):
      ipv6: probe routes asynchronous in rt6_probe

Himanshu Madhani (1):
      qlcnic: Validate Tx queue only for 82xx adapters.

Jason Wang (2):
      virtio-net: don't respond to cpu hotplug notifier if we're not ready
      virtio-net: refill only when device is up during setting queues

Jiri Benc (1):
      ipv4: fix ineffective source address selection

Jiri Pirko (3):
      udp6: respect IPV6_DONTFRAG sockopt in case there are pending frames
      ip6_output: do skb ufo init for peeked non ufo skb as well
      ip_output: do skb ufo init for peeked non ufo skb as well

Johannes Berg (4):
      cfg80211: fix sysfs registration race
      iwlwifi: pcie: fix merge damage
      wireless: radiotap: fix parsing buffer overrun
      mac80211: fix crash if bitrate calculation goes wrong

John W. Linville (7):
      Merge branch 'for-john' of git://git.kernel.org/.../jberg/mac80211
      Merge branch 'master' of git://git.kernel.org/.../linville/wireless into for-davem
      Merge branch 'for-john' of git://git.kernel.org/.../iwlwifi/iwlwifi-fixes
      Merge branch 'master' of git://git.kernel.org/.../linville/wireless into for-davem
      Merge branch 'for-john' of git://git.kernel.org/.../jberg/mac80211
      Merge branch 'for-john' of git://git.kernel.org/.../jberg/mac80211
      Merge branch 'master' of git://git.kernel.org/.../linville/wireless into for-davem

Jon Cooper (1):
      sfc: Add rmb() between reading stats and generation count to ensure consistency

Jouni Malinen (1):
      mac80211: Run deferred scan if last roc_list item is not started

Julian Anastasov (3):
      ipv6: always prefer rt6i_gateway if present
      ipv6: fill rt6i_gateway with nexthop address
      netfilter: nf_conntrack: fix rt6i_gateway checks for H.323 helper

Linus Lüssing (1):
      Revert "bridge: only expire the mdb entry when query is received"

Luciano Coelho (1):
      cfg80211: use the correct macro to check for active monitor support

Marc Kleine-Budde (5):
      can: dev: fix nlmsg size calculation in can_get_size()
      net: vlan: fix nlmsg size calculation in vlan_get_size()
      can: flexcan: flexcan_chip_start: fix regression, mark one MB for TX and abort pending TX
      can: flexcan: fix mx28 detection by rearanging OF match table
      can: at91-can: fix device to driver data mapping for platform devices

Mariusz Ceier (1):
      davinci_emac.c: Fix IFF_ALLMULTI setup

Mark Cave-Ayland (1):
      rtlwifi: rtl8192cu: Fix error in pointer arithmetic

Markus Pargmann (3):
      net: ethernet: cpsw: Search childs for slave nodes
      net/ethernet: cpsw: DT read bool dual_emac
      net/ethernet: cpsw: Bugfix interrupts before enabling napi

Mathias Krause (5):
      proc connector: fix info leaks
      connector: use nlmsg_len() to check message length
      connector: use 'size' everywhere in cn_netlink_send()
      connector - documentation: simplify netlink message length assignment
      unix_diag: fix info leak

Matthew Slattery (1):
      sfc: Add definitions for new stats counters and capability flag

Matthias Schiffer (1):
      batman-adv: set up network coding packet handlers during module init

Matti Gottlieb (1):
      iwlwifi: pcie: add new SKUs for 7000 & 3160 NIC series

Merav Sicron (1):
      bnx2x: Set NETIF_F_HIGHDMA unconditionally

Michael Abbott (1):
      dm9000: Implement full reset of DM9000 network device

Michael S. Tsirkin (2):
      netif_set_xps_queue: make cpu mask const
      tun: don't look at current when non-blocking

Mugunthan V N (1):
      drivers: net: cpsw: fix kernel warn during iperf test with interrupt pacing

Neal Cardwell (1):
      tcp: initialize passive-side sk_pacing_rate after 3WHS

Nguyen Hong Ky (1):
      net: sh_eth: Fix RX packets errors on R8A7740

Nikita Kiryanov (3):
      dm9000: during init reset phy only for dm9000b
      dm9000: take phy out of reset during init
      dm9000: report the correct LPA

Oussama Ghorbel (3):
      ipv6: Allow the MTU of ipip6 tunnel to be set below 1280
      ipv6: Fix the upper MTU limit in GRE tunnel
      ipv6: Initialize ip6_tnl.hlen in gre tunnel even if no route is found

Rob Herring (3):
      net: calxedaxgmac: fix clearing of old filter addresses
      net: calxedaxgmac: add uc and mc filter addresses in promiscuous mode
      net: calxedaxgmac: determine number of address filters at runtime

Salva Peiró (2):
      farsync: fix info leak in ioctl
      wanxl: fix info leak in ioctl

Sebastian Hesselbarth (3):
      net: mv643xx_eth: update statistics timer from timer context only
      net: mv643xx_eth: fix orphaned statistics timer crash
      net: mv643xx_eth: fix missing device_node for port devices

Seif Mazareeb (1):
      net: fix cipso packet validation when !NETLABEL

Simon Horman (1):
      net: sh_eth: Correct fix for RX packet errors on R8A7740

Solomon Peachy (1):
      wireless: cw1200: acquire hwbus lock around cw1200_irq_handler() call.

Stanislaw Gruszka (1):
      Revert "rt2x00pci: Use PCI MSIs whenever possible"

Steffen Klassert (5):
      xfrm: Fix replay size checking on async events
      xfrm: Decode sessions with output interface.
      ipsec: Don't update the pmtu on ICMPV6_DEST_UNREACH
      xfrm: Add refcount handling to queued policies
      xfrm: check for a vaild skb in xfrm_policy_queue_process

Thomas Egerer (1):
      xfrm: Fix aevent generation for each received packet

Toshiaki Makita (4):
      bridge: Don't use VID 0 and 4095 in vlan filtering
      bridge: Apply the PVID to priority-tagged frames
      bridge: Fix the way the PVID is referenced
      bridge: Fix updating FDB entries when the PVID is applied

Vasundhara Volam (1):
      be2net: pass if_id for v1 and V2 versions of TX_CREATE cmd

Vlad Yasevich (4):
      bridge: update mdb expiration timer upon reports.
      net: dst: provide accessor function to dst->xfrm
      sctp: Perform software checksum if packet has to be fragmented.
      bridge: Correctly clamp MAX forward_delay when enabling STP

Wei Yongjun (3):
      moxa: fix the error handling in moxart_mac_probe()
      qlcnic: add missing destroy_workqueue() on error path in qlcnic_probe()
      usbnet: fix error return code in usbnet_probe()

Will Deacon (1):
      net: smc91x: dont't use SMC_outw for fixing up halfword-aligned data

Yuchung Cheng (1):
      tcp: fix incorrect ca_state in tail loss probe

Yuval Mintz (3):
      bnx2x: Fix Maximum CoS estimation for VFs
      bnx2x: Prevent an illegal pointer dereference during panic
      bnx2x: Prevent null pointer dereference on error flow

stephen hemminger (3):
      tc: export tc_defact.h to userspace
      netem: update backlog after drop
      netem: free skb's in tree on reset

 Documentation/connector/ucon.c                      |   2 +-
 MAINTAINERS                                         |   1 +
 arch/arm/net/bpf_jit_32.c                           |   1 +
 arch/powerpc/net/bpf_jit_comp.c                     |   1 +
 arch/s390/net/bpf_jit_comp.c                        |   4 +-
 arch/sparc/net/bpf_jit_comp.c                       |   1 +
 arch/x86/net/bpf_jit_comp.c                         |  18 ++-
 drivers/connector/cn_proc.c                         |  18 +++
 drivers/connector/connector.c                       |   9 +-
 drivers/net/can/at91_can.c                          |   4 +-
 drivers/net/can/dev.c                               |  10 +-
 drivers/net/can/flexcan.c                           |  14 ++-
 drivers/net/ethernet/broadcom/bnx2x/bnx2x.h         |  15 ++-
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c     |   1 +
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_ethtool.c |  40 +-----
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_init.h    |  38 ++++--
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c    | 388 ++++++++++++++++++++++++++++++++---------------------------
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c   |  29 +++--
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_stats.c   |   2 +-
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_vfpf.c    |   2 +-
 drivers/net/ethernet/calxeda/xgmac.c                |  23 ++--
 drivers/net/ethernet/davicom/dm9000.c               |  56 ++++++---
 drivers/net/ethernet/emulex/benet/be_cmds.c         |   3 +-
 drivers/net/ethernet/freescale/gianfar.c            |  38 ++++--
 drivers/net/ethernet/intel/igb/igb_ethtool.c        |   2 +
 drivers/net/ethernet/marvell/mv643xx_eth.c          |   7 +-
 drivers/net/ethernet/mellanox/mlx4/en_rx.c          |  41 ++++---
 drivers/net/ethernet/mellanox/mlx4/mlx4_en.h        |   4 +-
 drivers/net/ethernet/moxa/moxart_ether.c            |  22 +++-
 drivers/net/ethernet/qlogic/qlcnic/qlcnic_ethtool.c |   2 +-
 drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c    |  13 +-
 drivers/net/ethernet/renesas/sh_eth.c               |   4 +
 drivers/net/ethernet/sfc/ef10.c                     |  87 ++++++++++----
 drivers/net/ethernet/sfc/mcdi.c                     |  18 ++-
 drivers/net/ethernet/sfc/mcdi_pcol.h                |  56 ++++++++-
 drivers/net/ethernet/sfc/nic.c                      |   9 +-
 drivers/net/ethernet/sfc/nic.h                      |  12 ++
 drivers/net/ethernet/smsc/smc91x.h                  |   6 +-
 drivers/net/ethernet/ti/cpsw.c                      |  19 ++-
 drivers/net/ethernet/ti/davinci_emac.c              |   3 +-
 drivers/net/hamradio/yam.c                          |   1 -
 drivers/net/ieee802154/mrf24j40.c                   |  31 ++---
 drivers/net/tun.c                                   |   8 +-
 drivers/net/usb/ax88179_178a.c                      |  23 +++-
 drivers/net/usb/qmi_wwan.c                          |   1 +
 drivers/net/usb/usbnet.c                            |   4 +-
 drivers/net/virtio_net.c                            |  14 ++-
 drivers/net/wan/farsync.c                           |   1 +
 drivers/net/wan/wanxl.c                             |   1 +
 drivers/net/wireless/ath/ath9k/main.c               |  23 ++--
 drivers/net/wireless/ath/ath9k/xmit.c               |   9 +-
 drivers/net/wireless/cw1200/cw1200_spi.c            |   2 +
 drivers/net/wireless/iwlwifi/iwl-6000.c             |   6 +
 drivers/net/wireless/iwlwifi/iwl-config.h           |   1 +
 drivers/net/wireless/iwlwifi/iwl-trans.h            |   6 +-
 drivers/net/wireless/iwlwifi/mvm/power.c            |   5 +-
 drivers/net/wireless/iwlwifi/mvm/scan.c             |  12 +-
 drivers/net/wireless/iwlwifi/pcie/drv.c             |  42 +++++++
 drivers/net/wireless/iwlwifi/pcie/trans.c           |   8 +-
 drivers/net/wireless/iwlwifi/pcie/tx.c              |   2 +
 drivers/net/wireless/mwifiex/join.c                 |  10 +-
 drivers/net/wireless/mwifiex/main.c                 |   6 +-
 drivers/net/wireless/mwifiex/sta_event.c            |   3 +-
 drivers/net/wireless/rt2x00/rt2x00pci.c             |   9 +-
 drivers/net/wireless/rtlwifi/rtl8192cu/trx.c        |   3 +-
 drivers/net/xen-netback/xenbus.c                    |   4 +
 include/linux/filter.h                              |  15 ++-
 include/linux/netdevice.h                           |   5 +-
 include/linux/yam.h                                 |   2 +-
 include/net/cipso_ipv4.h                            |   6 +-
 include/net/dst.h                                   |  12 ++
 include/net/ip6_route.h                             |   6 +-
 include/net/mac802154.h                             |   2 +-
 include/net/sock.h                                  |   6 +-
 include/uapi/linux/tc_act/Kbuild                    |   1 +
 include/{ => uapi}/linux/tc_act/tc_defact.h         |   2 +-
 net/8021q/vlan_netlink.c                            |   2 +-
 net/batman-adv/main.c                               |   5 +-
 net/batman-adv/network-coding.c                     |  28 +++--
 net/batman-adv/network-coding.h                     |  14 ++-
 net/bridge/br_fdb.c                                 |   4 +-
 net/bridge/br_mdb.c                                 |   2 +-
 net/bridge/br_multicast.c                           |  38 ++++--
 net/bridge/br_netlink.c                             |   2 +-
 net/bridge/br_private.h                             |   5 +-
 net/bridge/br_stp_if.c                              |   2 +-
 net/bridge/br_vlan.c                                | 125 ++++++++++---------
 net/compat.c                                        |   2 +
 net/core/dev.c                                      |   3 +-
 net/core/filter.c                                   |   8 +-
 net/core/secure_seq.c                               |   2 +
 net/core/sock.c                                     |   1 +
 net/ieee802154/6lowpan.c                            |   5 +
 net/ipv4/inet_hashtables.c                          |   2 +-
 net/ipv4/ip_output.c                                |  13 +-
 net/ipv4/ip_vti.c                                   |  14 ++-
 net/ipv4/route.c                                    |   2 +-
 net/ipv4/tcp_input.c                                |   9 +-
 net/ipv4/tcp_output.c                               |  14 ++-
 net/ipv4/xfrm4_policy.c                             |   1 +
 net/ipv6/ah6.c                                      |   3 +-
 net/ipv6/esp6.c                                     |   3 +-
 net/ipv6/inet6_hashtables.c                         |   2 +-
 net/ipv6/ip6_gre.c                                  |   6 +-
 net/ipv6/ip6_output.c                               |  29 +++--
 net/ipv6/ip6_tunnel.c                               |  12 +-
 net/ipv6/ipcomp6.c                                  |   3 +-
 net/ipv6/route.c                                    |  46 +++++--
 net/ipv6/udp.c                                      |   5 +-
 net/ipv6/xfrm6_policy.c                             |   1 +
 net/key/af_key.c                                    |   3 +-
 net/l2tp/l2tp_core.c                                |  36 ++++--
 net/l2tp/l2tp_core.h                                |   3 +
 net/l2tp/l2tp_ppp.c                                 |   4 +
 net/mac80211/cfg.c                                  |   2 +-
 net/mac80211/ieee80211_i.h                          |   3 +
 net/mac80211/offchannel.c                           |   2 +
 net/mac80211/rx.c                                   |   3 +
 net/mac80211/scan.c                                 |  19 +++
 net/mac80211/status.c                               |   3 +
 net/mac80211/tx.c                                   |   3 +-
 net/mac80211/util.c                                 |   9 +-
 net/netfilter/nf_conntrack_h323_main.c              |   4 +-
 net/sched/sch_fq.c                                  |  22 ++--
 net/sched/sch_netem.c                               |  17 +++
 net/sctp/output.c                                   |   3 +-
 net/socket.c                                        |  24 +++-
 net/sysctl_net.c                                    |   4 +-
 net/unix/af_unix.c                                  |  10 ++
 net/unix/diag.c                                     |   1 +
 net/wireless/core.c                                 |  23 ++--
 net/wireless/core.h                                 |   3 +
 net/wireless/ibss.c                                 |   3 +
 net/wireless/nl80211.c                              |   4 +-
 net/wireless/radiotap.c                             |   7 +-
 net/xfrm/xfrm_policy.c                              |  28 +++--
 net/xfrm/xfrm_replay.c                              |  54 +++++----
 net/xfrm/xfrm_user.c                                |   5 +-
 138 files changed, 1313 insertions(+), 717 deletions(-)
 rename include/{ => uapi}/linux/tc_act/tc_defact.h (75%)

^ permalink raw reply

* Re: [PATCH v2.44 1/5] odp: Allow VLAN actions after MPLS actions
From: Ben Pfaff @ 2013-10-22 20:55 UTC (permalink / raw)
  To: Joe Stringer
  Cc: Simon Horman, dev, netdev, Jesse Gross, Pravin B Shelar, Ravi K,
	Isaku Yamahata, Joe Stringer
In-Reply-To: <CAOftzPgSG7NO+hFEeHU0xGH5TjJRe-THGDVz7THrm26j5ua-bA@mail.gmail.com>

On Tue, Oct 22, 2013 at 11:30:26AM -0700, Joe Stringer wrote:
> You're quite right. I think for OF1.2, this is similar to existing
> behaviour, but for OF1.3 it's just incorrect. There is an additional issue
> with the LOAD action.
> 
> OF1.2:
> "push_vlan(A),push_mpls,push_vlan(B)"
> In OF1.2, this has the same result as:-
> "push_mpls,push_vlan(A),push_vlan(B)"
> 
> When translated, this boils down to "(pop_vlan,)push_mpls,push_vlan(B)".
> Correct me if I am wrong, but I think this is similar to the existing
> behaviour, as we currently only support one layer of VLAN. It doesn't
> matter if A == B.
> 
> OF1.3:
> "mod_vlan_vid:A,push_mpls:0x8847,mod_vlan_vid:A" should work, but the
> second mod_vlan is being dropped as it has the same VID as the first. This
> is incorrect, as you point out.
> 
> LOAD:
> "load:A->OXM_OF_VLAN_VID,push_mpls:0x8847,load:A->OXM_OF_VLAN_VID" doesn't
> result in the correct vlan_vid from the first load action. I'm not sure
> that vlan_tci_restore() is clear or correct---I believe its original
> purpose was to properly handle the case where MPLS changes are made from
> REG_LOAD and friends, in the way that the PUSH_MPLS case works. Instead, it
> is handling all cases where MPLS actions have been applied in the past,
> whether the current action modifies MPLS or not.
> 
> It's probably also worthwhile to make use of the ovs-ofctl monitor "-m"
> option in the tests to actually verify these, rather than the current tests
> where we just check the size of the resulting packet.

Thanks for the careful analysis.

^ permalink raw reply

* Re: [PATCH 1/4 net-next] net: phy: add Generic Netlink Ethernet switch configuration API
From: David Miller @ 2013-10-22 21:22 UTC (permalink / raw)
  To: dcbw; +Cc: f.fainelli, netdev, s.hauer, nbd, blogic, jogo, gary
In-Reply-To: <1382477150.19269.69.camel@dcbw.foobar.com>

From: Dan Williams <dcbw@redhat.com>
Date: Tue, 22 Oct 2013 16:25:50 -0500

> On Tue, 2013-10-22 at 15:47 -0400, David Miller wrote:
>> From: Florian Fainelli <f.fainelli@gmail.com>
>> Date: Tue, 22 Oct 2013 12:32:29 -0700
>> 
>> > 2013/10/22 Dan Williams <dcbw@redhat.com>:
>> >> On Tue, 2013-10-22 at 11:23 -0700, Florian Fainelli wrote:
>> >>> This patch adds an Ethernet Switch generic netlink configuration API
>> >>> which allows for doing the required configuration of managed Ethernet
>> >>> switches commonly found in Wireless/Cable/DSL routers in the market.
>> >>
>> >> "swconfig" probably means "switch config", but is there any way to
>> >> rename this away from the "sw" prefix, since "sw" typically means
>> >> "software" and not "switch"?
>> > 
>> > Sure, how about something like "enetsw"? I would like to avoid using
>> > "switch" too much since this is a C reserved keyword.
>> 
>> "swtch"? :-)
> 
> haha...  seriously though, "enetsw" or even "esw" or "ensw" would be
> better than plain "sw".  Your choice, I have no horse in the race other
> than the "not sw" horse :)

"enetsw" is fine by me :-)

^ permalink raw reply

* [PATCH net-next] netem: markov loss model transition fix
From: Hagen Paul Pfeifer @ 2013-10-22 21:27 UTC (permalink / raw)
  To: netdev
  Cc: Hagen Paul Pfeifer, Stephen Hemminger, Eric Dumazet,
	Stefano Salsano, Fabio Ludovici

The transition from markov state "3 => lost packets within a burst
period" to "1 => successfully transmitted packets within a gap period"
has no *additional* loss event. The loss already happen for transition
from 1 -> 3, this additional loss will make things go wild.

E.g. transition probabilities:

p13:   10%
p31:  100%

Expected:

Ploss = p13 / (p13 + p31)
Ploss = ~9.09%

... but it isn't. Even worse: we get a double loss - each time.
So simple don't return true to indicate loss, rather break and return
false.

Signed-off-by: Hagen Paul Pfeifer <hagen@jauu.net>
Cc: Stephen Hemminger <stephen@networkplumber.org>
Cc: Eric Dumazet <edumazet@google.com>
Cc: Stefano Salsano <stefano.salsano@uniroma2.it>
Cc: Fabio Ludovici <fabio.ludovici@yahoo.it>
Signed-off-by: Hagen Paul Pfeifer <hagen@jauu.net>
---
 net/sched/sch_netem.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/net/sched/sch_netem.c b/net/sched/sch_netem.c
index a6d788d..6bf9088 100644
--- a/net/sched/sch_netem.c
+++ b/net/sched/sch_netem.c
@@ -235,7 +235,6 @@ static bool loss_4state(struct netem_sched_data *q)
 			clg->state = 2;
 		else if (clg->a3 < rnd && rnd < clg->a2 + clg->a3) {
 			clg->state = 1;
-			return true;
 		} else if (clg->a2 + clg->a3 < rnd) {
 			clg->state = 3;
 			return true;
-- 
1.8.4.rc3

^ permalink raw reply related

* -27% netperf TCP_STREAM regression by "tcp_memcontrol: Kill struct tcp_memcontrol"
From: fengguang.wu @ 2013-10-22 21:41 UTC (permalink / raw)
  To: Eric W. Biederman; +Cc: netdev, LKML

Hi Eric,

We noticed big netperf throughput regressions

    a4fe34bf902b8f709c63      2e685cad57906e19add7  
------------------------  ------------------------  
                  707.40       -40.7%       419.60  lkp-nex04/micro/netperf/120s-200%-TCP_STREAM
                 2775.60       -23.7%      2116.40  lkp-sb03/micro/netperf/120s-200%-TCP_STREAM
                 3483.00       -27.2%      2536.00  TOTAL netperf.Throughput_Mbps

and bisected it to

commit 2e685cad57906e19add7189b5ff49dfb6aaa21d3
Author: Eric W. Biederman <ebiederm@xmission.com>
Date:   Sat Oct 19 16:26:19 2013 -0700

    tcp_memcontrol: Kill struct tcp_memcontrol
    
    Replace the pointers in struct cg_proto with actual data fields and kill
    struct tcp_memcontrol as it is not fully redundant.
    
    This removes a confusing, unnecessary layer of abstraction.
    
    Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>

:040000 040000 a1896af98145c8ae2765a787845c43c9700c7dc0 02c93b50f66f1d1b34983bf3cc7e9a0dcc7105dc M	include
:040000 040000 ebe5d0619b54ddf730224f6581f595491eb36989 cd560b4a6e56cecac931814ba16420e167eb68f6 M	mm
:040000 040000 5df01f70484e07fbf98a7d5b8e0a53270777ac3d 1f8d1b340d8810a79691777f4e3ee529027b3c9b M	net
bisect run success

# bad: [aec2994e1799312822a30fefc27205e7360fe5af] Merge 'pwm/for-next' into devel-hourly-2013102222
# good: [31d141e3a666269a3b6fcccddb0351caf7454240] Linux 3.12-rc6
git bisect start 'aec2994e1799312822a30fefc27205e7360fe5af' '31d141e3a666269a3b6fcccddb0351caf7454240' '--'
# good: [ef26157747d42254453f6b3ac2bd8bd3c53339c3] batman-adv: tvlv - basic infrastructure
git bisect good ef26157747d42254453f6b3ac2bd8bd3c53339c3
# bad: [cc6a88faebab06b0323818cd102a6aae443cf34a] Merge 'netdev-next/master' into devel-hourly-2013102222
git bisect bad cc6a88faebab06b0323818cd102a6aae443cf34a
# good: [5cda73b68ebf7e08586d61e6777e64e12df23f07] Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next
git bisect good 5cda73b68ebf7e08586d61e6777e64e12df23f07
# good: [a8fab0744585c1ab61009bfc1a1958f28e1c864f] x86/jump_label: expect default_nop if static_key gets enabled on boot-up
git bisect good a8fab0744585c1ab61009bfc1a1958f28e1c864f
# good: [21d35d212469c3138f8916f7e47b779313d79751] net: sky2: remove unnecessary pci_set_drvdata()
git bisect good 21d35d212469c3138f8916f7e47b779313d79751
# bad: [61c1db7fae21ed33c614356a43bf6580c5e53118] ipv6: sit: add GSO/TSO support
git bisect bad 61c1db7fae21ed33c614356a43bf6580c5e53118
# good: [a4fe34bf902b8f709c635ab37f1f39de0b86cff2] tcp_memcontrol: Remove the per netns control.
git bisect good a4fe34bf902b8f709c635ab37f1f39de0b86cff2
# bad: [1b66917d6b76db0abe1a1bbf86b2517ba8b91d98] cgxb4: remove duplicate include in cxgb4.h
git bisect bad 1b66917d6b76db0abe1a1bbf86b2517ba8b91d98
# bad: [0a6fa23dcb10eeb21adfd9955f7030f952a8122d] ipv4: Use math to point per net sysctls into the appropriate struct net.
git bisect bad 0a6fa23dcb10eeb21adfd9955f7030f952a8122d
# bad: [2e685cad57906e19add7189b5ff49dfb6aaa21d3] tcp_memcontrol: Kill struct tcp_memcontrol
git bisect bad 2e685cad57906e19add7189b5ff49dfb6aaa21d3
# first bad commit: [2e685cad57906e19add7189b5ff49dfb6aaa21d3] tcp_memcontrol: Kill struct tcp_memcontrol


                              netperf.Throughput_Mbps

   750 ++-------------------------------------------------------------------+
       *...*...                             .*...                         ..*
   700 ++      *...*..*...*...*...*...*...*.     *...*...*...*...*..*...*.  |
       |                                                                    |
   650 ++                                                                   |
       |                                                                    |
   600 ++                                                                   |
       |                                                                    |
   550 ++                                                                   |
       |                                                                    |
   500 ++                                                                   |
       |                                                                    |
   450 ++                                                                   |
       O   O       O  O   O       O       O  O   O   O   O   O              |
   400 ++------O--------------O-------O-------------------------------------+


                                  vmstat.system.in

   17200 ++-----------------------------------------------------------------+
   17100 ++               ..*..*.      *...*..                              |
         |          *...*.       ..  ..       *                        .*...|
   17000 ++       ..                .          +                     *.     *
   16900 ++..*.. .                 *            +                  ..       |
   16800 *+     *                                +       *        .         |
   16700 ++                                       *..   + +      *          |
         |                                           . +   +   ..           |
   16600 ++                                           *     + .             |
   16500 ++                                                  *              |
   16400 ++                                                                 |
   16300 ++                                                                 |
         O          O   O      O       O              O                     |
   16200 ++  O  O           O      O       O  O   O      O   O              |
   16100 ++-----------------------------------------------------------------+


                                   vmstat.system.cs

   550000 ++----------------------------------------------------------------+
   500000 *+..*..*..        *...*..    *...  ..*..*..    .*..*...*..    *...*
          |         .     ..       . ..    *.        . ..           . ..    |
   450000 ++         *...*          *                 *              *      |
   400000 ++                                                                |
   350000 ++                                                                |
   300000 ++                                                                |
          |                                                                 |
   250000 ++                                                                |
   200000 ++                                                                |
   150000 ++                                                                |
   100000 ++                                                                |
          |                                                                 |
    50000 O+  O  O   O   O  O   O   O  O   O   O  O   O   O  O              |
        0 ++----------------------------------------------------------------+


                          lock_stat.slock-AF_INET.contentions

   150000 ++----------------------------------------------------------------+
          |                 *...         ..*...                             |
   140000 ++               +    *      *.      *                            |
   130000 ++              +      :    :         :                           |
          |            ..*        :   :         :                       *...*
   120000 ++ .*..  ..*.           :  :         O :                    ..    |
   110000 ++.    *.                : :           :                  .*      |
          *                         *             :       *       ..        |
   100000 ++                                      *.     + :     *          |
    90000 ++                                        ..  +   :  ..           |
          |                                            +    : .             |
    80000 ++                           O              *      *              |
    70000 O+         O   O      O                     O                     |
          |   O             O       O             O          O              |
    60000 ++-----O-------------------------O--------------O-----------------+


                 lock_stat.slock-AF_INET.contentions.lock_sock_nested

   130000 ++----------------------------------------------------------------+
          |                                                                 |
   120000 ++                *...         ..*...*                            |
   110000 ++               +    *      *.       :                           |
          |               +      +    :        O:                       *...*
   100000 ++ .*..   .*...*        +   :          :                    ..    |
          |..     ..               + :           :                  .*      |
    90000 *+     *                  *             :       *       ..        |
          |                                       *.     + :     *          |
    80000 ++                                        ..  +   :  ..           |
    70000 ++                                           +    : .             |
          |              O      O      O              *      *              |
    60000 O+         O                            O   O                     |
          |   O  O          O       O      O              O  O              |
    50000 ++----------------------------------------------------------------+


                    lock_stat.slock-AF_INET.contentions.tcp_v4_rcv

   150000 ++----------------------------------------------------------------+
          |                 *...                                            |
   140000 ++               +    *      *...*...*                            |
   130000 ++              +      :    :         :                           |
          |            ..*        :   :         :                       *...*
   120000 ++ .*..  ..*.           :  :         O :                    ..    |
   110000 ++.    *.                : :           :                  .*      |
          *                         *             :               ..        |
   100000 ++                                      *.      *      *          |
    90000 ++                                        ..  .. +   ..           |
          |                                            .    + .             |
    80000 ++                           O              *      *              |
    70000 ++         O   O      O                     O                     |
          O   O             O       O             O          O              |
    60000 ++-----O-------------------------O--------------O-----------------+


                        lock_stat.slock-AF_INET/1.contentions

   50000 ++-----------------------------------------------------------------+
         |                  *..                                           ..*
   45000 ++                +           *...*..                          *.  |
   40000 ++               +    *.     +       *..                     ..    |
         |  .*..         +       ..  +           .                 ..*      |
   35000 ++.    *...  ..*           +             *      *.      *.         |
         *          *.             *               :    :  ..  ..           |
   30000 ++                                         :   :     .             |
         |                                          :  :     *              |
   25000 ++                                          : :                    |
   20000 ++                                           *                     |
         |                                    O                             |
   15000 ++                            O              O                     |
         O   O  O   O   O   O  O   O       O      O      O   O              |
   10000 ++-----------------------------------------------------------------+


                  lock_stat.slock-AF_INET/1.contentions.tcp_v4_rcv

   50000 ++-----------------------------------------------------------------+
         |                  *..                                           ..*
   45000 ++                +           *...*..                          *.  |
   40000 ++               +    *.     +       *..                     ..    |
         |  .*..         +       ..  +           .                 ..*      |
   35000 ++.    *...  ..*           +             *      *.      *.         |
         *          *.             *               :    :  ..  ..           |
   30000 ++                                         :   :     .             |
         |                                          :  :     *              |
   25000 ++                                          : :                    |
   20000 ++                                           *                     |
         |                                    O                             |
   15000 ++                            O              O                     |
         O   O  O   O   O   O  O   O       O      O      O   O              |
   10000 ++-----------------------------------------------------------------+


                 lock_stat.slock-AF_INET/1.contentions.release_sock

   35000 ++-----------------------------------------------------------------*
         |                  *..                                         *.  |
   30000 ++                +           *...*..*.                      ..    |
         |                +    *..   ..         ..                 ..*      |
         |  .*..         +        . .                    *.      *.         |
   25000 ++.    *...*...*          *              *     :  ..  ..           |
         *                                         +    :     .             |
   20000 ++                                         +  :     *              |
         |                                           + :                    |
   15000 ++                                           *                     |
         |                                                                  |
         |                                    O                             |
   10000 O+         O   O      O       O          O   O                     |
         |   O  O           O      O       O             O   O              |
    5000 ++-----------------------------------------------------------------+


                           lock_stat.&rq->lock.contentions

   45000 ++-----------------------------------------------------------------+
         |                 .*..        *...                                 |
   40000 ++              ..    *..   ..    *..                              |
   35000 ++ .*..      ..*         . .         *.                       .*...*
         |..    *...*.             *            ..                  .*.     |
   30000 *+                                                       ..        |
   25000 ++                                       *..    *...  ..*          |
         |                                           . ..    *.             |
   20000 ++                                           *                     |
   15000 ++                                                                 |
         |                                                                  |
   10000 ++                                                                 |
    5000 O+  O  O   O   O   O  O   O   O   O  O   O   O      O              |
         |                                               O                  |
       0 ++-----------------------------------------------------------------+


                   lock_stat.&rq->lock.contentions.try_to_wake_up

   35000 ++-----------------------------------------------------------------+
         |                                                                  |
   30000 ++                .*..            *..                              |
         |   *           ..    *..        :                                 |
   25000 ++.. :         *         .       :   *.                        *   |
         |.   :        :           *.    :      ..                      ::  |
   20000 *+    :       :             .. :                       .*     :  : |
         |     :      :                 :         *...        ..  +    :  : |
   15000 ++     :    :                 *              *      *     +  :    :|
         |      *... :                                 +   ..       + :     *
   10000 ++         *                                   + .          *      |
         |                                               *                  |
    5000 ++                                   O                             |
         O   O  O   O   O   O  O       O   O          O  O   O              |
       0 ++------------------------O--------------O-------------------------+


                     lock_stat.&rq->lock.contentions.__schedule

   35000 ++-----------------------------------------------------------------+
         |                                                                  |
   30000 ++                 *..                                             |
         |                ..              .*..                              |
   25000 ++ .*           .     *...     ..                              *.  |
         |..  +        .*          *...*      *                        :  ..|
   20000 *+    +     ..                        +                       :    |
         |      *...*                           +              ..*... :     *
   15000 ++                                      +         ..*.      *      |
         |                                        *...*..*.                 |
   10000 ++                                                                 |
         |                                                                  |
    5000 ++                    O                                            |
         O   O  O   O   O   O      O   O   O  O   O   O  O   O              |
       0 ++-----------------------------------------------------------------+


             lock_stat.&(&base->lock)->rlock.contentions.lock_timer_base

   18000 ++----------------------------*------------------------------------+
         |                ..*..       +    *..                         .*...*
   16000 ++           ..*.     *..   +        *...                  .*.     |
   14000 ++ .*..*...*.            . +             *      *.       ..        |
         |..                       *               +    :  ..   .*          |
   12000 *+                                         +   :     ..            |
   10000 ++                                          + :     *              |
         |                                            *                     |
    8000 ++                                                                 |
    6000 ++                                                                 |
         |                                                                  |
    4000 ++                                                                 |
    2000 ++                    O                                            |
         O   O  O   O   O   O      O   O   O  O   O   O  O   O              |
       0 ++-----------------------------------------------------------------+


                     lock_stat.&(&n->list_lock)->rlock.contentions

   140000 ++----------------------------------------------------------------+
          |                                       O                         |
   120000 O+  O  O   O   O  O   O                     O                     |
          |                         O  O   O   O          O  O              |
   100000 ++                                                                |
          |                                                                 |
    80000 ++                                                                |
          |                                                                 |
    60000 ++                                                                |
          |                                                                 |
    40000 ++                                                                |
          |                                                                 |
    20000 ++                                                                |
          |                                                                 |
        0 *+--*--*---*---*--*---*---*--*---*---*--*---*---*--*---*---*--*---*


            lock_stat.&(&n->list_lock)->rlock.contentions.get_partial_node

   250000 ++----------------------------------------------------------------+
          |                                                                 |
          O                                       O                         |
   200000 ++  O  O   O   O  O   O   O  O   O   O      O      O              |
          |                                               O                 |
          |                                                                 |
   150000 ++                                                                |
          |                                                                 |
   100000 ++                                                                |
          |                                                                 |
          |                                                                 |
    50000 ++                                                                |
          |                                                                 |
          |                                                                 |
        0 *+--*--*---*---*--*---*---*--*---*---*--*---*---*--*---*---*--*---*


           lock_stat.&(&n->list_lock)->rlock.contentions.unfreeze_partials

   45000 ++-----------------------------------------------------------------+
         O                                        O                         |
   40000 ++         O   O   O                         O                     |
   35000 ++  O  O              O   O       O  O          O   O              |
         |                             O                                    |
   30000 ++                                                                 |
   25000 ++                                                                 |
         |                                                                  |
   20000 ++                                                                 |
   15000 ++                                                                 |
         |                                                                  |
   10000 ++                                                                 |
    5000 ++                                                                 |
         |                                                                  |
       0 *+--*--*---*---*---*--*---*---*---*--*---*---*--*---*---*---*--*---*


                                  iostat.cpu.user

   1.8 ++-------------------------------------------------------------------+
       *...*...*.         *...*.      *...*..                               |
   1.6 ++        ..     ..      ..  ..       *...*..    .*...*...*      *...*
       |               .           .                . ..          +   ..    |
       |           *..*           *                  *             + .      |
   1.4 ++                                                           *       |
       |                                                                    |
   1.2 ++                                                                   |
       |                                                                    |
     1 ++                                                                   |
       |                                                                    |
       |                                                                    |
   0.8 ++                         O       O      O   O                      |
       O   O   O   O  O   O   O       O      O           O   O              |
   0.6 ++-------------------------------------------------------------------+


                                  iostat.cpu.system

   96.6 ++------------------------------------------------------------------+
        |   O          O              O   O       O  O   O                  |
   96.4 O+      O  O       O   O  O                          O              |
        |                                                                   |
        |                                                                   |
   96.2 ++                                                                  |
        |                                                                   |
     96 ++                                                                  |
        |                                                                   |
   95.8 ++                                    O                             |
        |            ..*.         *.                 *..            *..     |
        |          *.    ..      +  ..             ..   .         ..   .  ..*
   95.6 ++       ..             +           ..*...*      *...  ..*      *.  |
        |     ..*          *...*      *...*.                 *.             |
   95.4 *+--*---------------------------------------------------------------+

^ permalink raw reply

* Re: -27% netperf TCP_STREAM regression by "tcp_memcontrol: Kill struct tcp_memcontrol"
From: David Miller @ 2013-10-22 22:00 UTC (permalink / raw)
  To: fengguang.wu; +Cc: ebiederm, netdev, linux-kernel
In-Reply-To: <20131022214129.GB2715@localhost>

From: fengguang.wu@intel.com
Date: Tue, 22 Oct 2013 22:41:29 +0100

> We noticed big netperf throughput regressions
> 
>     a4fe34bf902b8f709c63      2e685cad57906e19add7  
> ------------------------  ------------------------  
>                   707.40       -40.7%       419.60  lkp-nex04/micro/netperf/120s-200%-TCP_STREAM
>                  2775.60       -23.7%      2116.40  lkp-sb03/micro/netperf/120s-200%-TCP_STREAM
>                  3483.00       -27.2%      2536.00  TOTAL netperf.Throughput_Mbps
> 
> and bisected it to
> 
> commit 2e685cad57906e19add7189b5ff49dfb6aaa21d3
> Author: Eric W. Biederman <ebiederm@xmission.com>
> Date:   Sat Oct 19 16:26:19 2013 -0700
> 
>     tcp_memcontrol: Kill struct tcp_memcontrol

Eric please look into this, I'd rather have a fix to apply than revert your
work.

Thanks.

^ permalink raw reply

* Re: [PATCH 1/4 net-next] net: phy: add Generic Netlink Ethernet switch configuration API
From: Florian Fainelli @ 2013-10-22 22:09 UTC (permalink / raw)
  To: Neil Horman
  Cc: John Fastabend, netdev, David Miller, Sascha Hauer, Felix Fietkau,
	John Crispin, Jonas Gorski, Gary Thomas, Jamal Hadi Salim
In-Reply-To: <20131022202537.GA16336@hmsreliant.think-freely.org>

2013/10/22 Neil Horman <nhorman@tuxdriver.com>:
> On Tue, Oct 22, 2013 at 12:59:12PM -0700, Florian Fainelli wrote:
>> 2013/10/22 John Fastabend <john.r.fastabend@intel.com>:
>> > On 10/22/2013 11:23 AM, Florian Fainelli wrote:
>> >>
>> >> This patch adds an Ethernet Switch generic netlink configuration API
>> >> which allows for doing the required configuration of managed Ethernet
>> >> switches commonly found in Wireless/Cable/DSL routers in the market.
>> >>
>> >> Since this API is based on the Generic Netlink infrastructure it is very
>> >> easy to extend a particular switch driver to support additional features
>> >> and to adapt it to specific switches.
>> >>
>> >
>> >> So far the API includes support for:
>> >>
>> >> - getting/setting a port VLAN id
>> >> - getting/setting VLAN port membership
>> >> - getting a port link status
>> >> - getting a port statistics counters
>> >> - resetting a switch device
>> >> - applying a configuration to a switch device
>> >>
>> >
>> > Did you consider exposing each physical switch port as a netdevice on
>> > the host? I would assume your switch driver could do this.
>> >
>> > Then you can drop the port specific attributes (link status, stats, etc)
>> > and use existing interfaces. The win being my tools work equally well on
>> > your real switch as they do on my software switch. Also by exposing net
>> > devices you provide a mechanism to send packets over the port and trap
>> > control packets.
>>
>> Well this is exactly what DSA does and which I do not like because it
>> is completely overkill for most switches out there which are using
>> 802.1q tags and do not prepend/append proprietary tags for internal
>> traffic classification.
>>
>> >
>> > Next instead of creating a switch specific netlink API could you use
>> > the existing FDB API? Again what I would like is for my existing
>> > applications to run on the switch without having to rewrite them. For
>> > example it would be great to have 'bridge fdb show dev myswitch' report
>> > the correct tables for both the Sw bridge, a real switch bridge, and
>> > for the embedded SR-IOV bridge case.
>>
>> Ok, I know nothing about the FDB API, but will take a look and see if
>> that sounds suitable for the embedded use cases.
>>
> Further to Johns comments, why are you creating a new netlink protocol for this?
> It seems that 90% of what you want to accomplish above is handled by rtnetlink.
> As long as you write your driver properly, most of that should "just work".

This is not a new netlink protocol, but a generic netlink family. Why
would I extend rtnetlink to cover the remaining 10% which are not
going to be used on desktop and servers when a new generic netlink
family is cheap and can be selectively disabled in the kernel?
-- 
Florian

^ permalink raw reply

* Re: [PATCH] sh_eth: add/use RMCR.RNC bit
From: Sergei Shtylyov @ 2013-10-22 22:16 UTC (permalink / raw)
  To: netdev, David Miller; +Cc: nobuhiro.iwamatsu.yj, linux-sh, davem, horms
In-Reply-To: <201310160229.58735.sergei.shtylyov@cogentembedded.com>

Hello.

On 10/16/2013 02:29 AM, Sergei Shtylyov wrote:

> Declare 'enum EMCR_BIT' containing the single member for the RMCR.RNC bit and

    Hm, looks like I typoed here, should have been RMCR_BIT. David, should I 
resubmit or you can fix it while applying? Or simply not worth the trouble?

> replace bare numbers in the driver by  this mnemonic.

> Suggested-by: David Miller <davem@davemloft.net>
> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

> ---
> This patch is against DaveM's 'net.git' repo but it intended for 'net-next.git'
> repo -- it's  because 'net-next.git' doesn't contain the required Simon Horman's
> patch yet.

WBR, Sergei


^ permalink raw reply

* Re: [PATCH] packet: Deliver VLAN TPID to userspace
From: Stephen Hemminger @ 2013-10-22 22:41 UTC (permalink / raw)
  To: Atzm Watanabe; +Cc: Ben Hutchings, netdev
In-Reply-To: <87txgaj9nk.wl%atzm@stratosphere.co.jp>

On Tue, 22 Oct 2013 11:56:31 +0900
Atzm Watanabe <atzm@stratosphere.co.jp> wrote:

> Hmm...  I think TPACKET{,2,3}_HDRLEN should not be removed without
> careful considerations.  Because some userspace programs (e.g libpcap)
> are using them in order to check mmap ability of the kernel...


That's bad because it means the library then depends on the headers
of the machine it was built on, not the machine it is running on. I often
build software on boxes where /usr/include version of kernel headers is out dated.

^ permalink raw reply

* Re: [PATCH] sh_eth: add/use RMCR.RNC bit
From: David Miller @ 2013-10-22 23:08 UTC (permalink / raw)
  To: sergei.shtylyov; +Cc: netdev, nobuhiro.iwamatsu.yj, linux-sh, horms
In-Reply-To: <5266F94E.9030406@cogentembedded.com>

From: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Date: Wed, 23 Oct 2013 02:16:46 +0400

> Hello.
> 
> On 10/16/2013 02:29 AM, Sergei Shtylyov wrote:
> 
>> Declare 'enum EMCR_BIT' containing the single member for the RMCR.RNC
>> bit and
> 
>    Hm, looks like I typoed here, should have been RMCR_BIT. David, should
>    I resubmit or you can fix it while applying? Or simply not worth the
>    trouble?

I'll fix it when I apply it, thanks.

^ permalink raw reply

* Re: [PATCH net-next v2] bonding: move bond-specific init after enslave happens
From: David Miller @ 2013-10-22 23:22 UTC (permalink / raw)
  To: vfalico; +Cc: netdev, jiri, dingtianhong, fubar, andy
In-Reply-To: <1382348910-32724-1-git-send-email-vfalico@redhat.com>

From: Veaceslav Falico <vfalico@redhat.com>
Date: Mon, 21 Oct 2013 11:48:30 +0200

> As Jiri noted, currently we first do all bonding-specific initialization
> (specifically - bond_select_active_slave(bond)) before we actually attach
> the slave (so that it becomes visible through bond_for_each_slave() and
> friends). This might result in bond_select_active_slave() not seeing the
> first/new slave and, thus, not actually selecting an active slave.
> 
> Fix this by moving all the bond-related init part after we've actually
> completely initialized and linked (via bond_master_upper_dev_link()) the
> new slave.
> 
> Also, remove the bond_(de/a)ttach_slave(), it's useless to have functions
> to ++/-- one int.
> 
> After this we have all the initialization of the new slave *before*
> linking, and all the stuff that needs to be done on bonding *after* it. It
> has also a bonus effect - we can remove the locking on the new slave init
> completely, and only use it for bond_select_active_slave().
> 
> Reported-by: Jiri Pirko <jiri@resnulli.us>
> CC: Jay Vosburgh <fubar@us.ibm.com>
> CC: Andy Gospodarek <andy@greyhouse.net>
> Signed-off-by: Veaceslav Falico <vfalico@redhat.com>

Applied.

^ permalink raw reply

* Re: [net-next PATCH] macvlan: resolve ENOENT errors on creation
From: David Miller @ 2013-10-22 23:23 UTC (permalink / raw)
  To: john.fastabend; +Cc: vfalico, nhorman, netdev
In-Reply-To: <20131021212801.19330.69659.stgit@nitbit.x32>

From: John Fastabend <john.fastabend@gmail.com>
Date: Mon, 21 Oct 2013 14:28:02 -0700

> After the commit below attempting to create macvlan devices was
> resulting in ENOENT errors,
> 
> # ip link add link p3p2 type macvlan
> RTNETLINK answers: Invalid argument
> 
> This happens because netdev_upper_dev_link() is called before
> register_netdevice() in the macvlan code. Through a call chain
> this results in a call to __netdev_adjacent_dev_insert() and
> finally a sysfs_create_link(). This requires the kobject of
> the macvlan to be registered which is done in register_netdevice().
> If there is no kobject which is the case here the ENOENT error
> is seen on the command line.
> 
> To resolve this move the netdev_upper_dev_link() call below
> the register_netdevice() call. This aligns with vlan driver
> flow.
> 
> Regression introduced here,
> 
> commit 5831d66e8097aedfa3bc35941cf265ada2352317
> Author: Veaceslav Falico <vfalico@redhat.com>
> Date:   Wed Sep 25 09:20:32 2013 +0200
> 
>     net: create sysfs symlinks for neighbour devices
> 
> CC: Veaceslav Falico <vfalico@redhat.com>
> CC: Neil Horman <nhorman@tuxdriver.com>
> Signed-off-by: John Fastabend <john.r.fastabend@intel.com>

Applied, thanks.

^ permalink raw reply

* Re: [PATCH 11/11] asmlinkage, wan/sbni: Make inline assembler symbols visible and assembler global
From: Andi Kleen @ 2013-10-23  2:09 UTC (permalink / raw)
  To: David Miller; +Cc: andi, akpm, linux-kernel, ak, netdev
In-Reply-To: <20131022.135928.2040131908206663695.davem@davemloft.net>

On Tue, Oct 22, 2013 at 01:59:28PM -0400, David Miller wrote:
> From: Andi Kleen <andi@firstfloor.org>
> Date: Tue, 22 Oct 2013 09:12:26 -0700
> 
> > From: Andi Kleen <ak@linux.intel.com>
> > 
> > - Inline assembler defining C callable code has to be global
> > - The function has to be visible
> > 
> > Do this in wan/sbni
> > 
> > Cc: netdev@vger.kernel.org
> > Signed-off-by: Andi Kleen <ak@linux.intel.com>
> 
> Is it really impossible to use the generic crc32 support instead of this
> unsightly custom inline assembler?

Yes it's impossible.

There's no way for me to test it, and this would be a far too big change
to submit untested.

Also my only interest here is this thing not breaking my LTO
allyesconfig build. I'm not even sure what it does.

Just because some legacy driver breaks my build you cannot make me
accountable for maintaining it now. 

If it's not possible to get this trivial change in I would need
to mark it "depends on !LTO" in Kconfig.

-Andi

^ permalink raw reply

* Re: [PATCH] net: wan: sbni: remove assembly crc32 code
From: Andi Kleen @ 2013-10-23  2:11 UTC (permalink / raw)
  To: Sebastian Andrzej Siewior
  Cc: David Miller, andi, akpm, linux-kernel, ak, netdev
In-Reply-To: <20131022183625.GA4382@breakpoint.cc>

On Tue, Oct 22, 2013 at 08:36:25PM +0200, Sebastian Andrzej Siewior wrote:
> 
> There is also a C function doing the same thing. Unless the asm code is
> 110% faster we could stick to the C function.

I have no idea if it is or not. But doing it this way would be
acceptable for me.

Thanks for the patch.

-Andi

^ permalink raw reply

* Re: [PATCH 11/11] asmlinkage, wan/sbni: Make inline assembler symbols visible and assembler global
From: Florian Fainelli @ 2013-10-23  2:15 UTC (permalink / raw)
  To: Andi Kleen
  Cc: David Miller, Andrew Morton, linux-kernel@vger.kernel.org, ak,
	netdev
In-Reply-To: <20131023020955.GF29695@two.firstfloor.org>

2013/10/22 Andi Kleen <andi@firstfloor.org>:
> On Tue, Oct 22, 2013 at 01:59:28PM -0400, David Miller wrote:
>> From: Andi Kleen <andi@firstfloor.org>
>> Date: Tue, 22 Oct 2013 09:12:26 -0700
>>
>> > From: Andi Kleen <ak@linux.intel.com>
>> >
>> > - Inline assembler defining C callable code has to be global
>> > - The function has to be visible
>> >
>> > Do this in wan/sbni
>> >
>> > Cc: netdev@vger.kernel.org
>> > Signed-off-by: Andi Kleen <ak@linux.intel.com>
>>
>> Is it really impossible to use the generic crc32 support instead of this
>> unsightly custom inline assembler?
>
> Yes it's impossible.
>
> There's no way for me to test it, and this would be a far too big change
> to submit untested.
>
> Also my only interest here is this thing not breaking my LTO
> allyesconfig build. I'm not even sure what it does.
>
> Just because some legacy driver breaks my build you cannot make me
> accountable for maintaining it now.
>
> If it's not possible to get this trivial change in I would need
> to mark it "depends on !LTO" in Kconfig.

How about scheduling the WAN drivers for removal? Does anybody
actually use them nowadays?
--
Florian

^ permalink raw reply

* Re: [PATCH 11/11] asmlinkage, wan/sbni: Make inline assembler symbols visible and assembler global
From: Andi Kleen @ 2013-10-23  2:22 UTC (permalink / raw)
  To: Florian Fainelli
  Cc: Andi Kleen, David Miller, Andrew Morton,
	linux-kernel@vger.kernel.org, ak, netdev
In-Reply-To: <CAGVrzcZ6xgp4TMgwDFJwz45m8narx0sHYAyM67HsD069tFg3BA@mail.gmail.com>

> How about scheduling the WAN drivers for removal? Does anybody
> actually use them nowadays?

Perhaps at least the ISA devices? ISA hardware should be nearing
end of live by now.

Looking at the git log there doesn't seem to be any real changes,
other than tree sweeps or build fixes.

But I must admit I don't really know much about them.

-Andi

^ permalink raw reply


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox