linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* devfsd hangs on restart - is_devfsd_or_child() problem
@ 2003-07-11 18:47 Andrey Borzenkov
  2003-07-12 10:11 ` [PATCH][2.5.75] " Andrey Borzenkov
  0 siblings, 1 reply; 2+ messages in thread
From: Andrey Borzenkov @ 2003-07-11 18:47 UTC (permalink / raw)
  To: devfs; +Cc: linux-kernel, Thierry Vignaud

I cannot believe it is so fragile ...

is_devfsd_or_child() simplemindedly checks for pgrp:

static int is_devfsd_or_child (struct fs_info *fs_info)
{
    if (current == fs_info->devfsd_task) return (TRUE);
    if (current->pgrp == fs_info->devfsd_pgrp) return (TRUE);
    return (FALSE);
}   /*  End Function is_devfsd_or_child  */

unfortunately, bash (I do not know if it does it always or not) resets pgrp on 
startup. I.e. if your action is using shell it is no more considered devfsd 
descendant ... and it will attempt in turn start devfsd action while devfsd 
is waiting for it ot finish.

Thierry, i refer mostly to dynamics scripts currently. Every time I update 
devfsd it hangs in one of them. And actually it is enough to do service 
devfsd restart to trigger this. It may be 2.5 specific again in that it is 
not as easily seen under 2.4.

I have no idea what can be done. Is there any way in kernel to find out if one 
task is descendant of other task? Even rewriting devfsd to use non-blocking 
calls and request queue does not help as it apprently just results in endless 
loop (action triggering action triggering action ...)

-andrey

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2003-07-12  9:58 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-07-11 18:47 devfsd hangs on restart - is_devfsd_or_child() problem Andrey Borzenkov
2003-07-12 10:11 ` [PATCH][2.5.75] " Andrey Borzenkov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).