From owner-freebsd-fs@freebsd.org Sun Nov 29 14:42:12 2015 Return-Path: Delivered-To: freebsd-fs@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AA1F0A3B86D; Sun, 29 Nov 2015 14:42:12 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from esa-annu.net.uoguelph.ca (esa-annu.mail.uoguelph.ca [131.104.91.36]) by mx1.freebsd.org (Postfix) with ESMTP id 4F13A1D48; Sun, 29 Nov 2015 14:42:11 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) IronPort-PHdr: 9a23:OTjwGRAnx5Zc451YC6NKUyQJP3N1i/DPJgcQr6AfoPdwSP7zpsbcNUDSrc9gkEXOFd2CrakU1qyG7eu+BCQp2tWojjMrSNR0TRgLiMEbzUQLIfWuLgnFFsPsdDEwB89YVVVorDmROElRH9viNRWJ+iXhpQAbFhi3DwdpPOO9QteU1JTqkbDssMOOKyxzxxODIppKZC2sqgvQssREyaBDEY0WjiXzn31TZu5NznlpL1/A1zz158O34YIxu38I46Fp34d6XK77Z6U1S6BDRHRjajhtpZ6jiR6WBy6O5XsVU2FerlwCS1zA7VLmXor3miL+uuN7niCeMsD8V7lyUjOnufRFUhjt3R0GPD1x1Wjcich9ieoPuheorB97zov8fYaaKfd6ZqObdtpMFjkJZdpYSyEUWtD0VIAIFedUeL8A94Q= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A2CtBADSDVtW/61jaINdhA5vBr4wgWYXCoUkSgKBUxIBAQEBAQEBAYEJgi2CBwEBAQMBAQEBICsgCwULAgEGAhgCAg0ZAgInAQkmAgQIBwQBGQMEiAUIDYoanTWPYgEBAQEBAQEBAQEBAQEBAQEBAQEWBIEBhVOEfoQqEAIBBReDHIFEBY4YiD+FKoUihEeHaJMcAigJMoQiIDQHhGOBBwEBAQ X-IronPort-AV: E=Sophos;i="5.20,360,1444708800"; d="scan'208";a="254710439" Received: from nipigon.cs.uoguelph.ca (HELO zcs1.mail.uoguelph.ca) ([131.104.99.173]) by esa-annu.net.uoguelph.ca with ESMTP; 29 Nov 2015 09:42:10 -0500 Received: from localhost (localhost [127.0.0.1]) by zcs1.mail.uoguelph.ca (Postfix) with ESMTP id EDEB015F5DA; Sun, 29 Nov 2015 09:42:10 -0500 (EST) Received: from zcs1.mail.uoguelph.ca ([127.0.0.1]) by localhost (zcs1.mail.uoguelph.ca [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id 5kHnMLmVOY0J; Sun, 29 Nov 2015 09:42:10 -0500 (EST) Received: from localhost (localhost [127.0.0.1]) by zcs1.mail.uoguelph.ca (Postfix) with ESMTP id 5827915F5E2; Sun, 29 Nov 2015 09:42:10 -0500 (EST) X-Virus-Scanned: amavisd-new at zcs1.mail.uoguelph.ca Received: from zcs1.mail.uoguelph.ca ([127.0.0.1]) by localhost (zcs1.mail.uoguelph.ca [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id Xnp6FVnS__2K; Sun, 29 Nov 2015 09:42:10 -0500 (EST) Received: from zcs1.mail.uoguelph.ca (zcs1.mail.uoguelph.ca [172.17.95.18]) by zcs1.mail.uoguelph.ca (Postfix) with ESMTP id 3C42315F5DA; Sun, 29 Nov 2015 09:42:10 -0500 (EST) Date: Sun, 29 Nov 2015 09:42:10 -0500 (EST) From: Rick Macklem To: "Mikhail T." Cc: Jilles Tjoelker , freebsd-fs , stable@freebsd.org Message-ID: <238719022.110571050.1448808130235.JavaMail.zimbra@uoguelph.ca> In-Reply-To: <565A8A3E.205@aldan.algebra.com> References: <5659CB64.5020105@aldan.algebra.com> <20151128224101.GA8470@stack.nl> <565A8A3E.205@aldan.algebra.com> Subject: Re: cp from NFS to ZFS hung in "fifoor" MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [172.17.95.12] X-Mailer: Zimbra 8.0.9_GA_6191 (ZimbraWebClient - FF34 (Win)/8.0.9_GA_6191) Thread-Topic: cp from NFS to ZFS hung in "fifoor" Thread-Index: 8ZJqDBnTyNfmHqhwLsgVGKIAsVMS3A== X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 29 Nov 2015 14:42:12 -0000 Mikhail T. wrote: > On 28.11.2015 17:41, Jilles Tjoelker wrote: > > Although cp -R will normally copy a fifo by calling mkfifo at the > > destination, it may open one if a regular file is replaced with a fifo > > between the time it reads the directory and it copies that file. >=20 > The sole fifo under /home here was mi/.licq/licq_fifo, created in 2003. > I echoed something into it (on the NFS-client side) and the cp-process > resumed. >=20 > I then performed a simple test: >=20 > 1. Create a fifo in an NFS-exported directory and try to copy it with > the -R flag > mi@narawntapu:/cache/src (792) mkfifo /green/tmp/test > mi@narawntapu:/cache/src (793) cp -Rpn /green/tmp/test /tmp/ > mi@narawntapu:/cache/src (794) ls -l /tmp/test > prw-r--r-- 1 mi wheel 0 29 =D0=BB=D0=B8=D1=81 00:05 /tmp/test > The above worked fine. > 2. Now, when I try to do the same thing via an NFS mount, I get the > same hang in fifoor: > root@aldan:ports/x11/kde4 (475) cp -Rpn /green/tmp/test /tmp/ > load: 0.42 cmd: cp 38299 [fifoor] 1.15r 0.00u 0.00s 0% 1868k >=20 > So, the good news is, this is not ZFS' fault. The bad news is, there is > still a bug... Unless, of course, this is some known "feature" of the > NFS... Compare, for example, how stat(1) describes the same named pipe > from both machines: >=20 > Local FS: > 92 74636334 prw-r--r-- 1 mi wheel 0 0 "Nov 29 00:05:51 2015" "Nov 29 > 00:05:51 2015" "Nov 29 00:05:51 2015" "Nov 29 00:05:51 2015" 16384 0 > 0 /green/tmp/test > NFS-client: > 973143811 74636334 ?rw-r--r-- 1 mi wheel 4294967295 0 "Nov 29 > 00:05:51 2015" "Nov 29 00:05:51 2015" "Nov 29 00:05:51 2015" "Dec 31 > 18:59:59 1969" 16384 0 0 /green/tmp/test >=20 The other thing you could do is capture packets for the "ls -l" from the NF= S client: tcpdump -s 0 -w fifo.pcap host run on the client while doing the "ls -l" should be sufficient. (Doing it j= ust after mounting will avoid any attribute cache hit.) You could then look at the fifo.pcap in wireshark (or email it to me as an attachment and I can look) and see if the file type attribute is FIFO. (If it isn't, then the NFS server is broken somehow.) rick > That question-mark in the node-type (instead of the "p") is, I guess, > what confuses cp into trying to read from it instead of creating a fifo. > Should I file a PR? Thank you! >=20 > -mi >=20 > _______________________________________________ > freebsd-stable@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-stable > To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org"