Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 29 Jul 2012 13:13:54 -0700
From:      Garrett Cooper <yanegomi@gmail.com>
To:        davidxu@freebsd.org
Cc:        freebsd-bugs@freebsd.org
Subject:   Re: kern/170203: [kern] piped dd&#39; s don&#39; t behave sanely when dealing with a fifo
Message-ID:  <CAGH67wR_Wq-iH6psNX69qEkL8YG1kQuTxQ-0s6PxW3bXwda4Vw@mail.gmail.com>
In-Reply-To: <5014A64A.3010106@gmail.com>
References:  <201207272150.q6RLo9ew012879@freefall.freebsd.org> <501482CD.6050708@gmail.com> <CAGH67wQYCf6N0hF4Hru63snCxVoPjBmLgjyPkVBRT7q7%2BgcqbQ@mail.gmail.com> <50148F42.20105@gmail.com> <5014A64A.3010106@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--14dae9399c5fa4dd0b04c5fd954d
Content-Type: text/plain; charset=ISO-8859-1

On Sat, Jul 28, 2012 at 7:56 PM, David Xu <listlog2011@gmail.com> wrote:

...

> I have updated patch, the patch fixed lost-notification bug for select():
> http://people.freebsd.org/~davidxu/patch/fifopipe/kernel_pipe2.diff

    This patch prevents the hang from occurring on CURRENT / r238870
(it was missing a header definition in sys/pipe.h). Now all that
remains is chasing down why dd's records accounting is bogus.
    The attached patch makes the output somewhat more meaningful with
dd if it receives a SIGPIPE.
Thanks!
-Garrett

PS Fedora 17 does what I expect by reporting the actual number of
records transferred across the fifo.

--14dae9399c5fa4dd0b04c5fd954d
Content-Type: application/octet-stream; 
	name="fix-fifo-hangs-on-CURRENT-r238870.patch"
Content-Disposition: attachment; 
	filename="fix-fifo-hangs-on-CURRENT-r238870.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_h58jhml60

LS0tIC8vZGVwb3QvdXNlci9nY29vcGVyL2F0Zi1oZWFkL3NyYy9zeXMvZnMvZmlmb2ZzL2ZpZm9f
dm5vcHMuYwkyMDEyLTA1LTIwIDA0OjM3OjA0LjAwMDAwMDAwMCAwMDAwCisrKyAvc2NyYXRjaC9w
NC91c2VyL2djb29wZXIvYXRmLWhlYWQvc3JjL3N5cy9mcy9maWZvZnMvZmlmb192bm9wcy5jCTIw
MTItMDUtMjAgMDQ6Mzc6MDQuMDAwMDAwMDAwIDAwMDAKLS0tIC90bXAvdG1wLjQ3ODQ3Ljk0CTIw
MTItMDctMjkgMTI6NDQ6MDguMDgzMzg0OTk2IC0wNzAwCisrKyAvc2NyYXRjaC9wNC91c2VyL2dj
b29wZXIvYXRmLWhlYWQvc3JjL3N5cy9mcy9maWZvZnMvZmlmb192bm9wcy5jCTIwMTItMDctMjkg
MTI6MDA6MDMuNTAxMzQwMTQxIC0wNzAwCkBAIC0yODMsOCArMjgzLDExIEBACiAJCWlmIChmaXAt
PmZpX3JlYWRlcnMgPT0gMCkgewogCQkJUElQRV9MT0NLKGNwaXBlKTsKIAkJCWNwaXBlLT5waXBl
X3N0YXRlIHw9IFBJUEVfRU9GOwotCQkJaWYgKGNwaXBlLT5waXBlX3N0YXRlICYgUElQRV9XQU5U
VykKKwkJCWlmICgoY3BpcGUtPnBpcGVfc3RhdGUgJiBQSVBFX1dBTlRXKSkgeworCQkJCWNwaXBl
LT5waXBlX3N0YXRlICY9IH5QSVBFX1dBTlRXOwogCQkJCXdha2V1cChjcGlwZSk7CisJCQl9CisJ
CQlwaXBlc2Vsd2FrZXVwKGNwaXBlKTsKIAkJCVBJUEVfVU5MT0NLKGNwaXBlKTsKIAkJfQogCX0K
QEAgLTI5MywxMCArMjk2LDEzIEBACiAJCWlmIChmaXAtPmZpX3dyaXRlcnMgPT0gMCkgewogCQkJ
UElQRV9MT0NLKGNwaXBlKTsKIAkJCWNwaXBlLT5waXBlX3N0YXRlIHw9IFBJUEVfRU9GOwotCQkJ
aWYgKGNwaXBlLT5waXBlX3N0YXRlICYgUElQRV9XQU5UUikKKwkJCWlmICgoY3BpcGUtPnBpcGVf
c3RhdGUgJiBQSVBFX1dBTlRSKSkgeworCQkJCWNwaXBlLT5waXBlX3N0YXRlICY9IH5QSVBFX1dB
TlRSOwogCQkJCXdha2V1cChjcGlwZSk7CisJCQl9CiAJCQlmaXAtPmZpX3dnZW4rKzsKIAkJCUZJ
Rk9fVVBEV0dFTihmaXAsIGNwaXBlKTsKKwkJCXBpcGVzZWx3YWtldXAoY3BpcGUpOwogCQkJUElQ
RV9VTkxPQ0soY3BpcGUpOwogCQl9CiAJfQotLS0gLy9kZXBvdC91c2VyL2djb29wZXIvYXRmLWhl
YWQvc3JjL3N5cy9rZXJuL3N5c19waXBlLmMJMjAxMi0wNS0yMCAwNDozNzowNC4wMDAwMDAwMDAg
MDAwMAorKysgL3NjcmF0Y2gvcDQvdXNlci9nY29vcGVyL2F0Zi1oZWFkL3NyYy9zeXMva2Vybi9z
eXNfcGlwZS5jCTIwMTItMDUtMjAgMDQ6Mzc6MDQuMDAwMDAwMDAwIDAwMDAKLS0tIC90bXAvdG1w
LjQ3ODQ3LjE2OQkyMDEyLTA3LTI5IDEyOjQ0OjA4LjE1NzM0MzIwOCAtMDcwMAorKysgL3NjcmF0
Y2gvcDQvdXNlci9nY29vcGVyL2F0Zi1oZWFkL3NyYy9zeXMva2Vybi9zeXNfcGlwZS5jCTIwMTIt
MDctMjkgMTI6MDA6MDMuNTE1MzM4MzU5IC0wNzAwCkBAIC0yMjcsNyArMjI3LDYgQEAKIHN0YXRp
YyBpbnQgcGlwZV9wYWlyY3JlYXRlKHN0cnVjdCB0aHJlYWQgKnRkLCBzdHJ1Y3QgcGlwZXBhaXIg
KipwX3BwKTsKIHN0YXRpYyBfX2lubGluZSBpbnQgcGlwZWxvY2soc3RydWN0IHBpcGUgKmNwaXBl
LCBpbnQgY2F0Y2gpOwogc3RhdGljIF9faW5saW5lIHZvaWQgcGlwZXVubG9jayhzdHJ1Y3QgcGlw
ZSAqY3BpcGUpOwotc3RhdGljIF9faW5saW5lIHZvaWQgcGlwZXNlbHdha2V1cChzdHJ1Y3QgcGlw
ZSAqY3BpcGUpOwogI2lmbmRlZiBQSVBFX05PRElSRUNUCiBzdGF0aWMgaW50IHBpcGVfYnVpbGRf
d3JpdGVfYnVmZmVyKHN0cnVjdCBwaXBlICp3cGlwZSwgc3RydWN0IHVpbyAqdWlvKTsKIHN0YXRp
YyB2b2lkIHBpcGVfZGVzdHJveV93cml0ZV9idWZmZXIoc3RydWN0IHBpcGUgKndwaXBlKTsKQEAg
LTYwNyw3ICs2MDYsNyBAQAogCX0KIH0KIAotc3RhdGljIF9faW5saW5lIHZvaWQKK3ZvaWQKIHBp
cGVzZWx3YWtldXAoY3BpcGUpCiAJc3RydWN0IHBpcGUgKmNwaXBlOwogewpAQCAtNzM4LDcgKzcz
Nyw3IEBACiAJCQlycGlwZS0+cGlwZV9tYXAucG9zICs9IHNpemU7CiAJCQlycGlwZS0+cGlwZV9t
YXAuY250IC09IHNpemU7CiAJCQlpZiAocnBpcGUtPnBpcGVfbWFwLmNudCA9PSAwKSB7Ci0JCQkJ
cnBpcGUtPnBpcGVfc3RhdGUgJj0gflBJUEVfRElSRUNUVzsKKwkJCQlycGlwZS0+cGlwZV9zdGF0
ZSAmPSB+KFBJUEVfRElSRUNUV3xQSVBFX1dBTlRXKTsKIAkJCQl3YWtldXAocnBpcGUpOwogCQkJ
fQogI2VuZGlmCkBAIC0xMDAxLDYgKzEwMDAsNyBAQAogCQkJd2FrZXVwKHdwaXBlKTsKIAkJfQog
CQlwaXBlc2Vsd2FrZXVwKHdwaXBlKTsKKwkJd3BpcGUtPnBpcGVfc3RhdGUgfD0gUElQRV9XQU5U
VzsKIAkJcGlwZXVubG9jayh3cGlwZSk7CiAJCWVycm9yID0gbXNsZWVwKHdwaXBlLCBQSVBFX01U
WCh3cGlwZSksIFBSSUJJTyB8IFBDQVRDSCwKIAkJICAgICJwaXBkd3QiLCAwKTsKLS0tIC8vZGVw
b3QvdXNlci9nY29vcGVyL2F0Zi1oZWFkL3NyYy9zeXMvc3lzL3BpcGUuaAkyMDEyLTA1LTIwIDA0
OjM3OjA0LjAwMDAwMDAwMCAwMDAwCisrKyAvc2NyYXRjaC9wNC91c2VyL2djb29wZXIvYXRmLWhl
YWQvc3JjL3N5cy9zeXMvcGlwZS5oCTIwMTItMDUtMjAgMDQ6Mzc6MDQuMDAwMDAwMDAwIDAwMDAK
LS0tIC90bXAvdG1wLjQ3ODQ3LjIwNwkyMDEyLTA3LTI5IDEyOjQ0OjA4LjE3NjMzOTEyOCAtMDcw
MAorKysgL3NjcmF0Y2gvcDQvdXNlci9nY29vcGVyL2F0Zi1oZWFkL3NyYy9zeXMvc3lzL3BpcGUu
aAkyMDEyLTA3LTI5IDEyOjE3OjUzLjU5MjM5Mzg5MiAtMDcwMApAQCAtMTQzLDUgKzE0Myw2IEBA
CiAKIHZvaWQJcGlwZV9kdG9yKHN0cnVjdCBwaXBlICpkcGlwZSk7CiBpbnQJcGlwZV9uYW1lZF9j
dG9yKHN0cnVjdCBwaXBlICoqcHBpcGUsIHN0cnVjdCB0aHJlYWQgKnRkKTsKK3ZvaWQJcGlwZXNl
bHdha2V1cChzdHJ1Y3QgcGlwZSAqY3BpcGUpOwogCiAjZW5kaWYgLyogIV9TWVNfUElQRV9IXyAq
Lwo=
--14dae9399c5fa4dd0b04c5fd954d
Content-Type: application/octet-stream; name="fix-dd-with-fifos.patch"
Content-Disposition: attachment; filename="fix-dd-with-fifos.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_h58kggqp1

LS0tIC8vZGVwb3QvdXNlci9nY29vcGVyL2F0Zi1oZWFkL3NyYy9iaW4vZGQvZGQuYwkyMDEyLTA1
LTIwIDA0OjM3OjA0LjAwMDAwMDAwMCAwMDAwCisrKyAvc2NyYXRjaC9wNC91c2VyL2djb29wZXIv
YXRmLWhlYWQvc3JjL2Jpbi9kZC9kZC5jCTIwMTItMDUtMjAgMDQ6Mzc6MDQuMDAwMDAwMDAwIDAw
MDAKQEAgLTkxLDYgKzkxLDcgQEAKIAogCSh2b2lkKXNpZ25hbChTSUdJTkZPLCBzdW1tYXJ5eCk7
CiAJKHZvaWQpc2lnbmFsKFNJR0lOVCwgdGVybWluYXRlKTsKKwkodm9pZClzaWduYWwoU0lHUElQ
RSwgU0lHX0lHTik7CiAKIAlhdGV4aXQoc3VtbWFyeSk7CiAKQEAgLTExNiw2ICsxMTcsNyBAQAog
ewogCXVfaW50IGNudDsKIAlzdHJ1Y3QgdGltZXZhbCB0djsKKwlzdHJ1Y3Qgc3RhdCBzYjsKIAog
CWlmIChpbi5uYW1lID09IE5VTEwpIHsKIAkJaW4ubmFtZSA9ICJzdGRpbiI7CkBAIC0xMzgsNyAr
MTQwLDExIEBACiAJfSBlbHNlIHsKICNkZWZpbmUJT0ZMQUdTIFwKICAgICAoT19DUkVBVCB8IChk
ZGZsYWdzICYgKENfU0VFSyB8IENfTk9UUlVOQykgPyAwIDogT19UUlVOQykpCi0JCW91dC5mZCA9
IG9wZW4ob3V0Lm5hbWUsIE9fUkRXUiB8IE9GTEFHUywgREVGRklMRU1PREUpOworCisJCWlmIChz
dGF0KG91dC5uYW1lLCAmc2IpICE9IDAgfHwgIVNfSVNGSUZPKHNiLnN0X21vZGUpKQorCQkJb3V0
LmZkID0gb3BlbihvdXQubmFtZSwgT19SRFdSIHwgT0ZMQUdTLCBERUZGSUxFTU9ERSk7CisJCWVs
c2UKKwkJCW91dC5mZCA9IC0xOwogCQkvKgogCQkgKiBNYXkgbm90IGhhdmUgcmVhZCBhY2Nlc3Ms
IHNvIHRyeSBhZ2FpbiB3aXRoIHdyaXRlIG9ubHkuCiAJCSAqIFdpdGhvdXQgcmVhZCB3ZSBtYXkg
aGF2ZSBhIHByb2JsZW0gaWYgb3V0cHV0IGFsc28gZG9lcwo=
--14dae9399c5fa4dd0b04c5fd954d--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGH67wR_Wq-iH6psNX69qEkL8YG1kQuTxQ-0s6PxW3bXwda4Vw>