From nobody Tue Nov 7 04:32:21 2023 X-Original-To: current@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4SPb0n5gSmz50VKd for ; Tue, 7 Nov 2023 04:32:25 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from omta001.cacentral1.a.cloudfilter.net (omta001.cacentral1.a.cloudfilter.net [3.97.99.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4SPb0m6jL0z4DXH; Tue, 7 Nov 2023 04:32:24 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; dkim=none; spf=none (mx1.freebsd.org: domain of cy.schubert@cschubert.com has no SPF policy when checking 3.97.99.32) smtp.mailfrom=cy.schubert@cschubert.com; dmarc=none Received: from shw-obgw-4004a.ext.cloudfilter.net ([10.228.9.227]) by cmsmtp with ESMTPS id 00lSrX3HO8jpT0DlHrG6Im; Tue, 07 Nov 2023 04:32:23 +0000 Received: from spqr.komquats.com ([70.66.152.170]) by cmsmtp with ESMTPSA id 0DlGr5waODqGY0DlHrRrqm; Tue, 07 Nov 2023 04:32:23 +0000 X-Authority-Analysis: v=2.4 cv=Cousz10D c=1 sm=1 tr=0 ts=6549bdd7 a=y8EK/9tc/U6QY+pUhnbtgQ==:117 a=y8EK/9tc/U6QY+pUhnbtgQ==:17 a=kj9zAlcOel0A:10 a=BNY50KLci1gA:10 a=YxBL1-UpAAAA:8 a=6I5d2MoRAAAA:8 a=EkcXrb_YAAAA:8 a=5x-zGUr7Tg-4Oi9jobIA:9 a=CjuIK1q_8ugA:10 a=Ia-lj3WSrqcvXOmTRaiG:22 a=IjZwj45LgO3ly-622nXo:22 a=LK5xJRSDVpKd5WXXoEvA:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTP id DC0B21CA; Mon, 6 Nov 2023 20:32:21 -0800 (PST) Received: by slippy.cwsent.com (Postfix, from userid 1000) id A4E1CFA; Mon, 6 Nov 2023 20:32:21 -0800 (PST) X-Mailer: exmh version 2.9.0 11/07/2018 with nmh-1.8+dev Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: "Oleg V. Nauman" cc: FreeBSD Current , manu@freebsd.org Subject: Re: Kernel with INVARIANTS panicing if drm is loaded In-reply-to: <2806934.Tv9pZ1cZgq@moonset.home> References: <2806934.Tv9pZ1cZgq@moonset.home> Comments: In-reply-to "Oleg V. Nauman" message dated "Sun, 05 Nov 2023 19:54:39 +0200." List-Id: Discussions about the use of FreeBSD-current List-Archive: https://lists.freebsd.org/archives/freebsd-current List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-current@freebsd.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Mon, 06 Nov 2023 20:32:21 -0800 Message-Id: <20231107043221.A4E1CFA@slippy.cwsent.com> X-CMAE-Envelope: MS4xfEmWQc77j4vVeukYRAof/WfzHL24VuSbmQwJci7YRaoxYE0FNE1YwhOfEkWxebE5TlVOOB1ntyQpMsRAW+mybliv+TwU30GyUoXvKxwiq5Qxtus7D1JC +w/iKcjVjylWDPoYU9dq0WlAO+uKtB1piMoVhLaIyB4P2PvttTpr/A4aXPvRzUsEi3pykEEII5rNAbUQ3fpcGLslgzLqLI3GPRxXo9eQ2w0EjQHrdeaajhUJ wN6JOQKThei9YgLDVL6BF/6qMcRtz8PhX/JEui/tDyA= X-Spamd-Result: default: False [-1.68 / 15.00]; AUTH_NA(1.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.88)[-0.884]; MV_CASE(0.50)[]; RCVD_IN_DNSWL_LOW(-0.10)[3.97.99.32:from]; MIME_GOOD(-0.10)[text/plain]; RWL_MAILSPIKE_GOOD(-0.10)[3.97.99.32:from]; FROM_HAS_DN(0.00)[]; REPLYTO_EQ_FROM(0.00)[]; DMARC_NA(0.00)[cschubert.com]; RCPT_COUNT_THREE(0.00)[3]; TAGGED_RCPT(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; ARC_NA(0.00)[]; HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com]; RCVD_TLS_LAST(0.00)[]; RCVD_COUNT_THREE(0.00)[4]; TO_DN_SOME(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; R_SPF_NA(0.00)[no SPF record]; FREEMAIL_TO(0.00)[gmail.com]; R_DKIM_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; ASN(0.00)[asn:16509, ipnet:3.96.0.0/15, country:US]; MIME_TRACE(0.00)[0:+]; MLMMJ_DEST(0.00)[current@freebsd.org] X-Rspamd-Queue-Id: 4SPb0m6jL0z4DXH X-Spamd-Bar: - In message <2806934.Tv9pZ1cZgq@moonset.home>, "Oleg V. Nauman" writes: > I am observing kernel panic when entering multiuser mode after sucessful > system boot. It happens when I load CURRENT kernel with INVARIANTS and drm > module loaded ( drm-515-kmod-5.15.118_1 in particular ) . drm module and kene > l > are in sync > > > FreeBSD moonset.home 15.0-CURRENT FreeBSD 15.0-CURRENT #3 main-n266267- > e116e040f309: Sun Nov 5 10:00:51 EET 2023 root@moonset.home:/usr/obj/usr > / > src/amd64.amd64/sys/moonset amd64 > > panic: sleepq_add: td 0xfffff8000203c000 to sleep on wchan 0xfffff800021d8648 > > with sleeping prohibited > ............... > Reading symbols from /boot/kernel/kernel... > Reading symbols from /usr/lib/debug//boot/kernel/kernel.debug... > > Unread portion of the kernel message buffer: > panic: malloc(M_WAITOK) with sleeping prohibited > cpuid = 0 > time = 1699171621 > ............. > __curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:57 > 57 __asm("movq %%gs:%P1,%0" : "=r" (td) : "n" (offsetof(struct > pcpu, > (kgdb) #0 __curthread () at /usr/src/sys/amd64/include/pcpu_aux.h:57 > #1 doadump (textdump=) > at /usr/src/sys/kern/kern_shutdown.c:405 > #2 0xffffffff81e2ec53 in vt_kms_postswitch () from /boot/modules/drm.ko > #3 0xffffffff8043ad6e in vt_window_switch (vw=0xfffff800021d8640) > at /usr/src/sys/dev/vt/vt_core.c:595 > #4 0xffffffff804ec583 in kern_reboot (howto=4) > at /usr/src/sys/kern/kern_shutdown.c:501 > #5 0xffffffff804eccfa in vpanic ( > fmt=0xffffffff808263fb "malloc(M_WAITOK) with sleeping prohibited", > ap=ap@entry=0xfffffe00ce259850) at /usr/src/sys/kern/kern_shutdown.c:970 > #6 0xffffffff804ecb03 in panic (fmt=) > at /usr/src/sys/kern/kern_shutdown.c:894 > #7 0xffffffff804c8a04 in malloc_dbg (vap=, > sizep=, mtp=, flags=) > at /usr/src/sys/kern/kern_malloc.c:540 > #8 0xffffffff804c885c in malloc (size=, > mtp=0xffffffff81e931c0 , flags=) > at /usr/src/sys/kern/kern_malloc.c:641 > #9 0xffffffff81c5a750 in intel_atomic_state_alloc () > from /boot/modules/i915kms.ko > #10 0xffffffff81dfe404 in drm_client_modeset_commit_atomic () > from /boot/modules/drm.ko > #11 0xffffffff81dfe614 in drm_client_modeset_commit_locked () > from /boot/modules/drm.ko > #12 0xffffffff81dfe7a1 in drm_client_modeset_commit () > from /boot/modules/drm.ko > #13 0xffffffff81e41ab3 in drm_fb_helper_restore_fbdev_mode_unlocked () > from /boot/modules/drm.ko > #14 0xffffffff81e2ed91 in vt_kms_postswitch () from /boot/modules/drm.ko > #15 0xffffffff8043ac31 in vt_window_switch (vw=0xfffff80001d3a600, > vw@entry=0xffffffff80a47178 ) > at /usr/src/sys/dev/vt/vt_core.c:612 > #16 0xffffffff8043be0f in vtterm_cngrab (tm=, > tm@entry=) > at /usr/src/sys/dev/vt/vt_core.c:1863 > #17 0xffffffff804893f6 in cngrab () at /usr/src/sys/kern/kern_cons.c:385 > #18 0xffffffff804ecc79 in vpanic ( > fmt=0xffffffff808799a9 "%s: td %p to sleep on wchan %p with sleeping > prohibited", ap=ap@entry=0xfffffe00ce259c20) > at /usr/src/sys/kern/kern_shutdown.c:942 > #19 0xffffffff804ecb03 in panic (fmt=) > at /usr/src/sys/kern/kern_shutdown.c:894 > #20 0xffffffff805465b3 in sleepq_add (wchan=wchan@entry=0xfffff800021d8648, > lock=lock@entry=0xfffff80001823340, > wmesg=wmesg@entry=0xffffffff808b194e "tq_drain", flags=0, > flags@entry=, queue=queue@entry=0) > at /usr/src/sys/kern/subr_sleepqueue.c:326 > #21 0xffffffff804f8efe in _sleep (ident=ident@entry=0xfffff800021d8648, > lock=lock@entry=0xfffff80001823340, priority=priority@entry=0, > wmesg=0xffffffff808b194e "tq_drain", sbt=sbt@entry=0, pr=pr@entry=0, > flags=256) at /usr/src/sys/kern/kern_synch.c:207 > #22 0xffffffff8054cffb in TQ_SLEEP (tq=0xfffff80001823300, > p=0xfffff800021d8648, wm=) > at /usr/src/sys/kern/subr_taskqueue.c:124 > #23 taskqueue_drain (queue=0xfffff80001823300, task=0xfffff800021d8648) > at /usr/src/sys/kern/subr_taskqueue.c:614 > #24 0xffffffff81e2ed35 in vt_kms_postswitch () from /boot/modules/drm.ko > #25 0xffffffff8043ac31 in vt_window_switch (vw=0xfffff800021d8648, > vw@entry=0xfffff800038fb180) at /usr/src/sys/dev/vt/vt_core.c:612 > #26 0xffffffff8043b3b2 in vt_late_window_switch (vw=0xfffff800038fb180) > at /usr/src/sys/dev/vt/vt_core.c:468 > #27 vt_proc_window_switch (vw=0xfffff800038fb180) > at /usr/src/sys/dev/vt/vt_core.c:553 > #28 0xffffffff8043e318 in vt_processkey ( > kbd=0xffffffff80cef898 , vd=0xffffffff80a472c8 , > c=) at /usr/src/sys/dev/vt/vt_core.c:903 > #29 vt_kbdevent (kbd=0xffffffff80cef898 , event=, > arg=0xffffffff80a472c8 ) at /usr/src/sys/dev/vt/vt_core.c:101 > 8 > #30 0xffffffff8078ffcf in atkbd_intr (kbd=0xffffffff80cef898 , > arg=) at /usr/src/sys/dev/atkbdc/atkbd.c:565 > #31 0xffffffff804b1376 in intr_event_execute_handlers (ie=0xfffff800010ece00, > p=) at /usr/src/sys/kern/kern_intr.c:1205 > #32 ithread_execute_handlers (ie=0xfffff800010ece00, p=) > at /usr/src/sys/kern/kern_intr.c:1218 > #33 ithread_loop (arg=arg@entry=0xfffff80001c5aea0) > at /usr/src/sys/kern/kern_intr.c:1306 > #34 0xffffffff804adae2 in fork_exit ( > callout=0xffffffff804b1120 , arg=0xfffff80001c5aea0, > frame=0xfffffe00ce259f40) at /usr/src/sys/kern/kern_fork.c:1160 > #35 > #36 0x0000000000000b88 in ?? () > Backtrace stopped: Cannot access memory at address 0xbc7 > (kgdb) > > > > > > Can you submit a PR for this? GFP_KERNEL is an alias for M_WAITOK, which is verboten when intel_atomic_state_alloc() makes its call to kzalloc(), an alias for kmalloc(). -- Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org e^(i*pi)+1=0