Dag-Erling Smørgrav wrote: > Ivan Voras <[EMAIL PROTECTED]> writes: >> I'm looking at kern/subr_param.c: >> >> 72 #ifndef MAXFILES >> 73 #define MAXFILES (maxproc * 2) >> 74 #endif >> >> Shouldn't this be at least maxproc*3, for stdin,out,err for every proc? > > Even maxproc * 3 won't be enough, unless none of your processes actually > do anything. > It's just an arbitrary value, based on the assumption that > you will never have maxproc concurrent processes anyway.
Ok.
>
>> Also, it looks like MAXFILES is used only once, and in a bit funny way:
>>
>> 238 maxfiles = MAXFILES;
>> 239 TUNABLE_INT_FETCH("kern.maxfiles", &maxfiles);
>> 240 maxprocperuid = (maxproc * 9) / 10;
>> 241 maxfilesperproc = (maxfiles * 9) / 10;
>
> What's funny about it?
MAXFILES is a macro used only once, where it resolves to (maxproc*2).
It's not technically incorrect, but it looks like it adds noise.
>> Historical reasons?
>
> To a certain degree, yes; MAXFILES used to be a static limit which you
> could only change in your kernel config. It is now a loader tunable
> (though you can still change the default in your kernel config), so the
> MAXFILES macro was replaced with a maxfiles variable wherever it is
> used, and the former is now only used to initialize the latter.
Ok.
signature.asc
Description: OpenPGP digital signature

