On Wed, Nov 25, 2020 at 1:20 PM Lars Povlsen wrote:
> The pinctrl-microchip-sgpio driver needs OF support, so add that to
> Kconfig.
>
> Reported-by: Randy Dunlap
> Signed-off-by: Lars Povlsen
Patch applied!
Yours,
Linus Walleij
On Tue, Dec 01, 2020 at 12:10:40PM +0800, Leo Yan wrote:
> On Mon, Nov 30, 2020 at 04:46:51PM +, Will Deacon wrote:
> > On Mon, Nov 30, 2020 at 06:24:54PM +0200, James Clark wrote:
> > > Enable PID_IN_CONTEXTIDR by default when Arm SPE is enabled.
> > > This flag is required to get PID data in
On Mon, Nov 23, 2020 at 11:41 PM Pawan Gupta wrote:
> A recent commit f1b206cf7c57 ("pinctrl: core: print gpio in pins debugfs
> file") added build warnings when CONFIG_GPIOLIB=n. Offcourse the kernel
> fails to build when warnings are treated as errors. Below is the error
> message:
>
> $
On Tue, Dec 01, 2020 at 01:50:38PM -0800, Andy Lutomirski wrote:
> On Tue, Dec 1, 2020 at 1:28 PM Will Deacon wrote:
> >
> > On Mon, Nov 30, 2020 at 10:31:51AM -0800, Andy Lutomirski wrote:
> > > other arch folk: there's some background here:
> > >
> > >
On Fri, Nov 27, 2020 at 02:32:34PM -0500, Gabriel Krisman Bertazi wrote:
> Introduce a mechanism to quickly disable/enable syscall handling for a
> specific process and redirect to userspace via SIGSYS. This is useful
> for processes with parts that require syscall redirection and parts that
>
On Fri, Nov 27, 2020 at 02:32:37PM -0500, Gabriel Krisman Bertazi wrote:
> This is the patch I'm using to evaluate the impact syscall user dispatch
> has on native syscall (syscalls not redirected to userspace) when
> enabled for the process and submiting syscalls though the unblocked
> dispatch
On Fri, Nov 27, 2020 at 02:32:35PM -0500, Gabriel Krisman Bertazi wrote:
> Syscall User Dispatch (SUD) must take precedence over seccomp and
> ptrace, since the use case is emulation (it can be invoked with a
> different ABI) such that seccomp filtering by syscall number doesn't
> make sense in
On Tue, Dec 01, 2020 at 11:48:15AM -0800, John Stultz wrote:
> On Tue, Dec 1, 2020 at 9:51 AM Minchan Kim wrote:
>
> Thanks for reworking and resending this!
>
> ...
> > +static int __init chunk_heap_init(void)
> > +{
> > + struct cma *default_cma = dev_get_cma_area(NULL);
> > +
On Tue, Dec 1, 2020 at 9:46 PM Krzysztof Kozlowski wrote:
> The following changes since commit 3650b228f83adda7e5ee532e2b90429c03f7b9ec:
>
> Linux 5.10-rc1 (2020-10-25 15:14:11 -0700)
>
> are available in the Git repository at:
>
>
Hi Grzeg,
I have started to review this set - comments will come over the next few days.
See below for a start.
On Thu, Nov 19, 2020 at 03:08:46PM +0100, Grzegorz Jaszczyk wrote:
> From: Suman Anna
>
> The Programmable Real-Time Unit Subsystem (PRUSS) consists of
> dual 32-bit RISC cores
On Fri, Nov 27 2020 at 14:32, Gabriel Krisman Bertazi wrote:
> +Compatibility layers like Wine need a way to efficiently emulate system
> +calls of only a part of their process - the part that has the
> +incompatible code - while being able to execute native syscalls without
> +a high performance
On Tue, Dec 1, 2020 at 6:13 PM H. Nikolaus Schaller wrote:
> I am not sure if DT maintainers accept that we revert a DT change just to
> handle some change in a driver. Usually they insist on fixing a driver and
> live with the DT. DT is carved in stone or could be ROM...
I usually use this
> On Dec 1, 2020, at 12:54 PM, Jiri Olsa wrote:
>
> On Mon, Nov 30, 2020 at 11:36:46PM -0800, Song Liu wrote:
>> BPF programs are useful in perf to profile BPF programs. BPF skeleton is
>> by far the easiest way to write BPF tools. Enable building BPF skeletons
>> in util/bpf_skel. A dummy
From: Seamus Kelly
Enable VPU management including, enumeration, boot and runtime control.
Add APIs:
write control data:
used to transmit small, local data
start vpu:
calls boot_device API ( soon to be deprecated )
stop vpu
From: Seamus Kelly
Add xLink driver, which interfaces the xLink Core driver with the Keem
Bay VPU IPC driver, thus enabling xLink to control and communicate with
the VPU IP present on the Intel Keem Bay SoC.
Specifically the driver enables xLink Core to:
* Boot / Reset the VPU IP
* Register to
From: Srikanth Thokala
Add logic to establish communication with the remote host which is through
ring buffer management and MSI/Doorbell interrupts
Reviewed-by: Mark Gross
Signed-off-by: Srikanth Thokala
---
drivers/misc/xlink-pcie/local_host/Makefile | 2 +
From: Seamus Kelly
Add xLink driver, which provides an abstracted control and communication
subsystem based on channel identification.
It is intended to support VPU technology both at SoC level as well as at
IP level, over multiple interfaces. This initial patch enables local
From: Seamus Kelly
Add device tree bindings for the xLink IPC driver which enables xLink to
control and communicate with the VPU IP present on the Intel Keem Bay
SoC.
Cc: devicet...@vger.kernel.org
Reviewed-by: Mark Gross
Signed-off-by: Seamus Kelly
Signed-off-by: Ryan Carnaghi
---
From: Seamus Kelly
Refactor the too large IOCTL function to call helper functions.
Reviewed-by: Mark Gross
Signed-off-by: Seamus Kelly
---
drivers/misc/xlink-core/Makefile | 2 +-
drivers/misc/xlink-core/xlink-core.c | 625 ++
From: Srikanth Thokala
Provide overview of XLink PCIe driver implementation
Cc: linux-...@vger.kernel.org
Reviewed-by: Mark Gross
Signed-off-by: Srikanth Thokala
---
Documentation/vpu/index.rst | 1 +
Documentation/vpu/xlink-pcie.rst | 91
2 files
From: Srikanth Thokala
Move logic that can be reused between local host and remote host to
common/ folder
Reviewed-by: Mark Gross
Signed-off-by: Srikanth Thokala
---
drivers/misc/xlink-pcie/{local_host => common}/core.h | 0
drivers/misc/xlink-pcie/{local_host => common}/util.c | 0
From: Daniele Alessandrelli
On the Intel Movidius SoC code named Keem Bay, communication between the
Computing Sub-System (CSS), i.e., the CPU, and the Multimedia Sub-System
(MSS), i.e., the VPU is enabled by the Keem Bay Inter-Processor
Communication (IPC) mechanism.
Add the driver for using
From: Seamus Kelly
Enable asynchronous channel and event communication.
Add APIs:
data ready callback:
The xLink Data Ready Callback function is used to
register a callback function that is invoked when data
From: Srikanth Thokala
Add PCIe EPF driver for local host (lh) to configure BAR's and other
HW resources. Underlying PCIe HW controller is a Synopsys DWC PCIe core.
Reviewed-by: Mark Gross
Signed-off-by: Srikanth Thokala
---
MAINTAINERS | 6 +
From: Seamus Kelly
Add device tree bindings for keembay-xlink.
Cc: devicet...@vger.kernel.org
Reviewed-by: Mark Gross
Signed-off-by: Seamus Kelly
Signed-off-by: Ryan Carnaghi
---
.../bindings/misc/intel,keembay-xlink.yaml| 27 +++
1 file changed, 27 insertions(+)
create
From: Paul Murphy
Add DT bindings documentation for the Keem Bay VPU IPC driver.
Cc: devicet...@vger.kernel.org
Reviewed-by: Mark Gross
Signed-off-by: Paul Murphy
Co-developed-by: Daniele Alessandrelli
Signed-off-by: Daniele Alessandrelli
---
.../soc/intel/intel,keembay-vpu-ipc.yaml |
On 12/1/2020 2:26 PM, Dave Hansen wrote:
On 11/30/20 3:16 PM, Yu, Yu-cheng wrote:
Do we have any other spots in the kernel where we care about:
boot_cpu_has(X86_FEATURE_SHSTK) ||
boot_cpu_has(X86_FEATURE_IBT)
? If so, we could also address this by declaring a software-defined
From: Srikanth Thokala
Add PCIe Endpoint driver that configures PCIe BARs and MSIs on the
Remote Host
Reviewed-by: Mark Gross
Signed-off-by: Srikanth Thokala
---
MAINTAINERS | 2 +-
drivers/misc/xlink-pcie/Kconfig | 11 +
From: Paul Murphy
Intel Keem Bay SoC contains a Vision Processing Unit (VPU) to enable
machine vision and other applications.
Enable Linux to control the VPU processor and provides an interface to
the Keem Bay IPC for communicating with the VPU firmware.
Specifically the driver provides the
From: Daniele Alessandrelli
Add DT binding documentation for the Intel Keem Bay IPC driver, which
enables communication between the Computing Sub-System (CSS) and the
Multimedia Sub-System (MSS) of the Intel Movidius SoC code named Keem
Bay.
Cc: devicet...@vger.kernel.org
Reviewed-by: Mark
From: mark gross
The Intel VPU needs a complicated SW stack to make it work. Add a
directory to hold VPU related documentation including an architectural
overview of the SW stack that the patches implement.
Reviewed-by: Mark Gross
Signed-off-by: Mark Gross
---
Documentation/index.rst
From: Seamus Kelly
Enable host system access to the VPU over the xlink protocol over PCIe by
enabling channel multiplexing and dispatching. This allows for remote host
communication channels across pcie links.
add dispatcher
update multiplexer to utilise dispatcher
xlink-core:
From: Srikanth Thokala
Provide interface for XLink layer to interact with XLink PCIe transport
layer on both local host and remote host.
Reviewed-by: Mark Gross
Signed-off-by: Srikanth Thokala
---
drivers/misc/xlink-pcie/common/interface.c | 109 +++
From: Srikanth Thokala
Add Synopsys PCIe DWC core embedded-DMA functionality for local host
Reviewed-by: Mark Gross
Signed-off-by: Srikanth Thokala
---
drivers/misc/xlink-pcie/local_host/Makefile | 1 +
drivers/misc/xlink-pcie/local_host/dma.c| 577
Hi Fritz,
On 12/1/20 6:23 AM, Fritz Koenig wrote:
> If the DRC is near the end of the stream the client
> may send a V4L2_DEC_CMD_STOP before the DRC occurs.
> V4L2_DEC_CMD_STOP puts the driver into the
> VENUS_DEC_STATE_DRAIN state. DRC must be aware so
> that after the DRC event the state can
From: Srikanth Thokala
Add logic to establish communication with the local host which is through
ring buffer management and MSI/Doorbell interrupts
Reviewed-by: Mark Gross
Signed-off-by: Srikanth Thokala
---
drivers/misc/xlink-pcie/common/core.h| 11 +-
From: mark gross
The Intel Vision Processing Unit (VPU) is an IP block that is showing up for
the first time as part of the Keem Bay SOC. Keem Bay is a quad core A53 Arm
SOC. It is designed to be used as a stand alone SOC as well as in an PCIe
Vision Processing accelerator add in card.
This
From: Srikanth Thokala
Add support to notify XLink layer upon PCIe link UP/DOWN events
Reviewed-by: Mark Gross
Signed-off-by: Srikanth Thokala
---
drivers/misc/xlink-pcie/common/core.h | 3 ++
drivers/misc/xlink-pcie/common/interface.c | 17 ++
Commit 7ecdea4a0226 ("backlight: generic_bl: Remove this driver as it is
unused") removed geenric_bl driver from the tree, together with
corresponding config option.
Remove BACKLIGHT_GENERIC config item from generic-64bit_defconfig.
Fixes: 7ecdea4a0226 ("backlight: generic_bl: Remove this driver
Commit 7ecdea4a0226 ("backlight: generic_bl: Remove this driver as it is
unused") removed geenric_bl driver from the tree, together with
corresponding config option.
Remove BACKLIGHT_GENERIC config item from generic-64bit_defconfig.
Fixes: 7ecdea4a0226 ("backlight: generic_bl: Remove this driver
Commit 7ecdea4a0226 ("backlight: generic_bl: Remove this driver as it is
unused") removed geenric_bl driver from the tree, together with
corresponding config option.
Remove BACKLIGHT_GENERIC config item from all MIPS configurations.
Fixes: 7ecdea4a0226 ("backlight: generic_bl: Remove this driver
On Tue, Dec 01, 2020 at 12:59:27PM +, Matthew Wilcox wrote:
> On Mon, Nov 30, 2020 at 06:06:03PM -0500, Peter Xu wrote:
> > Faulting around for reads are in most cases helpful for the performance so
> > that
> > continuous memory accesses may avoid another trip of page fault. However it
> >
Commit 7ecdea4a0226 ("backlight: generic_bl: Remove this driver as it is
unused") removed geenric_bl driver from the tree, together with
corresponding config option.
Remove BACKLIGHT_GENERIC config item from all ARM configurations.
Fixes: 7ecdea4a0226 ("backlight: generic_bl: Remove this driver
Hi Daniel,
On Tue, Dec 01, 2020 at 10:08:25PM +, Dan Scally wrote:
> On 30/11/2020 17:09, Laurent Pinchart wrote:
> > On Mon, Nov 30, 2020 at 01:31:24PM +, Daniel Scally wrote:
> >> Currently on platforms designed for Windows, connections between CIO2 and
> >> sensors are not properly
Commit 7ecdea4a0226 ("backlight: generic_bl: Remove this driver as it is
unused") removed geenric_bl driver from the tree, together with
corresponding config option.
Remove BACKLIGHT_GENERIC config item from arm64 configuration.
Fixes: 7ecdea4a0226 ("backlight: generic_bl: Remove this driver as
Since the removal of generic_bl driver from the source tree in commit
7ecdea4a0226 ("backlight: generic_bl: Remove this driver as it is
unused") BACKLIGHT_GENERIC config option became obsolete as well and
therefore subject to clean-up from all configuration files.
This series introduces patches
On Tue, Dec 01, 2020 at 03:56:49PM +, Quentin Perret wrote:
> On Tuesday 01 Dec 2020 at 14:11:21 (+), Qais Yousef wrote:
> > For cpusets, if hotunplug results in an empty cpuset, then all tasks are
> > moved
> > to the nearest ancestor if I read the code correctly. In our case, only
> >
Please pull the following changes since commit
b65054597872ce3aefbc6a666385eabdf9e288da:
Linux 5.10-rc6 (2020-11-29 15:50:50 -0800)
are available in the Git repository at:
git://git.samba.org/sfrench/cifs-2.6.git tags/5.10-rc6-smb3-fixes
for you to fetch changes up to
On 11/30/20 3:22 PM, Brendan Higgins wrote:
On Mon, Nov 23, 2020 at 11:25 PM David Gow wrote:
On Mon, Nov 23, 2020 at 9:08 PM Marco Elver wrote:
On Tue, 17 Nov 2020 at 08:21, David Gow wrote:
On Mon, Nov 16, 2020 at 1:41 PM Arpitha Raghunandan <98.a...@gmail.com> wrote:
Implementation
On Thu, Nov 19, 2020 at 3:42 PM Joel Fernandes wrote:
>
> On Thu, Nov 19, 2020 at 12:16:15PM -0800, Paul E. McKenney wrote:
> > On Thu, Nov 19, 2020 at 02:44:35PM -0500, Joel Fernandes wrote:
> > > On Thu, Nov 19, 2020 at 2:22 PM Paul E. McKenney
> > > wrote:
> > > > > > > > On Wed, Nov 18,
On 12/1/20 4:12 PM, Linus Torvalds wrote:
> On Tue, Dec 1, 2020 at 2:03 PM Eric Sandeen wrote:
>>
>> That's why I was keen to just add DAX unconditionally at this point, and if
>> we want
>> to invent/refine meanings for the mask, we can still try to do that?
>
> Oh Gods. Let's *not* make this
On 11/30/20 3:16 PM, Yu, Yu-cheng wrote:
>>
>> Do we have any other spots in the kernel where we care about:
>>
>> boot_cpu_has(X86_FEATURE_SHSTK) ||
>> boot_cpu_has(X86_FEATURE_IBT)
>>
>> ? If so, we could also address this by declaring a software-defined
>> X86_FEATURE_CET and then
On Fri, 27 Nov 2020 14:32:38 -0500
Gabriel Krisman Bertazi wrote:
> Explain the interface, provide some background and security notes.
>
> Signed-off-by: Gabriel Krisman Bertazi
> Reviewed-by: Kees Cook
> Acked-by: Peter Zijlstra (Intel)
Nice to see documentation included...:) One nit:
>
On 12/1/20 12:56 PM, Halil Pasic wrote:
On Tue, 1 Dec 2020 00:32:27 +0100
Halil Pasic wrote:
On 11/28/20 8:52 PM, Halil Pasic wrote:
[..]
* Unassign adapter from mdev's matrix:
The domain will be hot unplugged from the KVM guest if it is
assigned to the guest's matrix.
*
On Fri, Nov 27, 2020 at 01:41:22PM +, Qais Yousef wrote:
> On 11/24/20 15:50, Will Deacon wrote:
> > If we want to support 32-bit applications, then when we identify a CPU
> > with mismatched 32-bit EL0 support we must ensure that we will always
> > have an active 32-bit CPU available to us
On Tue, Dec 1, 2020 at 2:03 PM Eric Sandeen wrote:
>
> That's why I was keen to just add DAX unconditionally at this point, and if
> we want
> to invent/refine meanings for the mask, we can still try to do that?
Oh Gods. Let's *not* make this some "random filesystem choice" where
now semantics
On 01/12/2020 22:08, Dan Scally wrote:
>>> +
>>> + for_each_acpi_dev_match(adev, this_device, NULL, -1) {
>>> + if (!adev || !(adev->status.present &&
>>> adev->status.enabled))
>> if (!adev || !adev->status.present ||
>> !adev->status.enabled))
On Tue, Dec 1, 2020 at 1:04 PM David Howells wrote:
>
> Linus Torvalds wrote:
>
> > And if IS_DAX() is correct, then why shouldn't this just be done in
> > generic code? Why move it to every individual filesystem?
>
> One way of looking at it is that the check is then done for every filesystem -
Hi Laurent - thanks for reviewing
On 30/11/2020 17:09, Laurent Pinchart wrote:
> Hi Daniel,
>
> Thank you for the patch.
>
> On Mon, Nov 30, 2020 at 01:31:24PM +, Daniel Scally wrote:
>> Currently on platforms designed for Windows, connections between CIO2 and
>> sensors are not properly
On 12/1/20 2:52 PM, Dave Chinner wrote:
> On Tue, Dec 01, 2020 at 09:39:05AM -0800, Darrick J. Wong wrote:
>> On Tue, Dec 01, 2020 at 10:59:36AM -0600, Eric Sandeen wrote:
>>> It's a bit odd to set STATX_ATTR_DAX into the statx attributes in the VFS;
>>> while the VFS can detect the current DAX
This patch enables memcg-based memory accounting for memory allocated
by __bpf_map_area_alloc(), which is used by many types of bpf maps for
large initial memory allocations.
Please note, that __bpf_map_area_alloc() should not be used outside of
map creation paths without setting the active
Include percpu arrays and auxiliary data into the memcg-based memory
accounting.
Signed-off-by: Roman Gushchin
---
kernel/bpf/arraymap.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/kernel/bpf/arraymap.c b/kernel/bpf/arraymap.c
index c6c81eceb68f..d837e0603c89
Extend xskmap memory accounting to include the memory taken by
the xsk_map_node structure.
Signed-off-by: Roman Gushchin
---
net/xdp/xskmap.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/net/xdp/xskmap.c b/net/xdp/xskmap.c
index 66231ba6c348..9fff1e6dc9cd 100644
---
To gather all direct accesses to struct page's memcg_data field in one
place, let's introduce 3 new helpers to use in the slab accounting code:
struct obj_cgroup **page_objcgs(struct page *page);
struct obj_cgroup **page_objcgs_check(struct page *page);
bool set_page_objcgs(struct page
Include internal metadata into the memcg-based memory accounting.
Also include the memory allocated on updating an element.
Signed-off-by: Roman Gushchin
---
net/core/sock_map.c | 9 +
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/net/core/sock_map.c
Remove rlimit-based accounting infrastructure code, which is not used
anymore.
To provide a backward compatibility, use an approximation of the
bpf map memory footprint as a "memlock" value, available to a user
via map info. The approximation is based on the maximal number of
elements and key and
On Tue, Dec 01, 2020 at 06:54:28PM +0100, Greg Kroah-Hartman wrote:
> On Tue, Dec 01, 2020 at 09:45:43AM -0800, mark gross wrote:
> > On Tue, Dec 01, 2020 at 11:13:05AM +0100, Greg Kroah-Hartman wrote:
> > > On Mon, Nov 30, 2020 at 03:06:52PM -0800, mgr...@linux.intel.com wrote:
> > > > From:
Since bpf is not using rlimit memlock for the memory accounting
and control, do not change the limit in sample applications.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
samples/bpf/map_perf_test_user.c| 6 --
samples/bpf/offwaketime_user.c | 6 --
Do not use rlimit-based memory accounting for xskmap maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
net/xdp/xskmap.c | 12 ++--
1 file changed, 2 insertions(+), 10 deletions(-)
diff --git a/net/xdp/xskmap.c
Include lpm trie and lpm trie node objects into the memcg-based memory
accounting.
Signed-off-by: Roman Gushchin
---
kernel/bpf/lpm_trie.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/kernel/bpf/lpm_trie.c b/kernel/bpf/lpm_trie.c
index 00e32f2ec3e6..1a6981203d7f
Do not use rlimit-based memory accounting for sockmap and sockhash maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
net/core/sock_map.c | 33 ++---
1 file changed, 6 insertions(+), 27
Patch series "mm: allow mapping accounted kernel pages to userspace", v6.
Currently a non-slab kernel page which has been charged to a memory cgroup
can't be mapped to userspace. The underlying reason is simple: PageKmemcg
flag is defined as a page type (like buddy, offline, etc), so it takes a
Do not use rlimit-based memory accounting for hashtab maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
kernel/bpf/hashtab.c | 19 +--
1 file changed, 1 insertion(+), 18 deletions(-)
diff --git
Do not use rlimit-based memory accounting for queue_stack maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
kernel/bpf/queue_stack_maps.c | 16
1 file changed, 4 insertions(+), 12 deletions(-)
diff --git
Enable the memcg-based memory accounting for the memory used by
the bpf ringbuffer.
Signed-off-by: Roman Gushchin
---
kernel/bpf/ringbuf.c | 11 ---
1 file changed, 4 insertions(+), 7 deletions(-)
diff --git a/kernel/bpf/ringbuf.c b/kernel/bpf/ringbuf.c
index 31cb04a4dd2d..8983a46f6580
Do not use rlimit-based memory accounting for devmap maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
kernel/bpf/devmap.c | 18 ++
1 file changed, 2 insertions(+), 16 deletions(-)
diff --git
Do not use rlimit-based memory accounting for bpf ringbuffer.
It has been replaced with the memcg-based memory accounting.
bpf_ringbuf_alloc() can't return anything except ERR_PTR(-ENOMEM)
and a valid pointer, so to simplify the code make it return NULL
in the first case. This allows to drop a
Account memory used by bpf local storage maps:
per-socket, per-inode and per-task storages.
Signed-off-by: Roman Gushchin
---
kernel/bpf/bpf_local_storage.c | 10 ++
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/kernel/bpf/bpf_local_storage.c
Bpf maps can be updated from an interrupt context and in such
case there is no process which can be charged. It makes the memory
accounting of bpf maps non-trivial.
Fortunately, after commit 4127c6504f25 ("mm: kmem: enable kernel
memcg accounting from interrupt contexts") and commit b87d8cefe43c
Do not use rlimit-based memory accounting for cgroup storage maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
kernel/bpf/local_storage.c | 21 +
1 file changed, 1 insertion(+), 20 deletions(-)
diff
Do not use rlimit-based memory accounting for bpf progs. It has been
replaced with memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
include/linux/bpf.h | 11 ---
kernel/bpf/core.c| 12 ++--
kernel/bpf/syscall.c | 69
Do not use rlimit-based memory accounting for arraymap maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
kernel/bpf/arraymap.c | 24
1 file changed, 4 insertions(+), 20 deletions(-)
diff --git
Do not use rlimit-based memory accounting for bpf local storage maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
kernel/bpf/bpf_local_storage.c | 10 --
1 file changed, 10 deletions(-)
diff --git
Do not use rlimit-based memory accounting for cpumap maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
kernel/bpf/cpumap.c | 16 +---
1 file changed, 1 insertion(+), 15 deletions(-)
diff --git
Do not use rlimit-based memory accounting for lpm_trie maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
kernel/bpf/lpm_trie.c | 13 -
1 file changed, 13 deletions(-)
diff --git a/kernel/bpf/lpm_trie.c
Include percpu objects and the size of map metadata into the
accounting.
Signed-off-by: Roman Gushchin
---
kernel/bpf/hashtab.c | 24 ++--
1 file changed, 14 insertions(+), 10 deletions(-)
diff --git a/kernel/bpf/hashtab.c b/kernel/bpf/hashtab.c
index
Do not use rlimit-based memory accounting for bpf_struct_ops maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
kernel/bpf/bpf_struct_ops.c | 19 +++
1 file changed, 3 insertions(+), 16 deletions(-)
diff
Include metadata and percpu data into the memcg-based memory
accounting.
Signed-off-by: Roman Gushchin
---
kernel/bpf/cpumap.c | 21 -
1 file changed, 12 insertions(+), 9 deletions(-)
diff --git a/kernel/bpf/cpumap.c b/kernel/bpf/cpumap.c
index c61a23b564aa..90b94905
Do not use rlimit-based memory accounting for stackmap maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
kernel/bpf/stackmap.c | 16 +++-
1 file changed, 3 insertions(+), 13 deletions(-)
diff --git
Include map metadata and the node size (struct bpf_dtab_netdev)
into the accounting.
Signed-off-by: Roman Gushchin
---
kernel/bpf/devmap.c | 7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/kernel/bpf/devmap.c b/kernel/bpf/devmap.c
index 2b5ca93c17de..b43ab247302d 100644
Currently bpf is using the memlock rlimit for the memory accounting.
This approach has its downsides and over time has created a significant
amount of problems:
1) The limit is per-user, but because most bpf operations are performed
as root, the limit has a little value.
2) It's hard to come
Do not use rlimit-based memory accounting for reuseport_array maps.
It has been replaced with the memcg-based memory accounting.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
---
kernel/bpf/reuseport_array.c | 12 ++--
1 file changed, 2 insertions(+), 10 deletions(-)
diff --git
Account memory used by cgroup storage maps including metadata
structures.
Account the percpu memory for the percpu flavor of cgroup storage.
Signed-off-by: Roman Gushchin
---
kernel/bpf/local_storage.c | 23 +++
1 file changed, 11 insertions(+), 12 deletions(-)
diff --git
The lowest bit in page->memcg_data is used to distinguish between struct
memory_cgroup pointer and a pointer to a objcgs array. All checks and
modifications of this bit are open-coded.
Let's formalize it using page memcg flags, defined in enum
page_memcg_data_flags.
Additional flags might be
PageKmemcg flag is currently defined as a page type (like buddy, offline,
table and guard). Semantically it means that the page was accounted as a
kernel memory by the page allocator and has to be uncharged on the
release.
As a side effect of defining the flag as a page type, the accounted page
Include memory used by bpf programs into the memcg-based accounting.
This includes the memory used by programs itself, auxiliary data,
statistics and bpf line info. A memory cgroup containing the
process which loads the program is getting charged.
Signed-off-by: Roman Gushchin
Acked-by: Song Liu
Hi Loic,
On 12/1/20 10:04 AM, Jeffrey Hugo wrote:
On 12/1/2020 11:05 AM, Loic Poulain wrote:
On Tue, 1 Dec 2020 at 18:51, Jeffrey Hugo wrote:
On 12/1/2020 10:52 AM, Loic Poulain wrote:
On Tue, 1 Dec 2020 at 18:37, Jeffrey Hugo wrote:
On 12/1/2020 10:36 AM, Loic Poulain wrote:
On Tue, 1
When enabling multicast snooping, bridge module deadlocks on multicast_lock
if 1) IPv6 is enabled, and 2) there is an existing querier on the same L2
network.
The deadlock was caused by the following sequence: While holding the lock,
br_multicast_open calls br_multicast_join_snoopers, which
On 12/1/20 2:44 PM, Stephen Rothwell wrote:
> Hi Jens,
>
> On Tue, 1 Dec 2020 14:09:24 -0700 Jens Axboe wrote:
>>
>> On 12/1/20 2:02 PM, Stephen Rothwell wrote:
>>>
>>> In commit
>>>
>>> 573cc9d095bc ("blk-cgroup: fix a hd_struct leak in
>>> blkcg_fill_root_iostats")
>>>
>>> Fixes tag
>>>
>>>
On Tue, Dec 1, 2020 at 1:28 PM Will Deacon wrote:
>
> On Mon, Nov 30, 2020 at 10:31:51AM -0800, Andy Lutomirski wrote:
> > other arch folk: there's some background here:
> >
> > https://lkml.kernel.org/r/calcetrvxube8lfnn-qs+dzroqaiw+sfug1j047ybyv31sat...@mail.gmail.com
> >
> > On Sun, Nov 29,
301 - 400 of 1953 matches
Mail list logo