2021-02-23 14:44:35

by Timo Rothenpieler

[permalink] [raw]
Subject: [PATCH] nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default

This follows what was done in 8c2fabc6542d9d0f8b16bd1045c2eda59bdcde13.
With the default being m, it's impossible to build the module into the
kernel.

Signed-off-by: Timo Rothenpieler <[email protected]>
---
fs/nfs/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/nfs/Kconfig b/fs/nfs/Kconfig
index e2a488d403a6..14a72224b657 100644
--- a/fs/nfs/Kconfig
+++ b/fs/nfs/Kconfig
@@ -127,7 +127,7 @@ config PNFS_BLOCK
config PNFS_FLEXFILE_LAYOUT
tristate
depends on NFS_V4_1 && NFS_V3
- default m
+ default NFS_V4

config NFS_V4_1_IMPLEMENTATION_ID_DOMAIN
string "NFSv4.1 Implementation ID Domain"
--
2.25.1


2021-02-23 14:58:50

by Trond Myklebust

[permalink] [raw]
Subject: Re: [PATCH] nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default

On Tue, 2021-02-23 at 15:19 +0100, Timo Rothenpieler wrote:
> This follows what was done in
> 8c2fabc6542d9d0f8b16bd1045c2eda59bdcde13.
> With the default being m, it's impossible to build the module into
> the
> kernel.
>
> Signed-off-by: Timo Rothenpieler <[email protected]>
> ---
>  fs/nfs/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/nfs/Kconfig b/fs/nfs/Kconfig
> index e2a488d403a6..14a72224b657 100644
> --- a/fs/nfs/Kconfig
> +++ b/fs/nfs/Kconfig
> @@ -127,7 +127,7 @@ config PNFS_BLOCK
>  config PNFS_FLEXFILE_LAYOUT
>         tristate
>         depends on NFS_V4_1 && NFS_V3
> -       default m
> +       default NFS_V4
>  

Let's just make that

default y

...and let the dependencies work out whether or not this needs to be a
'y', 'm' or 'N'. Tying it to NFS_V4 just makes the Kconfig harder to
read, with the result being the same anyway.

>  config NFS_V4_1_IMPLEMENTATION_ID_DOMAIN
>         string "NFSv4.1 Implementation ID Domain"

--
Trond Myklebust
Linux NFS client maintainer, Hammerspace
[email protected]


2021-02-23 15:00:10

by Timo Rothenpieler

[permalink] [raw]
Subject: Re: [PATCH] nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default

On 23.02.2021 15:51, Trond Myklebust wrote:
> On Tue, 2021-02-23 at 15:19 +0100, Timo Rothenpieler wrote:
>> This follows what was done in
>> 8c2fabc6542d9d0f8b16bd1045c2eda59bdcde13.
>> With the default being m, it's impossible to build the module into
>> the
>> kernel.
>>
>> Signed-off-by: Timo Rothenpieler <[email protected]>
>> ---
>>  fs/nfs/Kconfig | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/fs/nfs/Kconfig b/fs/nfs/Kconfig
>> index e2a488d403a6..14a72224b657 100644
>> --- a/fs/nfs/Kconfig
>> +++ b/fs/nfs/Kconfig
>> @@ -127,7 +127,7 @@ config PNFS_BLOCK
>>  config PNFS_FLEXFILE_LAYOUT
>>         tristate
>>         depends on NFS_V4_1 && NFS_V3
>> -       default m
>> +       default NFS_V4
>>
>
> Let's just make that
>
> default y
>
> ...and let the dependencies work out whether or not this needs to be a
> 'y', 'm' or 'N'. Tying it to NFS_V4 just makes the Kconfig harder to
> read, with the result being the same anyway.

Sure. Should I change the other two PNFS_ configs to default to y as
well while at it?


Attachments:
smime.p7s (4.39 kB)
S/MIME Cryptographic Signature

2021-02-23 15:05:31

by Trond Myklebust

[permalink] [raw]
Subject: Re: [PATCH] nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default

On Tue, 2021-02-23 at 15:54 +0100, Timo Rothenpieler wrote:
> On 23.02.2021 15:51, Trond Myklebust wrote:
> > On Tue, 2021-02-23 at 15:19 +0100, Timo Rothenpieler wrote:
> > > This follows what was done in
> > > 8c2fabc6542d9d0f8b16bd1045c2eda59bdcde13.
> > > With the default being m, it's impossible to build the module
> > > into
> > > the
> > > kernel.
> > >
> > > Signed-off-by: Timo Rothenpieler <[email protected]>
> > > ---
> > >   fs/nfs/Kconfig | 2 +-
> > >   1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/fs/nfs/Kconfig b/fs/nfs/Kconfig
> > > index e2a488d403a6..14a72224b657 100644
> > > --- a/fs/nfs/Kconfig
> > > +++ b/fs/nfs/Kconfig
> > > @@ -127,7 +127,7 @@ config PNFS_BLOCK
> > >   config PNFS_FLEXFILE_LAYOUT
> > >          tristate
> > >          depends on NFS_V4_1 && NFS_V3
> > > -       default m
> > > +       default NFS_V4
> > >  
> >
> > Let's just make that
> >
> >      default y
> >
> > ...and let the dependencies work out whether or not this needs to
> > be a
> > 'y', 'm' or 'N'. Tying it to NFS_V4 just makes the Kconfig harder
> > to
> > read, with the result being the same anyway.
>
> Sure. Should I change the other two PNFS_ configs to default to y as
> well while at it?
>

Oh hang on... Brain fart... I thought the dependency on NFS_V4_1 would
suffice to make the correct choice, but it looks like that is a 'bool'
and so it won't propagate the 'm' choice from NFS_V4. That is probably
why Christoph did the NFS_V4 default.

Never mind, then. Let's keep your first patch.

--
Trond Myklebust
Linux NFS client maintainer, Hammerspace
[email protected]


2021-03-16 22:58:14

by Nathan Chancellor

[permalink] [raw]
Subject: Re: [PATCH] nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default

On Tue, Feb 23, 2021 at 03:19:01PM +0100, Timo Rothenpieler wrote:
> This follows what was done in 8c2fabc6542d9d0f8b16bd1045c2eda59bdcde13.
> With the default being m, it's impossible to build the module into the
> kernel.
>
> Signed-off-by: Timo Rothenpieler <[email protected]>
> ---
> fs/nfs/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/nfs/Kconfig b/fs/nfs/Kconfig
> index e2a488d403a6..14a72224b657 100644
> --- a/fs/nfs/Kconfig
> +++ b/fs/nfs/Kconfig
> @@ -127,7 +127,7 @@ config PNFS_BLOCK
> config PNFS_FLEXFILE_LAYOUT
> tristate
> depends on NFS_V4_1 && NFS_V3
> - default m
> + default NFS_V4
>
> config NFS_V4_1_IMPLEMENTATION_ID_DOMAIN
> string "NFSv4.1 Implementation ID Domain"
> --
> 2.25.1
>

Hi all,

I bisected a new modpost warning that I see with 5.12-rc3 to this commit:

$ make -skj"$(nproc)" ARCH=mips CROSS_COMPILE=mipsel-linux- O=build/mipsel distclean defconfig all
...
WARNING: modpost: Symbol info of vmlinux is missing. Unresolved symbol check will be entirely skipped.
...

$ git bisect log
# bad: [1e28eed17697bcf343c6743f0028cc3b5dd88bf0] Linux 5.12-rc3
# good: [a38fd8748464831584a19438cbb3082b5a2dab15] Linux 5.12-rc2
git bisect start 'v5.12-rc3' 'v5.12-rc2'
# good: [f78d76e72a4671ea52d12752d92077788b4f5d50] Merge tag 'drm-fixes-2021-03-12-1' of git://anongit.freedesktop.org/drm/drm
git bisect good f78d76e72a4671ea52d12752d92077788b4f5d50
# bad: [420623430a7015ae9adab8a087de82c186bc9989] Merge tag 'erofs-for-5.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs
git bisect bad 420623430a7015ae9adab8a087de82c186bc9989
# good: [261410082d01f2f2d4fcd19abee6b8e84f399c51] Merge tag 'devprop-5.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
git bisect good 261410082d01f2f2d4fcd19abee6b8e84f399c51
# good: [ce307084c96d0ec92c04fcc38b107241b168df11] Merge tag 'block-5.12-2021-03-12-v2' of git://git.kernel.dk/linux-block
git bisect good ce307084c96d0ec92c04fcc38b107241b168df11
# bad: [f296bfd5cd04cbb49b8fc9585adc280ab2b58624] Merge tag 'nfs-for-5.12-2' of git://git.linux-nfs.org/projects/anna/linux-nfs
git bisect bad f296bfd5cd04cbb49b8fc9585adc280ab2b58624
# good: [9afc1163794707a304f107bf21b8b37e5c6c34f4] Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
git bisect good 9afc1163794707a304f107bf21b8b37e5c6c34f4
# bad: [fd6d3feed041e96b84680d0bfc1e7abc8f65de92] NFS: Clean up function nfs_mark_dir_for_revalidate()
git bisect bad fd6d3feed041e96b84680d0bfc1e7abc8f65de92
# bad: [f0940f4b3284a00f38a5d42e6067c2aaa20e1f2e] SUNRPC: Set memalloc_nofs_save() for sync tasks
git bisect bad f0940f4b3284a00f38a5d42e6067c2aaa20e1f2e
# bad: [ad3dbe35c833c2d4d0bbf3f04c785d32f931e7c9] NFS: Correct size calculation for create reply length
git bisect bad ad3dbe35c833c2d4d0bbf3f04c785d32f931e7c9
# bad: [a0590473c5e6c4ef17c3132ad08fbad170f72d55] nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default
git bisect bad a0590473c5e6c4ef17c3132ad08fbad170f72d55
# first bad commit: [a0590473c5e6c4ef17c3132ad08fbad170f72d55] nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default

$ mipsel-linux-gcc --version
mipsel-linux-gcc (GCC) 10.2.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

I doubt this is a bug with this specific commit but I am not sure so I
have added Masahiro and the kbuild list as well as the MIPS list even
though it might not be MIPS specific (although I only see it with the
32-bit MIPS configs)

Cheers,
Nathan

2021-03-17 04:53:32

by Masahiro Yamada

[permalink] [raw]
Subject: Re: [PATCH] nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default

On Wed, Mar 17, 2021 at 7:25 AM Nathan Chancellor <[email protected]> wrote:
>
> On Tue, Feb 23, 2021 at 03:19:01PM +0100, Timo Rothenpieler wrote:
> > This follows what was done in 8c2fabc6542d9d0f8b16bd1045c2eda59bdcde13.
> > With the default being m, it's impossible to build the module into the
> > kernel.
> >
> > Signed-off-by: Timo Rothenpieler <[email protected]>
> > ---
> > fs/nfs/Kconfig | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/fs/nfs/Kconfig b/fs/nfs/Kconfig
> > index e2a488d403a6..14a72224b657 100644
> > --- a/fs/nfs/Kconfig
> > +++ b/fs/nfs/Kconfig
> > @@ -127,7 +127,7 @@ config PNFS_BLOCK
> > config PNFS_FLEXFILE_LAYOUT
> > tristate
> > depends on NFS_V4_1 && NFS_V3
> > - default m
> > + default NFS_V4
> >
> > config NFS_V4_1_IMPLEMENTATION_ID_DOMAIN
> > string "NFSv4.1 Implementation ID Domain"
> > --
> > 2.25.1
> >
>
> Hi all,
>
> I bisected a new modpost warning that I see with 5.12-rc3 to this commit:
>
> $ make -skj"$(nproc)" ARCH=mips CROSS_COMPILE=mipsel-linux- O=build/mipsel distclean defconfig all
> ...
> WARNING: modpost: Symbol info of vmlinux is missing. Unresolved symbol check will be entirely skipped.
> ...

Thanks for the report.

MIPS defconfig enables CONFIG_TRIM_UNUSED_KSYMS.

Presumably with a0590473c5e6c4ef17,
MIPS defconfig enables CONFIG_MODULES,
but actually builds no module.

So, all symbols in vmlinux have been trimmed,
and vmlinux.symvers gets empty.

That is the reason for the warning.

I will consider how to fix this corner case.










>
> $ git bisect log
> # bad: [1e28eed17697bcf343c6743f0028cc3b5dd88bf0] Linux 5.12-rc3
> # good: [a38fd8748464831584a19438cbb3082b5a2dab15] Linux 5.12-rc2
> git bisect start 'v5.12-rc3' 'v5.12-rc2'
> # good: [f78d76e72a4671ea52d12752d92077788b4f5d50] Merge tag 'drm-fixes-2021-03-12-1' of git://anongit.freedesktop.org/drm/drm
> git bisect good f78d76e72a4671ea52d12752d92077788b4f5d50
> # bad: [420623430a7015ae9adab8a087de82c186bc9989] Merge tag 'erofs-for-5.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs
> git bisect bad 420623430a7015ae9adab8a087de82c186bc9989
> # good: [261410082d01f2f2d4fcd19abee6b8e84f399c51] Merge tag 'devprop-5.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
> git bisect good 261410082d01f2f2d4fcd19abee6b8e84f399c51
> # good: [ce307084c96d0ec92c04fcc38b107241b168df11] Merge tag 'block-5.12-2021-03-12-v2' of git://git.kernel.dk/linux-block
> git bisect good ce307084c96d0ec92c04fcc38b107241b168df11
> # bad: [f296bfd5cd04cbb49b8fc9585adc280ab2b58624] Merge tag 'nfs-for-5.12-2' of git://git.linux-nfs.org/projects/anna/linux-nfs
> git bisect bad f296bfd5cd04cbb49b8fc9585adc280ab2b58624
> # good: [9afc1163794707a304f107bf21b8b37e5c6c34f4] Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
> git bisect good 9afc1163794707a304f107bf21b8b37e5c6c34f4
> # bad: [fd6d3feed041e96b84680d0bfc1e7abc8f65de92] NFS: Clean up function nfs_mark_dir_for_revalidate()
> git bisect bad fd6d3feed041e96b84680d0bfc1e7abc8f65de92
> # bad: [f0940f4b3284a00f38a5d42e6067c2aaa20e1f2e] SUNRPC: Set memalloc_nofs_save() for sync tasks
> git bisect bad f0940f4b3284a00f38a5d42e6067c2aaa20e1f2e
> # bad: [ad3dbe35c833c2d4d0bbf3f04c785d32f931e7c9] NFS: Correct size calculation for create reply length
> git bisect bad ad3dbe35c833c2d4d0bbf3f04c785d32f931e7c9
> # bad: [a0590473c5e6c4ef17c3132ad08fbad170f72d55] nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default
> git bisect bad a0590473c5e6c4ef17c3132ad08fbad170f72d55
> # first bad commit: [a0590473c5e6c4ef17c3132ad08fbad170f72d55] nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default
>
> $ mipsel-linux-gcc --version
> mipsel-linux-gcc (GCC) 10.2.0
> Copyright (C) 2020 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions. There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>
> I doubt this is a bug with this specific commit but I am not sure so I
> have added Masahiro and the kbuild list as well as the MIPS list even
> though it might not be MIPS specific (although I only see it with the
> 32-bit MIPS configs)
>
> Cheers,
> Nathan



--
Best Regards
Masahiro Yamada