Date: Thu, 12 Nov 1998 22:05:37 -0800 (PST) From: dev@opensound.com To: freebsd-gnats-submit@FreeBSD.ORG Subject: i386/8673: bug in vm_page_alloc_contig() Message-ID: <199811130605.WAA27418@hub.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 8673 >Category: i386 >Synopsis: bug in vm_page_alloc_contig() >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Nov 12 22:10:00 PST 1998 >Last-Modified: >Originator: Dev Mazumdar >Organization: 4Front Technologies >Release: FreeBSD 3.0 RELEASE >Environment: FreeBSD freebsd.opensound.com 3.0-RELEASE FreeBSD 3.0-RELEASE #1 Sat Nov 7 12:58:15 PST 1998 root@freebsd.opensound.com:/usr/src/sys/compile/SOUND i386 >Description: FreeBSD 3.0 crashes while calling vm_page_alloc_contig(). The problem can be simply reproduced using an LKM in /usr/share/examples/lkm/syscall to call vm_page_alloc_contig to allocate 64K of kernel memory. >How-To-Repeat: The following steps are required to reproduce this problem: 1) FTP the LKM example from ftp://ftp.4front-tech.com/ossapps/modtest.tar.gz (or use anonymous FTP to ftp.4front-tech.com and look for modtest.tar.gz in ossapps directory) 2) extract the package modtest.tar.gz in your home or temp directory. 3) reboot freebsd and from the console (do not run X windows) type make load in the modules directory and you can see that the module compiles and loads properly. type make unload to unload this module. 4) now start Xwindows, then start your window manager and finally start Netscape 4.x. Now repeat step 2 and you will see that the system hangs. For those who have enabled the Kernel debugger - enabled options KTRACE options DDB in the Kernel config file in /sys/i386/conf/GENERIC you can get the trace of the kernel calls by doing the following: 1) Reboot FreeBSD, press <alt F2> to switch to a new Virtual Terminal and start Xwindows and then switch to the first virtual terminal (ctl-alt-f1) and set the DISPLAY environment variable to localhost:0 (in bash type: typeset -x DISPLAY=localhost:0 in csh type: setenv DISPLAY localhost:0) 2) Now run netscape from this VC - type netscape &. Switch to the X Windows session (Alt F4) and check if Netscape is started. 3) Switch back to the first VT (ctl-alt-F1) and type make load at this point you should have a kernel panic and you should drop into the db> prompt. Now type trace and you should see the following output: _spc_free(0) at _spc_free + 0x6 _swap_pager_put_pages(XXXX) at _default_pager_put_pagers + 0x56 _vm_pager_put_pages(XXXX) at _vm_pager_put_pages + 0x22 _vm_pageout_flush(XXXX) at _vm_pageout_flush + 0x2e _contigmalloc1(XXXX) at _contigmalloc1 + 0x2ad _vm_page_alloc_contig(XXXX) at _vm_page_alloc_contig + 0x23 .... .... >Fix: No fixes available yet....this message has been also sent to freebsd-core@freebsd.org. >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?199811130605.WAA27418>
