* NetDev 0.1 conference new proposals accepted + misc updates
From: Jamal Hadi Salim @ 2015-01-19 15:28 UTC (permalink / raw)
To: netdev-u79uwXL29TY76Z2rM5mHXA,
linux-wireless-u79uwXL29TY76Z2rM5mHXA, lwn-T1hC0tSOHrs,
netdev01-wool9L35kiczKOhml7GhPkB+6BGkLq7r,
lartc-u79uwXL29TY76Z2rM5mHXA, netfilter-u79uwXL29TY76Z2rM5mHXA,
netfilter-devel-u79uwXL29TY76Z2rM5mHXA
Cc: Richard Guy Briggs, info-4R/QDJtgm2dg9hUCZPvPmw
Fellow netheads:
On behalf of rgb, yours truly is sending out the weekly announcement.
This conference is turning out to be _the best ever_ Linux networking
content put together under one roof. You will be committing a netdev
crime if you dont show up!
Please spread the news. Forward this email appropriately.
First things first.
A reminder that the Westin Hotel is still holding a block of rooms for
Netdev01 at a guaranteed rate of $159.00 or $179.00 (depending on the
type of room required) and there are still rooms available.
That guarantee expires on January 23, so please dont procastinate
and book now. The rates *WILL* go up.
Reservations:
https://www.starwoodmeeting.com/StarGroupsWeb/res?id=1412035802&key=1AC9C1F8
Please register soon to help us plan this event better.
Registration https://onlineregistrations.ca/netdev01/
$100/day, or $350 for 4 days (Cdn dollars, reel cheep).
(online reg closes Feb 12th). Again:
Registering helps us plan properly for numbers of attendees,
ensuring venue sizes and supplies are appropriate without
wasting resources.
NetDev 0.1 would like to gratefully acknowledge our sponsors:
https://netdev01.org/sponsors
Google https://www.google.ca
Qualcomm https://www.qualcomm.com/
Verizon http://www.verizon.com/
Cumulus Networks http://cumulusnetworks.com/
Mojatatu Networks http://mojatatu.com/
There are a few more talks and tutorials and BOFs/workshops
in the pipeline (we will close acceptance at the end of the week,
so if you want to submit, please do it NOW).
Here is an update on new proposals accepted this past week for NetDev
0.1 that you may have missed if you aren't following the RSS feed or
twitter:
New Sponsors (All listed at: https://www.netdev01.org/sponsors)
=============
Qualcomm - Without sponsors like Qualcomm netdev 0.1 couldnt have
have happened. Thanks Qualcomm for your support of the open source
community.
Google - Google is a giant in the open source world. We thank them
for their sponsorship.
Accepted talks: (All listed: https://www.netdev01.org/sessions )
===============
1) Breaking Open Linux Switching Drivers by Andy Gospodarek
Andy will talk about taking an evolutionary path of a compromise
to integrate between vendor SDKs and the Linux kernel for hardware
offload. Graphics cards all over again? Come and find out.
https://www.netdev01.org/sessions/19
2) Weighing Three Methods of Scaling UDP Applications by Alan Dekok
Alan, the maintainer of FreeRadius, has had to battle UDP for years.
In this talk he will describe his experiences on 3 different approaches
he has recently taken to try and scale UDP applications on Linux
https://www.netdev01.org/sessions/20
3) TC Classifier Action Subsystem by Jamal Hadi Salim
Jamal will describe the tc classifier-action subsystem in details (A
decade too late?). He claims to be inspired by two talks at netdev01
which refer to this subsystem. He also claims it is a better
architecture than OF and P4. Come beat up on him.
https://www.netdev01.org/sessions/21
4) MLAG (or Multi-Chassis Link aggregation Group) integration with
Linux by Matty Kadosh
Mellanox MLAG implementation at https://github.com/open-ethernet/MLAG
will be discussed in this talk. Matty will talk about experiences and
will try to convince us that it is time to mainstream MLAG.
https://www.netdev01.org/sessions/22
5) MLAG on Linux - Lessons Learned by Scott Emery
Cumulus Networks has extensive MLAG deployment on Linux using hardware
offloads on high speed hardware.
They have had to battle dragons in many dungeons and slay
many monsters along the way. Come hear all that experience in one talk.
https://www.netdev01.org/sessions/23
Accepted Tutorials (All listed: https://www.netdev01.org/sessions )
===================
1)Hardware Accelerating Linux Network Functions by
Roopa Prabhu and Toshiaki Makita
Everything you ever wanted to know about using Linux bridging
variations for virtualization, data centre & enterprise, L3, ACLs and
more. How well do you know how to use bridge/brctl/ip/ethtool and
their friends to setup a desired network(bridge, SRIOV, Macvlan etc)?
Roopa and Toshiaki will try to guide you through this vast ocean of
knowledge. You will get to learn about how to learn the theory
and practise and beauty of using these toolsets consistently
whether on a NIC, offloaded-NIC or multi-terabit capacity switch
hardware.
https://www.netdev01.org/sessions/24
More coming in future updates.
If youve got this far reading - please go and register.
cheers,
jamal (on behalf of Richard Guy Briggs)
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply
* Re: [RFC PATCH] net: ipv6: Make address flushing on ifdown optional
From: Hannes Frederic Sowa @ 2015-01-19 15:02 UTC (permalink / raw)
To: David Ahern; +Cc: netdev
In-Reply-To: <1421263039-96198-1-git-send-email-dsahern@gmail.com>
On Mi, 2015-01-14 at 12:17 -0700, David Ahern wrote:
> Currently, ipv6 addresses are flushed when the interface is configured down:
>
> [root@f20 ~]# ip -6 addr add dev eth1 2000:11:1:1::1/64
> [root@f20 ~]# ip addr show dev eth1
> 3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
> link/ether 02:04:11:22:33:01 brd ff:ff:ff:ff:ff:ff
> inet6 2000:11:1:1::1/64 scope global tentative
> valid_lft forever preferred_lft forever
> [root@f20 ~]# ip link set dev eth1 up
> [root@f20 ~]# ip link set dev eth1 down
> [root@f20 ~]# ip addr show dev eth1
> 3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
> link/ether 02:04:11:22:33:01 brd ff:ff:ff:ff:ff:ff
>
> Add a new sysctl to make this behavior optional. Setting defaults to flush
> addresses to maintain backwards compatibility. When reset flushing is bypassed:
>
> [root@f20 ~]# echo 0 > /proc/sys/net/ipv6/conf/eth1/flush_addr_on_down
> [root@f20 ~]# ip -6 addr add dev eth1 2000:11:1:1::1/64
> [root@f20 ~]# ip addr show dev eth1
> 3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
> link/ether 02:04:11:22:33:01 brd ff:ff:ff:ff:ff:ff
> inet6 2000:11:1:1::1/64 scope global tentative
> valid_lft forever preferred_lft forever
> [root@f20 ~]# ip link set dev eth1 up
> [root@f20 ~]# ip link set dev eth1 down
> [root@f20 ~]# ip addr show dev eth1
> 3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
> link/ether 02:04:11:22:33:01 brd ff:ff:ff:ff:ff:ff
> inet6 2000:11:1:1::1/64 scope global
> valid_lft forever preferred_lft forever
> inet6 fe80::4:11ff:fe22:3301/64 scope link
> valid_lft forever preferred_lft forever
>
> Suggested-by: Hannes Frederic Sowa <hannes@redhat.com>
> Signed-off-by: David Ahern <dsahern@gmail.com>
> Cc: Hannes Frederic Sowa <hannes@redhat.com>
> ---
> include/linux/ipv6.h | 1 +
> include/uapi/linux/ipv6.h | 1 +
> net/ipv6/addrconf.c | 15 +++++++++++++++
> 3 files changed, 17 insertions(+)
>
> diff --git a/include/linux/ipv6.h b/include/linux/ipv6.h
> index c694e7baa621..1d726e39f09f 100644
> --- a/include/linux/ipv6.h
> +++ b/include/linux/ipv6.h
> @@ -52,6 +52,7 @@ struct ipv6_devconf {
> __s32 force_tllao;
> __s32 ndisc_notify;
> __s32 suppress_frag_ndisc;
> + __s32 flush_addr_on_down;
> void *sysctl;
> };
>
> diff --git a/include/uapi/linux/ipv6.h b/include/uapi/linux/ipv6.h
> index e863d088b9a5..c7cb79e0f0fe 100644
> --- a/include/uapi/linux/ipv6.h
> +++ b/include/uapi/linux/ipv6.h
> @@ -165,6 +165,7 @@ enum {
> DEVCONF_SUPPRESS_FRAG_NDISC,
> DEVCONF_ACCEPT_RA_FROM_LOCAL,
> DEVCONF_USE_OPTIMISTIC,
> + DEVCONF_FLUSH_ON_DOWN,
> DEVCONF_MAX
> };
>
> diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
> index f7c8bbeb27b7..5c0d49073cb1 100644
> --- a/net/ipv6/addrconf.c
> +++ b/net/ipv6/addrconf.c
> @@ -201,6 +201,7 @@ static struct ipv6_devconf ipv6_devconf __read_mostly = {
> .disable_ipv6 = 0,
> .accept_dad = 1,
> .suppress_frag_ndisc = 1,
> + .flush_addr_on_down = 1,
> };
>
> static struct ipv6_devconf ipv6_devconf_dflt __read_mostly = {
> @@ -238,6 +239,7 @@ static struct ipv6_devconf ipv6_devconf_dflt __read_mostly = {
> .disable_ipv6 = 0,
> .accept_dad = 1,
> .suppress_frag_ndisc = 1,
> + .flush_addr_on_down = 1,
> };
>
> /* Check if a valid qdisc is available */
> @@ -3083,6 +3085,9 @@ static int addrconf_ifdown(struct net_device *dev, int how)
> if (how && del_timer(&idev->regen_timer))
> in6_dev_put(idev);
>
> + if (!how && !idev->cnf.flush_addr_on_down)
> + goto unlock;
I would still prefer that we flush automatically generated addresses and
only keep the static and permanent ones.
What do you think?
Bye,
Hannes
^ permalink raw reply
* Re: [PATCH iproute2 3/3] ss: Unify tcp stats output
From: Hagen Paul Pfeifer @ 2015-01-19 15:01 UTC (permalink / raw)
To: Vadim Kochan; +Cc: netdev
In-Reply-To: <20150119142803.GA5549@angus-think.wlc.globallogic.com>
On 19 January 2015 at 15:28, Vadim Kochan <vadim4j@gmail.com> wrote:
> I am thinking may be 1st of all it is better to make output in json
> format and after this trying to make changes with human readability.
>
> What do you think ?
Mhh, if an JSON outputer is also provided a prioi *I* had no problems
with an incompatible change. It is awful to parse the current output.
*But* I am not sure if this opinion is shared by Stephen too. We
probably break several scripts/applications with this change. Breaking
the output *and* do not provide an stable alternative (JSON) is bad.
+1 for JSON (which is not that hard to implement)
hgn
^ permalink raw reply
* Re: [PATCH iproute2 3/3] ss: Unify tcp stats output
From: Vadim Kochan @ 2015-01-19 14:50 UTC (permalink / raw)
To: Daniel Borkmann; +Cc: Hagen Paul Pfeifer, Vadim Kochan, netdev, stephen
In-Reply-To: <54BD1958.6030403@redhat.com>
On Mon, Jan 19, 2015 at 03:48:56PM +0100, Daniel Borkmann wrote:
> On 01/19/2015 03:28 PM, Hagen Paul Pfeifer wrote:
> >Hey Vadin,
> >
> >to make this short. We already discussed about changing the layout and
> >Stephen nacked this. My proposal was to key:value the output. Because
> >nearly all outputed data is already in this format - except the
> >congestion control algo, ts, sack and tx'ed data. Where I proposed
> >cc:<algo>. The key:value format has the advantages that the ordering
> >do not mather anymore, An python parser would be something like split
> >for whitespaces and later split for colon. Currently parsing this is a
> >mess, see [1].
> >
> >Anyway, the more clever idea is to add an json outputer like already
> >supported by some ss modules and get rid of this mess.
>
> +1
>
> I was also thinking in addition to json, that it might be useful to have
> an optional ncurses top-like mode in ss. The level of detail could be
> unfolded for a specific entry on demand, etc. I would not add it as a
> hard library requirement, but in case ncurses headers are detected by
> the configure script, it could be compiled in then. It's also easily
> changeable since there's no such requirement that the way data is being
> displayed needs to be stable for scripts.
>
> >Hagen
> >
> >[1] https://github.com/hgn/captcp/blob/master/captcp.py#L4861
OK I will re-work series to do only refactoring/cleanups. And in future
I will keep in mind about any surprises for ss parsers.
Regards,
^ permalink raw reply
* Re: [PATCH iproute2 3/3] ss: Unify tcp stats output
From: Daniel Borkmann @ 2015-01-19 14:48 UTC (permalink / raw)
To: Hagen Paul Pfeifer; +Cc: Vadim Kochan, netdev, stephen
In-Reply-To: <CAPh34me7KFWnwgOaJmWZg3NxtzOZVce3VYShSy5PfeUkYkJcag@mail.gmail.com>
On 01/19/2015 03:28 PM, Hagen Paul Pfeifer wrote:
> Hey Vadin,
>
> to make this short. We already discussed about changing the layout and
> Stephen nacked this. My proposal was to key:value the output. Because
> nearly all outputed data is already in this format - except the
> congestion control algo, ts, sack and tx'ed data. Where I proposed
> cc:<algo>. The key:value format has the advantages that the ordering
> do not mather anymore, An python parser would be something like split
> for whitespaces and later split for colon. Currently parsing this is a
> mess, see [1].
>
> Anyway, the more clever idea is to add an json outputer like already
> supported by some ss modules and get rid of this mess.
+1
I was also thinking in addition to json, that it might be useful to have
an optional ncurses top-like mode in ss. The level of detail could be
unfolded for a specific entry on demand, etc. I would not add it as a
hard library requirement, but in case ncurses headers are detected by
the configure script, it could be compiled in then. It's also easily
changeable since there's no such requirement that the way data is being
displayed needs to be stable for scripts.
> Hagen
>
> [1] https://github.com/hgn/captcp/blob/master/captcp.py#L4861
^ permalink raw reply
* Re: [PATCH mac80211-next] nl80211: Allow set network namespace by fd
From: Vadim Kochan @ 2015-01-19 14:34 UTC (permalink / raw)
To: Johannes Berg; +Cc: Vadim Kochan, Eric W. Biederman, linux-wireless, netdev
In-Reply-To: <1421225246.1950.22.camel@sipsolutions.net>
On Wed, Jan 14, 2015 at 09:47:26AM +0100, Johannes Berg wrote:
> On Mon, 2015-01-12 at 16:34 +0200, Vadim Kochan wrote:
>
> > --- a/net/core/net_namespace.c
> > +++ b/net/core/net_namespace.c
> > @@ -361,6 +361,7 @@ struct net *get_net_ns_by_fd(int fd)
> > return ERR_PTR(-EINVAL);
> > }
> > #endif
> > +EXPORT_SYMBOL_GPL(get_net_ns_by_fd);
>
> Does this seem OK? Vadim is adding support for using the ns-by-fd in
> nl80211, which can be a module as part of cfg80211.
>
> johannes
>
PING ... in case if this email was missed ...
Thanks,
^ permalink raw reply
* Re: [patch-net-next v3 2/2] net: ethernet: cpsw: don't requests IRQs we don't use
From: Felipe Balbi @ 2015-01-19 14:40 UTC (permalink / raw)
To: David Miller; +Cc: balbi, tony, linux-omap, mugunthanvnm, netdev
In-Reply-To: <20150118.010750.480741880077015933.davem@davemloft.net>
[-- Attachment #1: Type: text/plain, Size: 663 bytes --]
On Sun, Jan 18, 2015 at 01:07:50AM -0500, David Miller wrote:
> From: Felipe Balbi <balbi@ti.com>
> Date: Fri, 16 Jan 2015 10:11:12 -0600
>
> > CPSW never uses RX_THRESHOLD or MISC interrupts. In
> > fact, they are always kept masked in their appropriate
> > IRQ Enable register.
> >
> > Instead of allocating an IRQ that never fires, it's best
> > to remove that code altogether and let future patches
> > implement it if anybody needs those.
> >
> > Signed-off-by: Felipe Balbi <balbi@ti.com>
>
> Applied.
looks like randconfig caught a build break. Do you want an incremental
patch or this patch again with the fix in it ?
--
balbi
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply
* re: ipvlan: Initial check-in of the IPVLAN driver.
From: Dan Carpenter @ 2015-01-19 14:40 UTC (permalink / raw)
To: maheshb; +Cc: netdev
Hello Mahesh Bandewar,
The patch 2ad7bf363841: "ipvlan: Initial check-in of the IPVLAN
driver." from Nov 23, 2014, leads to the following static checker
warning:
drivers/net/ipvlan/ipvlan_core.c:380 ipvlan_process_v6_outbound()
warn: 'dst' isn't an ERR_PTR
drivers/net/ipvlan/ipvlan_core.c
378
379 dst = ip6_route_output(dev_net(dev), NULL, &fl6);
380 if (IS_ERR(dst))
381 goto err;
The ip6_route_output() function is not documented but it always returns
a valid pointer. I believe you are supposed to check something like:
if (dst->error) {
ret = dst->error;
goto error;
}
382
383 skb_dst_drop(skb);
384 skb_dst_set(skb, dst);
regards,
dan carpenter
^ permalink raw reply
* Re: [PATCH iproute2 3/3] ss: Unify tcp stats output
From: Vadim Kochan @ 2015-01-19 14:28 UTC (permalink / raw)
To: Hagen Paul Pfeifer; +Cc: Vadim Kochan, netdev
In-Reply-To: <CAPh34me7KFWnwgOaJmWZg3NxtzOZVce3VYShSy5PfeUkYkJcag@mail.gmail.com>
On Mon, Jan 19, 2015 at 03:28:21PM +0100, Hagen Paul Pfeifer wrote:
> Hey Vadin,
>
> to make this short. We already discussed about changing the layout and
> Stephen nacked this. My proposal was to key:value the output. Because
> nearly all outputed data is already in this format - except the
> congestion control algo, ts, sack and tx'ed data. Where I proposed
> cc:<algo>. The key:value format has the advantages that the ordering
> do not mather anymore, An python parser would be something like split
> for whitespaces and later split for colon. Currently parsing this is a
> mess, see [1].
>
> Anyway, the more clever idea is to add an json outputer like already
> supported by some ss modules and get rid of this mess.
>
> Hagen
>
>
> [1] https://github.com/hgn/captcp/blob/master/captcp.py#L4861
Seems these patches will break your script at least for memory info
output.
I am thinking may be 1st of all it is better to make output in json
format and after this trying to make changes with human readability.
What do you think ?
Regards,
Vadim Kochan
^ permalink raw reply
* Re: [PATCH iproute2 3/3] ss: Unify tcp stats output
From: Hagen Paul Pfeifer @ 2015-01-19 14:28 UTC (permalink / raw)
To: Vadim Kochan; +Cc: netdev
In-Reply-To: <20150119140421.GA1786@angus-think.wlc.globallogic.com>
Hey Vadin,
to make this short. We already discussed about changing the layout and
Stephen nacked this. My proposal was to key:value the output. Because
nearly all outputed data is already in this format - except the
congestion control algo, ts, sack and tx'ed data. Where I proposed
cc:<algo>. The key:value format has the advantages that the ordering
do not mather anymore, An python parser would be something like split
for whitespaces and later split for colon. Currently parsing this is a
mess, see [1].
Anyway, the more clever idea is to add an json outputer like already
supported by some ss modules and get rid of this mess.
Hagen
[1] https://github.com/hgn/captcp/blob/master/captcp.py#L4861
^ permalink raw reply
* Re: [PATCH iproute2 3/3] ss: Unify tcp stats output
From: Vadim Kochan @ 2015-01-19 14:04 UTC (permalink / raw)
To: Hagen Paul Pfeifer; +Cc: Vadim Kochan, netdev
In-Reply-To: <CAPh34mdJ7mjzueaX2qakoT=ODbHDLm4k-K_3Eg__6+s7ydf4Gg@mail.gmail.com>
On Mon, Jan 19, 2015 at 02:57:50PM +0100, Hagen Paul Pfeifer wrote:
> On 18 January 2015 at 21:43, Vadim Kochan <vadim4j@gmail.com> wrote:
>
> > Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
> > ---
> > misc/ss.c | 362 +++++++++++++++++++++++++++++++++++++++-----------------------
> > 1 file changed, 231 insertions(+), 131 deletions(-)
>
> Hey Vadin,
>
> your patch do *not* change the output format, right? ss output is
> parsed by scripts and tools.
>
> hgn
Hi,
It should not for tcp but does for memory info in the 1st patch where
the memeinfo param names were changed.
Regarding parsing of ss by scripts and tools, thats really painful
for me to see how ss outputs additional info, it is not human readable,
actually I'd like to change the output layout in the future, and add
something like online output option '-O'.
May be you can test these patches if they breaks output parsing ?
Anyway I will give up with ss output changes if we really carrying about
to keep the same output for scripts/tools.
Here are some comments from Stephen:
http://marc.info/?l=linux-netdev&m=142129033800881&w=2
Regards,
^ permalink raw reply
* Re: [PATCH net] ipv6: stop sending PTB packets for MTU < 1280
From: Hagen Paul Pfeifer @ 2015-01-19 14:00 UTC (permalink / raw)
To: Hannes Frederic Sowa; +Cc: netdev, stable, Fernando Gont
In-Reply-To: <1421675722.32277.3.camel@stressinduktion.org>
On 19 January 2015 at 14:55, Hannes Frederic Sowa
<hannes@stressinduktion.org> wrote:
> Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
>
> I think this is the correct way forward on how to deal with atomic
> fragments.
>
> Hagen, do you submit patches to remove dst_allfrag/RTAX_FEATURE_ALLFRAG,
> IPCORK_ALLFRAG, etc. for net-next, too?
Yes, patch sits already in the pipe. I wanted to wait for davem's pull.
Hagen
^ permalink raw reply
* Re: [PATCH iproute2 3/3] ss: Unify tcp stats output
From: Hagen Paul Pfeifer @ 2015-01-19 13:57 UTC (permalink / raw)
To: Vadim Kochan; +Cc: netdev
In-Reply-To: <1421613815-6635-4-git-send-email-vadim4j@gmail.com>
On 18 January 2015 at 21:43, Vadim Kochan <vadim4j@gmail.com> wrote:
> Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
> ---
> misc/ss.c | 362 +++++++++++++++++++++++++++++++++++++++-----------------------
> 1 file changed, 231 insertions(+), 131 deletions(-)
Hey Vadin,
your patch do *not* change the output format, right? ss output is
parsed by scripts and tools.
hgn
^ permalink raw reply
* Re: [PATCH net] ipv6: stop sending PTB packets for MTU < 1280
From: Hannes Frederic Sowa @ 2015-01-19 13:55 UTC (permalink / raw)
To: Hagen Paul Pfeifer; +Cc: netdev, stable, Fernando Gont
In-Reply-To: <1421357665-2804-1-git-send-email-hagen@jauu.net>
On Do, 2015-01-15 at 22:34 +0100, Hagen Paul Pfeifer wrote:
> Reduce the attack vector and stop generating IPv6 Fragment Header for
> paths with an MTU smaller than the minimum required IPv6 MTU
> size (1280 byte) - called atomic fragments.
>
> See IETF I-D "Deprecating the Generation of IPv6 Atomic Fragments" [1]
> for more information and how this "feature" can be misused.
>
> [1] https://tools.ietf.org/html/draft-ietf-6man-deprecate-atomfrag-generation-00
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Fernando Gont <fgont@si6networks.com>
> Signed-off-by: Hagen Paul Pfeifer <hagen@jauu.net>
Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
I think this is the correct way forward on how to deal with atomic
fragments.
Hagen, do you submit patches to remove dst_allfrag/RTAX_FEATURE_ALLFRAG,
IPCORK_ALLFRAG, etc. for net-next, too?
Thanks,
Hannes
^ permalink raw reply
* Re: tcp: Do not apply TSO segment limit to non-TSO packets
From: Thomas Jarosch @ 2015-01-19 13:39 UTC (permalink / raw)
To: Herbert Xu
Cc: netdev, edumazet, Steffen Klassert, Ben Hutchings,
David S. Miller
In-Reply-To: <20141231133923.GA30248@gondor.apana.org.au>
Hi Herbert,
On Thursday, 1. January 2015 00:39:23 Herbert Xu wrote:
> The problem is that when the MSS goes down, existing queued packet
> on the TX queue that have not been transmitted yet all look like
> TSO packets and get treated as such.
>
> This then triggers a bug where tcp_mss_split_point tells us to
> generate a zero-sized packet on the TX queue. Once that happens
> we're screwed because the zero-sized packet can never be removed
> by ACKs.
picking up this one again: Is there any valid use case to have
zero-sized packets in the TX queue? If not, may be a WARN_ON() could
be added to the processing of the TX queue. That would help to
prevent future issues like this.
Cheers,
Thomas
^ permalink raw reply
* Re: [3.19.0-rc4+] rhashtable: BUG kmalloc-2048 (Not tainted): Poison overwritten
From: Thomas Graf @ 2015-01-19 12:59 UTC (permalink / raw)
To: Ying Xue
Cc: richard.alpe@ericsson.com >> Richard Alpe, Netdev,
tipc-discussion
In-Reply-To: <54BCBA35.2080103@windriver.com>
On 01/19/15 at 04:03pm, Ying Xue wrote:
> On 3.19.0-rc4+, I encountered below error with attached test
> case(bind_netlink.c). Please execute the following commands to reproduce
> the error:
>
> gcc -Wall -o bind_netlink bind_netlink.c
> ./bind_netlink 1000
>
> By the way, if we run another test case(bind_tipc.c), the similar issue
> will happen on TIPC socket.
>
> Therefore, it seems that the issue is closely associated with rhashtable
> instead of specific stacks like netlink or tipc.
Looks like a RCU read side critical section was missed. Does the TIPC
poision warning look the same? offset 2048?
^ permalink raw reply
* Re: [PATCH 7/9] rhashtable: Per bucket locks & deferred expansion/shrinking
From: Thomas Graf @ 2015-01-19 12:58 UTC (permalink / raw)
To: Patrick McHardy
Cc: David Laight, davem@davemloft.net, netdev@vger.kernel.org,
herbert@gondor.apana.org.au, paulmck@linux.vnet.ibm.com,
edumazet@google.com, john.r.fastabend@intel.com,
josh@joshtriplett.org, netfilter-devel@vger.kernel.org
In-Reply-To: <20150117080255.GA3968@acer.localdomain>
On 01/17/15 at 08:02am, Patrick McHardy wrote:
> On 16.01, Thomas Graf wrote:
> > Resize operations should be *really* rare as well unless you start
> > with really small hash table sizes and constantly add/remove at the
> > watermark.
>
> Which are far enough from each other that this should only happen
> in really unlucky cases.
>
> > Re-dumping on insert/remove is a different story of course. Do you
> > care about missed insert/removals for dumps? If not we can do the
> > sequence number consistency checking for resizing only.
>
> No, that has always been undeterministic with netlink. We want to
> dump everything that was present when the dump was started and is
> still present when it finishes. Anything else can be handled using
> notifications.
It looks like we want to provide two ways to resolve this:
1) Walker holds ht->mutex the entire time to block out resizes.
Optionally the walker can acquire all bucket locks. Such
scenarios would seem to benefit from either a single or a very
small number of bucket locks.
2) Walker holds ht->mutex during individual Netlink message
construction periods and relases it while user space reads the
message. rhashtable provides a hook which is called when a
resize operation is scheduled allowing for the walker code to
bump a sequence number and notify user space that the dump is
inconsistent, causing it to request a new dump.
I'll provide an API to achieve (2). (1) is already achieveable with
the current API.
^ permalink raw reply
* GOOD DAY
From: John Watson @ 2015-01-19 11:53 UTC (permalink / raw)
Watson Investment Group.
22 Pasteur Drive,Leegomery Telford
United Kingdom ,TF1 6PQ
Tel: 447053834136
Fax: +44 8435 622250
E-mail:jw25743@gmail.com
We are a private financial company based in the united Kingdom. We
offer funding for investments across the world. We have funded and
invested in businesses and given personal,multi-purpose loans to
individuals and groups. We have transformed DREAMS into REALITIES.
We will like to invest in your company or project using our
BG/Monetization Program, please send more details about your company
to provide you with our procedure for the loan.
John Watson
CEO Watson Investment Group
^ permalink raw reply
* [PATCH] phonet netlink: allow multiple messages per skb in route dump
From: Johannes Berg @ 2015-01-19 11:15 UTC (permalink / raw)
To: netdev; +Cc: Sakari Ailus, Remi Denis-Courmont, Johannes Berg
From: Johannes Berg <johannes.berg@intel.com>
My previous patch to this file changed the code to be bug-compatible
towards userspace. Unless userspace (which I wasn't able to find)
implements the dump reader by hand in a wrong way, this isn't needed.
If it uses libnl or similar code putting multiple messages into a
single SKB is far more efficient.
Change the code to do this. While at it, also clean it up and don't
use so many variables - just store the address in the callback args
directly.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
net/phonet/pn_netlink.c | 22 +++++++---------------
1 file changed, 7 insertions(+), 15 deletions(-)
diff --git a/net/phonet/pn_netlink.c b/net/phonet/pn_netlink.c
index 54d766842c2b..bc5ee5fbe6ae 100644
--- a/net/phonet/pn_netlink.c
+++ b/net/phonet/pn_netlink.c
@@ -272,31 +272,23 @@ static int route_doit(struct sk_buff *skb, struct nlmsghdr *nlh)
static int route_dumpit(struct sk_buff *skb, struct netlink_callback *cb)
{
struct net *net = sock_net(skb->sk);
- u8 addr, addr_idx = 0, addr_start_idx = cb->args[0];
+ u8 addr;
rcu_read_lock();
- for (addr = 0; addr < 64; addr++) {
- struct net_device *dev;
+ for (addr = cb->args[0]; addr < 64; addr++) {
+ struct net_device *dev = phonet_route_get_rcu(net, addr << 2);
- dev = phonet_route_get_rcu(net, addr << 2);
if (!dev)
continue;
- if (addr_idx++ < addr_start_idx)
- continue;
- fill_route(skb, dev, addr << 2, NETLINK_CB(cb->skb).portid,
- cb->nlh->nlmsg_seq, RTM_NEWROUTE);
- /* fill_route() used to return > 0 (or negative errors) but
- * never 0 - ignore the return value and just go out to
- * call dumpit again from outside to preserve the behavior
- */
- goto out;
+ if (fill_route(skb, dev, addr << 2, NETLINK_CB(cb->skb).portid,
+ cb->nlh->nlmsg_seq, RTM_NEWROUTE) < 0)
+ goto out;
}
out:
rcu_read_unlock();
- cb->args[0] = addr_idx;
- cb->args[1] = 0;
+ cb->args[0] = addr;
return skb->len;
}
--
2.1.4
^ permalink raw reply related
* Re: [PATCH net 1/2] sh_eth: Fix promiscuous mode on chips without TSU
From: Ben Hutchings @ 2015-01-19 10:45 UTC (permalink / raw)
To: Sergei Shtylyov
Cc: ct178-internal, David S. Miller, netdev, linux-kernel,
Nobuhiro Iwamatsu, Mitsuhiro Kimura, Hisashi Nakamura,
Yoshihiro Kaneko
In-Reply-To: <54B9663D.2040008@cogentembedded.com>
On Fri, 2015-01-16 at 22:27 +0300, Sergei Shtylyov wrote:
> Hello.
>
> On 01/16/2015 08:51 PM, Ben Hutchings wrote:
>
> > Currently net_device_ops::set_rx_mode is only implemented for
> > chips with a TSU (multiple address table). However we do need
> > to turn the PRM (promiscuous) flag on and off for other chips.
>
> > - Remove the unlikely() from the TSU functions that we may safely
> > call for chips without a TSU
>
> This is just optimization, worth pushing thru net-next instead.
This patch introduces calls to those functions for chips without a TSU,
and that makes the branch hint no longer correct. (Not that these
functions are speed-critical, so it doesn't matter that much.)
> > - Make setting of the MCT flag conditional on the tsu capability flag
> > - Rename sh_eth_set_multicast_list() to sh_eth_set_rx_mode() and plumb
> > it into both net_device_ops structures
> > - Remove the previously-unreachable branch in sh_eth_rx_mode() that
> > would otherwise reset the flags to defaults for non-TSU chips
>
> It couldn't be default for non-TSU chips, they don't seem to have
> ECMR.MCT. So it was just wrong.
>
> It would have been better if you did one thing per patch or at least
> didn't mix fixes with clean-ups...
[...]
I think this is one logical change.
Ben.
^ permalink raw reply
* Re: [PATCH net 2/2] sh_eth: Fix ethtool operation crash when net device is down
From: Ben Hutchings @ 2015-01-19 10:41 UTC (permalink / raw)
To: Florian Fainelli
Cc: ct178-internal, David S. Miller, netdev, linux-kernel,
Nobuhiro Iwamatsu, Mitsuhiro Kimura, Hisashi Nakamura,
Yoshihiro Kaneko
In-Reply-To: <CAGVrzcbj2JANTECtxgDUrb7c_20nyoW4n5ARndHGKYuQu-0kQg@mail.gmail.com>
On Fri, 2015-01-16 at 10:45 -0800, Florian Fainelli wrote:
> 2015-01-16 9:51 GMT-08:00 Ben Hutchings <ben.hutchings@codethink.co.uk>:
[...]
> > --- a/drivers/net/ethernet/renesas/sh_eth.c
> > +++ b/drivers/net/ethernet/renesas/sh_eth.c
> > @@ -1827,6 +1827,9 @@ static int sh_eth_get_settings(struct net_device *ndev,
> > unsigned long flags;
> > int ret;
> >
> > + if (!mdp->phydev)
> > + return -ENODEV;
>
> Since the PHY is disconnected, would not checking for netif_running()
> make sense here, unless there is a good reason to still allow
> phy_ethtool_gset() to be called?
[...]
I think those two conditions will be equivalent, won't they? Writing
the condition like this will also work if the driver later supports
PHY-less configurations.
Ben.
^ permalink raw reply
* Re: [PATCH net-next 1/1] ARM: dts: imx6sx: correct i.MX6sx sdb board enet phy address
From: Stefan Agner @ 2015-01-19 10:04 UTC (permalink / raw)
To: Fugang Duan; +Cc: shawn.guo, davem, netdev, linux-arm-kernel, s.hauer
In-Reply-To: <1421660282-29494-1-git-send-email-b38611@freescale.com>
On 2015-01-19 10:38, Fugang Duan wrote:
> The commit (3d125f9c91c5) cause i.MX6SX sdb enet cannot work. The cause is
> the commit add mdio node with un-correct phy address.
Sorry about that, somehow I did not take in consideration that that
could be different on the SoloX board.. Just checked again on Vybrid, it
is correct there, the dual PHY DP83849I addresses the two ports with 0
and 1 respectively.
>
> The patch just correct i.MX6sx sdb board enet phy address.
Acked-by: Stefan Agner <stefan@agner.ch>
>
> Signed-off-by: Fugang Duan <B38611@freescale.com>
> ---
> arch/arm/boot/dts/imx6sx-sdb.dts | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/boot/dts/imx6sx-sdb.dts b/arch/arm/boot/dts/imx6sx-sdb.dts
> index 8c1febd..9db123f 100644
> --- a/arch/arm/boot/dts/imx6sx-sdb.dts
> +++ b/arch/arm/boot/dts/imx6sx-sdb.dts
> @@ -167,11 +167,11 @@
> #size-cells = <0>;
>
> ethphy1: ethernet-phy@0 {
> - reg = <0>;
> + reg = <1>;
> };
>
> ethphy2: ethernet-phy@1 {
> - reg = <1>;
> + reg = <2>;
> };
> };
> };
^ permalink raw reply
* Re: [PATCH tip 0/9] tracing: attach eBPF programs to tracepoints/syscalls/kprobe
From: Masami Hiramatsu @ 2015-01-19 9:52 UTC (permalink / raw)
To: Alexei Starovoitov
Cc: Ingo Molnar, Steven Rostedt, Namhyung Kim,
Arnaldo Carvalho de Melo, Jiri Olsa, David S. Miller,
Daniel Borkmann, Hannes Frederic Sowa, Brendan Gregg,
linux-api-u79uwXL29TY76Z2rM5mHXA, netdev-u79uwXL29TY76Z2rM5mHXA,
linux-kernel-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <1421381770-4866-1-git-send-email-ast-uqk4Ao+rVK5Wk0Htik3J/w@public.gmane.org>
(2015/01/16 13:16), Alexei Starovoitov wrote:
> Hi Ingo, Steven,
>
> This patch set is based on tip/master.
> It adds ability to attach eBPF programs to tracepoints, syscalls and kprobes.
>
> Mechanism of attaching:
> - load program via bpf() syscall and receive program_fd
> - event_fd = open("/sys/kernel/debug/tracing/events/.../filter")
> - write 'bpf-123' to event_fd where 123 is program_fd
> - program will be attached to particular event and event automatically enabled
> - close(event_fd) will detach bpf program from event and event disabled
>
> Program attach point and input arguments:
> - programs attached to kprobes receive 'struct pt_regs *' as an input.
> See tracex4_kern.c that demonstrates how users can write a C program like:
> SEC("events/kprobes/sys_write")
> int bpf_prog4(struct pt_regs *regs)
> {
> long write_size = regs->dx;
> // here user need to know the proto of sys_write() from kernel
> // sources and x64 calling convention to know that register $rdx
> // contains 3rd argument to sys_write() which is 'size_t count'
>
> it's obviously architecture dependent, but allows building sophisticated
> user tools on top, that can see from debug info of vmlinux which variables
> are in which registers or stack locations and fetch it from there.
> 'perf probe' can potentialy use this hook to generate programs in user space
> and insert them instead of letting kernel parse string during kprobe creation.
Actually, this program just shows raw pt_regs for handlers, but I guess it is also
possible to pass event arguments from perf probe which given by user and perf-probe.
If we can write the script as
int bpf_prog4(s64 write_size)
{
...
}
This will be much easier to play with.
> - programs attached to tracepoints and syscalls receive 'struct bpf_context *':
> u64 arg1, arg2, ..., arg6;
> for syscalls they match syscall arguments.
> for tracepoints these args match arguments passed to tracepoint.
> For example:
> trace_sched_migrate_task(p, new_cpu); from sched/core.c
> arg1 <- p which is 'struct task_struct *'
> arg2 <- new_cpu which is 'unsigned int'
> arg3..arg6 = 0
> the program can use bpf_fetch_u8/16/32/64/ptr() helpers to walk 'task_struct'
> or any other kernel data structures.
> These helpers are using probe_kernel_read() similar to 'perf probe' which is
> not 100% safe in both cases, but good enough.
> To access task_struct's pid inside 'sched_migrate_task' tracepoint
> the program can do:
> struct task_struct *task = (struct task_struct *)ctx->arg1;
> u32 pid = bpf_fetch_u32(&task->pid);
> Since struct layout is kernel configuration specific such programs are not
> portable and require access to kernel headers to be compiled,
> but in this case we don't need debug info.
> llvm with bpf backend will statically compute task->pid offset as a constant
> based on kernel headers only.
> The example of this arbitrary pointer walking is tracex1_kern.c
> which does skb->dev->name == "lo" filtering.
At least I would like to see this way on kprobes event too, since it should be
treated as a traceevent.
> In all cases the programs are called before trace buffer is allocated to
> minimize the overhead, since we want to filter huge number of events, but
> buffer alloc/free and argument copy for every event is too costly.
> Theoretically we can invoke programs after buffer is allocated, but it
> doesn't seem needed, since above approach is faster and achieves the same.
>
> Note, tracepoint/syscall and kprobe programs are two different types:
> BPF_PROG_TYPE_TRACING_FILTER and BPF_PROG_TYPE_KPROBE_FILTER,
> since they expect different input.
> Both use the same set of helper functions:
> - map access (lookup/update/delete)
> - fetch (probe_kernel_read wrappers)
> - memcmp (probe_kernel_read + memcmp)
> - dump_stack
> - trace_printk
> The last two are mainly to debug the programs and to print data for user
> space consumptions.
>
> Portability:
> - kprobe programs are architecture dependent and need user scripting
> language like ktap/stap/dtrace/perf that will dynamically generate
> them based on debug info in vmlinux
If we can use kprobe event as a normal traceevent, user scripting can be
architecture independent too. Only perf-probe fills the gap. All other
userspace tools can collaborate with perf-probe to setup the events.
If so, we can avoid redundant works on debuginfo. That is my point.
Thank you,
> - tracepoint programs are architecture independent, but if arbitrary pointer
> walking (with fetch() helpers) is used, they need data struct layout to match.
> Debug info is not necessary
> - for networking use case we need to access 'struct sk_buff' fields in portable
> way (user space needs to fetch packet length without knowing skb->len offset),
> so for some frequently used data structures we will add helper functions
> or pseudo instructions to access them. I've hacked few ways specifically
> for skb, but abandoned them in favor of more generic type/field infra.
> That work is still wip. Not part of this set.
> Once it's ready tracepoint programs that access common data structs
> will be kernel independent.
>
> Program return value:
> - programs return 0 to discard an event
> - and return non-zero to proceed with event (allocate trace buffer, copy
> arguments there and print it eventually in trace_pipe in traditional way)
>
> Examples:
> - dropmon.c - simple kfree_skb() accounting in eBPF assembler, similar
> to dropmon tool
> - tracex1_kern.c - does net/netif_receive_skb event filtering
> for dev->skb->name == "lo" condition
> - tracex2_kern.c - same kfree_skb() accounting like dropmon, but now in C
> plus computes histogram of all write sizes from sys_write syscall
> and prints the histogram in userspace
> - tracex3_kern.c - most sophisticated example that computes IO latency
> between block/block_rq_issue and block/block_rq_complete events
> and prints 'heatmap' using gray shades of text terminal.
> Useful to analyze disk performance.
> - tracex4_kern.c - computes histogram of write sizes from sys_write syscall
> using kprobe mechanism instead of syscall. Since kprobe is optimized into
> ftrace the overhead of instrumentation is smaller than in example 2.
>
> The user space tools like ktap/dtrace/systemptap/perf that has access
> to debug info would probably want to use kprobe attachment point, since kprobe
> can be inserted anywhere and all registers are avaiable in the program.
> tracepoint attachments are useful without debug info, so standalone tools
> like iosnoop will use them.
>
> The main difference vs existing perf_probe/ftrace infra is in kernel aggregation
> and conditional walking of arbitrary data structures.
>
> Thanks!
>
> Alexei Starovoitov (9):
> tracing: attach eBPF programs to tracepoints and syscalls
> tracing: allow eBPF programs to call bpf_printk()
> tracing: allow eBPF programs to call ktime_get_ns()
> samples: bpf: simple tracing example in eBPF assembler
> samples: bpf: simple tracing example in C
> samples: bpf: counting example for kfree_skb tracepoint and write
> syscall
> samples: bpf: IO latency analysis (iosnoop/heatmap)
> tracing: attach eBPF programs to kprobe/kretprobe
> samples: bpf: simple kprobe example
>
> include/linux/ftrace_event.h | 6 +
> include/trace/bpf_trace.h | 25 ++++
> include/trace/ftrace.h | 30 +++++
> include/uapi/linux/bpf.h | 11 ++
> kernel/trace/Kconfig | 1 +
> kernel/trace/Makefile | 1 +
> kernel/trace/bpf_trace.c | 250 ++++++++++++++++++++++++++++++++++++
> kernel/trace/trace.h | 3 +
> kernel/trace/trace_events.c | 41 +++++-
> kernel/trace/trace_events_filter.c | 80 +++++++++++-
> kernel/trace/trace_kprobe.c | 11 +-
> kernel/trace/trace_syscalls.c | 31 +++++
> samples/bpf/Makefile | 18 +++
> samples/bpf/bpf_helpers.h | 18 +++
> samples/bpf/bpf_load.c | 62 ++++++++-
> samples/bpf/bpf_load.h | 3 +
> samples/bpf/dropmon.c | 129 +++++++++++++++++++
> samples/bpf/tracex1_kern.c | 28 ++++
> samples/bpf/tracex1_user.c | 24 ++++
> samples/bpf/tracex2_kern.c | 71 ++++++++++
> samples/bpf/tracex2_user.c | 95 ++++++++++++++
> samples/bpf/tracex3_kern.c | 96 ++++++++++++++
> samples/bpf/tracex3_user.c | 146 +++++++++++++++++++++
> samples/bpf/tracex4_kern.c | 36 ++++++
> samples/bpf/tracex4_user.c | 83 ++++++++++++
> 25 files changed, 1290 insertions(+), 9 deletions(-)
> create mode 100644 include/trace/bpf_trace.h
> create mode 100644 kernel/trace/bpf_trace.c
> create mode 100644 samples/bpf/dropmon.c
> create mode 100644 samples/bpf/tracex1_kern.c
> create mode 100644 samples/bpf/tracex1_user.c
> create mode 100644 samples/bpf/tracex2_kern.c
> create mode 100644 samples/bpf/tracex2_user.c
> create mode 100644 samples/bpf/tracex3_kern.c
> create mode 100644 samples/bpf/tracex3_user.c
> create mode 100644 samples/bpf/tracex4_kern.c
> create mode 100644 samples/bpf/tracex4_user.c
>
--
Masami HIRAMATSU
Software Platform Research Dept. Linux Technology Center
Hitachi, Ltd., Yokohama Research Laboratory
E-mail: masami.hiramatsu.pt-FCd8Q96Dh0JBDgjK7y7TUQ@public.gmane.org
^ permalink raw reply
* RE: [PATCH 7/9] rhashtable: Per bucket locks & deferred expansion/shrinking
From: David Laight @ 2015-01-19 9:45 UTC (permalink / raw)
To: 'Thomas Graf', Patrick McHardy
Cc: davem@davemloft.net, netdev@vger.kernel.org,
herbert@gondor.apana.org.au, paulmck@linux.vnet.ibm.com,
edumazet@google.com, john.r.fastabend@intel.com,
josh@joshtriplett.org, netfilter-devel@vger.kernel.org
In-Reply-To: <20150116213605.GE20315@casper.infradead.org>
From: Thomas Graf
> On 01/16/15 at 07:35pm, Patrick McHardy wrote:
> > On 16.01, Thomas Graf wrote:
> > > Right,but that's a Netlink dump issue and not specific to rhashtable.
> >
> > Well, rhashtable (or generally resizing) will make it a lot worse.
> > Usually we at worst miss entries which were added during the dump,
> > which is made up by the notifications.
> >
> > With resizing we might miss anything, its completely undeterministic.
> >
> > > Putting the sequence number check in place should be sufficient
> > > for sets, right?
> >
> > I don't see how. The problem is that the ordering of the hash changes
> > and it will skip different entries than those that have already been
> > dumped.
>
> Since an resize can only be triggered through insert/remove you
> simply bump a sequence number when you insert/remove and have
> userspace restart the dump when NLM_F_DUMP_INTR is set.
You could suppress 'shrink' while a userspace dump is in progress
and force userspace to restart on 'grow'.
The suppress does rather require that you know when any userspace 'walk'
gives up. OTOH it should be possible to defer the 'shrink' everytime
a walk reads some more of the data.
David
^ permalink raw reply
* [PATCH net-next 1/1] ARM: dts: imx6sx: correct i.MX6sx sdb board enet phy address
From: Fugang Duan @ 2015-01-19 9:38 UTC (permalink / raw)
To: shawn.guo, davem; +Cc: netdev, s.hauer, b38611, stefan, linux-arm-kernel
The commit (3d125f9c91c5) cause i.MX6SX sdb enet cannot work. The cause is
the commit add mdio node with un-correct phy address.
The patch just correct i.MX6sx sdb board enet phy address.
Signed-off-by: Fugang Duan <B38611@freescale.com>
---
arch/arm/boot/dts/imx6sx-sdb.dts | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/imx6sx-sdb.dts b/arch/arm/boot/dts/imx6sx-sdb.dts
index 8c1febd..9db123f 100644
--- a/arch/arm/boot/dts/imx6sx-sdb.dts
+++ b/arch/arm/boot/dts/imx6sx-sdb.dts
@@ -167,11 +167,11 @@
#size-cells = <0>;
ethphy1: ethernet-phy@0 {
- reg = <0>;
+ reg = <1>;
};
ethphy2: ethernet-phy@1 {
- reg = <1>;
+ reg = <2>;
};
};
};
--
1.7.8
^ permalink raw reply related
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox