[maybe spam] Re: FreeBSD 1.x Binaries Work Except under Chroot

Julian Elischer julian at freebsd.org
Wed Aug 15 10:29:21 UTC 2012


On 8/14/12 6:07 AM, Konstantin Belousov wrote:
> On Mon, Aug 13, 2012 at 06:28:46PM -0700, Julian Elischer wrote:
>> On 8/13/12 3:33 PM, Dan Plassche wrote:
>>> Konstantin,
>>>
>>> My apologies for any confusion.  Your patch solved the problem on
>>> 8.2.  Static and dynamic a.out binaries from 1.1.5.1 are working
>>> normally in a chroot environment now.
>> you will also have to change PID_MAX (spelling?) to be 60000
>> I have considered making this a tunable..
>> If you don't then the shell in the 1.1.5.1 environment will not be
>> able to handle when a child
>> get s a pid of > 16 bits and it will not be able to wait on it. so it
>> will suspend for ever.
>> teh result is that you can not complete  a "make world".
>>
>> last time I tried a "make world" completed in about 1 minute and a kernel
>> (1.1.5.1 GENERIC) compiled in way less than a minute. that was in 7.x
>> days.
>>
>> I'd like to see results under 9.2 on a modern machine.
> I committed today a batch of changes that allowed me to run most of
> the binaries from 1.1.5.1 CD on real amd64 machine.
>
> Below is the pid_max tunable patch. I first thought that it cannot be
> made a writeable sysctl, but then realized that there is nothing wrong
> with having existing process pid be greater then pid_max, as far as it
> is less then PID_MAX.
>
cool..
One thing that may be doing is to have pid_max either inherrited from 
a parent or jail or somehow
influenced by the exec handler.. or  (I know adrian suggested this too.)

for example if you have an ancestor that is an old a.out image then 
maybe the system could do the right thing.
it wouldn't be able to handle it's OWN pid maybe, but it could handle 
children.
hmm maybe that isn't such a good idea...



More information about the freebsd-hackers mailing list