nullfs performance (Re: cvs commit: ports/Mk bsd.emacs.mk bsd.gnome.mk bsd.mail.mk bsd.openssl.mk bsd.port.mk bsd.port.subdir.mk bsd.python.mk bsd.ruby.mk bsd.scons.mk ports/Tools/scripts security-check.awk ports/databases/p5-DBD-Oracle Makefile ports/databases/p5-sqlrelay ...)

Gábor Kövesdán gabor at FreeBSD.org
Sat Aug 19 13:25:44 UTC 2006


Kris Kennaway wrote:
> On Sat, Aug 19, 2006 at 01:24:43PM +0200, G?bor K?vesd?n wrote:
>   
>> Kris Kennaway wrote:
>>     
>>> On Thu, Aug 17, 2006 at 01:45:46PM -0700, Brian Somers wrote:
>>>
>>>  
>>>       
>>>> I guess the missing info might be that things get indirected somewhat.
>>>>
>>>> We check out code into /some/deep/directory/tree.  Then, to protect
>>>> against the 80 character path limitation, we create /tmp/bld.XXXXX/
>>>> and create a scratch -> /tmp/bld.XXXXX symlink in
>>>> /some/deep/directory/tree.
>>>>    
>>>>         
>>> Hmm, could be due to the indirecting I guess...you should be able to
>>> test that pretty easily.
>>>
>>>  
>>>       
>>>> We then do various things like:
>>>>
>>>>    mount -t nullfs /some/deep/directory/tree/src scratch/build/src
>>>>    mount -t nullfs /some/deep/directory/tree/obj scratch/build/obj
>>>>    mount -t devfs devfs scratch/dev
>>>>    mount -t procfs procfs scratch/proc
>>>>
>>>> and do a "OBJDIRPREFIX=/build/obj chroot scratch make -C /build/src".
>>>>
>>>> Oh, and errum, we've got debug.mpsafenet="0" in /boot/loader.conf -
>>>> which is a remnant of when we were using 5.4 and the races in the
>>>> socket code killed our application under load.
>>>>
>>>> Does the nullfs code path hit the network stack??
>>>>    
>>>>         
>>> No.
>>>
>>> Kris
>>>  
>>>       
>> I don't have success with mount_nullfs on 6.1/amd64 either:
>>
>> [root at server /jail/www/usr]# mount_nullfs /usr/ports /jail/www/usr/ports
>> mount_nullfs: Operation not supported by device
>>     
>
> Presumably it is not enabled in your kernel and you do not have the
> module available either (it is present on a default installation
> though).  I use nullfs on amd64 every day so I know it works fine.
>
> Kris
>   
Ah, you're right, I found it in NOTES, but I don't see why this feature 
is not in the GENERIC kernel. This is a production system where I don't 
have modules, that's why I had the error, but imho it should be added to 
GENERIC as well.

-- 
Cheers,

Gabor



More information about the cvs-all mailing list