From owner-freebsd-bugs@FreeBSD.ORG Sun Jul 29 01:18:02 2012 Return-Path: Delivered-To: freebsd-bugs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 68444106566B; Sun, 29 Jul 2012 01:18:02 +0000 (UTC) (envelope-from listlog2011@gmail.com) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 4E13F8FC08; Sun, 29 Jul 2012 01:18:02 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q6T1HsK5052360; Sun, 29 Jul 2012 01:17:55 GMT (envelope-from listlog2011@gmail.com) Message-ID: <50148F42.20105@gmail.com> Date: Sun, 29 Jul 2012 09:17:54 +0800 From: David Xu User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:14.0) Gecko/20120713 Thunderbird/14.0 MIME-Version: 1.0 To: Garrett Cooper References: <201207272150.q6RLo9ew012879@freefall.freebsd.org> <501482CD.6050708@gmail.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-bugs@freebsd.org, davidxu@freebsd.org Subject: Re: kern/170203: [kern] piped dd' s don' t behave sanely when dealing with a fifo X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: davidxu@freebsd.org List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 29 Jul 2012 01:18:02 -0000 On 2012/7/29 9:02, Garrett Cooper wrote: > On Sat, Jul 28, 2012 at 5:24 PM, David Xu wrote: >> On 2012/7/28 5:50, Garrett Cooper wrote: >>> The following reply was made to PR kern/170203; it has been noted by >>> GNATS. >>> >>> From: Garrett Cooper >>> To: bug-followup@FreeBSD.org, yanegomi@gmail.com >>> Cc: >>> Subject: Re: kern/170203: [kern] piped dd's don't behave sanely >>> when >>> dealing with a fifo >>> Date: Fri, 27 Jul 2012 14:47:47 -0700 >>> >>> Hi David! >>> I'll give the patches you provided a shot this weekend. >> FIFO pipe is quite broken! Beside the bug you have reported, there is >> another bug, >> when a writer closed the pipe, select() on reader side will never return ! >> I am curious that so long time, nobody found the bugs, does it because FIFO >> is seldom used by people ? > Hmmm.. that's unfortunate. If you have a test program you can > provide then I can test on a 7.x variant of FreeBSD as well as FreeBSD > 8.3 (I'm curious as to whether or not it's fallout from recent > refactoring related to pipe(2), which I don't believe made it back to > 8.x). > Thanks! > -Garrett I have just written two quick-and-dirty test cases: http://people.freebsd.org/~davidxu/patch/fifopipe/fifo_selectread.c http://people.freebsd.org/~davidxu/patch/fifopipe/fifo_selectwrite.c without patch for kernel code, a child process will print out "timeout".