Re: cleanup the RAID5 XOR library v4

Andrew Morton <[email protected]>
Newsgroups gmane.linux.ports.alpha,gmane.linux.kernel,gmane.linux.ports.arm.kernel,gmane.linux.ports.ppc64.devel,gmane.linux.ports.riscv,gmane.linux.ports.sparc,gmane.linux.uml.devel,gmane.linux.kernel.cryptoapi,gmane.comp.file-systems.btrfs,gmane.linux.kernel.cross-arch,gmane.linux.raid
Message-ID <[email protected]>
On Sun, 29 Mar 2026 14:31:19 -0700 Eric Biggers <[email protected]> wrote:

> On Fri, Mar 27, 2026 at 07:16:32AM +0100, Christoph Hellwig wrote:
> > Hi all,
> > 
> > the XOR library used for the RAID5 parity is a bit of a mess right now.
> > The main file sits in crypto/ despite not being cryptography and not
> > using the crypto API, with the generic implementations sitting in
> > include/asm-generic and the arch implementations sitting in an asm/
> > header in theory.  The latter doesn't work for many cases, so
> > architectures often build the code directly into the core kernel, or
> > create another module for the architecture code.
> > 
> > Changes this to a single module in lib/ that also contains the
> > architecture optimizations, similar to the library work Eric Biggers
> > has done for the CRC and crypto libraries later.  After that it changes
> > to better calling conventions that allow for smarter architecture
> > implementations (although none is contained here yet), and uses
> > static_call to avoid indirection function call overhead.
> > 
> > A git tree is also available here:
> > 
> >     git://git.infradead.org/users/hch/misc.git xor-improvements
> > 
> > Gitweb:
> > 
> >     https://git.infradead.org/?p=users/hch/misc.git;a=shortlog;h=refs/heads/xor-improvements
> > 
> > Changes since v3:
> >  - switch away from lockdep_assert_preemption_enabled() again
> >  - fix a @ reference in a kerneldoc comment.
> >  - build the arm4regs implementation also without kernel-mode neon
> >    support
> >  - fix a pre-existing issue about mismatched attributes on arm64's
> >    xor_block_inner_neon
> >  - reject 0-sized xor request and adjust the kunit test case to not
> >    generate them
> 
> Reviewed-by: Eric Biggers <[email protected]>

Great, thanks, added to all changelogs.

> But yes, as Andrew mentioned there are two "xor: add a better public
> API" patches.  They should be folded together.

I folded them.

I'm a bit wobbly about upstreaming all this for 7.1-rc1.  It hits on a
lot of stuff and I don't think we've heard a lot from the affected
maintainers.

otoh, we're unlikely to learn much from an additional nine weeks in
linux-next so at some point one has to forge ahead and rely on seven
weeks of -rc to address any remaining niggles.  And I'm confident that
Christoph will support his work well.

But still, hearing some reassuring words about this would be
appreciated ;)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.