Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 Feb 2002 12:18:30 -0800
From:      Michael Smith <msmith@freebsd.org>
To:        Magnus B{ckstr|m <b@etek.chalmers.se>
Cc:        current@freebsd.org
Subject:   Re: HEADS UP: ACPI CA updated 
Message-ID:  <200202242018.g1OKIUG00719@mass.dis.org>
In-Reply-To: Your message of "Sun, 24 Feb 2002 20:14:12 %2B0100." <Pine.OSF.4.40.0202241926190.26343-100000@downy.etek.chalmers.se> 

next in thread | previous in thread | raw e-mail | index | archive | help
> Wow!  This did away with the once-a-minute error messages from Notify()s
> on processor objects on my laptop.
> 
> However, I am now getting frequent panics from from a GIANT_REQUIRED
> assertion in kmem_malloc().  kmem_malloc() gets called via malloc() from
> AcpiOsAllocate(), without Giant locked.
> 
> The call to AcpiOsAllocate() happens deep in a AML object evaluation
> in from acpi_tz_thread().
> 
> I tried naively to modify AcpiOsAllocate to grab Giant before malloc()
> and release it afterward, but this appears to be a very bad idea: There
> is a mtx_assert(&Giant, MA_NOTOWNED) in ithread_loop() in kern/kern_intr.c
> which blows up during boot.

Try grabbing Giant in acpi_tz_thread when it wakes up, then dropping it 
again before it goes to sleep.  This is probably a hack, but I'd guess a 
required one for now. 

If that works, send me a diff and I'll commit it with thanks!

Regards,
Mike

-- 
To announce that there must be no criticism of the president,
or that we are to stand by the president, right or wrong, is not
only unpatriotic and servile, but is morally treasonable to 
the American public.  - Theodore Roosevelt



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




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