Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 17 Jan 2007 23:30:25 +0100
From:      Divacky Roman <xdivac02@stud.fit.vutbr.cz>
To:        Scot Hetzel <swhetzel@gmail.com>
Cc:        emulation@freebsd.org, Alexander Leidinger <Alexander@leidinger.net>
Subject:   Re: linuxolator: fatal trap 12 when compiling libX11
Message-ID:  <20070117223025.GA21199@stud.fit.vutbr.cz>
In-Reply-To: <790a9fff0701170955o5674c8feu98117320a72e63ef@mail.gmail.com>
References:  <790a9fff0701151314x6dd48ecbg90a54729813e84e@mail.gmail.com> <20070116080015.8dus0vamssso0sww@webmail.leidinger.net> <790a9fff0701161005t75222f2l439e8c0c1153ffd2@mail.gmail.com> <20070116181839.GA80994@stud.fit.vutbr.cz> <790a9fff0701161317q74b28955jf61b6e9651168a36@mail.gmail.com> <20070116221150.GA9429@stud.fit.vutbr.cz> <790a9fff0701162000s5f48d51fk2e5a4a74bd7021f9@mail.gmail.com> <20070117091530.GA48578@stud.fit.vutbr.cz> <790a9fff0701170955o5674c8feu98117320a72e63ef@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
>  td_flags = 0x5000002,

this flags show...
#define TDF_SCHED0      0x01000000 /* Reserved for scheduler private use */
#define TDF_SCHED2      0x04000000 /* Reserved for scheduler private use */


I am no expert but I quickly looked at the sources and this doesnt seem to be
possible to be set (if its possible please someone tell em).

what scheduler are you using? if you use the other one can you reproduce
the panic?


can you try this patch (added to the pathces you already have):

the locking there sucks, I'll have to revisit it together with
the LIST magic ;(

Index: linux_emul.c
===================================================================
RCS file: /home/ncvs/src/sys/compat/linux/linux_emul.c,v
retrieving revision 1.12
diff -u -r1.12 linux_emul.c
--- linux_emul.c        7 Jan 2007 19:09:20 -0000       1.12
+++ linux_emul.c        17 Jan 2007 22:28:51 -0000
@@ -91,11 +91,11 @@
                        struct linux_emuldata_shared *s;

                        s = malloc(sizeof *s, M_LINUX, M_WAITOK | M_ZERO);
-                       em->shared = s;
                        s->refs = 1;
                        s->group_pid = child;

                        LIST_INIT(&s->threads);
+                       em->shared = s;
                }
                p = pfind(child);
                KASSERT(p != NULL, ("process not found in proc_init\n"));

roman



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070117223025.GA21199>