32k directory limit

Robert Watson rwatson at FreeBSD.org
Wed Jan 21 10:36:13 PST 2004


On Wed, 21 Jan 2004, Darcy Buskermolen wrote:

> Problem is some brain dead software (to which I don't have source) 
> creating these dirs all under one dir and not nesting them in a way to
> ensure that the 32k number isn't broken.

The largest number of files (not directories) I have in a single directory
appears to be about 1.1 million.  Other than the link count, there's no
real reason there couldn't be more, although you might well bump into
other scalability limits (I have to remember not to let ls sort the
directory listing for that directory, for example).  Changing the link
count would be a binary layout change, however.  We have more reserve
fields in the UFS2 inode, and it might well not be hard to experiment
with.  But we'd need to be very careful if deploying that change more
broadly. 

Robert N M Watson             FreeBSD Core Team, TrustedBSD Projects
robert at fledge.watson.org      Senior Research Scientist, McAfee Research


> 
> 
> On January 20, 2004 06:28 pm, Greg 'groggy' Lehey wrote:
> > On Friday, 16 January 2004 at 12:05:53 -0800, Darcy Buskermolen wrote:
> > > Is there a way i can bump up the limit of 32k directories in a directory
> > > on either 4.9 or 5.2 ?
> >
> > I don't think so.  It's really the link count that's biting you, and
> > it's a signed 16 bit number.  FWIW, System V limits to 1000.
> >
> > Why do you want that many directories?  UNIX directories aren't
> > designed to be that big, whether the entries point to files or
> > directories.
> >
> > Greg
> > --
> > See complete headers for address and phone numbers.
> 
> -- 
> Darcy Buskermolen
> Wavefire Technologies Corp.
> ph: 250.717.0200
> fx:  250.763.1759
> http://www.wavefire.com
> 
> _______________________________________________
> freebsd-fs at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-fs
> To unsubscribe, send any mail to "freebsd-fs-unsubscribe at freebsd.org"
> 



More information about the freebsd-fs mailing list