Messages in this thread |  | | Subject | Re: [Ext2-devel] [PATCH] concurrent block allocation for ext2 against 2.5.64 | From | Alex Tomas <> | Date | 13 Mar 2003 21:43:05 +0300 |
| |
fs/attr.c: if (ia_valid & ATTR_SIZE) { if (attr->ia_size == inode->i_size) { if (ia_valid == ATTR_SIZE) goto out; /* we can skip lock_kernel() */ } else { lock_kernel(); error = vmtruncate(inode, attr->ia_size); unlock_kernel(); if (error) goto out; } }
so, all (!) truncates are serialized
>>>>> Andreas Dilger (AD) writes:
AD> On Mar 13, 2003 11:55 +0300, Alex Tomas wrote: >> as Andrew said, concurrent balloc for ext3 is useless because of >> BKL. and I saw it in benchmarks. but it may be useful for ext2.
AD> Sadly, we are constantly diverging the ext2/ext3 codebases. Lots AD> of features are going into ext3, but lots of fixes/improvements AD> are only going into ext2. Is ext3 holding BKL for doing AD> journal_start() still?
AD> Looking at ext3_prepare_write() we grab the BKL for doing AD> journal_start() and for journal_stop(), but I don't _think_ we AD> need BKL for journal_stop() do we? We may or may not need it for AD> the journal_data case, but that is not even working right now I AD> think.
AD> It also seems we are getting BKL in ext3_truncate(), which likely AD> isn't needed past journal_start(), although we do need to have AD> superblock-only lock for ext3_orphan_add/del.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |