From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alan Jenkins Date: Tue, 02 Jun 2009 09:13:58 +0000 Subject: Re: [GIT] Experimental threaded udev Message-Id: <4A24ED56.2010806@tuffmail.co.uk> List-Id: References: <4A1EA138.10400@tuffmail.co.uk> In-Reply-To: <4A1EA138.10400@tuffmail.co.uk> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-hotplug@vger.kernel.org Kay Sievers wrote: > On Mon, Jun 1, 2009 at 15:57, Kay Sievers wrote: > > >>> The code looked like you freed the worker, but left the event RUNNING, and >>> it would never be released. I would delete the event instead, just like the >>> old system. >>> >>> I haven't read V2 yet though, maybe you fixed it. >>> >> I just set it back to QUEUED for now. Not sure if droppin git or >> re-trying it a few times would be better. >> > > Version 3, which should clean up events with a worker that died. Also > kills all workers if the config has changed. > For strict correctness, I guess we need to do the same for "udevadm control --log-priority" and "udevadm control --env". Hmm, it says worker_kill_idle(). If there are running events at the time, their stale workers will survive. At the moment kill(worker->pid, SIGTERM) allows the current event to finish before it terminates, so one solution would be to just kill all the workers. Regards Alan