building native JDK 1.5.0 and linprocfs witness reports

Yuri Pankov y.pankov at irbis.net.ru
Sun Jul 9 21:00:29 UTC 2006


On Sun, 2006-07-09 at 11:17 +0200, Divacky Roman wrote:
> On Sat, Jul 08, 2006 at 08:27:30PM +0400, Yuri Pankov wrote:
> > Hi.
> > 
> > I've problems compiling native JDK 1.5.0. Posting to this list as it
> > seems related to linprocfs problems (linux-sun-jdk is used for
> > bootstraping). Build fails early in the beginning with "javac"
> > segmentation fault, and here's what I get in dmesg (lots of such
> > messages):
> > malloc(M_WAITOK) of "1024", forcing M_NOWAIT with the
> > following non-sleepable locks held: exclusive sleep mutex vm object
> > (standard object) r = 0 (0xffffff0063434578) locked
> > @ /usr/src/sys/compat/linprocfs/linprocfs.c:835
> 
> this happens because the code locks the vm object which non-sleepable
> mutex to protect it and then subsequent code calls malloc with WAITOK
> which is forbidden in such cases.
> 
> pls, can you try attached patch and tell me whats printed if you reproduce
> the problem? its not meant to fix anything just a info print
> 
> thnx, roman
> 
> Index: linprocfs.c
> ===================================================================
> RCS file: /home/ncvs/src/sys/compat/linprocfs/linprocfs.c,v
> retrieving revision 1.96
> diff -u -r1.96 linprocfs.c
> --- linprocfs.c	27 Jun 2006 20:11:58 -0000	1.96
> +++ linprocfs.c	9 Jul 2006 09:14:55 -0000
> @@ -832,6 +832,7 @@
>  		ino = 0;
>  		if (lobj) {
>  			vp = lobj->handle;
> +			printf("lobj type: %i\n", lobj->type);
>  			VM_OBJECT_LOCK(lobj);
>  			off = IDX_TO_OFF(lobj->size);
>  			if (lobj->type == OBJT_VNODE && lobj->handle) {

I've got a lot of identical messages, so I just grep'ed lobj type from
dmesg.
# dmesg | grep 'lobj type'
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 0
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 0
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 0
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 0
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 2
lobj type: 0

-- 
Yuri



More information about the freebsd-emulation mailing list