On Thu, Feb 06, 2025 at 08:56:47PM +0100, Luca Weiss wrote:
> From: Matti Lehtimäki
>
> Support platforms such as MSM8226 and MSM8974 with only one power rail
> (CX) modelled as power domain while MX and PX are regulators.
>
> Signed-off-by: Matti Lehtimäki
> [luca: reword commit message, expan
On 04.10.24 21:00, Gabriel Krisman Bertazi wrote:
> Pedro Orlando writes:
>> From: Gabriela Bittencourt
>>
>> Change utf8 kunit test filename and path to follow the style
>> convention on Documentation/dev-tools/kunit/style.rst
>>
>> Co-developed-by: Pedro Orlando
>> Signed-off-by: Pedro Orlando
On Tue, Dec 10, 2024 at 11:33:31AM +0100, Arnaud POULIQUEN wrote:
>
>
> On 12/10/24 00:14, Bjorn Andersson wrote:
> > On Thu, Nov 28, 2024 at 09:42:10AM GMT, Arnaud Pouliquen wrote:
> >> This patch updates the rproc_ops structures to include two new optional
> >> operations.
> >>
> >> - The load_
On Tue, Dec 10, 2024 at 09:57:40AM +0100, Arnaud POULIQUEN wrote:
> Hello Bjorn,
>
> On 12/6/24 23:07, Bjorn Andersson wrote:
> > On Thu, Nov 28, 2024 at 09:42:09AM GMT, Arnaud Pouliquen wrote:
> >> Add a remoteproc TEE (Trusted Execution Environment) driver
> >> that will be probed by the TEE bus
On Tue, 11 Feb 2025 15:10:52 -0800 Stanislav Fomichev wrote:
> > I can't comment on NIPA because I have no idea how it works. Maybe
> > there is a kernel with some options enabled and other kernels with
> > various options disabled?
>
> Sorry, should've been more clear. My suggestion is to add
On 11 Feb 2025, at 19:57, Zi Yan wrote:
> On 11 Feb 2025, at 10:50, Zi Yan wrote:
>
>> It is a preparation patch for non-uniform folio split, which always split
>> a folio into half iteratively, and minimal xarray entry split.
>>
>> Currently, xas_split_alloc() and xas_split() always split all slo
On 2/7/25 12:41 PM, Dongli Zhang wrote:
> @@ -378,6 +384,11 @@ static void vhost_scsi_release_tmf_res(struct
> vhost_scsi_tmf *tmf)
> {
> struct vhost_scsi_inflight *inflight = tmf->inflight;
>
> + if (tmf->tmf_log_num) {
> + kfree(tmf->tmf_log);
> + tmf->tmf_l
On 11 Feb 2025, at 10:50, Zi Yan wrote:
> It is a preparation patch for non-uniform folio split, which always split
> a folio into half iteratively, and minimal xarray entry split.
>
> Currently, xas_split_alloc() and xas_split() always split all slots from a
> multi-index entry. They cost the sam
Hello:
This series was applied to bpf/bpf-next.git (master)
by Andrii Nakryiko :
On Fri, 31 Jan 2025 12:35:21 +0530 you wrote:
> Since commit 7e92e01b7245 ("powerpc: Provide syscall wrapper")
> landed in v6.1, syscall wrapper is enabled on powerpc. Commit
> 94746890202c ("powerpc: Don't add __pow
On 2/11/25 16:32, andrzej zaborowski wrote:
>> Actually, now that I think about it even more, why would ETRACK or
>> EBLOCK access the page itself? They seem superficially like they'd be
>> metadata-only too.
> I haven't seen a crash in either of these (always in EWB), I didn't
> want to imply that
On Wed, 12 Feb 2025 at 00:31, Dave Hansen wrote:
> On 2/11/25 13:18, Huang, Kai wrote:
> >>> This requires low-level SGX implementation knowledge to fully
> >>> understand. Both what "ETRACK, EBLOCK and EWB" are in the first place,
> >>> how they are involved in reclaim and also why EREMOVE doesn'
Hello:
This patch was applied to netdev/net-next.git (main)
by Jakub Kicinski :
On Sat, 08 Feb 2025 14:26:43 -0500 you wrote:
> Convert this very simple smoke test to a KUnit test.
>
> Add a missing `htons` call that was spotted[0] by kernel test robot
> after initial conversion to KUnit.
>
>
On Tue, 11 Feb 2025 at 17:25, Dave Hansen wrote:
> git log arch/x86/kernel/cpu/sgx/
>
> That usually works for every little nook and cranny of the kernel and
> will show you what the subject rules are.
>
> Could you do that for this patch for v2, please?
My bad, I'll use x86/sgx: ...
>
>
On 2/11/25 13:18, Huang, Kai wrote:
>>> This requires low-level SGX implementation knowledge to fully
>>> understand. Both what "ETRACK, EBLOCK and EWB" are in the first place,
>>> how they are involved in reclaim and also why EREMOVE doesn't lead to
>>> the same fate.
>>
>> Does it? [I'll dig up I
On Wed, Feb 12, 2025 at 10:18:11AM +1300, Huang, Kai wrote:
>
>
> On 12/02/2025 10:03 am, Jarkko Sakkinen wrote:
> > On Tue, Feb 11, 2025 at 08:25:58AM -0800, Dave Hansen wrote:
> > > > arch_memory_failure() but stay on sgx_active_page_list.
> > > > page->poison is not checked in the reclaimer lo
On 02/11, Joe Damato wrote:
> On Tue, Feb 11, 2025 at 12:00:38PM -0800, Stanislav Fomichev wrote:
> > On 02/11, Joe Damato wrote:
> > > On Tue, Feb 11, 2025 at 09:45:56AM -0800, Joe Damato wrote:
> > > > On Tue, Feb 11, 2025 at 12:09:50PM +0100, Paolo Abeni wrote:
> > > > > On 2/10/25 8:38 PM, Joe
On Tue, Feb 11, 2025 at 5:38 PM Boqun Feng wrote:
>
> Hi Tamir,
Hi Boqun, thanks for taking a look.
> On Mon, Feb 10, 2025 at 10:59:12AM -0500, Tamir Duberstein wrote:
> > Convert this unit test to a KUnit test.
> >
>
> I would like to know the pros and cons between kunit tests and
> kselftests,
Hi Tamir,
On Mon, Feb 10, 2025 at 10:59:12AM -0500, Tamir Duberstein wrote:
> Convert this unit test to a KUnit test.
>
I would like to know the pros and cons between kunit tests and
kselftests, maybe someone Cced can answer that? It'll be good to put
these in the commit log as well.
Regards,
B
From: "Joel Fernandes"
The rcu_seq_done() API has a large "false-negative" windows of size
ULONG_MAX/2, where after wrap around, it is possible that it will think
that a GP has not completed if a wrap around happens and the delta is
large.
One place this might cause a possible problem is SRCU:
On Tue, Feb 11, 2025 at 12:00:38PM -0800, Stanislav Fomichev wrote:
> On 02/11, Joe Damato wrote:
> > On Tue, Feb 11, 2025 at 09:45:56AM -0800, Joe Damato wrote:
> > > On Tue, Feb 11, 2025 at 12:09:50PM +0100, Paolo Abeni wrote:
> > > > On 2/10/25 8:38 PM, Joe Damato wrote:
[...]
> > > >
> > > >
module_add_driver() relies on module_kset list for
/sys/module//drivers directory creation.
Since,
commit 96a1a2412acba ("kernel/params.c: defer most of param_sysfs_init() to
late_initcall time")
drivers which are initialized from subsys_initcall() or any other
higher precedence initcall couldn't
The locate_module_kobject() function looks up an existing
module_kobject for a given module name. If it cannot find the
corresponding module_kobject, it creates one for the given name.
This commit renames locate_module_kobject() to
lookup_or_create_module_kobject() to better describe its operation
In the unlikely event of the allocation failing, it is better to let
the machine boot with a not fully populated sysfs than to kill it with
this BUG_ON(). All callers are already prepared for
lookup_or_create_module_kobject() returning NULL.
This is also preparation for calling this function from
lookup_or_create_module_kobject() is marked as static and __init,
to make it global drop static keyword.
Since this function can be called from non-init code, use __modinit
instead of __init, __modinit marker will make it __init if
CONFIG_MODULES is not defined.
Suggested-by: Rasmus Villemoes
Sig
Hi Everyone,
This patch series fixes handling of module_kobject creation.
A driver expect module_kset list populated with its corresponding
module_kobject to create its /sys/module//drivers
directory.
Since,
[1] commit 96a1a2412acb ("kernel/params.c: defer most of param_sysfs_init() to
late_init
On 12/02/2025 10:03 am, Jarkko Sakkinen wrote:
On Tue, Feb 11, 2025 at 08:25:58AM -0800, Dave Hansen wrote:
arch_memory_failure() but stay on sgx_active_page_list.
page->poison is not checked in the reclaimer logic meaning that a page could be
reclaimed and go through ETRACK, EBLOCK and EWB.
On Tue, Feb 11, 2025 at 08:25:58AM -0800, Dave Hansen wrote:
> > arch_memory_failure() but stay on sgx_active_page_list.
> > page->poison is not checked in the reclaimer logic meaning that a page
> > could be
> > reclaimed and go through ETRACK, EBLOCK and EWB. This can lead to the
> > firmware r
"Gary Guo" writes:
> On Tue, 11 Feb 2025 16:57:36 +0100
> Andreas Hindborg wrote:
>
>> The `Index` implementation on `BStr` was lost when we switched `BStr` from
>> a type alias of `[u8]` to a newtype. This patch adds back `Index` by
>> implementing `Index` for `BStr` when `Index` would be imple
"Gary Guo" writes:
> On Tue, 11 Feb 2025 16:57:39 +0100
> Andreas Hindborg wrote:
>
>> Add the trait `ParseInt` for parsing string representations of integers
>> where the string representations are optionally prefixed by a radix
>> specifier. Implement the trait for the primitive integer types.
On 02/11, Joe Damato wrote:
> On Tue, Feb 11, 2025 at 09:45:56AM -0800, Joe Damato wrote:
> > On Tue, Feb 11, 2025 at 12:09:50PM +0100, Paolo Abeni wrote:
> > > On 2/10/25 8:38 PM, Joe Damato wrote:
> > > > +def check_xdp(cfg, nl, xdp_queue_id=0) -> None:
> > > > +test_dir = os.path.dirname(os.
On Tue, Feb 11, 2025 at 09:45:56AM -0800, Joe Damato wrote:
> On Tue, Feb 11, 2025 at 12:09:50PM +0100, Paolo Abeni wrote:
> > On 2/10/25 8:38 PM, Joe Damato wrote:
> > > +def check_xdp(cfg, nl, xdp_queue_id=0) -> None:
> > > +test_dir = os.path.dirname(os.path.realpath(__file__))
> > > +xd
On Sun, 9 Feb 2025 16:47:44 +0200
Andy Shevchenko wrote:
> On Sat, Feb 08, 2025 at 04:13:24PM -0500, Aren Moynihan wrote:
> > Using dev_err_probe instead of dev_err and return makes the errors
>
> Use dev_err_probe()
> dev_err()
>
> > easier to understand by including the error name, and save
Add an overlay file to configure PCIe1 to function as an endpoint. Enable
PCIe1 to work as endpoint mode on the imx95-19x19-evk platform.
Signed-off-by: Frank Li
---
change from v14 to v15
- none
change from v13 to v14
- new patch
---
arch/arm64/boot/dts/freescale/Makefile | 3 +++
Add msi-map for pci-ep device.
Signed-off-by: Frank Li
---
change from v14 to v15
- none
change from v13 to v14
- new patch
---
arch/arm64/boot/dts/freescale/imx95.dtsi | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm64/boot/dts/freescale/imx95.dtsi
b/arch/arm64/boot/dts/freescale/
Support only one physical function, so call imx_pcie_add_lut_by_rid(0)
to add a single LUT entry when operating in EP mode.
Signed-off-by: Frank Li
---
change from v14 to v15
- none
change from v13 to v14
- new patch
---
drivers/pci/controller/dwc/pci-imx6.c | 8 +++-
1 file changed, 7 inse
Add helper function imx_pcie_add_lut_by_rid(), which will be used for
Endpoint mode in the future. No functional change.
Signed-off-by: Frank Li
---
change from v14 to v15
- none
change from v13 to v14
- new patch
---
drivers/pci/controller/dwc/pci-imx6.c | 17 ++---
1 file changed,
Add doorbell test case.
Signed-off-by: Frank Li
---
change from v14 to v15
- none
change from v13 to v14
- merge to selftests framework
---
.../selftests/pci_endpoint/pci_endpoint_test.c | 25 ++
1 file changed, 25 insertions(+)
diff --git a/tools/testing/selftests/pci_
Add three registers: PCIE_ENDPOINT_TEST_DB_BAR, PCIE_ENDPOINT_TEST_DB_ADDR,
and PCIE_ENDPOINT_TEST_DB_DATA.
Trigger the doorbell by writing data from PCI_ENDPOINT_TEST_DB_DATA to the
address provided by PCI_ENDPOINT_TEST_DB_OFFSET and wait for endpoint
feedback.
Add two command to COMMAND_ENABLE_
Introduce the helper function pci_epf_align_inbound_addr() to adjust
addresses according to PCI BAR alignment requirements, converting addresses
into base and offset values.
Signed-off-by: Frank Li
---
Change form v14 to v15
- change out address type to dma_addr_t to fix below build issue
| Repo
Add three registers: doorbell_bar, doorbell_addr, and doorbell_data. Use
pci_epf_alloc_doorbell() to allocate a doorbell address space.
Enable the Root Complex (RC) side driver to trigger pci-epc-test's doorbell
callback handler by writing doorbell_data to the mapped doorbell_bar's
address space.
Some MSI controller change address/data pair when irq_set_affinity().
Current PCI endpoint can't support this type MSI controller. So add flag
MSI_FLAG_MUTABLE in include/linux/msi.h and check it when allocate
doorbell.
Signed-off-by: Frank Li
---
change from v14 to v15
- none
change from v13 t
Doorbell feature is implemented by mapping the EP's MSI interrupt
controller message address to a dedicated BAR in the EPC core. It is the
responsibility of the EPF driver to pass the actual message data to be
written by the host to the doorbell BAR region through its own logic.
Tested-by: Niklas
Set device ID as 'vfunc_no << 3 | func_no' and use
'device_set_of_node_from_dev()' to set 'of_node' the same as the EPC parent
device.
Currently, EPF 'of_node' is NULL, but many functions depend on 'of_node'
settings, such as DMA, IOMMU, and MSI. At present, all DMA allocation
functions use the EP
Some platform devices create child devices dynamically and require the
parent device's msi-map to map device IDs to actual sideband information.
A typical use case is using ITS as a PCIe Endpoint Controller(EPC)'s
doorbell function, where PCI hosts send TLP memory writes to the EP
controller. The
Set the IRQ_DOMAIN_FLAG_MSI_IMMUTABLE flag for ITS, as it does not change
the address/data pair after setup.
Ensure compatibility with MSI users, such as PCIe Endpoint Doorbell, which
require the address/data pair to remain unchanged. Enable PCIe endpoints to
use ITS for triggering doorbells from
Add the flag IRQ_DOMAIN_FLAG_MSI_IMMUTABLE and the API function
irq_domain_is_msi_immutable() to check if the MSI controller retains an
immutable address/data pair during irq_set_affinity().
Ensure compatibility with MSI users like PCIe Endpoint Doorbell, which
require the address/data pair to rem
┌┐ ┌───┐ ┌┐
││ │ │ ││
││ │ PCI Endpoint │ │ PCI Host │
││ │ │ │
The follow steps trigger kernel dump warning and
platform_device_msi_init_and_alloc_irqs() return false.
1: platform_device_msi_init_and_alloc_irqs();
2: platform_device_msi_free_irqs_all();
3: platform_device_msi_init_and_alloc_irqs();
[ 76.713677] WARNING: CPU: 3 PID: 134 at kernel/irq/msi.c:
On Tue, Feb 11, 2025 at 6:34 AM Tamir Duberstein wrote:
>
> https://lore.kernel.org/all/20250210-printf-kunit-convert-v3-1-ee6ac5500...@gmail.com/
>
> Weirdly the cover letter seems to be missing on lore, should I resend?
It's there now.
https://lore.kernel.org/all/20250210-printf-kunit-convert-v
On Tue, Feb 11, 2025 at 02:16:20PM -0400, Jason Gunthorpe wrote:
> On Sat, Feb 08, 2025 at 01:02:39AM -0800, Nicolin Chen wrote:
>
> > +static struct iommufd_attach_handle *
> > +iommu_group_get_iommufd_handle(struct iommu_group *group)
> > +{
> > + struct iommu_attach_handle *handle;
> > +
> >
On 2/11/25 17:28, Geert Uytterhoeven wrote:
> Hi Vlastimil,
>
> On Tue, 11 Feb 2025 at 17:09, Vlastimil Babka wrote:
>> On 2/11/25 16:19, Geert Uytterhoeven wrote:
>> > On Tue, 11 Feb 2025 at 15:58, Vlastimil Babka wrote:
>> >> On 2/11/25 11:48, Geert Uytterhoeven wrote:
>> >> I've tried to do t
On Tue, 11 Feb 2025 10:32:55 +0100 "Arnd Bergmann" wrote:
> On Tue, Feb 11, 2025, at 10:23, Naresh Kamboju wrote:
> > Regressions on arm64 Juno-r2 device while running LTP syscalls tests
> > madvise01 warnings on the Linux next-20250210 tag.
> >
> > First seen on next-20250210
> > Good: next-2025
On Sat, Feb 08, 2025 at 01:02:39AM -0800, Nicolin Chen wrote:
> +static struct iommufd_attach_handle *
> +iommu_group_get_iommufd_handle(struct iommu_group *group)
> +{
> + struct iommu_attach_handle *handle;
> +
> + handle = iommu_attach_handle_get(group, IOMMU_NO_PASID, 0);
> + if (I
On Tue, Feb 11, 2025 at 12:16 PM Andy Shevchenko
wrote:
>
> On Tue, Feb 11, 2025 at 11:02:59AM -0500, Tamir Duberstein wrote:
> > On Tue, Feb 11, 2025 at 10:58 AM Andy Shevchenko
> > wrote:
> > > On Tue, Feb 11, 2025 at 10:50:33AM -0500, Tamir Duberstein wrote:
> > > > On Tue, Feb 11, 2025 at 10:
On Tue, Feb 11, 2025 at 12:09:50PM +0100, Paolo Abeni wrote:
> On 2/10/25 8:38 PM, Joe Damato wrote:
> > +def check_xdp(cfg, nl, xdp_queue_id=0) -> None:
> > +test_dir = os.path.dirname(os.path.realpath(__file__))
> > +xdp = subprocess.Popen([f"{test_dir}/xdp_helper", f"{cfg.ifindex}",
> >
On Tue, Feb 11, 2025 at 12:17 PM Andy Shevchenko
wrote:
>
> On Tue, Feb 11, 2025 at 10:57:11AM -0500, Tamir Duberstein wrote:
> > On Tue, Feb 11, 2025 at 10:54 AM Andy Shevchenko
> > wrote:
> > > On Tue, Feb 11, 2025 at 10:47:03AM -0500, Tamir Duberstein wrote:
> > > > On Tue, Feb 11, 2025 at 10:
On Tue, Feb 11, 2025 at 10:57:11AM -0500, Tamir Duberstein wrote:
> On Tue, Feb 11, 2025 at 10:54 AM Andy Shevchenko
> wrote:
> > On Tue, Feb 11, 2025 at 10:47:03AM -0500, Tamir Duberstein wrote:
> > > On Tue, Feb 11, 2025 at 10:40 AM Andy Shevchenko
> > > wrote:
> > > > On Tue, Feb 11, 2025 at 1
On Tue, Feb 11, 2025 at 11:02:59AM -0500, Tamir Duberstein wrote:
> On Tue, Feb 11, 2025 at 10:58 AM Andy Shevchenko
> wrote:
> > On Tue, Feb 11, 2025 at 10:50:33AM -0500, Tamir Duberstein wrote:
> > > On Tue, Feb 11, 2025 at 10:42 AM Andy Shevchenko
> > > wrote:
> > > > On Tue, Feb 11, 2025 at 1
On Tue, 11 Feb 2025 16:57:36 +0100
Andreas Hindborg wrote:
> The `Index` implementation on `BStr` was lost when we switched `BStr` from
> a type alias of `[u8]` to a newtype. This patch adds back `Index` by
> implementing `Index` for `BStr` when `Index` would be implemented for
> `[u8]`.
>
> Sig
On Tue, 11 Feb 2025 16:57:39 +0100
Andreas Hindborg wrote:
> Add the trait `ParseInt` for parsing string representations of integers
> where the string representations are optionally prefixed by a radix
> specifier. Implement the trait for the primitive integer types.
>
> Signed-off-by: Andreas
On Tue, Feb 11, 2025 at 11:38 AM Kees Cook wrote:
>
> On Tue, Feb 11, 2025 at 06:51:09AM -0500, Tamir Duberstein wrote:
> > Kees, it looks like the private header didn't make it to your tree.
> > This bit is missing:
>
> Whoops! Thanks. I've added it (and fixed the comment style).
>
> I really nee
On Tue, Feb 11, 2025 at 06:51:09AM -0500, Tamir Duberstein wrote:
> Kees, it looks like the private header didn't make it to your tree.
> This bit is missing:
Whoops! Thanks. I've added it (and fixed the comment style).
I really need to do my build/run testing from a fresh checkout instead
of in
Hi Vlastimil,
On Tue, 11 Feb 2025 at 17:09, Vlastimil Babka wrote:
> On 2/11/25 16:19, Geert Uytterhoeven wrote:
> > On Tue, 11 Feb 2025 at 15:58, Vlastimil Babka wrote:
> >> On 2/11/25 11:48, Geert Uytterhoeven wrote:
> >> I've tried to do that in v1 in the form of reporting e.g. as
> >> John D
I don't expect everyone to know the rules of every little part of the
kernel. But, it's really easy to see a pattern with:
git log arch/x86/kernel/cpu/sgx/
That usually works for every little nook and cranny of the kernel and
will show you what the subject rules are.
Could you do that fo
On 2/11/25 16:19, Geert Uytterhoeven wrote:
> Hi Vlastimil,
>
> On Tue, 11 Feb 2025 at 15:58, Vlastimil Babka wrote:
>> On 2/11/25 11:48, Geert Uytterhoeven wrote:
>> I've tried to do that in v1 in the form of reporting e.g. as
>> John Doe (maintainer:SUBSYSTEM [supported])
>>
>> But it seemed n
On Tue, Feb 11, 2025 at 11:06 AM Petr Mladek wrote:
>
> On Tue 2025-02-11 06:45:07, Tamir Duberstein wrote:
> > On Tue, Feb 11, 2025 at 6:37 AM Petr Mladek wrote:
> > >
> > > On Mon 2025-02-10 13:13:48, Tamir Duberstein wrote:
> > > > Convert the scanf() self-test to a KUnit test.
> > > >
> > > >
On Tue 2025-02-11 06:45:07, Tamir Duberstein wrote:
> On Tue, Feb 11, 2025 at 6:37 AM Petr Mladek wrote:
> >
> > On Mon 2025-02-10 13:13:48, Tamir Duberstein wrote:
> > > Convert the scanf() self-test to a KUnit test.
> > >
> > > In the interest of keeping the patch reasonably-sized this doesn't
>
On Tue, Feb 11, 2025 at 10:58 AM Andy Shevchenko
wrote:
>
> On Tue, Feb 11, 2025 at 10:50:33AM -0500, Tamir Duberstein wrote:
> > On Tue, Feb 11, 2025 at 10:42 AM Andy Shevchenko
> > wrote:
> > > On Tue, Feb 11, 2025 at 10:13:37AM -0500, Tamir Duberstein wrote:
> > > > The test already prints the
Implement `PartialEq` for `BStr` by comparing underlying byte slices.
Reviewed-by: Alice Ryhl
Reviewed-by: Gary Guo
Signed-off-by: Andreas Hindborg
---
rust/kernel/str.rs | 6 ++
1 file changed, 6 insertions(+)
diff --git a/rust/kernel/str.rs b/rust/kernel/str.rs
index 28e2201604d67..002d
This patch includes changes required for Rust kernel modules to utilize
module parameters. This code implements read only support for integer
types without `sysfs` support.
Signed-off-by: Andreas Hindborg
---
rust/kernel/lib.rs | 1 +
rust/kernel/module_param.rs | 225 ++
On 2/3/25 12:13, Vlastimil Babka wrote:
> The subsystem status is currently reported with --role(stats) by
> adjusting the maintainer role for any status different from Maintained.
> This has two downsides:
>
> - if a subsystem has only reviewers or mailing lists and no maintainers,
> the status
The `Index` implementation on `BStr` was lost when we switched `BStr` from
a type alias of `[u8]` to a newtype. This patch adds back `Index` by
implementing `Index` for `BStr` when `Index` would be implemented for
`[u8]`.
Signed-off-by: Andreas Hindborg
---
rust/kernel/str.rs | 11 +++
1
Add the trait `ParseInt` for parsing string representations of integers
where the string representations are optionally prefixed by a radix
specifier. Implement the trait for the primitive integer types.
Signed-off-by: Andreas Hindborg
---
rust/kernel/str.rs | 111 +++
Implement `strip_prefix` for `BStr` by deferring to `slice::strip_prefix`
on the underlying `&[u8]`.
Reviewed-by: Gary Guo
Reviewed-by: Alice Ryhl
Signed-off-by: Andreas Hindborg
---
It is also possible to get this method by implementing
`core::slice::SlicePattern` for `BStr`. `SlicePattern` i
Implement `AsRef` for `[u8]` and `BStr` so these can be used
interchangeably for operations on `BStr`.
Signed-off-by: Andreas Hindborg
---
rust/kernel/str.rs | 12
1 file changed, 12 insertions(+)
diff --git a/rust/kernel/str.rs b/rust/kernel/str.rs
index 1eb945bed77d6..389341455b9
This series extends the `module!` macro with support module parameters. It
also adds some string to integer parsing functions and updates `BStr` with
a method to strip a string prefix.
This series stated out as code by Adam Bratschi-Kaye lifted from the original
`rust` branch [1].
After a bit of
On Tue, Feb 11, 2025 at 10:50:33AM -0500, Tamir Duberstein wrote:
> On Tue, Feb 11, 2025 at 10:42 AM Andy Shevchenko
> wrote:
> > On Tue, Feb 11, 2025 at 10:13:37AM -0500, Tamir Duberstein wrote:
> > > The test already prints the same information on failure; remove
> > > redundant pr_debug() logs.
On Tue, Feb 11, 2025 at 10:54 AM Andy Shevchenko
wrote:
>
> On Tue, Feb 11, 2025 at 10:47:03AM -0500, Tamir Duberstein wrote:
> > On Tue, Feb 11, 2025 at 10:40 AM Andy Shevchenko
> > wrote:
> > > On Tue, Feb 11, 2025 at 10:13:36AM -0500, Tamir Duberstein wrote:
>
> ...
>
> > > > - Use original te
On Tue, Feb 11, 2025 at 10:47:03AM -0500, Tamir Duberstein wrote:
> On Tue, Feb 11, 2025 at 10:40 AM Andy Shevchenko
> wrote:
> > On Tue, Feb 11, 2025 at 10:13:36AM -0500, Tamir Duberstein wrote:
...
> > > - Use original test assertions as KUNIT_*_EQ_MSG produces hard-to-parse
> > > messages.
On Tue, Feb 11, 2025 at 10:42 AM Andy Shevchenko
wrote:
>
> On Tue, Feb 11, 2025 at 10:13:37AM -0500, Tamir Duberstein wrote:
> > The test already prints the same information on failure; remove
> > redundant pr_debug() logs.
>
> ...
>
> > #define _check_numbers_template(arg_fmt, expect, str, fmt,
Instead of splitting the large folio uniformly during truncation, try to
use buddy allocator like split at the start of truncation range to minimize
the number of resulting folios if it is supported. try_folio_split() is
introduced to use folio_split() if supported and fall back to uniform
split ot
It splits page cache folios to orders from 0 to 8 at different in-folio
offset.
Signed-off-by: Zi Yan
---
.../selftests/mm/split_huge_page_test.c | 34 +++
1 file changed, 27 insertions(+), 7 deletions(-)
diff --git a/tools/testing/selftests/mm/split_huge_page_test.c
b/to
This allows to test folio_split() by specifying an additional in folio
page offset parameter to split_huge_page debugfs interface.
Signed-off-by: Zi Yan
---
mm/huge_memory.c | 47 ++-
1 file changed, 34 insertions(+), 13 deletions(-)
diff --git a/mm/h
Now split_huge_page_to_list_to_order() uses the new backend split code in
__folio_split_without_mapping(), the old __split_huge_page() and
__split_huge_page_tail() can be removed.
Signed-off-by: Zi Yan
---
mm/huge_memory.c | 207 ---
1 file changed, 20
folio_split() splits a large folio in the same way as buddy allocator
splits a large free page for allocation. The purpose is to minimize the
number of folios after the split. For example, if user wants to free the
3rd subpage in a order-9 folio, folio_split() will split the order-9 folio
as:
O-0,
This is a preparation patch for folio_split().
In the upcoming patch folio_split() will share folio unmapping and
remapping code with split_huge_page_to_list_to_order(), so move the code
to a common function __folio_split() first.
Signed-off-by: Zi Yan
---
mm/huge_memory.c | 107 +++
This is a preparation patch, both added functions are not used yet.
The added __split_unmapped_folio() is able to split a folio with
its mapping removed in two manners: 1) uniform split (the existing way),
and 2) buddy allocator like split.
The added __split_folio_to_order() can split a folio int
It is a preparation patch for non-uniform folio split, which always split
a folio into half iteratively, and minimal xarray entry split.
Currently, xas_split_alloc() and xas_split() always split all slots from a
multi-index entry. They cost the same number of xa_node as the to-be-split
slots. For
Hi Matthew,
Can you please take a look at Patch 1 and let me know if the new xarray
function looks good to you? I will send __filemap_add_folio() and
shmem_split_large_entry() changes separately.
Hi all,
This patchset adds a new buddy allocator like (or non-uniform) large folio
split from a orde
Hi Uwe,
On Tue, 11 Feb 2025 at 16:09, Uwe Kleine-König
wrote:
> On Tue, Feb 11, 2025 at 11:48:13AM +0100, Geert Uytterhoeven wrote:
> > On Tue, 11 Feb 2025 at 11:32, Uwe Kleine-König
> > wrote:
> > > On Mon, Feb 03, 2025 at 12:13:16PM +0100, Vlastimil Babka wrote:
> > > > The subsystem status is
On Tue, Feb 11, 2025 at 10:40 AM Andy Shevchenko
wrote:
>
> On Tue, Feb 11, 2025 at 10:13:36AM -0500, Tamir Duberstein wrote:
> > This is one of just 3 remaining "Test Module" kselftests (the others
> > being bitmap and printf), the rest having been converted to KUnit. In
> > addition to the enclo
On Tue, Feb 11, 2025 at 04:24:07PM +0100, Michal Koutný wrote:
> On Thu, Jan 30, 2025 at 08:40:26PM +, Lorenzo Stoakes
> wrote:
> >
> > Signed-off-by: Lorenzo Stoakes
> > ---
> > include/uapi/linux/pidfd.h | 24 +
> > kernel/pid.c | 24 +++--
> > kernel/signal.c
On Tue, Feb 11, 2025 at 10:13:37AM -0500, Tamir Duberstein wrote:
> The test already prints the same information on failure; remove
> redundant pr_debug() logs.
...
> #define _check_numbers_template(arg_fmt, expect, str, fmt, n_args, ap)
> \
> do {
On Tue, Feb 11, 2025 at 10:13:36AM -0500, Tamir Duberstein wrote:
> This is one of just 3 remaining "Test Module" kselftests (the others
> being bitmap and printf), the rest having been converted to KUnit. In
> addition to the enclosed patch, please consider this an RFC on the
> removal of the "Tes
On Tue, Feb 11, 2025 at 9:47 AM Simon Horman wrote:
>
> On Fri, Feb 07, 2025 at 06:38:41PM -0500, Tamir Duberstein wrote:
> > Convert this very simple smoke test to a KUnit test.
>
> Hi Tamir,
>
> I think some text explaining why this change is being made is
> warranted here.
Hi Simon, I think th
On Thu, Jan 30, 2025 at 08:40:26PM +, Lorenzo Stoakes
wrote:
>
> Signed-off-by: Lorenzo Stoakes
> ---
> include/uapi/linux/pidfd.h | 24 +
> kernel/pid.c | 24 +++--
> kernel/signal.c| 106 ++---
> 3 files changed, 107
On 2/11/25 11:59, Vlastimil Babka wrote:
> On 2/11/25 11:48, Geert Uytterhoeven wrote:
>> Hi Uwe,
>>
>> On Tue, 11 Feb 2025 at 11:32, Uwe Kleine-König
>> wrote:
>>> On Mon, Feb 03, 2025 at 12:13:16PM +0100, Vlastimil Babka wrote:
>>> > The subsystem status is currently reported with --role(stats)
Convert the scanf() self-test to a KUnit test.
In the interest of keeping the patch reasonably-sized this doesn't
refactor the tests into proper parameterized tests - it's all one big
test case.
Reviewed-by: David Gow
Signed-off-by: Tamir Duberstein
---
MAINTAINERS |
Hi Vlastimil,
On Tue, 11 Feb 2025 at 15:58, Vlastimil Babka wrote:
> On 2/11/25 11:48, Geert Uytterhoeven wrote:
> > On Tue, 11 Feb 2025 at 11:32, Uwe Kleine-König
> > wrote:
> >> On Mon, Feb 03, 2025 at 12:13:16PM +0100, Vlastimil Babka wrote:
> >> > The subsystem status is currently reported w
Use `suite_init` and move some tests into `scanf_test_cases`. This
gives us nicer output in the event of a failure.
Reviewed-by: David Gow
Signed-off-by: Tamir Duberstein
---
lib/scanf_kunit.c | 94 ++-
1 file changed, 51 insertions(+), 43 del
1 - 100 of 137 matches
Mail list logo