uma for acpi object cache
Jung-uk Kim
jkim at FreeBSD.org
Mon Jan 28 18:42:24 UTC 2013
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 2013-01-26 03:30:27 -0500, Andriy Gapon wrote:
> on 25/01/2013 10:38 Andriy Gapon said the following:
>> on 24/01/2013 22:33 Jung-uk Kim said the following:
>>> On 2013-01-24 13:49:07 -0500, Andriy Gapon wrote:
>>>> on 24/01/2013 20:29 Jung-uk Kim said the following:
>>>>> When utcache.c works, it works fairly well, actually. :-)
>>>
>>>> Well, my primary motivation for the patch is all the reports
>>>> about mysterious panics that seem to involve the cache:
>>>> http://thread.gmane.org/gmane.os.freebsd.devel.acpi/7562
>>>> http://thread.gmane.org/gmane.os.freebsd.devel.acpi/7613
>>>> http://thread.gmane.org/gmane.os.freebsd.devel.acpi/7077
>>>
>>>> There were a few more reports with the same theme. I hoped
>>>> that using uma(9) instead of hand-rolled code would lead to
>>>> better diagnostic and debugging cabilities.
>>>
>>> Hmm... I am not really sure local cache is to blame here. If
>>> you really want to prove your theory, I think a simple
>>> modification to utcache.c should do:
>>>
>>> Cache->LinkOffset = 8; Cache->ListName = CacheName;
>>> Cache->ObjectSize = ObjectSize; - Cache->MaxDepth =
>>> MaxDepth; + Cache->MaxDepth = 0;
>>>
>>> *ReturnCache = Cache; return (AE_OK);
>>>
>>> This should effectively kill object caching.
>>
>> That's a very simple trick, I wonder why I didn't think about it
>> :-) Now I need to wait until one of the reporters resurfaces.
>
> And just to clarify - I didn't and don't suspect the cache code
> itself. I suspect some code that uses the cache (directly or
> indirectly) - something like double-free or use-after-free, etc.
I haven't tried it for ages but ACPI_DBG_TRACK_ALLOCATIONS was meant
to track such problems. Try adding it in acfreebsd.h.
Jung-uk Kim
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (FreeBSD)
iQEcBAEBAgAGBQJRBsY6AAoJECXpabHZMqHO/sYH/0T/Imtxw70IwN5Ri7qP2C0G
+zkZeUosV8hUI8xmXOdQMtyYhBXQprAoewXvAAnx0iCTLYtjNDt0lMGvoyyMDqOW
bwupzYE+6GhaTDDc+8bfSxxMbDXgXqFuIqkohBnZPAQ7GdfLNwY2KHwGlA6T+o/s
XailQ+sq9zN4VJ6SDoNAvpi1+O9FsO1GJBfnIihdY/S8b99n2ffpOO2XcAIIPwCE
huxWnZ/GYVPmoVuvEKyc7CzzsGxRZfdQpJ5e7oPvwM5JAG7GEmc1VzRDPBtCFBWL
VO3sBH3ObKX2+H0LhU9tskCVsmuzD0U+/ygF3P8NRkuLP7Y/yQiAWIoZeEr1saI=
=05h0
-----END PGP SIGNATURE-----
More information about the freebsd-acpi
mailing list