On 07/28/2015 05:12 AM, Christoph Hellwig wrote:
On Fri, Jul 24, 2015 at 10:36:45AM -0600, Jens Axboe wrote:
Right, I don't think we need to do that though. If you look at the flags
usage, it's all over the map. Some use test/set_bit, some set it just by
OR'ing the mask. There's no reason we can't make this work without relying
on set/test_bit, and then shrink it to an unsigned int.
Yes, the current mess doesn't look kosher. The bvec pool bits don't
really make it better.
But do we really need the cmpxchg hack? Seems like most flags aren't
exposed to concurrency at all, althugh this would need a careful audit.
I actually don't think that we do need it at all. With the uptodate bit
gone, we really should not have any concurrency issues on it at all.
CHAIN and REFFED need serialization, but that is already done previous
to this change.
--
Jens Axboe
--
dm-devel mailing list
dm-devel@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/dm-devel