linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Good place to drop preallocation on directories
@ 2008-11-19 20:32 Jan Kara
  2008-11-20 11:05 ` Jörn Engel
  0 siblings, 1 reply; 3+ messages in thread
From: Jan Kara @ 2008-11-19 20:32 UTC (permalink / raw)
  To: linux-fsdevel

  Hi!

  I have a problem in UDF so I thought I'll post it here if someone has a
good idea how to solve it.
  UDF does preallocation on directories (on files a well, but that is not a
problem). Now this helps against directory fragmentation but there is an
issue with it: When to drop this preallocation? Currently it is done in
udf_clear_inode() which has two problems:
  1) udf_clear_inode() is really called to late to do anything like freeing
     space from inode and UDF has to play some nasty tricks (like
     explicitely syncing inode, calling invalidate_inode_buffers() once
     more) to make everything work. Using udf_drop_inode() would be much
     better but that is called under i_lock so it's not really usable
    (unless I'd drop i_lock in it but then it would even nastier).
  2) When you create lots of directories, they use quite some additional
     space for preallocation and there's not really a got way how to get rid
     of preallocated blocks than dropping dcache or umount + mount the
     filesystem.

  So after all I'm thinking whether directory preallocation is really worth
the trouble. But before I go and rip it I'd like to check whether someone
does not have some clever idea :).

									Honza
-- 
Jan Kara <jack@suse.cz>
SUSE Labs, CR

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-11-20 13:10 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-11-19 20:32 Good place to drop preallocation on directories Jan Kara
2008-11-20 11:05 ` Jörn Engel
2008-11-20 13:10   ` Jan Kara

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).