From owner-freebsd-net@freebsd.org Mon Oct 15 05:17:31 2018 Return-Path: Delivered-To: freebsd-net@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A061D10CF17D; Mon, 15 Oct 2018 05:17:31 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pl1-x635.google.com (mail-pl1-x635.google.com [IPv6:2607:f8b0:4864:20::635]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0B7C883D9F; Mon, 15 Oct 2018 05:17:31 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pl1-x635.google.com with SMTP id w14-v6so8679216plp.6; Sun, 14 Oct 2018 22:17:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=Ue591ACZfruCoeON4OVPgYnYMFSwcgM3IP2nLku+EUE=; b=j4VX3eKgsQkt7bK7tDsqQY5dFgT1zXGoyOS9A4rEyOcMEf9k4XH2lVj4+t4Jwhf5Si /3Ix5jnQm52e3NXO8oiSKdAgSyNa5u6p0CLGS9tknhAC+5Nr4XTD0O8ox6KIJq4iwwIE /U/HGJlaD77TAYFP8SmRgD7Z1TKFmRgd6Gx8PWIuGO4cIBu3YxHe1vaWvAVC4EqLCuGx VDRh2LjnSXTH1GVoFQ4a7T/0rvTby9+76XVXDuiPgir5v983brk9E4v8xiVyfLL7K1cR Bkpae7zkYMCKzw9FDiBR8eZWgY05Y+YSYoCuxAOeth06JpG7qWDt2/nxW8RoPelIo5OJ KgNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=Ue591ACZfruCoeON4OVPgYnYMFSwcgM3IP2nLku+EUE=; b=ghfnsqK7ZyYnb6d0C/ZQR7SuvhWP/VKUiTEgNQRMcRWlKdAIgiqrtWYPdI3zUqJfoh jdaj+LE10XsAhtOqX2b4SDbbwLMixn82yL6OUa0JjvcAqitY/91drWv1erD24yP2Zphl P2hu0OdYrsfTYvZRfN+ncEKucBJLmoFJR99Nx8h9TK4OKVJn9KtpkEybAKTpN/l41f+2 ndR2r1JxMlaeEXMKTd4tq7+w6z/JiPAzI4AhGdM8BzJXtX9Vg8lxU8DjI4gAdfalw7RA r39cxcNsDcuxbQDXhxHpdD/TUBzXjIsSSvx0/9vgHuLWn0xeSeHkDzuBOZs9kFtubIxp ITlQ== X-Gm-Message-State: ABuFfoilDqth/YRyGDryI79EYItq3YShP92QQn3L1/64myvr4mN05NQJ QNou9z+fREtHYWI/gl+tq8JyhTw0 X-Google-Smtp-Source: ACcGV60wol/BBopfY4h904BwDOfR7TqoSOhjE7WiUFo/UP/VHxkIW2IB1E50tCwGxrPf9Ph7/HabZA== X-Received: by 2002:a17:902:b943:: with SMTP id h3-v6mr15733508pls.5.1539580649733; Sun, 14 Oct 2018 22:17:29 -0700 (PDT) Received: from [192.168.20.7] (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id 76-v6sm14901689pfk.134.2018.10.14.22.17.28 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 14 Oct 2018 22:17:29 -0700 (PDT) From: "Enji Cooper (yaneurabeya)" Message-Id: Content-Type: multipart/signed; boundary="Apple-Mail=_D585D9C3-E405-4F3C-98D6-58F0052481E1"; protocol="application/pgp-signature"; micalg=pgp-sha256 Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\)) Subject: Re: Relatively deterministic panic with sendfile(2) when running tests in the sxlock code Date: Sun, 14 Oct 2018 22:17:28 -0700 In-Reply-To: Cc: FreeBSD Current , freebsd-net , Jonathan Looney To: Gleb Smirnoff References: <20181015022518.GV1044@FreeBSD.org> <1B58488D-8615-40E8-9115-E26496A6DBCE@gmail.com> X-Mailer: Apple Mail (2.3445.9.1) X-Content-Filtered-By: Mailman/MimeDel 2.1.27 X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2018 05:17:32 -0000 --Apple-Mail=_D585D9C3-E405-4F3C-98D6-58F0052481E1 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Oct 14, 2018, at 10:12 PM, Enji Cooper (yaneurabeya) = wrote: >=20 >> On Oct 14, 2018, at 9:45 PM, Enji Cooper (yaneurabeya) = > wrote: >>=20 >>=20 >>=20 >>> On Oct 14, 2018, at 7:25 PM, Gleb Smirnoff > wrote: >>>=20 >>> Hi Enji, >>>=20 >>> On Sun, Oct 14, 2018 at 06:51:42PM -0700, Enji Cooper (yaneurabeya) = wrote: >>> E> Hi, >>> E> I=E2=80=99m seeing a semi-deterministic panic on 12.0-ALPHA9 = related to sendfile(2) when running sendfile_test on the host: = https://pastebin.com/raw/6Y7xg0ki ; = it looks like it=E2=80=99s crashing in the sxlock code when calling = sblock on a sockbuf. Are there any commands in gdb you would like me to = run to display lock state? >>> E> Repro: >>> E> >>> E> mkdir /path/to/git/checkout >>> E> cd /path/to/git/checkout >>> E> git clone = https://github.com/ngie-eign/freebsd/tree/sendfile_tests = . >>> E> git checkout sendfile_tests >>> E> (cd lib/libc/tests/sys/; make obj; make; sudo make install) >>> E> kyua test -k /usr/tests/lib/libc/sys/Kyuafile sendfile_test >>>=20 >>> I'd like to reproduce it myself, but looks like URL is >>> wrong: >>>=20 >>> glebius@erla:/usr/src:|>git clone = https://github.com/ngie-eign/freebsd/tree/sendfile_tests = >>> =D0=9A=D0=BB=D0=BE=D0=BD=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5= =D0=B2 =C2=ABsendfile_tests=C2=BB=E2=80=A6 >>> fatal: repository = 'https://github.com/ngie-eign/freebsd/tree/sendfile_tests/ = ' not found >>=20 >> Mea culpa. It should be: >>=20 >> $ git clone https://github.com/ngie-eign/freebsd.git = . >>=20 >> Another note is that I=E2=80=99m running GENERIC-NODEBUG, not = GENERIC-DEBUG. >>=20 >> I suspect that it=E2=80=99s crashing on :hdtr_negative_bad_pointers = or : s_negative_not_descriptor, because the other items don=E2=80=99t = seem terribly plausible. >>=20 >> The test case (source) can be found here: = https://github.com/ngie-eign/freebsd/blob/95b96470a3a0270c36c4e7fb5eedc150= fe124fac/lib/libc/tests/sys/sendfile_test.c = > Aha! It was actually :s_negative_not_connected_socket. >=20 > Updated repro: use `kyua test -k /usr/tests/lib/libc/sys/Kyuafile = sendfile_test:s_negative_not_connected_socket` instead of the other kyua = call I provided. Oh yipes. I guess passing in a server socket (a bound and listening = socket) instead of a client socket (connect=E2=80=99ed to a server = socket) for `s` will result in a crash? =46rom = https://github.com/ngie-eign/freebsd/blob/95b96470a3a0270c36c4e7fb5eedc150= fe124fac/lib/libc/tests/sys/sendfile_test.c#L479 = : ATF_TC_BODY(s_negative_not_connected_socket, tc) { int client_sock, error, fd, port; port =3D XXX_TEST_PORT_BASE + __LINE__; client_sock =3D setup_tcp_server(XXX_TEST_DOMAIN, port); fd =3D open(SOURCE_FILE, O_CREAT|O_RDWR); ATF_REQUIRE_MSG(fd !=3D -1, "open failed: %s", strerror(errno)); error =3D sendfile(fd, client_sock, 0, 0, NULL, NULL, = SF_FLAGS(0, 0)); ATF_REQUIRE_ERRNO(ENOTCONN, error =3D=3D -1); (void)close(fd); (void)close(client_sock); } Let me see if I can track this down.. Thanks! -Enji --Apple-Mail=_D585D9C3-E405-4F3C-98D6-58F0052481E1 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEE5bk3FaGcY5rvqmb79YOpJmkwhhUFAlvEIugACgkQ9YOpJmkw hhUYFRAAlRnEdZpDGsLstcFZokAM3J4Q9DG9mgz5/bgpo4knQe0VXBm2F43WQVsk YdvrgR7ynX3rWBcMTQayJ2WpVt+mhhLrjOBClvqC4J6IbjHCiCpTgnUqkDQ0PQDx qIngELPRP1y36dU/MQkOl9Pu6dhDZ4l7guqiVOelVeoO2HPGQlUziF+xayihLThc +ZQ4GvV8GzYDuIx7Kvllktfpm07HMh+kbMJw0rIF/bUIo8C8gYVFUFSRnLvx0HsH 9H90cRTP/ZvgCKqiydRcsxwzUA77K+oqCsqIbYVzIlqwcxQp6w9tRbKhdhLbgiEX z8k+EQhXd/TXvKxNlZ0Yf4SwM1vPaCOeExPVYVb9c+KqkZ78GnVPZSoaQr31Tvrr 1JzeIQo7WAglO4+WlQGcy82t1GXXOHUaNNLvtCwFwZ33Vi0oOMpsJxPEXY4Rs5eA 6gmmKy/KjLnKQjHDHCOusRz0hXD0n44tQLDh3N9uk8+DGAm1y0APAkmcmn8fhF/y OzpdRyKFLmqonWR7Jj4pCY/c+anAvLzTovgvjqL33cWd3klMj8JoqpFtWs782L+6 oLTfkGDA1+rYKblYHhiizwDPcnRst6dmtRIzXhhFT8QSqOOSvWOCGccpw1pUjd0W lCVKJimpzqt5PzoTBT3uiRNiS5wtwdI7dWEF2Nh59iMtKWBrY5k= =1+Em -----END PGP SIGNATURE----- --Apple-Mail=_D585D9C3-E405-4F3C-98D6-58F0052481E1--