Date: Mon, 2 Jul 2012 18:32:32 -0400 From: Alexander Kabaev <kabaev@gmail.com> To: Yuri <yuri@rawbw.com> Cc: freebsd-hackers@FreeBSD.org Subject: Re: System is flooded with failed read(2) calls: Resource temporarily unavailable (errno=35) coming from xorg unix socket Message-ID: <20120702183232.037dda59@kan.dyndns.org> In-Reply-To: <4FEE0D2F.4010808@rawbw.com> References: <4FEE0D2F.4010808@rawbw.com>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --]
On Fri, 29 Jun 2012 13:16:47 -0700
Yuri <yuri@rawbw.com> wrote:
<SKIP>
> # Declare DTrace script
> #
> if ($COUNT) { # aggregate style
> $dtrace = <<END;
> /usr/sbin/dtrace -n '
> #pragma D option quiet
> syscall:::return
> /errno != 0 && pid != \$pid $FILTER/
> {
> \@Errs[execname, probefunc, errno] = count();
> }
> dtrace:::END {
> printa("%s %s %d %\@d\\n", \@Errs);
> }'
> END
Pardon my possibly naive question, but isn't using errno to detect
whether the syscall is succesful a wrong techique? Syscall will NOT
change errno unless unless it actually failed, so unless dtrace's errno
emulation is more magic than I thought, your script will mistakenly
attribute error code coming from a distant past to syscalls just
complete with no errors?
--
Alexander Kabaev
[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (FreeBSD)
iD8DBQFP8iGFQ6z1jMm+XZYRArNDAJ9oo+vJ6KbVEWIlYrI7K0sx7KaQ2gCdHKUs
0KRbUNhVYkzCXZ2dE1xIaII=
=VMIB
-----END PGP SIGNATURE-----
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120702183232.037dda59>
