Date: Tue, 01 Apr 2008 12:14:08 +0200 From: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= <des@des.no> To: Mel <fbsd.hackers@rachie.is-a-geek.net> Cc: freebsd-hackers@freebsd.org Subject: Re: Popen and EVFILT_WRITE question Message-ID: <868wzx287j.fsf@ds4.des.no> In-Reply-To: <200803312145.39372.fbsd.hackers@rachie.is-a-geek.net> (Mel's message of "Mon\, 31 Mar 2008 21\:45\:38 %2B0200") References: <200803301220.39921.fbsd.hackers@rachie.is-a-geek.net> <86ve33wo1e.fsf@ds4.des.no> <200803312145.39372.fbsd.hackers@rachie.is-a-geek.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Mel <fbsd.hackers@rachie.is-a-geek.net> writes: > Dag-Erling Sm=C3=B8rgrav <des@des.no> writes: > > it will either read input or it won't, and what happens when it > > reads depends entirely on what the fd it reads from is connected to, > > whether it's a slow or fast device, blocking or non-blocking, etc. > The kernel knows that the fd at the end of the pipe is blocked for > reading.=20 I'm not sure what you mean by that; do you mean that it's sleeping in read() or similar? What if it uses select(), poll() or kqueue() instead? > Does it also know it's the end of a pipe and what's on the other end? Cau= se=20 > it would be a cool filter to have, if you could detect a blocked child as= a=20 > parent. It sure is better then arbitrary timeouts (this code will run 'ma= ke=20 > install' as a daemon(3) and write 'yes' on those nasty post-install quest= ions=20 > in ports). Many ports will simply use the default configuration instead of asking if you build them with -DBATCH. Those that don't should be fixed, unless there is a very good reason (such as asking the user to accept a license before installing). You could also ask somebody in portmgr@ how the package-building cluster deals with this. DES --=20 Dag-Erling Sm=C3=B8rgrav - des@des.no
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?868wzx287j.fsf>