1) When we run a tap on netlink sockets, we have to copy mmap'd SKBs
instead of cloning them. From Daniel Borkmann.
2) When converting classical BPF into eBPF, fix the setting of
the source reg to BPF_REG_X. From Tycho Andersen.
3) Fix igmpv3/mldv2 report parsing in the bridge multicast
From: David Ahern
Date: Thu, 24 Sep 2015 15:31:29 -0600
> Andrey reported a panic:
...
> Prior to the VRF change the oif was not set in the flow struct, so the
> VRF support should really have only added the vrf_master_ifindex lookup.
>
> Fixes: 613d09b30f8b ("net: Use VRF device index for look
From: huangdaode
Date: Fri, 25 Sep 2015 16:29:50 +0800
> @@ -191,9 +191,12 @@ static void hns_rcb_ring_init(struct ring_pair_cb
> *ring_pair, int ring_type)
> if (ring_type == RX_RING) {
> dsaf_write_dev(q, RCB_RING_RX_RING_BASEADDR_L_REG,
> (u32)
From: Russell King - ARM Linux
Date: Fri, 25 Sep 2015 11:56:56 +0100
> From: Russell King
> Subject: [PATCH] net: update docbook comment for __mdiobus_register()
>
> Update the docbook comment for __mdiobus_register() to include the new
> module owner argument. This resolves a warning found by
Herbert,
On 09/25/2015 08:55 AM, Herbert Xu wrote:
On Thu, Sep 24, 2015 at 10:34:10PM -0700, Guenter Roeck wrote:
Any idea what may be needed for 4.1 ?
I am currently trying https://patchwork.ozlabs.org/patch/473041/,
This patch should not make any difference on 4.1 and later because
4.1 is
On 09/25/2015 02:37 PM, Steven Schlansker wrote:
On Sep 24, 2015, at 10:34 PM, Guenter Roeck wrote:
Herbert,
On 09/24/2015 09:58 PM, Herbert Xu wrote:
On Thu, Sep 24, 2015 at 09:36:53PM -0700, Guenter Roeck wrote:
http://comments.gmane.org/gmane.linux.network/363085
might explain your pr
On Thu, Sep 24, 2015 at 2:09 PM, David Miller wrote:
> From: Pravin B Shelar
> Date: Tue, 22 Sep 2015 12:57:53 -0700
>
>> VXLAN device can receive skb with checksum partial. But the checksum
>> offset could be in outer header which is pulled on receive. This results
>> in negative checksum offset
On 9/25/2015 5:28 PM, Catalin Marinas wrote:
On Thu, Sep 24, 2015 at 07:10:38PM +0100, David Woodhouse wrote:
On Thu, 2015-09-24 at 16:15 +0100, Catalin Marinas wrote:
With "PRP0001", they can skip the _DSD properties review process (not
that they bother much currently) as long as the existing
Pravin,
Another comment and question. Please seen inline below.
Thanks,
--Tom
On 9/24/15 7:42 PM, Pravin Shelar wrote:
On Thu, Sep 24, 2015 at 10:58 AM, Thomas F Herbert
wrote:
Add support for 802.1ad including the ability to push and pop double
tagged vlans. Add support for 802.1ad to netl
On Fri, Sep 25, 2015 at 11:44 PM, Viresh Kumar wrote:
> On 25-09-15, 22:58, Rafael J. Wysocki wrote:
>> Say you have three adjacent fields in a structure, x, y, z, each one byte
>> long.
>> Initially, all of them are equal to 0.
>>
>> CPU A writes 1 to x and CPU B writes 2 to y at the same time.
The network namespace is easiliy available in state->net so use it.
Signed-off-by: "Eric W. Biederman"
---
This patch plus the 5 ip_route_me_harder patches I sent out today are
the last of my pure netfilter patches in my queue for pushing down
struct net where it is needed. Everything else see
On Sep 25, 2015, at 2:37 PM, Steven Schlansker
wrote:
>
> On Sep 24, 2015, at 10:34 PM, Guenter Roeck wrote:
>
>> Herbert,
>>
>> On 09/24/2015 09:58 PM, Herbert Xu wrote:
>>> On Thu, Sep 24, 2015 at 09:36:53PM -0700, Guenter Roeck wrote:
http://comments.gmane.org/gmane.linux.netw
On 25-09-15, 22:58, Rafael J. Wysocki wrote:
> Say you have three adjacent fields in a structure, x, y, z, each one byte
> long.
> Initially, all of them are equal to 0.
>
> CPU A writes 1 to x and CPU B writes 2 to y at the same time.
>
> What's the result?
But then two CPUs can update the sam
On Sep 24, 2015, at 10:34 PM, Guenter Roeck wrote:
> Herbert,
>
> On 09/24/2015 09:58 PM, Herbert Xu wrote:
>> On Thu, Sep 24, 2015 at 09:36:53PM -0700, Guenter Roeck wrote:
>>>
>>> http://comments.gmane.org/gmane.linux.network/363085
>>>
>>> might explain your problem.
>>>
>>> I thought thi
From: Fabio Estevam
There is no need to have FEATURES_NEED_QUIESCE defined as we
can simply use NETIF_F_RXCSUM instead as done in other parts
of the driver.
Signed-off-by: Fabio Estevam
---
drivers/net/ethernet/freescale/fec_main.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff
The oif has already been checked that it is non-zero; the 2 additional
checks on oif within that if (oif) {...} block are redundant.
CC: YOSHIFUJI Hideaki
Signed-off-by: David Ahern
---
net/ipv6/route.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/net/ipv6/route.c b
lan78xx_suspend() may return non-zero from lan78xx_write_reg() in some scenario.
Fix to return 0 when lan78xx_suspend() has no error.
Signed-off-by: Woojung Huh
---
drivers/net/usb/lan78xx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/usb/lan78xx.c b/drivers/n
On 9/25/15 7:56 AM, Wolfgang Nothdurft wrote:
It seems that the ip6_route_output(net, sk, fl6) kernel function ignores
the fl6.flowi6_oif parameter for the routing decision.
It is considered, but a mismatch is not considered fatal.
I think the attached should fix your problem.
diff --git a/n
On Fri, 2015-09-25 at 13:42 -0700, David Miller wrote:
> From: Eric Dumazet
> Date: Fri, 25 Sep 2015 07:39:07 -0700
>
> > Another patch bomb to prepare lockless TCP/DCCP LISTEN handling.
> >
> > SYNACK retransmits are built and sent without listener socket
> > being locked. Soon, initial SYNACK
From: Eric Dumazet
Date: Fri, 25 Sep 2015 07:39:07 -0700
> Another patch bomb to prepare lockless TCP/DCCP LISTEN handling.
>
> SYNACK retransmits are built and sent without listener socket
> being locked. Soon, initial SYNACK packets will have same property.
>
> This series makes sure we did
On Friday, September 25, 2015 01:25:49 PM Viresh Kumar wrote:
> On 25 September 2015 at 13:33, Rafael J. Wysocki wrote:
> > You're going to change that into bool in the next patch, right?
>
> Yeah.
>
> > So what if bool is a byte and the field is not word-aligned
>
> Its between two 'unsigned l
ACK. Assuming Trond gets this.--b.
On Thu, Sep 24, 2015 at 04:00:09PM +0200, Andrzej Hajda wrote:
> Due to incorrect len type bc_send_request returned always zero.
>
> The problem has been detected using proposed semantic patch
> scripts/coccinelle/tests/assign_signed_to_unsigned.cocci [1].
>
>
On 25 September 2015 at 13:33, Rafael J. Wysocki wrote:
> You're going to change that into bool in the next patch, right?
Yeah.
> So what if bool is a byte and the field is not word-aligned
Its between two 'unsigned long' variables today, and the struct isn't packed.
So, it will be aligned, isn
The network namespace is needed when routing a packet.
Stop making nf_afinfo.reroute guess which network namespace
is the proper namespace to route the packet in.
Signed-off-by: "Eric W. Biederman"
---
include/linux/netfilter.h | 2 +-
net/ipv4/netfilter.c | 2 +-
net/ipv6/netfilter.c
ip6t_SYNPROXY already does this and this is needed so that we have a
struct net that can be passed down into ip_route_me_harder, so
that ip_route_me_harder can stop guessing it's context.
Along the way pass snet into synproxy_send_client_synack as this
is the only caller of synprox_send_tcp that i
Don't make ip6_route_me_harder guess which network namespace
it is routing in, pass the network namespace in.
Signed-off-by: Eric W. Biederman
---
include/linux/netfilter_ipv6.h| 2 +-
net/ipv6/netfilter.c | 5 ++---
net/ipv6/netfilter/ip6table_mangle.c | 2
Don't make ip_route_me_harder guess which network namespace
it is routing in, pass the network namespace in.
Signed-off-by: "Eric W. Biederman"
---
include/linux/netfilter_ipv4.h| 2 +-
net/ipv4/netfilter.c | 5 ++---
net/ipv4/netfilter/ipt_SYNPROXY.c | 4
This is needed so struct net can be pushed down into
ip_route_me_harder.
Signed-off-by: "Eric W. Biederman"
---
include/net/netfilter/ipv4/nf_reject.h | 2 +-
net/ipv4/netfilter/ipt_REJECT.c| 2 +-
net/ipv4/netfilter/nf_reject_ipv4.c| 2 +-
net/ipv4/netfilter/nft_reject_ipv4.c | 2
This is the next installment of my work to pass struct net through the
output path so the code does not need to guess how to figure out which
network namespace it is in, and ultimately routes can have output
devices in another network namespace.
This round the focus is our getting struct net pass
On Friday, September 25, 2015 10:26:22 PM Rafael J. Wysocki wrote:
> On Friday, September 25, 2015 11:52:56 AM Viresh Kumar wrote:
> > On 25-09-15, 20:49, Johannes Berg wrote:
> > > Ok, then, but that means Rafael is completely wrong ...
> > > debugfs_create_bool() takes a *pointer* and it needs to
On Friday, September 25, 2015 11:52:56 AM Viresh Kumar wrote:
> On 25-09-15, 20:49, Johannes Berg wrote:
> > Ok, then, but that means Rafael is completely wrong ...
> > debugfs_create_bool() takes a *pointer* and it needs to be long-lived,
> > it can't be on the stack. You also don't get a call whe
On Friday, September 25, 2015 10:18:13 PM Rafael J. Wysocki wrote:
> On Friday, September 25, 2015 09:41:37 AM Viresh Kumar wrote:
> > global_lock is defined as an unsigned long and accessing only its lower
> > 32 bits from sysfs is incorrect, as we need to consider other 32 bits
> > for big endian
On Thu, Sep 24, 2015 at 12:15:05PM -0400, Karl Heiss wrote:
> These patches fix a deadlock during accept() of an SCTP connection.
>
> The first patch fixes whitespace issues.
>
> The second patch actually fixes the deadlock race.
>
> Karl Heiss (2):
> sctp: Whitespace fix
> sctp: Prevent sof
On Friday, September 25, 2015 09:41:37 AM Viresh Kumar wrote:
> global_lock is defined as an unsigned long and accessing only its lower
> 32 bits from sysfs is incorrect, as we need to consider other 32 bits
> for big endian 64 bit systems. There are no such platforms yet, but the
> code needs to b
From: Madalin Bucur
Date: Thu, 24 Sep 2015 18:00:13 +0300
> +#define DPA_NAPI_WEIGHT 64
This is just the default, so simply use "NAPI_POLL_WEIGHT" rather
than defining your own macro unnecessarily for this.
> +static int dpa_eth_priv_stop(struct net_device *net_dev)
> +{
> + in
From: Guillaume Nault
Date: Thu, 24 Sep 2015 12:54:01 +0200
> ppp_dev_uninit() locks all_ppp_mutex while under rtnl mutex protection.
> ppp_create_interface() must then lock these mutexes in that same order
> to avoid possible deadlock.
...
> Fixes: 8cb775bc0a34 ("ppp: fix device unregistration
From: Sergei Shtylyov
Date: Fri, 25 Sep 2015 21:03:52 +0300
> Hello.
>
> On 9/24/2015 1:16 PM, Sudip Mukherjee wrote:
>
>> The builds of allmodconfig of avr32 is failing with:
>>
>> drivers/net/ethernet/via/via-rhine.c:1098:2: error: implicit
>> declaration
>> of function 'pci_iomap' [-Werror=i
From: Michal Kubecek
Date: Thu, 24 Sep 2015 10:59:05 +0200 (CEST)
> The __netdev_find_adj() helper does not use its first argument, only the
> device to find and list to walk through.
>
> Signed-off-by: Michal Kubecek
Applied, thank you.
--
To unsubscribe from this list: send the line "unsubsc
From: Stephen Hemminger
Date: Wed, 23 Sep 2015 21:33:33 -0700
> With L2TP it was necessary to manually load modules
> which is a nuisance and not required with other tunneling
> protocols. This set of patches adds the aliases and module
> load hook to get rid of the necessity of modprobing.
Seri
From: Florian Fainelli
Date: Wed, 23 Sep 2015 18:19:58 -0700
> Provide a device_type information for slave network devices created by
> DSA, this is useful for user-space application to easily locate/search
> for devices of a specific kind.
>
> Signed-off-by: Florian Fainelli
Applied, thanks F
From: Russell King
Date: Thu, 24 Sep 2015 00:07:17 +0100
> Read the standard link partner advertisment registers and store it in
> phydev->lp_advertising, so ethtool can report this information to
> userspace via ethtool. Zero it as per genphy if autonegotiation is
> disabled. Tested with a Mar
Pravin,
Thanks for the review,
Comments in line below.
--TFH
On 9/24/15 7:42 PM, Pravin Shelar wrote:
On Thu, Sep 24, 2015 at 10:58 AM, Thomas F Herbert
wrote:
Add support for 802.1ad including the ability to push and pop double
tagged vlans. Add support for 802.1ad to netlink parsing and f
On Fri, Sep 25, 2015 at 06:02:42PM +0300, Denys Fedoryshchenko wrote:
> On 2015-09-25 17:38, Guillaume Nault wrote:
> >On Tue, Sep 22, 2015 at 04:47:48AM +0300, Denys Fedoryshchenko wrote:
> >>Hi,
> >>Sorry for late reply, was not able to push new kernel on pppoes without
> >>permissions (it's prod
On 25-09-15, 20:49, Johannes Berg wrote:
> Ok, then, but that means Rafael is completely wrong ...
> debugfs_create_bool() takes a *pointer* and it needs to be long-lived,
> it can't be on the stack. You also don't get a call when it changes.
Ahh, ofcourse. My bad as well...
I think we can change
On 09/25/2015 08:30 PM, Stephen Hemminger wrote:
> On Fri, 25 Sep 2015 19:00:11 +0200
> Nikolay Aleksandrov wrote:
>
>> From: Nikolay Aleksandrov
>>
>> This patch changes the bridge vlan implementation to use rhashtables
>> instead of bitmaps. The main motivation behind this change is that we
>>
> Rafael wrote:
> > Actually, what about adding a local u32 variable, say val, here and
> > doing
> >
> > > if (!debugfs_create_x32("gpe", 0444, dev_dir, (u32
> > > *)&first_ec->gpe))
> > > goto error;
> > > if (!debugfs_create_bool("use_global_lock", 0444,
> > > dev_dir,
> > > -
On 25-09-15, 19:42, Johannes Berg wrote:
> On Fri, 2015-09-25 at 09:41 -0700, Viresh Kumar wrote:
>
> > Signed-off-by: Viresh Kumar
> > ---
> > V3->V4:
> > - Create a local variable instead of changing type of global_lock
> > (Rafael)
>
> Err, surely that wasn't what Rafael meant, since it's c
On Fri, 25 Sep 2015 19:00:11 +0200
Nikolay Aleksandrov wrote:
> From: Nikolay Aleksandrov
>
> This patch changes the bridge vlan implementation to use rhashtables
> instead of bitmaps. The main motivation behind this change is that we
> need extensible per-vlan structures (both per-port and glo
Hello.
On 9/24/2015 1:16 PM, Sudip Mukherjee wrote:
The builds of allmodconfig of avr32 is failing with:
drivers/net/ethernet/via/via-rhine.c:1098:2: error: implicit declaration
of function 'pci_iomap' [-Werror=implicit-function-declaration]
drivers/net/ethernet/via/via-rhine.c:1119:2: error:
On Fri, 2015-09-25 at 09:41 -0700, Viresh Kumar wrote:
> Signed-off-by: Viresh Kumar
> ---
> V3->V4:
> - Create a local variable instead of changing type of global_lock
> (Rafael)
Err, surely that wasn't what Rafael meant, since it's clearly
impossible to use a pointer to the stack, assign to
On Fri, Sep 25, 2015 at 10:28:57AM -0400, Tejun Heo wrote:
> Hello, Christoph.
>
> On Fri, Sep 25, 2015 at 06:49:38AM -0700, Christoph Hellwig wrote:
> > Add methods to struct configfs_attribute to directly show and store
> > attributes without adding boilerplate code to every user. In addition
>
From: Nikolay Aleksandrov
This patch changes the bridge vlan implementation to use rhashtables
instead of bitmaps. The main motivation behind this change is that we
need extensible per-vlan structures (both per-port and global) so more
advanced features can be introduced and the vlan support can
Congratulation!!! You have been selected to participate in a paid Customer
Research Program known as “Secret Shopping”. As one of the people selected to
represent our firm, you will be acting as a Customer Service Evaluator of
selected companies in your area. Get back with the requested data bel
Its a bit odd that debugfs_create_bool() takes 'u32 *' as an argument,
when all it needs is a boolean pointer.
It would be better to update this API to make it accept 'bool *'
instead, as that will make it more consistent and often more convenient.
Over that bool takes just a byte (mostly).
That
global_lock is defined as an unsigned long and accessing only its lower
32 bits from sysfs is incorrect, as we need to consider other 32 bits
for big endian 64 bit systems. There are no such platforms yet, but the
code needs to be robust for such a case.
Fix that by passing a local variable to deb
On 09/25/2015 08:55 AM, Herbert Xu wrote:
On Thu, Sep 24, 2015 at 10:34:10PM -0700, Guenter Roeck wrote:
Any idea what may be needed for 4.1 ?
I am currently trying https://patchwork.ozlabs.org/patch/473041/,
This patch should not make any difference on 4.1 and later because
4.1 is where I re
From: Maxime Ripard
The CPU_MAP register is duplicated for each CPUs at different addresses,
each instance being at a different address.
However, the code so far was using CONFIG_NR_CPUS to initialise the CPU_MAP
registers for each registers, while the SoCs embed at most 4 CPUs.
This is especia
From: Maxime Ripard
The documentation of request_percpu_irq is confusing and suggest that the
interrupt is not enabled at all, while it is actually enabled on the local
CPU.
Clarify that.
Signed-off-by: Maxime Ripard
Signed-off-by: Gregory CLEMENT
---
kernel/irq/manage.c | 7 ---
1 file
From: Maxime Ripard
Since the switch to per-CPU interrupts, we lost the ability to set which
CPU was going to receive our RX interrupt, which was now only the CPU on
which the mvneta_open function was run.
We can now assign our queues to their respective CPUs, and make sure only
this CPU is goin
From: Maxime Ripard
Now that our interrupt controller is allowing us to use per-CPU interrupts,
actually use it in the mvneta driver.
This involves obviously reworking the driver to have a CPU-local NAPI
structure, and report for incoming packet using that structure.
Signed-off-by: Maxime Ripar
From: Maxime Ripard
The MPIC driver currently has a list of interrupts to handle as per-cpu.
Since the timer, fabric and neta interrupts were the only per-cpu
interrupts in the system, we can now remove the switch and just check for
the hardware irq number to determine whether a given interrupt
Hi,
As stated in the first version: "this patchset reworks the Marvell
neta driver in order to really support its per-CPU interrupts, instead
of faking them as SPI, and allow the use of any RX queue instead of
the hardcoded RX queue 0 that we have currently."
Following the review which has been d
From: Maxime Ripard
The mvneta driver allows to change the default RX queue trough the rxq_def
kernel parameter.
However, the current code doesn't allow to have any value but 0. It is
actively checked for in the driver's probe because the drivers makes a
number of assumption and takes a number o
From: Maxime Ripard
Some drivers might use the per-cpu interrupts and still might be built as a
module. Export request_percpu_irq an free_percpu_irq to these user, which
also make it consistent with enable/disable_percpu_irq that were exported.
Reported-by: Willy Tarreau
Signed-off-by: Maxime R
Acked-by: Steve Wise
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, Sep 24, 2015 at 10:34:10PM -0700, Guenter Roeck wrote:
>
> Any idea what may be needed for 4.1 ?
> I am currently trying https://patchwork.ozlabs.org/patch/473041/,
This patch should not make any difference on 4.1 and later because
4.1 is where I rewrote rhashtable resizing and it should w
On Thu, Sep 24, 2015 at 07:10:38PM +0100, David Woodhouse wrote:
> On Thu, 2015-09-24 at 16:15 +0100, Catalin Marinas wrote:
> > With "PRP0001", they can skip the _DSD properties review process (not
> > that they bother much currently) as long as the existing DT support
> > covers their needs.
>
>
Hello, Herbert.
On Fri, Sep 25, 2015 at 11:39:57AM +0800, Herbert Xu wrote:
> +static inline bool netlink_bound(struct netlink_sock *nlk)
> +{
> + bool bound = READ_ONCE(nlk->bound);
> +
> + /* Ensure nlk is hashed and visible. */
> + if (bound)
> + smp_rmb();
> +
> + r
On Sep. Thursday 24 (39) 10:55 PM, David Miller wrote:
> From: Scott Feldman
> Date: Thu, 24 Sep 2015 22:29:43 -0700
>
> > I'd rather keep 2-phase not optional, or at least make it some what of
> > a pain for drivers to opt-out of 2-phase. Forcing the driver to see
> > both phases means the driv
On 2015-09-25 17:38, Guillaume Nault wrote:
On Tue, Sep 22, 2015 at 04:47:48AM +0300, Denys Fedoryshchenko wrote:
Hi,
Sorry for late reply, was not able to push new kernel on pppoes
without
permissions (it's production servers), just got OK.
I am testing patch on another pppoe server with 9k
Hello, Herbert.
On Fri, Sep 25, 2015 at 09:43:27AM +0800, Herbert Xu wrote:
> Well had you said this in the first place I would've fixed it a
> long time ago. There aren't any in-kernel users right now and
> even if there were they'd have to do a connect/bind/sendmsg on
> the same socket in two t
On 9/25/15 3:32 AM, Daniel Borkmann wrote:
When having optional classid, most minimal command can be sth
like:
tc filter add dev foo parent X: bpf obj prog.o
Therefore, adapt the code so that a next argument will not be
enforced as the case currently.
Also, minor cleanup on the classid, whe
This documents fact that listener lock might not be held
at the time SYNACK are sent.
Signed-off-by: Eric Dumazet
---
include/net/tcp.h | 2 +-
net/ipv4/tcp_ipv4.c | 2 +-
net/ipv6/tcp_ipv6.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/include/net/tcp.h b/include/net
This is done to make sure we do not change listener socket
while sending SYNACK packets while socket lock is not held.
Signed-off-by: Eric Dumazet
---
include/net/request_sock.h | 2 +-
include/net/tcp.h | 2 +-
net/dccp/ipv4.c| 2 +-
net/dccp/ipv6.c| 2 +-
net/i
SYNACK packets are sent on behalf on unlocked listeners
or fastopen sockets. Mark socket as const to catch future changes
that might break the assumption.
Signed-off-by: Eric Dumazet
---
include/net/request_sock.h | 2 +-
net/ipv4/inet_connection_sock.c | 2 +-
2 files changed, 2 insertions
Like tcp_make_synack() the only time we might change the socket is
when calling sock_wmalloc(), which is using atomic operation to
update sk->sk_wmem_alloc
Also use MAX_DCCP_HEADER as both IPv4/IPv6 use this value for max_header.
Signed-off-by: Eric Dumazet
---
net/dccp/dccp.h | 2 +-
net/dc
This function is used to build and send SYNACK packets,
possibly on behalf of unlocked listener socket.
Make sure we did not miss a write by making this socket const.
We no longer can use ip_select_ident() and have to either
set iph->id to 0 or directly call __ip_select_ident()
Signed-off-by: Er
SYNACK packets might be sent without holding socket lock.
For DCTCP/ECN sake, we should call INET_ECN_xmit() while
socket lock is owned, and only when we init/change congestion control.
This also fixies a bug if congestion module is changed from
dctcp to another one on a listener : we now clear E
ip_dont_fragment() can accept const socket and dst
Signed-off-by: Eric Dumazet
---
include/net/ip.h | 8 +---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/include/net/ip.h b/include/net/ip.h
index 9b9ca2839399..525dc0778926 100644
--- a/include/net/ip.h
+++ b/include/net/ip.
When TCP new listener is done, these functions will be called
without socket lock being held. Make sure they don't change
anything.
Signed-off-by: Eric Dumazet
---
include/net/tcp.h | 10 +-
net/ipv4/tcp_ipv4.c | 6 +++---
net/ipv6/tcp_ipv6.c | 4 ++--
3 files changed, 10 insertions(
This is to document that socket lock might not be held at this point.
skb_set_owner_w() and ipv6_local_error() are using proper atomic ops
or spinlocks, so we promote the socket to non const when calling them.
netfilter hooks should never assume socket lock is held,
we also promote the socket to
We do not use the socket in this function.
Signed-off-by: Eric Dumazet
---
net/ipv4/tcp_output.c | 15 +++
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
index 1767fe652cb5..ab03018fb621 100644
--- a/net/ipv4/tcp_output.c
+
ip6_dst_lookup_flow() and ip6_dst_lookup_tail() do not touch
socket, lets add a const qualifier.
This will permit the same change in inet6_csk_route_req()
Signed-off-by: Eric Dumazet
---
include/net/ipv6.h| 2 +-
net/ipv6/ip6_output.c | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(
listener socket is not locked when tcp_make_synack() is called.
We better make sure no field is written.
There is one exception : Since SYNACK packets are attached to the listener
at this moment (or SYN_RECV child in case of Fast Open),
sock_wmalloc() needs to update sk->sk_wmem_alloc, but this i
This is used by TCP listener core, and listener socket shall
not be modified by inet_csk_route_req().
Signed-off-by: Eric Dumazet
---
include/net/inet_connection_sock.h | 2 +-
net/ipv4/inet_connection_sock.c| 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/net/i
socket is not modified, make it const so that callers can
do the same if they need.
Signed-off-by: Eric Dumazet
---
include/net/inet6_connection_sock.h | 2 +-
net/ipv6/inet6_connection_sock.c| 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/net/inet6_connection_
Very soon, TCP stack might call inet_csk_route_req(), which
calls inet_csk_route_req() with an unlocked listener socket,
so we need to make sure ip_route_output_flow() is not trying to
change any field from its socket argument.
Signed-off-by: Eric Dumazet
---
include/net/dst.h | 9 +
Soon, listener socket wont be locked when tcp_openreq_init_rwin()
is called. We need to read socket fields once, as their value
could change under us.
Signed-off-by: Eric Dumazet
---
include/net/tcp.h| 3 ++-
net/ipv4/tcp_minisocks.c | 28 ++--
2 files changed, 2
Both new_steering_entry() and existing_steering_entry() return values
based on their success or failure, but currently they fall through
silently. This can make troubleshooting difficult, as we were unable
to tell which one of these two functions returned errors or
specifically what code was retur
Soon, listener socket spinlock will no longer be held,
add const arguments to tcp_v[46]_init_req() to make clear these
functions can not mess socket fields.
Signed-off-by: Eric Dumazet
---
include/net/tcp.h | 3 ++-
net/ipv4/tcp_ipv4.c | 3 ++-
net/ipv6/tcp_ipv6.c | 9 +
3 files change
Another patch bomb to prepare lockless TCP/DCCP LISTEN handling.
SYNACK retransmits are built and sent without listener socket
being locked. Soon, initial SYNACK packets will have same property.
This series makes sure we did not something wrong with this model,
by adding a const qualifier in all
On Tue, Sep 22, 2015 at 04:47:48AM +0300, Denys Fedoryshchenko wrote:
> Hi,
> Sorry for late reply, was not able to push new kernel on pppoes without
> permissions (it's production servers), just got OK.
>
> I am testing patch on another pppoe server with 9k users, for ~3 days, seems
> fine. I wil
Hello, Christoph.
On Fri, Sep 25, 2015 at 06:49:38AM -0700, Christoph Hellwig wrote:
> Add methods to struct configfs_attribute to directly show and store
> attributes without adding boilerplate code to every user. In addition
> to the methods this also adds 3 helper macros to define read/write,
It seems that the ip6_route_output(net, sk, fl6) kernel function ignores
the fl6.flowi6_oif parameter for the routing decision.
Is this intended?
Should it possible to force the output device for ipv6 routing just as
for ipv4?
Here the example shown with the ip command:
With ipv4, I'm able t
Any I promised to Cc Pantelis when posting this for his binary attribute
work but failed to do. I'm very sorry for that and blame in on the lack
of sleep.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info
This series consolidates the code to implement configfs attributes
by providing the ->show and ->store method in common code and using
container_of in the methods to access the containing structure.
This reduces source and binary size of configfs consumers a lot.
--
To unsubscribe from this list:
Signed-off-by: Christoph Hellwig
---
drivers/usb/gadget/function/f_printer.c | 31 ---
1 file changed, 12 insertions(+), 19 deletions(-)
diff --git a/drivers/usb/gadget/function/f_printer.c
b/drivers/usb/gadget/function/f_printer.c
index 8e2b6be..29c90d5 100644
--- a
Signed-off-by: Christoph Hellwig
---
drivers/usb/gadget/function/f_ecm.c| 8 ++---
drivers/usb/gadget/function/f_eem.c| 8 ++---
drivers/usb/gadget/function/f_ncm.c| 8 ++---
drivers/usb/gadget/function/f_rndis.c | 8 ++---
drivers/usb/gadget/funct
UVC is a little different from other configfs consumers in that it wants
different function and field names from the exposed attribute name, so
it keeps it's local macros to define attributes instead of using the common
ones.
Signed-off-by: Christoph Hellwig
---
drivers/usb/gadget/function/uvc_c
Signed-off-by: Christoph Hellwig
---
drivers/usb/gadget/configfs.c | 295 ++--
include/linux/usb/gadget_configfs.h | 19 +--
2 files changed, 118 insertions(+), 196 deletions(-)
diff --git a/drivers/usb/gadget/configfs.c b/drivers/usb/gadget/configfs.c
inde
1 - 100 of 154 matches
Mail list logo