Discussion:
[9fans] ext2srv problem with too many files
(too old to reply)
Peter A. Cejchan
2012-10-19 07:51:40 UTC
Permalink
hi,

the problem reported before (2011) with ext2srv still persists, here
is some output:

## On Plan9 native:
term% du -a /n/linux/dir | wc -l
1758
term% ls -l /n/linux/dir | wc -l
1757

## On Linux:
% 9 du -a /dir | wc -l
12925
% 9 ls -l /dir | wc -l
12924
% 9 du -s /dir
951227 /dir


thanks,
++pac
Peter A. Cejchan
2012-10-19 13:52:28 UTC
Permalink
4090 seems to be the maximum number of files that can reside in an
ext2srv served directory:

ext2srv
mount -c /srv/ext2 /n/linux /dev/sdE4/linux
cd /n/linux/x

term% for(i in`{seq 1 5000}) touch $i
touch: 4091: cannot create: '4091' no space on device
rm [0-9]*
ls
cp ../y/foo .
ls -l
--rw------- M 48 1000 1000 1950 Oct 19 12:14 foo
term%

term% for(i in`{seq 1 5000}) cp foo $i
cp: can't create 4090: '4090' no space on device

===
I forgot to say that I'm using the ext2srv version from Plan
distribution, not the Iruata's from contrib/iru;
compiling iru's ext2srv gives error:
term% mk
8c -FTVw xfssrv.c
8c -FTVw xfile.c
8c -FTVw ext2fs.c
8c -FTVw ext2subs.c
8c -FTVw chat.c
8c -FTVw iobuf.c
8l -o 8.out xfssrv.8 xfile.8 ext2fs.8 ext2subs.8 chat.8 iobuf.8
??none??: incompatible type signatures 392d4f87(xfssrv.8) and
2569e19(/386/lib/libc.a(chartorune)) for chartorune
mk: 8l -o ... : exit status=rc 533: 8l 535: error
erik quanstrom
2012-10-19 15:42:19 UTC
Permalink
Post by Peter A. Cejchan
I forgot to say that I'm using the ext2srv version from Plan
distribution, not the Iruata's from contrib/iru;
term% mk
8c -FTVw xfssrv.c
8c -FTVw xfile.c
8c -FTVw ext2fs.c
8c -FTVw ext2subs.c
8c -FTVw chat.c
8c -FTVw iobuf.c
8l -o 8.out xfssrv.8 xfile.8 ext2fs.8 ext2subs.8 chat.8 iobuf.8
??none??: incompatible type signatures 392d4f87(xfssrv.8) and
2569e19(/386/lib/libc.a(chartorune)) for chartorune
sounds like you have a 9atom-compiled libc.a, but then updated
/386/include/u.h from the distribution overwriting the definition
of Rune. (changing it from uint to ushort). you either need to
recompile all your libraries, or put u.h back the way it was.

- erik
Peter A. Cejchan
2012-10-24 15:00:23 UTC
Permalink
Post by Peter A. Cejchan
term% for(i in`{seq 1 5000}) touch $i
touch: 4091: cannot create: '4091' no space on device
The problem applies also for Iru's version on sources...
++pac
erik quanstrom
2012-10-25 01:40:55 UTC
Permalink
Post by Peter A. Cejchan
term% for(i in`{seq 1 5000}) touch $i
touch: 4091: cannot create: '4091' no space on device
looks to me like readdir() only reads the direct blocks, but that
doesn't seem right since 4090*264 ~= 1mb.

- erik

Continue reading on narkive:
Search results for '[9fans] ext2srv problem with too many files' (Questions and Answers)
9
replies
I think my computer's infected...?
started 2008-04-18 19:44:55 UTC
security
Loading...