Vitaly Wool <vitalyw...@gmail.com> writes: > Most of z3fold operations are in-page, such as modifying z3fold > page header or moving z3fold objects within a page. Taking > per-pool spinlock to protect per-page objects is therefore > suboptimal, and the idea of having a per-page spinlock (or rwlock) > has been around for some time. However, adding one directly to the > z3fold header makes the latter quite big on some systems so that > it won't fit in a signle chunk.
> + atomic_t page_lock; This doesnt make much sense. A standard spinlock is not bigger than 4 bytes either. Also reinventing locks is usually a bad idea: they are tricky to get right, you have no debugging support, hard to analyze, etc. -Andi