Date: Tue, 02 Apr 2024 15:21:20 +0000 From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 274375] page fault while load kernel module virtio Message-ID: <bug-274375-227-WRJGWoPCMP@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-274375-227@https.bugs.freebsd.org/bugzilla/> References: <bug-274375-227@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D274375 --- Comment #4 from Zhenlei Huang <zlei@FreeBSD.org> --- (In reply to Mark Johnston from comment #1) > This looks like a problem with DTrace, there is some logic in sdt.ko's kl= dunload > handler to unregister providers, and something's going wrong there. virt= queue.c > defines two rather odd SDT probes, so we're trying to unregister them. That happens when a module file with SDT probes is failed to be loaded by kernel linker. While the kernel try to invoke kld_unload_try event handlers= for it and apparently it should not, as the file is in the progress of loading, i.e. it is partially linked. As for=20 > Note: `kldload virtio.ko` can trigger the panic but `kldload virtio` will= not. kernel linkers will check module named `virtio` firstly and refuse to load = so no bad things happen. But for `virtio.ko` the kernel will load the file and= get all modules in it before it knows `virtio` is present. Proposed fix https://reviews.freebsd.org/D44594. --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-274375-227-WRJGWoPCMP>