Date: Wed, 19 May 1999 21:42:41 -0700 (PDT) From: aheffner@lakefield.net To: freebsd-gnats-submit@freebsd.org Subject: kern/11795: unload in boot loader can panic when using splash_bmp Message-ID: <19990520044241.6688014D1A@hub.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 11795 >Category: kern >Synopsis: unload in boot loader can panic when using splash_bmp >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed May 19 21:50:00 PDT 1999 >Closed-Date: >Last-Modified: >Originator: Mike Heffner >Release: 3.2-STABLE >Organization: >Environment: FreeBSD enterprise.muriel.penguinpowered.com 3.2-BETA FreeBSD 3.2-BETA #0: Tue May 18 17:34:49 CDT 1999 spock@enterprise.muriel.penguinpowered.com:/usr/src/sys/compile/COOLWHIP i386 >Description: When using splash screens, loading the raw module object code splash_image_data with the file name of the splash screen image, should set the module name (m_name) to that of the image file name. It does within the scope of command_load(), but when leaving this function, the value is lost. When you attempt to unload modules, it will panic while trying to free() the name (mp->m_name) of the splash_image_data module. This panic occurs in mod_discard(). The system will immediately reboot. >How-To-Repeat: Use splash_image_data along with splash_bmp modules, and drop to the command prompt. Enter 'unload' to unload the modules. You should get: panic: free: guard1 fail @ 0x----- < some memory address you can also tell if it will fail when you check dmesg: Preloaded splash_image_data " " at 0xc032709c. should be: Preloaded splash_image_data "/path/to/splash.bmp" at 0xc032709c. >Fix: This might not be the _best_ fix, but it works: You need to change /usr/src/sys/boot/common/module.c with this diff: $ diff module.c.fixed module.c 267c267 < mp->m_name = strdup(name); --- > mp->m_name = name; and then recompile the /usr/src/boot sources. >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990520044241.6688014D1A>