Date: Fri, 13 Jul 2007 03:27:51 -0500 From: "Scot Hetzel" <swhetzel@gmail.com> To: "Craig Boston" <craig@yekse.gank.org>, "Juergen Lock" <nox@jelal.kn-bremen.de>, freebsd-emulation@freebsd.org, freebsd-ports@freebsd.org Subject: Re: experimental qemu-devel port update, please test! Message-ID: <790a9fff0707130127v22c7d567rcd52488a8ecb34a1@mail.gmail.com> In-Reply-To: <20070712180750.GB77654@nowhere> References: <20070702203027.GA45302@saturn.kn-bremen.de> <46925324.9010908@freebsd.org> <3bbf2fe10707091140h6cdc7469nac5be03a8c8a60cb@mail.gmail.com> <200707092000.29768.dfr@rabson.org> <200707092149.l69LnXe9023835@saturn.kn-bremen.de> <20070712175252.GA77654@nowhere> <20070712180750.GB77654@nowhere>
next in thread | previous in thread | raw e-mail | index | archive | help
On 7/12/07, Craig Boston <craig@yekse.gank.org> wrote: > Aha! The problem isn't that curproc is garbage, but rather that it's > being interpreted wrong. > > struct proc has some extra fields when KSE is #defined. KSE recently > became a kernel option and was put in the DEFAULTS file, so everyone's > kernel has it defined. But kqemu is being compiled without it. > > I compiled with -DKSE and now kqemu works! > > This seems like it would be a common problem for modules compiled > outside the kernel tree. Is there an established way to get the > standard configuration options? > > I'm thinking also about other options like SMP, that for instance > changes the way mutexes work. > Add the following option to the kernel configuration file: # This allows you to actually store this configuration file into # the kernel binary itself, where it may be later read by saying: # strings -n 3 /boot/kernel/kernel | sed -n 's/^___//p' > MYKERNEL # options INCLUDE_CONFIG_FILE # Include this file in kernel Then add the following to the kernel module port: BOOTFILE!= sysctl -n kern.bootfile .if !defined(KOPTION_KSE) . if ${OSVERSION} > 700040 #KOPTION_KSE!= if ${SYSCTL} -b kern.conftxt | grep KSE ; then echo "yes" ; fi KOPTION_KSE!= if config -x ${BOOTFILE} | grep KSE ; then echo "yes" ; fi . else KOPTION_KSE!= if strings -n 3 ${BOOTFILE} | grep KSE ; then echo "yes" ; fi . endif .endif .if ${KOPTION_KSE} == yes CFLAGS+= -DKSE .endif Scot -- DISCLAIMER: No electrons were mamed while sending this message. Only slightly bruised.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?790a9fff0707130127v22c7d567rcd52488a8ecb34a1>