>>>>> Jan Blunck (JB) writes:

 >> 1) i_sem protects dcache too

 JB> Where? i_sem is the per-inode lock, and shouldn't be used else.

read comments in fs/namei.c:read_lookup()

 >> 2) tmpfs has no "own" data, so we can use it this way (see 2nd patch)
 >> 3) I have pdirops patch for ext3, but it needs some cleaning ...

 JB> I think you didn't get my point.

 JB> 1) Your approach is duplicating the locking effort for regular filesystem
 JB> (like ext2):
 JB> a) locking with s_pdirops_sems
 JB> b) locking the low-level filesystem data
 JB> It's cool that it speeds up tmpfs, but I don't think that this legatimate 
the
 JB> doubled locking for every other filesystem.
 JB> I'm not sure that it also increases performance for regular filesystems, 
if you
 JB> do the locking right.

we've already done this for ext3. it works.
it speeds some loads up significantly.
especially on big directories.
and you can control this via mount option,
so almost zero cost for fs that doesn't support pdirops.

 JB> 2) In my opinion, a superblock-wide semaphore array which allows 1024
 JB> different (different names and different operations) accesses to ONE single
 JB> inode (which is the data it should protect) is not a good idea.

yes, it has some weakness, i'm reworking vfs patch to avoid inter-inode
collisions.

thanks, Alex

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to