Re: cvs commit: src/sys/fs/specfs spec_vnops.c

[ Available lists | Index of cvs-all | Month of Aug 2003 | Week of 27 Aug 2003 | Raw email | View thread | Wrap long lines | Reply | Tag ]
From
Jeff Roberson <jroberson@chesapeake.net>
Date
27 Aug 2003 20:20:34
Subject
Re: cvs commit: src/sys/fs/specfs spec_vnops.c
Message-ID
20030827231807.I12093-100000@mail.chesapeake.net


[ Hide this part ]
On Wed, 27 Aug 2003, Marcel Moolenaar wrote:

> On Wed, Aug 27, 2003 at 10:55:13PM -0400, Jeff Roberson wrote:
> > On Wed, 27 Aug 2003, Marcel Moolenaar wrote:
> >
> > > marcel 2003/08/27 18:52:14 PDT
> > >
> > > FreeBSD src repository
> > >
> > > Modified files:
> > > sys/fs/specfs spec_vnops.c
> > > Log:
> > > The valid field in struct vm_page can be of type unsigned long when
> > > 32K pages are selected. In spec_getpages() change the printf format
> > > specifier and add an explicit cast so that we always print the field
> > > as a long type.
> > >
> > > Revision Changes Path
> > > 1.209 +2 -2 src/sys/fs/specfs/spec_vnops.c
> >
> > Are you aware of the UMA problems with 32k pages?
>
> No, what are the problems?
>

It uses an 8 bit index to identify individual items in a slab. This is to
save space in place of the full pointer that is used in traditional slab
allocators. With an 8 bit index your smallest allocation on 4k pages is
16 bytes and 32 bytes on 8k. It'd be 128 bytes on 32k. You're going to
have to conditionally compile UMA with 16bit indexes.

Cheers,
Jeff


Elapsed time: 0.525 seconds