2015-11-02 15:40:12

by Valdis Klētnieks

[permalink] [raw]
Subject: next-20151101 - depmod issues with Lustre modules

next-20151101 compiles fine, but depmod has a cow:

depmod: ERROR: Found 2 modules in dependency cycles!
depmod: ERROR: Cycle detected: lnet -> libcfs -> lnet

Sorry, not sure which commit(s) introduced the issue. next-20151022
was OK.



Attachments:
(No filename) (848.00 B)

2015-11-07 20:38:08

by Dmitry Safonov

[permalink] [raw]
Subject: Re: next-20151101 - depmod issues with Lustre modules

Reproduced on mainline v4.3-9038-g27eb427bdc0960 with
Arch Linux default config (attached):

depmod: ERROR: Found 2 modules in dependency cycles!
depmod: ERROR: Cycle detected: lnet -> libcfs -> lnet
make: *** [_modinst_post] Error 1

2015-11-02 18:39 GMT+03:00 Valdis Kletnieks <[email protected]>:
> next-20151101 compiles fine, but depmod has a cow:
>
> depmod: ERROR: Found 2 modules in dependency cycles!
> depmod: ERROR: Cycle detected: lnet -> libcfs -> lnet
>
> Sorry, not sure which commit(s) introduced the issue. next-20151022
> was OK.
>
>


Attachments:
config (171.46 kB)

2015-11-07 22:30:46

by Linus Torvalds

[permalink] [raw]
Subject: Re: next-20151101 - depmod issues with Lustre modules

On Sat, Nov 7, 2015 at 12:37 PM, Dmitry Safonov <[email protected]> wrote:
> Reproduced on mainline v4.3-9038-g27eb427bdc0960 with
> Arch Linux default config (attached):
>
> depmod: ERROR: Found 2 modules in dependency cycles!
> depmod: ERROR: Cycle detected: lnet -> libcfs -> lnet
> make: *** [_modinst_post] Error 1

The reason seems to be that

- lnet.ko provides the following functions needed by libcfs.ko:

libcfs_next_nidstring
libcfs_nid2str_r

- libcfs.ko provides the following functions needed by lnet.ko:

libcfs_debug
libcfs_debug_msg
libcfs_deregister_ioctl
libcfs_register_ioctl
libcfs_subsystem_debug
lustre_insert_debugfs

but I may have messed up something.

Anyway, the problem seems to be that - insanely - lnet.ko provides
those libcfs nid handling functions. They should be in libcfs, as far
as I can tell, just judging by the name. Also judging by the use.

The cause seems to be commit 47ca6ec2673e ("staging: lustre: move
nidstring handling to LNet layer") by James Simmons.

I do wonder if linux-next could perhaps do some modprobe testing too?

Linus

2015-11-09 21:41:19

by Simmons, James A.

[permalink] [raw]
Subject: RE: [lustre-devel] next-20151101 - depmod issues with Lustre modules


>Reproduced on mainline v4.3-9038-g27eb427bdc0960 with
>Arch Linux default config (attached):
>
>depmod: ERROR: Found 2 modules in dependency cycles!
>depmod: ERROR: Cycle detected: lnet -> libcfs -> lnet
>make: *** [_modinst_post] Error 1

I submitted a patch (staging: lustre: remove IOC_LIBCFS_PING_TEST ioctl) to fix this.
It should be merged soon.
????{.n?+???????+%?????ݶ??w??{.n?+????{??G?????{ay?ʇڙ?,j??f???h?????????z_??(?階?ݢj"???m??????G????????????&???~???iO???z??v?^?m???? ????????I?

2015-11-12 22:17:17

by Stephen Rothwell

[permalink] [raw]
Subject: Re: next-20151101 - depmod issues with Lustre modules

Hi Linus,

On Sat, 7 Nov 2015 14:30:44 -0800 Linus Torvalds <[email protected]> wrote:
>
> I do wonder if linux-next could perhaps do some modprobe testing too?

I have added an x86_64 allmodconfig modules_install to my
end-of-day-before-release builds. Is that useful/sufficient? It seems
to work fine at the moment.

--
Cheers,
Stephen Rothwell [email protected]