From: Gao Feng
The dummy driver allocates dev->dstats and priv->vfinfo in its
ndo_init func dummy_dev_init, free the dev->dstats in the ndo_uninit
and free the priv->vfinfo in its destructor func. Then there is one
memleak that some errors happen after register_netdevice
Sun, Apr 30, 2017 at 04:08:15PM CEST, j...@mojatatu.com wrote:
>Jiri,
>
>With "goto chain X" this will have to be more generalized. Maybe
>we have 0xAXXX Where "A" recognizes the extension with
>current values ACT_JUMP(0x1) and GOTO_CHAIN(maybe 0x2)
>and the rest "XXX" is a free floating
Tue, May 02, 2017 at 07:26:07AM CEST, xiyou.wangc...@gmail.com wrote:
>On Fri, Apr 28, 2017 at 3:34 PM, Jiri Pirko wrote:
>> Fri, Apr 28, 2017 at 07:40:24PM CEST, xiyou.wangc...@gmail.com wrote:
>>>On Thu, Apr 27, 2017 at 11:53 PM, Jiri Pirko wrote:
Thu,
On Fri, Apr 28, 2017 at 3:34 PM, Jiri Pirko wrote:
> Fri, Apr 28, 2017 at 07:40:24PM CEST, xiyou.wangc...@gmail.com wrote:
>>On Thu, Apr 27, 2017 at 11:53 PM, Jiri Pirko wrote:
>>> Thu, Apr 27, 2017 at 07:46:03PM CEST, xiyou.wangc...@gmail.com wrote:
On
On 5/1/17 8:56 PM, David Miller wrote:
It dereferences a user pointer:
static int bpf_test_finish(union bpf_attr __user *uattr, const void *data,
u32 size, u32 retval, u32 duration)
{
void __user *data_out = u64_to_user_ptr(uattr->test.data_out);
It dereferences a user pointer:
static int bpf_test_finish(union bpf_attr __user *uattr, const void *data,
u32 size, u32 retval, u32 duration)
{
void __user *data_out = u64_to_user_ptr(uattr->test.data_out);
From: Alexei Starovoitov
Date: Mon, 1 May 2017 20:49:21 -0700
> (gdb) x/10i bpf_prog1
>0x0 : ldimm64 r0, 590618314553
>0x10 : stdw[r1+-8], r10
>0x18 : lddwr10, [r1+-8]
>0x20 : add r0,
Like other JITs, sparc64 maintains an array of instruction offsets but
stores the entries off by one. This is done because jumps to the exit
block are indexed to one past the last BPF instruction.
So if we size the array by the program length, we need to record the
previous instruction in order
On 4/30/17 9:07 AM, David Miller wrote:
This is mainly a synchronization point, I still need to look
more deeply into Alexei's -g issue.
New in this version from v3:
- Remove tailcall from opcode table
- Rearrange relocations so that numbers match with LLVM ones
- Emit relocs properly so
On Mon, 1 May 2017 20:18:22 -0700, David Ahern wrote:
> Introduce a new function, rtnl_ack_extack, to allow commands to flip
> to the new error reporting over time.
>
> Convert iplink_modify to use the new function to display error strings
> returned from ip link set commands.
Tested-by: Jakub
From: David Miller
Date: Mon, 01 May 2017 23:02:34 -0400 (EDT)
> for (i = 0; i < prog->len; i++) {
> const struct bpf_insn *insn = >insnsi[i];
> int ret;
>
> ret = build_insn(insn, ctx);
> ctx->offset[i] =
include/nlattr.h is pulled from include/net/netlink.h.
lib/nlattr.c is pulled from lib/nlattr.c
Signed-off-by: David Ahern
---
include/libnetlink.h | 8 +++
include/nlattr.h | 162 +++
lib/Makefile | 2 +-
Add support for extended ack error reporting.
Add a new function rtnl_talk_extack that takes a callback as an input
arg. If a netlink response contains extack attributes, the callback is
is invoked with the the err string, offset in the message and a pointer
to the message returned by the kernel.
Flip iplink_modify to rtnl_talk_extack. For this first patch only
error messages returned from the kernel are displayed to the user.
Follow on patches can add parsing of the returned message and the
error offset to show which attribute caused an error.
Signed-off-by: David Ahern
Introduce a new function, rtnl_ack_extack, to allow commands to flip
to the new error reporting over time.
Convert iplink_modify to use the new function to display error strings
returned from ip link set commands.
David Ahern (3):
netlink: import netlink message parsing from kernel
netlink:
On 5/1/17 8:03 PM, David Miller wrote:
From: Alexei Starovoitov
Date: Mon, 1 May 2017 19:49:21 -0700
On 4/30/17 11:21 AM, David Miller wrote:
built with:
clang -O2 -target bpfel -g -c x.c -o x.o
readelf can see it just fine:
[davem@localhost binutils]$ ./readelf
From: Alexei Starovoitov
Date: Mon, 1 May 2017 19:49:21 -0700
> On 4/30/17 11:21 AM, David Miller wrote:
>> built with:
>>
>> clang -O2 -target bpfel -g -c x.c -o x.o
>>
>> readelf can see it just fine:
>>
>> [davem@localhost binutils]$ ./readelf --debug-dump=loc ./xel.o
>>
From: Alexei Starovoitov
Date: Mon, 1 May 2017 19:39:33 -0700
> On 5/1/17 7:31 PM, David Miller wrote:
>>
>> If the last BPF instruction before exit is a ldimm64, branches to the
>> exit point at the wrong location.
>>
>> Here is what I get from test_pkt_access.c on sparc:
>>
>>
On 4/30/17 11:21 AM, David Miller wrote:
built with:
clang -O2 -target bpfel -g -c x.c -o x.o
readelf can see it just fine:
[davem@localhost binutils]$ ./readelf --debug-dump=loc ./xel.o
Contents of the .debug_loc section:
Offset BeginEnd Expression
hns_get_sset_count() returns HNS_NET_STATS_CNT and the data space allocated
is not enough for ethtool_get_strings(), which will cause random memory
corruption.
When SLAB and DEBUG_SLAB are both enabled, memory corruptions like the
the following can be observed without this patch:
[ 43.115200]
I wonder if whatever tool you used to get rid of trailing whitespace
did so in the testsuite foo.d files too? That definitely is
undesirable :-)
On 4/26/17 9:15 AM, Andrey Konovalov wrote:
> +David
>
> I've enabled CONFIG_DEBUG_OBJECTS_RCU_HEAD and this is what I get.
>
> Apparently the rcu warning is related to the fib6_del_route bug I've
> been trying to reproduce:
>
From: Alexei Starovoitov
Date: Mon, 1 May 2017 19:39:33 -0700
> On 5/1/17 7:31 PM, David Miller wrote:
>>
>> If the last BPF instruction before exit is a ldimm64, branches to the
>> exit point at the wrong location.
>>
>> Here is what I get from test_pkt_access.c on sparc:
>>
>>
On 5/1/17 7:31 PM, David Miller wrote:
If the last BPF instruction before exit is a ldimm64, branches to the
exit point at the wrong location.
Here is what I get from test_pkt_access.c on sparc:
:
0: b7 00 00 00 00 00 00 02 mov r0, 2
8: 61 21 00 50 00 00
If the last BPF instruction before exit is a ldimm64, branches to the
exit point at the wrong location.
Here is what I get from test_pkt_access.c on sparc:
:
0: b7 00 00 00 00 00 00 02 mov r0, 2
8: 61 21 00 50 00 00 00 00 ldw r2, [r1+80]
10:
> From: David Miller [mailto:da...@davemloft.net]
> Sent: Monday, May 1, 2017 10:54 AM
>
> Please, Gao, submit this as a proper, numbered, patch series with a proper
> header posting.
>
> That way you can explain why you took this strategy to fix this problem,
> compared to your original
On Mon, 2017-05-01 at 18:04 -0700, Eric Dumazet wrote:
>
> Simply to not perform (tcp_time_stamp - tp->rx_opt.rcv_tsecr) twice.
>
> jiffies being volatile, this can not be optimized by the compiler.
>
> I have a patch series (for linux-4.13) that will switch TCP stack to 1ms
> TS options,
On May 1, 2017, at 7:37 PM, Stephen Rothwell wrote:
>
> Hi Jens,
>
>> On Mon, 1 May 2017 19:09:34 -0600 Jens Axboe wrote:
>>
>> Indeed, I have warned Linus about it. Thanks Stephen.
>
> Thanks.
>
> BTW, (unusually) I did not see your pull request(s)
Hi Jens,
On Mon, 1 May 2017 19:09:34 -0600 Jens Axboe wrote:
>
> Indeed, I have warned Linus about it. Thanks Stephen.
Thanks.
BTW, (unusually) I did not see your pull request(s) ...
--
Cheers,
Stephen Rothwell
On 17-05-01 09:58 AM, Benjamin LaHaise wrote:
Since several of the the netlink attributes used to configure the flower
classifier's MPLS TC, BOS and Label fields have additional bits which are
unused, check those bits to ensure that they are actually 0 as suggested
by Jamal.
Signed-off-by:
On 17-05-01 06:36 AM, Simon Horman wrote:
On Sun, Apr 30, 2017 at 09:51:30AM -0400, Jamal Hadi Salim wrote:
On 17-04-28 10:14 AM, Simon Horman wrote:
[..]
minimal some flag should qualify it as "truncated".
Would changing TCA_FLOWER_HEADER_PARSE_ERR_ACT to
TCA_FLOWER_META_TRUNCATED help?
From: Jakub Kicinski
Date: Mon, 1 May 2017 15:53:43 -0700
> Fix kdoc parameter spelling from extact to extack.
>
> Signed-off-by: Jakub Kicinski
Applied.
From: Daniel Borkmann
Date: Tue, 2 May 2017 00:47:09 +0200
> Fix the following warnings triggered by 51570a5ab2b7 ("A Sample of
> using socket cookie and uid for traffic monitoring"):
...
> Fixes: 51570a5ab2b7 ("A Sample of using socket cookie and uid for traffic
>
> On May 1, 2017, at 7:07 PM, Stephen Rothwell wrote:
>
> Hi all,
>
>> On Tue, 18 Apr 2017 13:02:29 +1000 Stephen Rothwell
>> wrote:
>>
>> After merging the block tree, today's linux-next build (powerpc
>> ppc64_defconfig) failed like this:
>>
Hi all,
On Tue, 18 Apr 2017 13:02:29 +1000 Stephen Rothwell
wrote:
>
> After merging the block tree, today's linux-next build (powerpc
> ppc64_defconfig) failed like this:
>
> drivers/block/nbd.c: In function 'nbd_genl_connect':
> drivers/block/nbd.c:1662:10: error: too
On Mon, 2017-05-01 at 16:56 -0700, Stephen Hemminger wrote:
> On Mon, 01 May 2017 15:29:48 -0700
> Eric Dumazet wrote:
>
> > From: Eric Dumazet
> >
> > Be careful when comparing tcp_time_stamp to some u32 quantity,
> > otherwise result can be
Hi Casey:
This solution looks good to me, I will test this for ixgbe.:)
Thanks
Ding
On 2017/5/2 7:13, Casey Leedom wrote:
> Some devices have problems with Transaction Layer Packets with the Relaxed
> Ordering Attribute set. This patch set adds a new PCIe Device Flag,
>
On Mon, May 1, 2017 at 7:56 PM, Stephen Hemminger
wrote:
> On Mon, 01 May 2017 15:29:48 -0700
> Agreed time wraparound would cause problems.
> But why not use existing time_after() macro here?
>
I suspect this is because time_after() asserts that it is being used
on
Dear Email Owner,
Your compensation refund is completed. Kindly find more details in attached
file. We hope you find this improvement useful .
Kind Regards,
Mrs. Ramona Chuckaree .
For: The Management.(UNCC)
On Mon, 01 May 2017 15:29:48 -0700
Eric Dumazet wrote:
> From: Eric Dumazet
>
> Be careful when comparing tcp_time_stamp to some u32 quantity,
> otherwise result can be surprising.
>
> Fixes: 7c106d7e782b ("[TCP]: TCP Low Priority congestion
i40e hardware descriptor fields are in little-endian format. Driver
must use le32_to_cpu while evaluating these fields otherwise on
big-endian arch we end up evaluating incorrect values, cause errors
like:
i40evf 0001:04:02.0: Expected response 0 from PF, received 285212672
i40evf 0001:04:02.1:
Some devices have problems with Transaction Layer Packets with the Relaxed
Ordering Attribute set. This patch set adds a new PCIe Device Flag,
PCI_DEV_FLAGS_NO_RELAXED_ORDERING, a set of PCI Quirks to catch some known
devices with Relaxed Ordering issues, and a use of this new flag by the
cxgb4
The new flag PCI_DEV_FLAGS_NO_RELAXED_ORDERING indicates that the Relaxed
Ordering Attribute should not be used on Transaction Layer Packets destined
for the PCIe End Node so flagged. Initially flagged this way are Intel
E5-26xx Root Complex Ports which suffer from a Flow Control Credit
cxgb4 Ethernet driver now queries Root Complex Port to determine if it can
send TLPs to it with the Relaxed Ordering Attribute set.
---
drivers/net/ethernet/chelsio/cxgb4/cxgb4.h | 1 +
drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c | 17 +
Fix kdoc parameter spelling from extact to extack.
Signed-off-by: Jakub Kicinski
---
net/core/dev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/core/dev.c b/net/core/dev.c
index 35a06cebb282..0b2876e00834 100644
--- a/net/core/dev.c
+++
Fix the following warnings triggered by 51570a5ab2b7 ("A Sample of
using socket cookie and uid for traffic monitoring"):
In file included from
/home/foo/net-next/samples/bpf/cookie_uid_helper_example.c:54:0:
/home/foo/net-next/samples/bpf/cookie_uid_helper_example.c: In function
From: Eric Dumazet
Be careful when comparing tcp_time_stamp to some u32 quantity,
otherwise result can be surprising.
Fixes: 7c106d7e782b ("[TCP]: TCP Low Priority congestion control")
Signed-off-by: Eric Dumazet
---
net/ipv4/tcp_lp.c |6 --
1
David Ahern writes:
> On 5/1/17 3:03 PM, Eric W. Biederman wrote:
>> Basically the kernel maximum is how large we can make struct mpls_route
>> without while being < 4096 aka PAGE_SIZE. Which also happens to be
>> larger than the largest known consumer.
>
> 2 limits in
tree: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git
master
head: 5b8481fa42ac58484d633b558579e302aead64c1
commit: ddf9f970764f4390aba767e77fddaaced4a6760d [2181/2226] xdp: propagate
extended ack to XDP setup
reproduce: make htmldocs
All warnings (new ones prefixed by
On 5/1/17 3:03 PM, Eric W. Biederman wrote:
> Basically the kernel maximum is how large we can make struct mpls_route
> without while being < 4096 aka PAGE_SIZE. Which also happens to be
> larger than the largest known consumer.
2 limits in the kernel:
1. max allocation for mpls_route of 4096
2.
Stephen Hemminger writes:
> On Sun, 30 Apr 2017 17:42:15 -0600
> David Ahern wrote:
>
>> On 4/30/17 12:04 AM, Stephen Hemminger wrote:
>> > On Sat, 29 Apr 2017 20:48:50 -0700
>> > David Ahern wrote:
>> >
>> >>
>
> Hi Ursual, hi netdev reviewers,
>
> how did the smc protocol manage to get merged without any review
> on linux-rdma at all? As the results it seems it's very substandard
> in terms of RDMA API usage, e.g. it neither uses the proper CQ API
> nor the RDMA R/W API, and other will probably
On Mon, 2017-05-01 at 17:30 +0100, Tim Wright wrote:
> Add port_xmit_wait to the error counters read by mlx5_ib_process_mad
> to
> ensure sysfs port counter provides correct value for PortXmitWait.
> Otherwise the sysfs port_xmit_wait file always contains zero.
>
> The previous MAD_IFC
From: Daniel Borkmann
Date: Mon, 01 May 2017 22:38:58 +0200
> BPF samples:
>
> [root@apoc bpf]# make > /dev/null
> In file included from
> /root/cilium/net-next/samples/bpf/cookie_uid_helper_example.c:54:0:
> /root/cilium/net-next/samples/bpf/cookie_uid_helper_example.c:
On 05/01/2017 09:30 PM, David Miller wrote:
Inlcuding bpf_util.h into test_pkt_access.c et al. broke the build even
more so than it already is on sparc.
The problem is we end up including all the stdio.h bits and eventually
hit things like:
In file included from /usr/include/stdio.h:933:
From: Florian Westphal
Date: Mon, 1 May 2017 22:18:01 +0200
> By using smaller datatypes this (rather large) struct shrinks considerably
> (80 -> 48 bytes on x86_64).
>
> As this is embedded in other structs, this also rerduces size of several
> others, e.g. cls_fl_head or
By using smaller datatypes this (rather large) struct shrinks considerably
(80 -> 48 bytes on x86_64).
As this is embedded in other structs, this also rerduces size of several
others, e.g. cls_fl_head or nft_hash.
Signed-off-by: Florian Westphal
---
changes since v1: rebase on
From: David Miller
Date: Mon, 01 May 2017 15:30:05 -0400 (EDT)
>
> Inlcuding bpf_util.h into test_pkt_access.c et al. broke the build even
> more so than it already is on sparc.
>
> The problem is we end up including all the stdio.h bits and eventually
> hit things like:
>
On Mon, May 01, 2017, David Miller wrote:
> From: Johan Hedberg
> Date: Mon, 1 May 2017 21:42:21 +0300
>
> > Hi Dave,
> >
> > On Sun, Apr 30, 2017, David Miller wrote:
> >> From: Johan Hedberg
> >> Date: Sun, 30 Apr 2017 17:09:28 +0300
> >>
>
I was afraid you were going to say that.
Thanks anyways Andrew.
On Mon, May 1, 2017 at 3:29 PM, Andrew Lunn wrote:
> On Mon, May 01, 2017 at 02:26:52PM -0400, carl h wrote:
>> It appears that the switchdev driver model was introduced after 2.6.39
>> which is the
>> kernel
On Mon, May 01, 2017 at 02:26:52PM -0400, carl h wrote:
> It appears that the switchdev driver model was introduced after 2.6.39
> which is the
> kernel version that I'm using unfortunately.
We cannot help you much is you are using an ancient kernel. Please
upgrade.
Andrew
Inlcuding bpf_util.h into test_pkt_access.c et al. broke the build even
more so than it already is on sparc.
The problem is we end up including all the stdio.h bits and eventually
hit things like:
In file included from /usr/include/stdio.h:933:
/usr/include/bits/stdio-ldbl.h:28:20: error:
On Mon, May 1, 2017 at 3:11 PM, David Miller wrote:
>
> Since that change also made the nfrag function not necessary
> for exports, remove it.
>
> Fixes: 89a23c8b528b ("ip6_tunnel: Fix missing tunnel encapsulation limit
> option")
> Signed-off-by: David S. Miller
Thanks Dave. I was looking at linux-stable-v4.11-rc7. I will sync up.
On Mon, May 1, 2017 at 12:10 PM, David Miller wrote:
> From: Joe Smith
> Date: Mon, 1 May 2017 12:01:33 -0700
>
>> static void tcp_mark_lost_retrans(struct sock *sk)
>
> This
Since that change also made the nfrag function not necessary
for exports, remove it.
Fixes: 89a23c8b528b ("ip6_tunnel: Fix missing tunnel encapsulation limit
option")
Signed-off-by: David S. Miller
---
net/ipv6/exthdrs.c | 2 +-
1 file changed, 1 insertion(+), 1
From: Joe Smith
Date: Mon, 1 May 2017 12:01:33 -0700
> static void tcp_mark_lost_retrans(struct sock *sk)
This function no longer exists in the tree.
From: Vivien Didelot
Date: Mon, 1 May 2017 14:05:09 -0400
> This patch series adds support for the VLAN Table Unit (a.k.a. the VTU)
> to the 88E6390 family of Marvell Ethernet switch chips. The plumbing for
> the per VLAN Spanning Tree support is added as a
From:
Date: Mon, 1 May 2017 15:46:56 +
> From: David Cai
>
> Adding support for Microchip LAN9250 Ethernet controller.
>
> Signed-off-by: David Cai
This doesn't apply cleanly to net-next, please respin.
In the following code, write queue is traversed and ack_seq of the
skb's is used. Can someone please point out how/where it is
initialized. I can only see it being initialized in tcp_transmit_skb
but that skb will be freed since it is a clone. I could not find where
the skb queued in the write
From:
Date: Sun, 30 Apr 2017 16:51:19 +0300
> From: Ilan Tayari
>
> Current code silently ignores driver errors when configuring
> IPSec offload xfrm_state, and falls back to host-based crypto.
>
> Fail the xfrm_state creation if the driver has an
From:
Date: Sun, 30 Apr 2017 16:34:38 +0300
> From: Ilan Tayari
>
> Both esp_output and esp_xmit take a pointer to the ESP header
> and place it in esp_info struct prior to calling esp_output_head.
>
> Inside esp_output_head, the call to
From: Florian Westphal
Date: Thu, 27 Apr 2017 17:28:09 +0200
> By using smaller datatypes this struct shrinks considerably
> (80 -> 48 bytes on x86_64).
>
> As this is embedded in other structs, this also reduces size of several
> others, e.g. cls_fl_head and nft_hash.
>
>
From: Craig Gallek
Date: Wed, 26 Apr 2017 14:37:45 -0400
> From: Craig Gallek
>
> The IPv6 tunneling code tries to insert IPV6_TLV_TNL_ENCAP_LIMIT and
> IPV6_TLV_PADN options when an encapsulation limit is defined (the
> default is a limit of 4). An
From: Aaron Conole
Date: Mon, 01 May 2017 14:39:39 -0400
> David Miller writes:
>
>> From: Aaron Conole
>> Date: Mon, 01 May 2017 13:22:00 -0400
>>
>>> x86-64:
>>> Running
From: Johan Hedberg
Date: Mon, 1 May 2017 21:42:21 +0300
> Hi Dave,
>
> On Sun, Apr 30, 2017, David Miller wrote:
>> From: Johan Hedberg
>> Date: Sun, 30 Apr 2017 17:09:28 +0300
>>
>> > Here's one last batch of Bluetooth patches in the
Hi Dave,
On Sun, Apr 30, 2017, David Miller wrote:
> From: Johan Hedberg
> Date: Sun, 30 Apr 2017 17:09:28 +0300
>
> > Here's one last batch of Bluetooth patches in the bluetooth-next tree
> > targeting the 4.12 kernel.
> >
> > - Remove custom ECDH implementation and
David Miller writes:
> From: Aaron Conole
> Date: Mon, 01 May 2017 13:22:00 -0400
>
>> x86-64:
>> Running /home/aconole/git/binutils-gdb/gas/testsuite/gas/bpf/bpf.exp ...
>> FAIL: jump
>> FAIL: call
>> FAIL: imm64a
>> Running
From: Nathan Fontenot
Date: Mon, 01 May 2017 17:57:37 -0400
> From: Thomas Falcon
>
> ibmvnic: Record SKB RX queue during poll
>
> Map each RX SKB to the RX queue associated with the driver's RX SCRQ.
> This should improve the RX CPU load
It appears that the switchdev driver model was introduced after 2.6.39
which is the
kernel version that I'm using unfortunately.
So considering this, and the fact that the switch hardware I'm using has support
for vlan tag insertion, how would it have been accomplished for my version
of the
El Wed, Apr 19, 2017 at 11:39:20AM -0700 Matthias Kaehlcke ha dit:
> Not all parameters passed to ctnetlink_parse_tuple() and
> ctnetlink_exp_dump_tuple() match the enum type in the signatures of these
> functions. Since this is intended change the argument type of to be an int
> value.
>
>
Some chips don't have a VLAN Table Unit, most of them do have a 4K
table, some others as the 88E6390 family has a 13th bit for the VID.
Add a new max_vid member to the info structure, used to check the
presence of a VTU as well as the value used to iterate from in VTU
GetNext operations.
This
Move the helper functions to access the Global 1 VTU Operation register
to a new global1_vtu.c file, and get rid of the old underscore prefix
naming convention. This file will be extended will all VTU/STU related
code.
Signed-off-by: Vivien Didelot
Add helpers to access the VTU VID register in the global1_vtu.c file.
At the same time, move mv88e6xxx_g1_vtu_vid_write at the beginning of
_mv88e6xxx_vtu_loadpurge, which adds no functional changes but makes
future patches simpler.
Signed-off-by: Vivien Didelot
Even though every switch model has a different way to access the VTU
Data bits, the base implementation of the VTU GetNext operation remains
the same: wait, write the first VID to iterate from, start the
operation, and read the next VID.
Move this generic implementation into global1_vtu.c and
VLAN aware Marvell chips can program 802.1Q VLAN membership as well as
802.1s per VLAN Spanning Tree state using the same 3 VTU Data registers.
Some chips such as 88E6185 use different Data registers offsets for
ports state and membership, and program them in a single operation.
Other chips such
This patch series adds support for the VLAN Table Unit (a.k.a. the VTU)
to the 88E6390 family of Marvell Ethernet switch chips. The plumbing for
the per VLAN Spanning Tree support is added as a side effect of the
necessary refactoring.
The patchset is split up so that no duplication of code is
The 6390 family of chips use only 2 of the 3 VTU Data registers to pack
the MemberTag and PortState VLAN data. This means that they must be
written or read before or after each VTU/STU operations.
Implement this variant to add support for VTU with such chips. These
chips have a 13th bit for the
Add a new vtu_loadpurge operation to the chip info structure to differ
the various implementations of the VTU accesses.
Now that the STU handling is abstracted behind VTU operations, kill the
obsolete MV88E6XXX_FLAG_STU flag.
Signed-off-by: Vivien Didelot
The code to access the VTU Data registers currently only supports the
88E6185 family and alike: 2-bit membership adjacent to 2-bit port state.
Even though the 88E6352 family introduced an indirect table to program
the VLAN Spanning Tree states, the usage of the VTU Data registers
remains the same
Add a new vtu_getnext operation to the chip info structure to differ the
various implementations of the VTU accesses.
Signed-off-by: Vivien Didelot
Reviewed-by: Andrew Lunn
---
drivers/net/dsa/mv88e6xxx/chip.c| 82
Now that we have chip operations for VTU accesses, mark all helpers from
global1_vtu.c as static. Only the various implementations of the
GetNext, LoadPurge and Flush operations need to be exposed.
Signed-off-by: Vivien Didelot
Reviewed-by: Andrew Lunn
Extract the generic portion of code to issue an STU GetNext operation,
which will be used in other implementations.
Signed-off-by: Vivien Didelot
Reviewed-by: Andrew Lunn
---
drivers/net/dsa/mv88e6xxx/chip.c| 14 +-
Newer chips such as the 88E6390 have a VTU Page bit in the VTU VID
register to specify a 13th bit for the VID. This can be used to support
8K VLANs.
When dumping the whole VTU, all VID bits must be set to one, including
this VTU Page bit. Add support for VID greater than 4095.
Signed-off-by:
Now that the code reads both VTU and STU data on VTU GetNext operation,
fetch the STU entry data of a VTU entry at the same time.
The STU data bits are masked with the VTU data bits and they are now all
read at the same time a VTU GetNext operation is issued.
Signed-off-by: Vivien Didelot
Make the code which fetches or initializes a new VTU entry more concise.
This allows us the get rid of the old underscore prefix naming.
Signed-off-by: Vivien Didelot
Reviewed-by: Andrew Lunn
---
drivers/net/dsa/mv88e6xxx/chip.c | 64
Add helpers to access the VTU FID register in the global1_vtu.c file.
Signed-off-by: Vivien Didelot
Reviewed-by: Andrew Lunn
---
drivers/net/dsa/mv88e6xxx/chip.c| 7 ++-
drivers/net/dsa/mv88e6xxx/global1.h | 4
Move the VTU flush operation to global1_vtu.c and call it from a
mv88e6xxx_vtu_setup helper, similarly to the ATU and PVT setup.
Signed-off-by: Vivien Didelot
Reviewed-by: Andrew Lunn
---
drivers/net/dsa/mv88e6xxx/chip.c| 28
Move all of the calls to initialize resources for the driver to
a separate routine.
Signed-off-by: Nathan Fontenot
---
drivers/net/ethernet/ibm/ibmvnic.c | 71
1 file changed, 39 insertions(+), 32 deletions(-)
diff --git
Move the check for the driver resetting to the first thing
in ibmvnic_xmit().
Signed-off-by: Nathan Fontenot
---
drivers/net/ethernet/ibm/ibmvnic.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/net/ethernet/ibm/ibmvnic.c
There is not a need to stop processing skbs if we encounter a
skb that has a receive completion error.
Signed-off-by: Nathan Fontenot
---
drivers/net/ethernet/ibm/ibmvnic.c |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git
1 - 100 of 259 matches
Mail list logo