From owner-freebsd-net@freebsd.org Wed Jul 8 10:52:49 2020 Return-Path: Delivered-To: freebsd-net@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AD84E35EFF1 for ; Wed, 8 Jul 2020 10:52:49 +0000 (UTC) (envelope-from vegeta@tuxpowered.net) Received: from mailman.nyi.freebsd.org (mailman.nyi.freebsd.org [IPv6:2610:1c1:1:606c::50:13]) by mx1.freebsd.org (Postfix) with ESMTP id 4B1x3P2wnxz3dsF for ; Wed, 8 Jul 2020 10:52:49 +0000 (UTC) (envelope-from vegeta@tuxpowered.net) Received: by mailman.nyi.freebsd.org (Postfix) id 6464535F137; Wed, 8 Jul 2020 10:52:49 +0000 (UTC) Delivered-To: net@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 642C935F029 for ; Wed, 8 Jul 2020 10:52:49 +0000 (UTC) (envelope-from vegeta@tuxpowered.net) Received: from mail-ej1-x62c.google.com (mail-ej1-x62c.google.com [IPv6:2a00:1450:4864:20::62c]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4B1x3N4l0Bz3f66 for ; Wed, 8 Jul 2020 10:52:48 +0000 (UTC) (envelope-from vegeta@tuxpowered.net) Received: by mail-ej1-x62c.google.com with SMTP id p20so49835120ejd.13 for ; Wed, 08 Jul 2020 03:52:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tuxpowered-net.20150623.gappssmtp.com; s=20150623; h=subject:references:from:autocrypt:to:message-id:date:user-agent :mime-version:in-reply-to; bh=YD6qar9DbMxzmN2U75q2KMJwOepaSdvTAyr0idqPZhY=; b=vpvMDI24Ksr+OHm2lpI4tkoCh/Czcb2KJT1gJf2pAyRqGUgnEEKiSA4MYGW3nFf2IO ESI1fGhG+qbXRuIdcJOJwIV+K9nDyflPxarGPaYVGDD3OAV3clp6kPm69btTLAHeWZJo JZ0ogsvayrlUAESBSN48Vr2siMytQG+RWzcYh7gaRriOgqquw6n7LPE/W0pYN5yrizkQ wGZIr2SKf5XxGpmT+B8qGrVEMgCQW5hhGNWPoaRdhnKrEIfrm8hL7A/qqbIOPWh6En8x ZrEQLxgYk58HtWWLBvdRC3xlJZ1QtEE39rr3fAd3nzM2EFAgiJwD3iCGNqrXsuoBjlmA YiuQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:references:from:autocrypt:to:message-id :date:user-agent:mime-version:in-reply-to; bh=YD6qar9DbMxzmN2U75q2KMJwOepaSdvTAyr0idqPZhY=; b=Zf6CERpCofx+ahQvzhz1n7wcBov2jvcYLRMElLgGGOvu1+Qwwv/s3Kq3rO/taeq+Pr SlLACqOxCsrYnBwVthgNTt327GRNlYWHeYwnbw2RbWI28EkjW/XJMrfhd8m99LBf0+w8 +Y673375ArxPXtLrDwadYpTZVFGZ7PxoNPJzWLL99+LodTjH9pFUKQb1B5S/fW9fbiMS LpbVnl6QsscaFxhaUXG5DGiSBlJ5SgvI+elW4T8VQIcF3C8I0DPSYAEZn0hg01xcexsi gjXEkUunGRxqFEvo9SU35J8PC/GSBOj3ZiCPyPPujVdt7Ij1q7PgpzabII2ccMRgItNT nsJg== X-Gm-Message-State: AOAM531/UlDJESv8UFVWGG4u68eytLVYBTBFYDhXGMAYJT2azgc4f6DI heXyr/bMiwgiJukRXcQUiL5Vzsr8Bu8= X-Google-Smtp-Source: ABdhPJyHRhVUZCjsPdJRxZq8ZtP03byQKrpiEWwbPMysoK66ruo/wGtr7DxTLOosRuUrQZSSi5/4eA== X-Received: by 2002:a17:906:af43:: with SMTP id ly3mr50001606ejb.381.1594205566280; Wed, 08 Jul 2020 03:52:46 -0700 (PDT) Received: from Proton.local ([2a02:8108:50bf:eb94::597c]) by smtp.gmail.com with ESMTPSA id m14sm1750001ejx.80.2020.07.08.03.52.45 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 08 Jul 2020 03:52:45 -0700 (PDT) Subject: Re: Deadlocks when using pf tags or socket owner matching References: <48de3ee4-ba52-f6a7-b2d7-c7d77a635eb9@tuxpowered.net> From: Kajetan Staszkiewicz Autocrypt: addr=vegeta@tuxpowered.net; keydata= mQGiBELvVycRBADVGZM8mHAsH+R87EBg4O+QTOkL0TjroqamohMlCdBEZgFGcGVoKA9c9Az6 e7xpk90DuaWYrzBKJ+I5drx2ddqdqejLhgNm3QZubE8Cf9cCxBAxnxBZHzmmgVJMOg93lJUQ e9L1BstntodE2xz4jSBB++Zh9eZgRqbn/EICcQmmKwCg9pQfnXRAMr4tFxhsFenxa/JCvFME AK/03irNfB8DezORCfpt7lZuwL5oRJ/TvpoCfwgVkNd6gTLMgSQpKbFytLzAAmRsE+EwVpBo sUzKt4vzmW4bllgPao14TyuVcViah27/da3fHm1HIMkjvro/ONtUivInn+5L33S0meT3KyuK ofwc1A6KucNxhv4rG7RsXuhwZZmQA/0QVni2wq7yc6t15dfCxuDCxG7yXp4pE5Dghp/MMwts leIxJ3JdHaTZ9aIrYT2Rxw8mTXUs89pDi7PCqXA2N4C+RvkoZI0Q6cWs6jHNZGiZRVzkw38r 8ctqtAlcfzlAynX5+Ym9oiNMJ/c/4fAiFrWerMR1rFWDSD56ltQHk0X0oLQsS2FqZXRhbiBT dGFzemtpZXdpY3ogPHZlZ2V0YUB0dXhwb3dlcmVkLm5ldD6IewQTEQgAOwYLCQgHAwIDFQID AxYCAQIeAQIXgAIZARYhBI4RBk5u/YHyZ/QlueO0UK9tezoUBQJd5qIlBQkeucAOAAoJEOO0 UK9tezoUR7cAoIk0VDEW+znh8hbw3zDgnLhKMOj3AJ92fUPkB7huUEtUHtnjJWXNlHAnqLkB DQRC71cpEAQAjXEOKfj9O4eYTWcifEApMYzel9+aWmhNRqqUhJuNO40UDF73biRJ0cjd8miV hZGxcqIdjnZUmxn8Okr+ta7ZU4Q2KNw7B23VKd1jzDKalaUGtCbv8pnvFdBCJwwzdhHJ2vxr e7zkGMrU4x5Od/92YZRCgX229Ic8y7muveQty4sAAwYD/A/FKDQkIu16GVOu9g8ZBLLBi1HS h2eiem/efmfZS1APR7Q5Ouf6KJMeEgBCKY9yqEp9wg97Bt93oi3zP0H1I8rLmrj5hoEE/VEj Cc4XSQ3qrthmQ9bE8fPDZIgodPG1h+dlOzDQoUxKM/YZdbKmV8VkegbAmEng9rJk90gJ+7Qt iGMEGBEIACMWIQSOEQZObv2B8mf0JbnjtFCvbXs6FAUCXhcbkAUJHuo5dwAKCRDjtFCvbXs6 FK0WAJ96lSx5vRW6HaUbplfnVnARDYNo5gCgvYSyV/mBrnEGfUgA5CAx9Jdudog= To: net@FreeBSD.org Message-ID: Date: Wed, 8 Jul 2020 12:52:44 +0200 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <48de3ee4-ba52-f6a7-b2d7-c7d77a635eb9@tuxpowered.net> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="yEzZMLrgxrRIzpZa0bKJrQPIfBrwL7kMf" X-Rspamd-Queue-Id: 4B1x3N4l0Bz3f66 X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=tuxpowered-net.20150623.gappssmtp.com header.s=20150623 header.b=vpvMDI24; dmarc=none; spf=pass (mx1.freebsd.org: domain of vegeta@tuxpowered.net designates 2a00:1450:4864:20::62c as permitted sender) smtp.mailfrom=vegeta@tuxpowered.net X-Spamd-Result: default: False [-4.57 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[tuxpowered-net.20150623.gappssmtp.com:s=20150623]; NEURAL_HAM_MEDIUM(-0.96)[-0.959]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36]; MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[net@freebsd.org]; HAS_ATTACHMENT(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; NEURAL_HAM_LONG(-1.04)[-1.039]; RCVD_COUNT_THREE(0.00)[3]; DMARC_NA(0.00)[tuxpowered.net]; NEURAL_SPAM_SHORT(0.03)[0.028]; DKIM_TRACE(0.00)[tuxpowered-net.20150623.gappssmtp.com:+]; RCVD_IN_DNSWL_NONE(0.00)[2a00:1450:4864:20::62c:from]; SIGNED_PGP(-2.00)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:+,3:~]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; RCVD_TLS_ALL(0.00)[]; MID_RHS_MATCH_FROM(0.00)[] X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 08 Jul 2020 10:52:49 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --yEzZMLrgxrRIzpZa0bKJrQPIfBrwL7kMf Content-Type: multipart/mixed; boundary="kMSNcjkdGcBOG2IAD2bce4HKefCCGnhuE" --kMSNcjkdGcBOG2IAD2bce4HKefCCGnhuE Content-Type: text/plain; charset=utf-8 Content-Language: en-GB Content-Transfer-Encoding: quoted-printable I have forgot to mention my system: it's FreeBSD 11.3-RELEASE-p9 I have also managed to replicate this (or a similar) issue on a test system built with lock debugging and I got this: Jul 8 10:32:07 hwlb-aw-01 kernel: lock order reversal: Jul 8 10:32:07 hwlb-aw-01 kernel: 1st 0xffffffff81850760 pf rulesets (pf rulesets) @ /usr/home/kajetan.staszkiewicz/freebsd.git/sys/netpfil/pf/pf.c:6006 Jul 8 10:32:07 hwlb-aw-01 kernel: 2nd 0xfffff8011f7028a8 tcpinp (tcpinp) @ /usr/home/kajetan.staszkiewicz/freebsd.git/sys/netinet/in_pcb.c:1994 Jul 8 10:32:07 hwlb-aw-01 kernel: stack backtrace: Jul 8 10:32:07 hwlb-aw-01 kernel: #0 0xffffffff806c2390 at witness_debugger+0x70 Jul 8 10:32:07 hwlb-aw-01 kernel: #1 0xffffffff806c222a at witness_checkorder+0xe3a Jul 8 10:32:07 hwlb-aw-01 kernel: #2 0xffffffff8065a01b at __rw_rlock_int+0x8b Jul 8 10:32:07 hwlb-aw-01 kernel: #3 0xffffffff80790af2 at in_pcblookup_hash+0x182 Jul 8 10:32:07 hwlb-aw-01 kernel: #4 0xffffffff81825546 at pf_socket_lookup+0xd6 Jul 8 10:32:07 hwlb-aw-01 kernel: #5 0xffffffff8182af00 at pf_test_rule+0x18c0 Jul 8 10:32:07 hwlb-aw-01 kernel: #6 0xffffffff81826e68 at pf_test+0x15e= 8 Jul 8 10:32:07 hwlb-aw-01 kernel: #7 0xffffffff81826b82 at pf_test+0x130= 2 Jul 8 10:32:07 hwlb-aw-01 kernel: #8 0xffffffff81837b7d at pf_check_in+0= x1d Jul 8 10:32:07 hwlb-aw-01 kernel: #9 0xffffffff80775107 at pfil_run_hooks+0x97 Jul 8 10:32:07 hwlb-aw-01 kernel: #10 0xffffffff8079548e at ip_input+0x3= fe Jul 8 10:32:07 hwlb-aw-01 kernel: #11 0xffffffff80774020 at netisr_dispatch_src+0x80 Jul 8 10:32:07 hwlb-aw-01 kernel: #12 0xffffffff807599af at ether_demux+0x14f Jul 8 10:32:07 hwlb-aw-01 kernel: #13 0xffffffff8075acfa at ether_nh_input+0x34a Jul 8 10:32:07 hwlb-aw-01 kernel: #14 0xffffffff80774020 at netisr_dispatch_src+0x80 Jul 8 10:32:07 hwlb-aw-01 kernel: #15 0xffffffff80759e12 at ether_input+0x62 Jul 8 10:32:07 hwlb-aw-01 kernel: #16 0xffffffff80762da3 at vlan_input+0x2a3 Jul 8 10:32:07 hwlb-aw-01 kernel: #17 0xffffffff80759995 at ether_demux+0x135 pf.c:6006 pf_test(): pd.pf_mtag =3D pf_find_mtag(m); PF_RULES_RLOCK(); if (ip_divert_ptr !=3D NULL && in_pcb.c:1994 in_pcblookup_hash(): } else { INP_RLOCK(inp); if (in_pcbrele_rlocked(inp)) --=20 | pozdrawiam / greetings | Powered by macOS, Debian and FreeBSD | | Kajetan Staszkiewicz | www: http://vegeta.tuxpowered.net | `------------------------^--------------------------------------' --kMSNcjkdGcBOG2IAD2bce4HKefCCGnhuE-- --yEzZMLrgxrRIzpZa0bKJrQPIfBrwL7kMf Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iF0EARECAB0WIQSOEQZObv2B8mf0JbnjtFCvbXs6FAUCXwWlfAAKCRDjtFCvbXs6 FDxDAJ9Arp7gsaZJtsTOIIwNqk9VMelEwwCg9V5wV58/+g6BhNBidfXIV51+bFk= =Rn96 -----END PGP SIGNATURE----- --yEzZMLrgxrRIzpZa0bKJrQPIfBrwL7kMf--