From owner-freebsd-current@freebsd.org Tue Mar 9 21:46:14 2021 Return-Path: Delivered-To: freebsd-current@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 5AC77572A3D for ; Tue, 9 Mar 2021 21:46:14 +0000 (UTC) (envelope-from david@catwhisker.org) Received: from mailman.nyi.freebsd.org (unknown [127.0.1.3]) by mx1.freebsd.org (Postfix) with ESMTP id 4Dw80k1G7vz3Ksj for ; Tue, 9 Mar 2021 21:46:14 +0000 (UTC) (envelope-from david@catwhisker.org) Received: by mailman.nyi.freebsd.org (Postfix) id 2B440572867; Tue, 9 Mar 2021 21:46:14 +0000 (UTC) Delivered-To: current@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 2B0A5572866 for ; Tue, 9 Mar 2021 21:46:14 +0000 (UTC) (envelope-from david@catwhisker.org) Received: from mx.catwhisker.org (mx.catwhisker.org [107.204.234.170]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4Dw80h5Y6Gz3Kmf for ; Tue, 9 Mar 2021 21:46:12 +0000 (UTC) (envelope-from david@catwhisker.org) Received: from albert.catwhisker.org (localhost [127.0.0.1]) by albert.catwhisker.org (8.16.1/8.15.2) with ESMTP id 129Lk9F9039374; Tue, 9 Mar 2021 21:46:09 GMT (envelope-from david@albert.catwhisker.org) Received: (from david@localhost) by albert.catwhisker.org (8.16.1/8.16.1/Submit) id 129Lk9NU039373; Tue, 9 Mar 2021 13:46:09 -0800 (PST) (envelope-from david) Date: Tue, 9 Mar 2021 13:46:09 -0800 From: David Wolfskill To: Warner Losh , FreeBSD Current Subject: Re: "panic: malloc(M_WAITOK) with sleeping prohibited" at main-n245363-b3dac3913dc9 Message-ID: Mail-Followup-To: David Wolfskill , Warner Losh , FreeBSD Current References: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="RDao9UEPN9P/3u9T" Content-Disposition: inline In-Reply-To: X-Rspamd-Queue-Id: 4Dw80h5Y6Gz3Kmf X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of david@catwhisker.org designates 107.204.234.170 as permitted sender) smtp.mailfrom=david@catwhisker.org X-Spamd-Result: default: False [-5.40 / 15.00]; ARC_NA(0.00)[]; RBL_DBL_DONT_QUERY_IPS(0.00)[107.204.234.170:from]; FREEFALL_USER(0.00)[david]; FROM_HAS_DN(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:107.204.234.170:c]; NEURAL_HAM_LONG(-1.00)[-1.000]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; RCVD_TLS_LAST(0.00)[]; DMARC_NA(0.00)[catwhisker.org]; SPAMHAUS_ZRD(0.00)[107.204.234.170:from:127.0.2.255]; TO_MATCH_ENVRCPT_SOME(0.00)[]; TO_DN_ALL(0.00)[]; NEURAL_HAM_SHORT(-1.00)[-1.000]; RCPT_COUNT_TWO(0.00)[2]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; SIGNED_PGP(-2.00)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ASN(0.00)[asn:7018, ipnet:107.192.0.0/12, country:US]; RCVD_COUNT_TWO(0.00)[2]; MAILMAN_DEST(0.00)[current] X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Mar 2021 21:46:14 -0000 --RDao9UEPN9P/3u9T Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Mar 09, 2021 at 01:23:16PM -0800, David Wolfskill wrote: > On Tue, Mar 09, 2021 at 01:53:37PM -0700, Warner Losh wrote: > > ... > > The following reviews should fix this. It introduces a no-wait variant = for > > disk_alloc(), provides a way to free allocated, but not created, disks = and > > changes CAM to use the new routines and take some care for not leaking = when > > an allocation fails. > >=20 > > https://reviews.freebsd.org/D29161 > > https://reviews.freebsd.org/D29162 > > https://reviews.freebsd.org/D29163 > >=20 > > Maybe you can try it? I got similar tracebacks when I booted w/o these > > changes, but not a peep with them... > > ... >=20 > Thanks! >=20 > They applied cleanly; building now -- both on the build machine (which > failed earlier) and on the newer laptop (which did not fail earlier, as > it's good to find out if a change has broken somehing that had been > working). > .... The laptop still works: FreeBSD g1-48.catwhisker.org 14.0-CURRENT FreeBSD 14.0-CURRENT #169 main-n2= 45338-221622ec0c8e-dirty: Mon Mar 8 03:50:50 PST 2021 root@g1-48.catwh= isker.org:/common/S4/obj/usr/src/amd64.amd64/sys/CANARY amd64 1400005 1400= 005 FreeBSD g1-48.catwhisker.org 14.0-CURRENT FreeBSD 14.0-CURRENT #170 main-n2= 45363-b3dac3913dc9-dirty: Tue Mar 9 05:06:34 PST 2021 root@g1-48.catwh= isker.org:/common/S4/obj/usr/src/amd64.amd64/sys/CANARY amd64 1400005 1400= 005 FreeBSD g1-48.catwhisker.org 14.0-CURRENT FreeBSD 14.0-CURRENT #170 main-n2= 45363-b3dac3913dc9-dirty: Tue Mar 9 05:06:34 PST 2021 root@g1-48.catwh= isker.org:/common/S4/obj/usr/src/amd64.amd64/sys/CANARY amd64 1400005 1400= 005 The build nmachine (still?) panics: =2E.. pass3: 600.000MB/s transfers (SATA 3.x, UDMA5, PIO 8192bytes) pass3: Command Queueing enabled pass4 at ahcich4 bus 0 scbus4 target 0 lun 0 pass4: ACS-2 ATA SATA 3.x device pass4: Serial Number 000000001242091982C2 pass4: 600.000MB/s transfers (SATA 3.x, ugen2.2: at usbus2 UDMA5, PIO 8192bytes) pass4: Command Queueing enabled uhub4 on uhub1 pass5 at ahciem0 bus 0 scbus5 target 0 lun 0 uhub4: on = usbus2 Root mount waiting for:pass5: usbus0 usbus= 1 usbus2ugen0.2: at usbus0 CAM SEMB S-E-S 2.00 device uma_zalloc_debug: zone "malloc-1024"umass0 on uhub2 with the following non-sleepable locks held: umass0: on usbus0 exclusive sleep mutex CAM device lockumass0: SCSI over Bulk-Only; quirks = =3D 0x4000 (CAM device lock) r =3D 0 (0xfffff800122c9cd0) locked @ /usr/src/sys/cam/c= am_xpt.c:2333 umass0:6:0: Attached to scbus6 stack backtrace: (probe0:umass-sim0:0:0:0): Down reving Protocol Version from 2 to 0? #0 0xffffffff80c7cce1 at witnesuhub3: 6 ports with 6 removable, self powered s_debugger+0x71 pass6 at umass-sim0 bus 0 scbus6 target 0 lun 0 #1 0xffffffff80pass6: uhub4: 8 ports with 8 removable, self powered c7ddfd at witness_warn+0x40d #2 Removable Direct Access SCSI device 0xffffffff80f42fe6 at uma_zallpass6: Serial Number 20100818841300000 oc_arg+0x46 #3 0xffffffff80be34pass6: 40.000MB/s transfers panic: malloc(M_WAITOK) with sleeping prohibited cpuid =3D 1 time =3D 22 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe00e157a= 2d0 vpanic() at vpanic+0x181/frame 0xfffffe00e157a320 panic() at panic+0x43/frame 0xfffffe00e157a380 malloc_dbg() at malloc_dbg+0xd4/frame 0xfffffe00e157a3a0 malloc() at malloc+0x34/frame 0xfffffe00e157a400 g_post_event_x() at g_post_event_x+0x5a/frame 0xfffffe00e157a450 g_post_event() at g_post_event+0x48/frame 0xfffffe00e157a4b0 disk_create() at disk_create+0x16f/frame 0xfffffe00e157a600 daregister() at daregister+0x70a/frame 0xfffffe00e157a880 cam_periph_alloc() at cam_periph_alloc+0x57b/frame 0xfffffe00e157a950 daasync() at daasync+0x2c2/frame 0xfffffe00e157a9c0 xpt_async_process_dev() at xpt_async_process_dev+0x152/frame 0xfffffe00e157= aa10 xpt_async_process() at xpt_async_process+0x334/frame 0xfffffe00e157ab20 xpt_done_process() at xpt_done_process+0x3a3/frame 0xfffffe00e157ab60 xpt_done_td() at xpt_done_td+0xf5/frame 0xfffffe00e157abb0 fork_exit() at fork_exit+0x80/frame 0xfffffe00e157abf0 fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe00e157abf0 --- trap 0, rip =3D 0, rsp =3D 0, rbp =3D 0 --- KDB: enter: panic [ thread pid 17 tid 100095 ] Stopped at kdb_enter+0x37: movq $0,0x128b8ce(%rip) db>=20 I'm willing to "poke at it" a bit, given a hint or two... Peace, david --=20 David H. Wolfskill david@catwhisker.org It is supremely disingenuous to claim a lack of jurisdiction, then =20 proceed to participate in a decision on the same matter. See https://www.catwhisker.org/~david/publickey.gpg for my public key. --RDao9UEPN9P/3u9T Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQGTBAEBCgB9FiEE4owz2QxMJyaxAefyQLJg+bY2PckFAmBH7KFfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUy OEMzM0Q5MEM0QzI3MjZCMTAxRTdGMjQwQjI2MEY5QjYzNjNEQzkACgkQQLJg+bY2 PcmzkQf+M8TfbJwzZjfmp15cTlAPxNf6V6o7mQWA7espcRALoklaM47zEAveoXgX ExlDeeIgwhGPem/rbZfLayPH+KseOTPi+In7R9XYbadR4SdEgEaSZjLc77YnvxMh tB9cLTCJCYMs0fAV/iMxLYFpVM1m9k+P5ysHq7I3M3ZfK/PHZpQqcgC7ftwmueBg p63RzdLBfZpuW7MLBeC5XFI+kA+JjBFqVyHIo7jWMoUIWXIXj1FTPSTimEEiuruw dZqHf4AWbD2AZCBkRc8VqV4FwnmtJO4lRQ85LTj69JkyyNDHDAGZR3hvx9YMYzPu xdlN6ZhOiFmFDhBMcGtSzK0AF8m5JQ== =u8sR -----END PGP SIGNATURE----- --RDao9UEPN9P/3u9T--