Re: [PATCH v4 06/15] fs,fork,exit: export symbols necessary for KUnit UAPI support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jul 16, 2025 at 04:36:38AM -0700, Christoph Hellwig wrote:
> On Wed, Jul 16, 2025 at 01:33:05PM +0200, Thomas Weißschuh wrote:
> > On Wed, Jul 16, 2025 at 04:11:04AM -0700, Christoph Hellwig wrote:
> > > On Wed, Jul 16, 2025 at 10:39:57AM +0200, Thomas Weißschuh wrote:
> > > > Let's take kernel_execve() as example, there is no way around using this
> > > > function in one way or another. It only has two existing callers.
> > > > init/main.c: It is completely unsuitable for this usecase.
> > > > kernel/umh.c: It is also what Al suggested and I am all for it.
> > > > Unfortunately it is missing features. Citation from my response to Al:
> > > 
> > > But why does the code that calls it need to be modular?  I get why
> > > the actual test cases should be modular, but the core test runner is
> > > small and needs a lot of kernel internals.  Just require it to be
> > > built-in and all this mess goes away.
> > 
> > KUnit UAPI calls into KUnit proper which itself is modular.
> > As such it needs to be modular, too.
> 
> Not if you depend on KUNIT=y.

This is exactly what I did in the beginning. Then I got told about the distros
using KUNIT=m [0] and decided that it does make sense to support.
We'd have this discussion sooner or later. But I'm still not sure what
difference an in-tree-module-specific export should make.

> > > That being said some of this stuff, like get_fs_type / put_filesystem
> > > or replace_fd seem like the wrong level of abstractions for something
> > > running tests anyway.
> > 
> > This was modelled after usermode helper and usermode driver.
> > To me it makes sense, and I don't see an obvious way to get rid of these.
> > 
> > Or do you mean to introduce a new in-core helper to abstract this away?
> > Then everybody would need to pay the cost for this helper even if it is only
> > used from some modular code.
> 
> I have no idea what you are doing as you only Cc'ed the exports patch
> but not the actual work to the mailing lists, so I have no way of
> helping you with the actual code.  I can just tell you my gut feeling
> based on the symbols, and they are something that doesn't feel outside
> of very core code.

The actual code using these exports [1] was Cc'ed to both linux-fsdevel and
linux-mm. In addition to the cover-letter and the exports patch.
The rest of the series does not interact with the exports at all.

[0] https://lore.kernel.org/all/CABVgOSmdcOZ0+-k=SM4LibOVMKtcbF27p6N40kuDX_axTPZ=QQ@xxxxxxxxxxxxxx/
[1] https://lore.kernel.org/lkml/20250626-kunit-kselftests-v4-12-48760534fef5@xxxxxxxxxxxxx/


Thomas




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux