Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 25 Sep 2007 15:38:31 -0400
From:      Jung-uk Kim <jkim@FreeBSD.org>
To:        freebsd-current@FreeBSD.org
Cc:        freebsd-acpi@FreeBSD.org, John Baldwin <jhb@FreeBSD.org>
Subject:   Re: [PATCH] OsdSynch.c modernization
Message-ID:  <200709251538.33353.jkim@FreeBSD.org>
In-Reply-To: <46F7EDD6.4010508@root.org>
References:  <200709181516.11207.jkim@FreeBSD.org> <200709241259.01518.jkim@FreeBSD.org> <46F7EDD6.4010508@root.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Monday 24 September 2007 01:03 pm, Nate Lawson wrote:
> Jung-uk Kim wrote:
> > (At least on my laptop) I found the malloc() was called from our
> > code, i.e., AcpiOsExecute() from OsdSched.c.  I'll try something
> > shortly cause I was going to rewrite the file anyway.
>
> Yep, that's because we need a task structure that's different for
> each call and acpi-ca doesn't like the "pending" argument (see
> OsdSchedule.c).  One fix for this is to just use a hack and cast
> the fn to discard the extra arg.  Not sure this would work.

I quickly tested it but didn't work. :-(

Actually it is not just pending argument but struct task itself has to 
be allocated.  I did crude hack to see if it is possible to have it 
working with spin mutex gracefully.  It can be done if we 
pre-allocate some space for the tasks and use fast taskqueue.  Does 
it make sense to you?

Thanks,

Jung-uk Kim



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