Skip site navigation (1)Skip section navigation (2)
Date:      29 Jan 2002 12:23:07 +1200
From:      Benno Rice <benno@FreeBSD.org>
To:        Andrew Gallatin <gallatin@cs.duke.edu>
Cc:        freebsd-ppc@freebsd.org
Subject:   Re: compiler problems?
Message-ID:  <1012263788.366.3.camel@ratchet.jeamland.net>
In-Reply-To: <15441.44292.152925.217766@grasshopper.cs.duke.edu>
References:  <15441.43775.191953.219307@grasshopper.cs.duke.edu> <001401c1a5d2$d96bcb40$03e2cbd8@server>  <15441.44292.152925.217766@grasshopper.cs.duke.edu>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
On Sat, 2002-01-26 at 07:07, Andrew Gallatin wrote:
> 
> Server Admin writes:
>  > Is CRITICAL_FORK defined in the scope of that function ?  I'm not familiar
>  > with the code, but I figured that might be a possibility.
>  > 
> 
> Ah.. Duh!  Thanks for making me hunt down the define of CRITICAL_FORK.
> I was assuming it was constant & gcc was complaining about assigning
> into td->td_savecrit.  But CRITICAL_FORK is defined like this:
> 
> cpufunc.h:#define      CRITICAL_FORK	 (mfmsr() |= PSL_EE)
> 
> And gcc is correctly complaining about |='ing a function return.
> 
> Now I need to learn something about ppc so I know what the heck
> mfmsr is ;)

mfmsr stands for Move From Machine Status Register.  PSL_EE is a
constant that represents the Exception Enable bit in the Machine Status
Register.  That bit's used for enabling things like external interrupts,
so what that's doing is returning the current MSR state but with
interrupts enabled.

Thanks for finding that one by the way. =)

-- 
Benno Rice
benno@FreeBSD.org

[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (FreeBSD)
Comment: For info see http://www.gnupg.org

iEYEABECAAYFAjxV62sACgkQXjRwWofFmQnJAgCeOwNoCShma9FHfVY3JKmpKbj2
in0An1AxoDH4BG5WzRHPUO+pTXnPq61m
=bRN2
-----END PGP SIGNATURE-----
help

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