[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1395584368.2200.3.camel@dabdike.int.hansenpartnership.com>
Date: Sun, 23 Mar 2014 07:19:28 -0700
From: James Bottomley <James.Bottomley@...senPartnership.com>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>, oleg@...hat.com,
joseph.salisbury@...onical.com, Nagalakshmi.Nandigama@....com,
Sreekanth.Reddy@....com, rientjes@...gle.com,
akpm@...ux-foundation.org, torvalds@...ux-foundation.org,
tj@...nel.org, linux-kernel@...r.kernel.org,
kernel-team@...ts.ubuntu.com, linux-scsi@...r.kernel.org,
thenzl@...hat.com
Subject: Re: please fix FUSION
(Was:[v3.13][v3.14][Regression]kthread:makekthread_create()killable)
On Sun, 2014-03-23 at 09:04 +0100, Thomas Gleixner wrote:
> On Sun, 23 Mar 2014, Tetsuo Handa wrote:
>
> > Thomas Gleixner wrote:
> > > But then systemd/udev mutters:
> > >
> > > "You migh be able to work around the timeout with udev rules and
> > > OPTIONS+="event_timeout=120", but that code was maybe never used
> > > or tested, so it might not work correctly." [1]
> > >
> > > AFAICT from the ubuntu bug system [2] nobody bothered even to try that.
> > >
> > > And if the udev/systemd event_timeout option is broken it's way better
> > > to fix that one instead of hacking random heuristics into the kernel.
> >
> > I haven't tried the event_timeout= option but I think it will not work.
> > The timeout is hard coded as shown below and there will be no chance for taking
> > the event_timeout= option into account.
> >
> > ---------- systemd-204/src/udev/udevd.c start ----------
> > (...snipped...)
> > /* check for hanging events */
> > udev_list_node_foreach(loop, &worker_list) {
> > struct worker *worker = node_to_worker(loop);
> >
> > if (worker->state != WORKER_RUNNING)
> > continue;
> >
> > if ((now(CLOCK_MONOTONIC) - worker->event_start_usec) > 30 * 1000 * 1000) {
>
> And because systemd has an immutable hardcoded random timeout we add
> another hardcoded random timeout into kthread_create() to work around
> that.
>
> How broken is that?
>
> And it seems other people have solved it:
>
> http://www.redhat.com/archives/lvm-devel/2013-September/msg00036.html
I agree with Thomas. A hardcoded timeout is a systemd bug. However,
could I get confirmation, while you can use this bug to do it, that the
patch back in this thread actually fixes the crash when scsi_alloc_host
fails, that's the serious SCSI bug, in my view?
Thanks,
James
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists