This function is obsolete, after rhashtable addition to inet defrag.
Signed-off-by: Eric Dumazet
---
include/net/inet_frag.h | 2 --
net/ieee802154/6lowpan/reassembly.c | 5 ++---
net/ipv4/inet_fragment.c| 11 ---
ip6_frag_queue uses skb->cb[] to store the fragment offset, meaning that
we could use two cache lines per skb when finding the insertion point,
if for some reason inet6_skb_parm size is increased in the future.
By using skb->ip_defrag_offset instead of skb->cb[], we pack all
the fields in a
While testing my inet defrag changes, I found that the senders
could spend ~20% of cpu cycles in skb_set_owner_w() updating
sk->sk_wmem_alloc for every fragment they cook.
The solution to this problem is to use alloc_skb() instead
of sock_wmalloc() and manually perform a single sk_wmem_alloc
While testing my inet defrag changes, I found that senders
could spend ~20% of cpu cycles in skb_set_owner_w() updating
sk->sk_wmem_alloc for every fragment they cook, competing
with TX completion of prior skbs possibly happening on another cpus.
One solution to this problem is to use alloc_skb()
While testing my inet defrag changes, I found that the senders
could spend ~20% of cpu cycles in skb_set_owner_w() updating
sk->sk_wmem_alloc for every fragment they cook, competing
with TX completion of prior skbs possibly happening on another cpus.
The solution to this problem is to use
From: Kirill Tkhai
Date: Fri, 30 Mar 2018 19:38:16 +0300
> there is wext_netdev_notifier_call()->wireless_nlevent_flush()
> netdevice notifier, which takes net_rwsem, so we can't take
> net_rwsem in {,un}register_netdevice_notifier().
>
> Since
From: Joe Perches
Date: Fri, 30 Mar 2018 12:37:30 -0700
> Rather than use an on-stack array to copy a broadcast address, use
> the generic eth_broadcast_addr function to save a trivial amount of
> object code.
>
> Signed-off-by: Joe Perches
Applied.
From: Haiyang Zhang
Date: Fri, 30 Mar 2018 13:57:59 -0700
> From: Haiyang Zhang
>
> The variables, msg and data, have the same value. This patch removes
> the extra one.
>
> Signed-off-by: Haiyang Zhang
Applied.
On Sat, 2018-03-31 at 20:28 +0200, Pablo Neira Ayuso wrote:
> Hi Joe,
Hi Pablo.
> On Sat, Mar 31, 2018 at 12:05:19AM -0700, Joe Perches wrote:
> > Remove the local consts and use the new globals.
>
> This one is already upstream:
>
>
On 04/01/2018 12:22 AM, Sergei Shtylyov wrote:
> The commit 6ded286555c2 ("sh_eth: Fix RX recovery on R-Car in case of RX
> ring underrun") added a check for an bad RDFAR offset in sh_eth_rx(), so
> that the code could work on the R-Car Ether controllers which don't have
> this register (and
Le 03/30/18 à 07:50, Andrew Lunn a écrit :
> On Fri, Mar 30, 2018 at 04:16:34PM +0200, Alexandre Belloni wrote:
>> On 30/03/2018 at 15:54:22 +0200, Andrew Lunn wrote:
> All of this sounds like it should be moved into the br_join/leave, this
> does not appear to be the right place to do
How are you? I would like to discuss a possible collaboration on my projects
that I have been operating over some years, hence please advice.
I am Gloria Chow, the Head of Client Relationships of Standard Chartered Bank
(Hong Kong) Ltd. I contacted you on LinkedIn with a disguise account,
From: Russell King
Date: Wed, 28 Mar 2018 11:20:26 +0100
> +
> /*
> * Resetting the MV88X3310 causes it to become non-responsive. Avoid
> * setting the reset bit(s).
This comment doesn't exist in the net-next copy of this file.
From: Nikolay Aleksandrov
Date: Fri, 30 Mar 2018 13:46:17 +0300
> As previously discussed the recent changes break some setups and could lead
> to packet drops. Thus the first patch reverts the behaviour for the bridge
> to follow the minimum MTU but also keeps the
From: Tal Gilboa
Date: Fri, 30 Mar 2018 09:37:29 +0300
> Net DIM is a library designed for dynamic interrupt moderation. It was
> implemented and optimized with receive side interrupts in mind, since these
> are usually the CPU expensive ones. This patch-set introduces
From: Saeed Mahameed
Date: Fri, 30 Mar 2018 17:02:37 -0700
> This series contains updates to mlx5 core and mlx5e netdev drivers.
> The main highlight of this series is the RX optimizations for striding RQ
> path,
> introduced by Tariq.
>
> For more information please see
From: David Howells
Date: Fri, 30 Mar 2018 22:14:04 +0100
> Here are some patches that add some more tracepoints to AF_RXRPC and fix
> some issues therein:
...
> The patches are tagged here:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git
>
The sh/dh/lblc/lblcr algorithms are using Knuth's multiplicative
hashing incorrectly. This results in uneven distribution.
To fix this, the result has to be shifted by a constant. In "Lecture
21: Hash functions" [1], it is said:
In the fixed-point version, The division by 2^q is crucial. The
Hi liujian,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on net-next/master]
[also build test WARNING on v4.16-rc7 next-20180329]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system]
url:
From: Martin Blumenstingl
Date: Fri, 30 Mar 2018 01:00:33 +0200
> The Meson8m2 SoC is an updated version of the Meson8 SoC. Some of the
> peripherals are shared with Meson8b (for example the watchdog registers
> and the internal temperature sensor calibration
From: Jon Maloy
Date: Thu, 29 Mar 2018 23:20:40 +0200
> We clean up and improve the name binding table:
>
> - Replace the memory consuming 'sub_sequence/service range' array with
>an RB tree.
> - Introduce support for overlapping service sequences/ranges
>
> v2:
From: Ido Schimmel
Date: Thu, 29 Mar 2018 23:33:23 +0300
> The first 10 patches from Jiri perform small and unrelated cleanups. The
> largest being the conversion of the KVD linear partitions from a list to
> an array, which simplifies the code.
>
> The last patch from Petr
From: David Miller
Date: Sat, 31 Mar 2018 21:54:50 -0400 (EDT)
> From: Ido Schimmel
> Date: Thu, 29 Mar 2018 23:33:23 +0300
>
>> The first 10 patches from Jiri perform small and unrelated cleanups. The
>> largest being the conversion of the KVD linear
Iff TSU registers exist on a given [G]Ether controller, they always include
the CAM entry table registers (TSU_ADR{H|L}), thus the check for invalid
TSU_ADRH0 offset in __sh_eth_get_regs() is useless...
Signed-off-by: Sergei Shtylyov
---
On 03/31/2018 12:07 AM, Alexei Starovoitov wrote:
> v2->v3:
> - rebase due to conflicts
> - fix ipv6=m build
>
> v1->v2:
> - support expected_attach_type at prog load time so that prog (incl.
> context accesses and calls to helpers) can be validated with regard to
> specific attach point it
Hi Rahul,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on net-next/master]
url:
https://github.com/0day-ci/linux/commits/Rahul-Lakkireddy/kernel-add-support-to-collect-hardware-logs-in-crash-recovery-kernel/20180401-060904
config: tile-allyesconfig (attached as
Hi Joe,
I love your patch! Yet something to improve:
[auto build test ERROR on wireless-drivers-next/master]
[also build test ERROR on v4.16-rc7 next-20180329]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system]
url:
Fixes: 6bf7e2b7f850 ("vmcore: add API to collect hardware dump in second
kernel")
Signed-off-by: Fengguang Wu
---
vmcore.c |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/proc/vmcore.c b/fs/proc/vmcore.c
index b53698f..fe788dd 100644
---
Hi Rahul,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on net-next/master]
url:
https://github.com/0day-ci/linux/commits/Rahul-Lakkireddy/kernel-add-support-to-collect-hardware-logs-in-crash-recovery-kernel/20180401-060904
reproduce:
# apt-get
Add additional logic to reserve completion rings for the bnxt_re driver
when it requests MSIX vectors. The function bnxt_cp_rings_in_use()
will return the total number of completion rings used by both drivers
that need to be reserved. If the network interface in up, we will
close and open the
From: Vasundhara Volam
Include additional hardware port statistics in ethtool -S, which
are useful for debugging.
Signed-off-by: Vasundhara Volam
Signed-off-by: Michael Chan
---
Hi Joe,
On Sat, Mar 31, 2018 at 12:05:19AM -0700, Joe Perches wrote:
> Remove the local consts and use the new globals.
This one is already upstream:
https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=9124a20d8794663a396b5d6f91f66903848a042b
I can see you're using
The commit 6ded286555c2 ("sh_eth: Fix RX recovery on R-Car in case of RX
ring underrun") added a check for an bad RDFAR offset in sh_eth_rx(), so
that the code could work on the R-Car Ether controllers which don't have
this register (and TDFAR), then the commit 3365711df02 ("sh_eth: WARN on
access
Hi David,
The following pull-request contains BPF updates for your *net-next* tree.
The main changes are:
1) Add raw BPF tracepoint API in order to have a BPF program type that
can access kernel internal arguments of the tracepoints in their
raw form similar to kprobes based BPF programs.
On Sat, 2018-03-31 at 19:36 +0200, Andrew Lunn wrote:
> On Sat, Mar 31, 2018 at 12:05:17AM -0700, Joe Perches wrote:
> > --- a/net/bridge/br_device.c
> > +++ b/net/bridge/br_device.c
> > @@ -1,4 +1,4 @@
> > -/*
> > +gg/*
>
> Hi Joe
>
> This does not look good.
Definitely agree with that.
Currently, the driver code makes some assumptions about the group index
and the map index of rings. This makes the code more difficult to
understand and less flexible.
Improve it by adding the grp_idx and map_idx fields explicitly to the
bnxt_ring_struct as a union. The grp_idx is initialized
When checking for the maximum pre-set TX channels for ethtool -l, we
need to check the current max_tx_scheduler_inputs parameter from firmware.
This parameter specifies the max input for the internal QoS nodes currently
available to this function. The function's TX rings will be capped by this
If the RDMA driver is registered, use a new VNIC mode that allows
RDMA traffic to be seen on the netdev in promiscuous mode.
Signed-off-by: Michael Chan
---
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 18 ++
drivers/net/ethernet/broadcom/bnxt/bnxt.h |
Hello!
Here's a set of 2 patches against DaveM's 'net-next.git' repo. They get rid of
the abuse of SH_ETH_OFFSET_INVALID for the register existence checks, so that
only its necessary uses would remain...
[1/2] sh_eth: add sh_eth_cpu_data::no_xdfar flag
[2/2] sh_eth: kill useless check in
Hello,
syzbot hit the following crash on bpf-next commit
1379ef828a18d8f81c526b25e4d5685caa2cfd65 (Thu Mar 29 22:09:44 2018 +)
Merge branch 'bpf-sockmap-ingress'
syzbot dashboard link:
https://syzkaller.appspot.com/bug?extid=6eaf536fd743f5e119c5
So far this crash happened 6 times on
Hello,
syzbot hit the following crash on net-next commit
c0b6edef0bf0e33c12eaf80c676ff09def011518 (Thu Mar 29 19:58:10 2018 +)
tc-testing: Add newline when writing test case files
syzbot dashboard link:
https://syzkaller.appspot.com/bug?extid=0bb443b74ce09197e970
So far this crash
Hi Rahul,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on net-next/master]
url:
https://github.com/0day-ci/linux/commits/Rahul-Lakkireddy/kernel-add-support-to-collect-hardware-logs-in-crash-recovery-kernel/20180401-060904
config: sparc64-allyesconfig (attached
From: David Ahern
Date: Fri, 30 Mar 2018 09:28:51 -0700
> Change nsim_devlink_setup to return any error back to the caller and
> update nsim_init to handle it.
>
> Requested-by: Jakub Kicinski
> Signed-off-by: David Ahern
From: Vadim Lomovtsev
Date: Fri, 30 Mar 2018 04:59:46 -0700
> From: Vadim Lomovtsev
>
> By default CN88XX BGX accepts all incoming multicast and broadcast
> packets and filtering is disabled. The nic driver doesn't provide
> an
eth_stp_addr is not in the same form as the other global ether__addr
addresses like ether_broadcast_addr.
Convert it treewide.
Miscellanea:
o Add comment to the ether_stp_addr define to show it's for spanning-tree
Signed-off-by: Joe Perches
---
V2: Remove gg from initial
Some users are willing to provision huge amounts of memory to be able
to perform reassembly reasonnably well under pressure.
Current memory tracking is using one atomic_t and integers.
Switch to atomic_long_t so that 64bit arches can use more than 2GB,
without any cost for 32bit arches.
Note
We need to call inet_frags_init() before register_pernet_subsys(),
as a prereq for following patch ("inet: frags: use rhashtables for reassembly
units")
Signed-off-by: Eric Dumazet
---
net/ipv4/ip_fragment.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff
Some applications still rely on IP fragmentation, and to be fair linux
reassembly unit is not working under any serious load.
It uses static hash tables of 1024 buckets, and up to 128 items per bucket (!!!)
A work queue is supposed to garbage collect items when host is under memory
pressure, and
We want to call lowpan_net_frag_init() earlier.
Similar to commit "inet: frags: refactor ipv6_frag_init()"
This is a prereq to "inet: frags: use rhashtables for reassembly units"
Signed-off-by: Eric Dumazet
---
net/ieee802154/6lowpan/reassembly.c | 20 +++-
An skb_clone() was added in commit ec4fbd64751d ("inet: frag: release
spinlock before calling icmp_send()")
While fixing the bug at that time, it also added a very high cost
for DDOS frags, as the ICMP rate limit is applied after this
expensive operation (skb_clone() + consume_skb(), implying
This refactors ip_expire() since one indentation level is removed.
Note: in the future, we should try hard to avoid the skb_clone()
since this is a serious performance cost.
Under DDOS, the ICMP message wont be sent because of rate limits.
Fact that ip6_expire_frag_queue() does not use
While under frags DDOS I noticed unfortunate false sharing between
@nelems and @params.automatic_shrinking
Move @nelems at the end of struct rhashtable so that first cache line
is shared between all cpus, because almost never dirtied.
Signed-off-by: Eric Dumazet
---
Make it similar to IPv4 ip_expire(), and release the lock
before calling icmp functions.
Signed-off-by: Eric Dumazet
---
net/ipv6/reassembly.c | 24
1 file changed, 16 insertions(+), 8 deletions(-)
diff --git a/net/ipv6/reassembly.c
We will soon initialize one rhashtable per struct netns_frags
in inet_frags_init_net().
This patch changes the return value to eventually propagate an
error.
Signed-off-by: Eric Dumazet
---
include/net/inet_frag.h | 3 ++-
In order to simplify the API, add a pointer to struct inet_frags.
This will allow us to make things less complex.
These functions no longer have a struct inet_frags parameter :
inet_frag_destroy(struct inet_frag_queue *q /*, struct inet_frags *f */)
inet_frag_put(struct inet_frag_queue *q /*,
Put the read-mostly fields in a separate cache line
at the beginning of struct netns_frags, to reduce
false sharing noticed in inet_frag_kill()
Signed-off-by: Eric Dumazet
---
include/net/inet_frag.h | 9 +
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git
We want to call inet_frags_init() earlier.
This is a prereq to "inet: frags: use rhashtables for reassembly units"
Signed-off-by: Eric Dumazet
---
net/ipv6/reassembly.c | 27 +++
1 file changed, 15 insertions(+), 12 deletions(-)
diff --git
nf_ct_frag6_queue() uses skb->cb[] to store the fragment offset,
meaning that we could use two cache lines per skb when finding
the insertion point, if for some reason inet6_skb_parm size
is increased in the future.
By using skb->ip_defrag_offset instead of skb->cb[] we pack all the fields
in a
Remove sum_frag_mem_limit(), ip_frag_mem() & ip6_frag_mem()
Also since we use rhashtable we can bring back the number of fragments
in "grep FRAG /proc/net/sockstat /proc/net/sockstat6" that was
removed in commit 434d305405ab ("inet: frag: don't account number
of fragment queues")
Signed-off-by:
ip_defrag uses skb->cb[] to store the fragment offset, and unfortunately
this integer is currently in a different cache line than skb->next,
meaning that we use two cache lines per skb when finding the insertion point.
By aliasing skb->ip_defrag_offset and skb->dev, we pack all the fields
in a
Rehashing and destroying large hash table takes a lot of time,
and happens in process context. It is safe to add cond_resched()
in rhashtable_rehash_table() and rhashtable_free_and_destroy()
Signed-off-by: Eric Dumazet
Acked-by: Herbert Xu
---
IP defrag processing is one of the remaining problematic layer in linux.
It uses static hash tables of 1024 buckets, and up to 128 items per bucket.
A work queue is supposed to garbage collect items when host is under memory
pressure, and doing a hash rebuild, changing seed used in hash
csum field in struct frag_queue is not used, remove it.
Signed-off-by: Eric Dumazet
---
include/net/ipv6.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/include/net/ipv6.h b/include/net/ipv6.h
index
Hi Eric,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on net-next/master]
url:
https://github.com/0day-ci/linux/commits/Eric-Dumazet/inet-frags-bring-rhashtables-to-IP-defrag/20180401-053614
reproduce: make htmldocs
All warnings (new ones prefixed by >>):
From: David Miller
Date: Sat, 31 Mar 2018 22:02:55 -0400 (EDT)
> From: Tal Gilboa
> Date: Fri, 30 Mar 2018 09:37:29 +0300
>
>> Net DIM is a library designed for dynamic interrupt moderation. It was
>> implemented and optimized with receive side
From: Luigi Rizzo
We have all sorts of different ways to fetch pre-UDP payload metadata:
IP_RECVTOS
IP_RECVTTL
IP_RECVOPTS
IP_RETOPTS
But nothing generic which simply allows you to receive the entire packet header.
This is in similar vein to TCP_SAVE_SYN but for UDP
From: Eric Dumazet
Date: Sat, 31 Mar 2018 12:58:41 -0700
> IP defrag processing is one of the remaining problematic layer in linux.
>
> It uses static hash tables of 1024 buckets, and up to 128 items per bucket.
>
> A work queue is supposed to garbage collect items when
From: Daniel Borkmann
Date: Sun, 1 Apr 2018 01:51:12 +0200
> The following pull-request contains BPF updates for your *net-next* tree.
Pulled, thanks Daniel.
From: Wei Yongjun
Date: Sat, 31 Mar 2018 06:11:41 +
> Fixes the following sparse warning:
>
> net/8021q/vlan_core.c:168:6: warning:
> symbol 'vlan_hw_filter_capable' was not declared. Should it be static?
>
> Signed-off-by: Wei Yongjun
From: Michael Chan
Date: Sat, 31 Mar 2018 13:54:05 -0400
> Misc. updates including updated firmware interface, some additional
> port statistics, a new IRQ assignment scheme for the RDMA driver, support
> for VF trust, and other changes and improvements for SRIOV.
From: Jesper Dangaard Brouer
Date: Sat, 31 Mar 2018 14:06:52 +0200
> diff --git a/net/core/xdp.c b/net/core/xdp.c
> index 8b2cb79b5de0..d8115903e454 100644
> --- a/net/core/xdp.c
> +++ b/net/core/xdp.c
...
> +static inline bool __is_supported_mem_type(enum xdp_mem_type type)
From: Jesper Dangaard Brouer
Date: Sat, 31 Mar 2018 14:05:52 +0200
> +static inline void mlx5e_page_dma_unmap(struct mlx5e_rq *rq,
> + struct mlx5e_dma_info *dma_info)
Please do not use the inline keyword in foo.c files, let the compiler
From: Atul Gupta
Date: Sat, 31 Mar 2018 21:41:51 +0530
> Series for Chelsio Inline TLS driver (chtls)
Series applied, thank you.
Hello everyone,
As I know we have a socket option SO_TCP_NODELAY to disable Nagle
Algorithm, and I found it is implemented in TCP/IP stack at
https://elixir.bootlin.com/linux/v4.4.90/source/net/ipv4/tcp.c#L2401 .
However, I do not know where the source code the Nagle Algorithm is
implemented in
Alexander, David,
On 2018-03-08 11:19, Alexander Kurz wrote:
Remove the duplicated code for asix88179_178a bind and reset methods.
Signed-off-by: Alexander Kurz
---
drivers/net/usb/ax88179_178a.c | 117
+++--
1 file changed, 31
On 03/31/2018 12:47 AM, kbuild test robot wrote:
>
> Fixes: b051dbce5e50 ("inet: frags: use rhashtables for reassembly units")
> Signed-off-by: Fengguang Wu
> ---
> reassembly.c |2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git
Fixes the following sparse warning:
net/8021q/vlan_core.c:168:6: warning:
symbol 'vlan_hw_filter_capable' was not declared. Should it be static?
Signed-off-by: Wei Yongjun
---
net/8021q/vlan_core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git
On 3/31/2018 1:26 AM, David Ahern wrote:
On 3/30/18 1:39 PM, Alex Vesker wrote:
On 3/30/2018 7:57 PM, David Ahern wrote:
On 3/30/18 8:34 AM, Andrew Lunn wrote:
And it seems to want contiguous pages. How well does that work after
the system has been running for a while and memory is
On Fri, 30 Mar 2018 16:12:23 -0500, Gustavo A. R. Silva wrote:
> In preparation to enabling -Wimplicit-fallthrough, mark switch cases
> where we are expecting to fall through.
>
> Signed-off-by: Gustavo A. R. Silva
Acked-by: Jakub Kicinski
This saves a small amount of object code.
Miscellanea:
o __b44_cam_write now use const u8 *data instead of unsigned char *
to avoid compiler warnings as it doesn't modify data
Signed-off-by: Joe Perches
---
drivers/net/ethernet/broadcom/b44.c | 5 ++---
Use the new global instead of local statics to save a bit of object code.
Signed-off-by: Joe Perches
---
drivers/net/ethernet/qlogic/netxen/netxen_nic_hw.c | 5 +
drivers/net/ethernet/qlogic/qlcnic/qlcnic_hw.c | 6 ++
Use the new global to save a little bit of object code.
Signed-off-by: Joe Perches
---
drivers/net/wireless/intel/iwlwifi/dvm/dev.h | 1 -
drivers/net/wireless/intel/iwlwifi/dvm/scan.c | 2 +-
drivers/net/wireless/intel/iwlwifi/dvm/sta.c | 4 +---
3 files changed, 2
Treewide there are ~60 declarations of Ethernet broadcast or zero address
use as a 6 byte array that are later used as either an output for vsprintf
extension %pM or as a source array to copy or compare.
Create const globals for these uses with EXPORT_SYMBOL for modules.
Miscellanea:
o Rename
eth_stp_addr is not in the same form as the other global ether__addr
addresses like ether_broadcast_addr.
Convert it treewide.
Miscellanea:
o Add comment to the ether_stp_addr define to show it's for spanning-tree
Signed-off-by: Joe Perches
---
There are many local static and non-static arrays that are used for
Ethernet broadcast address output or comparison.
Centralize the array into a single separate file and remove the local
arrays.
Joe Perches (12):
ethernet: Add generic ether__addr addresses
treewide/net: Rename eth_stp_addr
This patch adds pretty print capability for data with BTF type info.
The current usage is to allow pretty print of a BPF map.
The next few patches will allow a read() on a pinned map with BTF
type info for its key and value.
This patch uses the seq_printf() infra.
Signed-off-by: Martin KaFai
This patch tests the BTF loading, map_create with BTF
and the changes in libbpf.
-r: Raw tests that test raw crafted BTF data
-f: Test LLVM compiled bpf prog with BTF data
-g: Test BPF_OBJ_GET_INFO_BY_FD for btf_fd
-p: Test pretty print
The tools/testing/selftests/bpf/Makefile will probe
for BTF
This patch introduces BPF Type Format (BTF).
BTF (BPF Type Format) is the meta data format which describes
the data types of BPF program/map. Hence, it basically focus
on the C programming language which the modern BPF is primary
using. The first use case is to provide a generic pretty print
After collecting all btf_type in the first pass in an earlier patch,
the second pass (in this patch) can validate the reference types
(e.g. the referring type does exist and it does not refer to itself).
While checking the reference type, it also gathers other information (e.g.
the size of an
This patch introduces BPF type Format (BTF).
BTF (BPF Type Format) is the meta data format which describes
the data types of BPF program/map. Hence, it basically focus
on the C programming language which the modern BPF is primary
using. The first use case is to provide a generic pretty print
If the ".BTF" elf section exists, libbpf will try to create
a btf_fd (through BPF_BTF_LOAD). If that fails, it will still
continue loading the bpf prog/map without the BTF.
If the bpf_object has a BTF loaded, it will create a map with the btf_fd.
libbpf will try to figure out the btf_key_id and
This patch adds a BPF_BTF_LOAD command which
1) loads and verifies the BTF (implemented in earlier patches)
2) returns a BTF fd to userspace. In the next patch, the
BTF fd can be specified during BPF_MAP_CREATE.
It currently limits to CAP_SYS_ADMIN.
Signed-off-by: Martin KaFai Lau
This patch adds BPF_OBJ_GET_INFO_BY_FD support to BTF fd.
The original BTF data, which was used to create the BTF fd during
the earlier BPF_BTF_LOAD call, will be returned.
The userspace is expected to allocate buffer
to info.info and the buffer size is set to info.info_len before
calling
Hi Gustavo,
> In preparation to enabling -Wimplicit-fallthrough, mark switch cases
> where we are expecting to fall through.
>
> Signed-off-by: Gustavo A. R. Silva
> ---
> net/bluetooth/mgmt.c| 1 +
> net/bluetooth/rfcomm/sock.c | 1 +
> 2 files changed, 2
The sequence of actions done by device drivers to append their device
specific hardware/firmware logs to /proc/vmcore are as follows:
1. During probe (before hardware is initialized), device drivers
register to the vmcore module (via vmcore_add_device_dump()), with
callback function, along with
Register callback to collect hardware/firmware dumps in second kernel
before hardware/firmware is initialized. The dumps for each device
will be available as elf notes in /proc/vmcore in second kernel.
Signed-off-by: Rahul Lakkireddy
Signed-off-by: Ganesh Goudar
On production servers running variety of workloads over time, kernel
panic can happen sporadically after days or even months. It is
important to collect as much debug logs as possible to root cause
and fix the problem, that may not be easy to reproduce. Snapshot of
underlying hardware/firmware
Update read and mmap logic to append device dumps as additional notes
before the other elf notes. We add device dumps before other elf notes
because the other elf notes may not fill the elf notes buffer
completely and we will end up with zero-filled data between the elf
notes and the device dumps.
From: liujian
When the hash policy is BOND_XMIT_POLICY_LAYER34 mode and skb protocol
is 802.1q VLAN, the policy will be degenerated to LAYER2 mode; Now,
change it to get the next layer protocol to ensure that it worked in
BOND_XMIT_POLICY_LAYER34 mode.
Signed-off-by:
Remove the local consts and use the new globals.
Signed-off-by: Joe Perches
---
net/bridge/netfilter/ebt_stp.c | 6 ++
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/net/bridge/netfilter/ebt_stp.c b/net/bridge/netfilter/ebt_stp.c
index
1 - 100 of 177 matches
Mail list logo