[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20190429055520.GA3665@osiris>
Date: Mon, 29 Apr 2019 07:55:20 +0200
From: Heiko Carstens <heiko.carstens@...ibm.com>
To: Prarit Bhargava <prarit@...hat.com>
Cc: Jessica Yu <jeyu@...nel.org>, linux-next@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-s390@...r.kernel.org,
Cathy Avery <cavery@...hat.com>
Subject: Re: [-next] system hangs likely due to "modules: Only return -EEXIST
for modules that have finished loading"
On Sat, Apr 27, 2019 at 06:42:51AM -0400, Prarit Bhargava wrote:
> On 4/27/19 6:24 AM, Heiko Carstens wrote:
>
> >
> > diff --git a/kernel/module.c b/kernel/module.c
> > index 410eeb7e4f1d..48748cfec991 100644
> > --- a/kernel/module.c
> > +++ b/kernel/module.c
> > @@ -3585,6 +3585,7 @@ again:
> > finished_loading(mod->name));
> > if (err)
> > goto out_unlocked;
> > + cond_resched();
> Heiko, I'm testing on 2-cpu systems which appear to show the problem ~10% of the
> time. On another system I backed out my original patch to set a baseline, and
> noticed that occasionally the time to boot the system doubles from ~4 seconds to
> 9 seconds. Is this something you're also concerned with?
This _could_ be an issue, since I see the problem much more likely to
happen on systems with many devices (where many means only something
like 10 block devices). As far as I can tell it looks like
systemd/udevd tries to modprobe at the s390-trng module for each(!)
device.
I have no idea why it is doing that... however given that (failed)
module handling now sometimes takes more time, this might become a
real issue on system with several 1000s of block devices, which is a
realistic scenario at least on s390.
Powered by blists - more mailing lists