svn commit: r260898 - head/sys/kern

Rui Paulo rpaulo at felyko.com
Mon Jan 20 21:21:23 UTC 2014


On 20 Jan 2014, at 08:32, John Baldwin <jhb at freebsd.org> wrote:

> On Sunday 19 January 2014 18:18:03 Rui Paulo wrote:
>> On 19 Jan 2014, at 17:59, Neel Natu <neel at FreeBSD.org> wrote:
>>> Author: neel
>>> Date: Mon Jan 20 01:59:35 2014
>>> New Revision: 260898
>>> URL: http://svnweb.freebsd.org/changeset/base/260898
>>> 
>>> Log:
>>> Bump up WITNESS_COUNT from 1024 to 1536 so there are sufficient entries
>>> for
>>> WITNESS to actually work.
>> 
>> This value should be automatically tuned...
> 
> How do you propose to do so?  This is the count of locks initialized before 
> witness' own SYSINIT is executed and the array it sizes is allocated 
> statically at compile time.

Witness is never used (witness_cold) until witness_initialise() is called, right?

>  This used to not be a static array, but an
> intrusive list embedded in locks themselves, but we decided to shave a
> pointer off of each lock that was only used for that and to use a statically 
> sized table instead.

Why don’t we start with a static value (say 1024) and then reinitialise and copy array if it doesn’t fit instead of crashing the kernel?

--
Rui Paulo





More information about the svn-src-head mailing list