Re: remove mixture of non-atomic operations with page->flags which requires atomic operations to access

William Lee Irwin III (wli@holomorphy.com)
Mon, 3 Jun 2002 03:28:09 -0700


On Sun, 2 Jun 2002, William Lee Irwin III wrote:
>> page->flags is effectively a lock word as its various bits are updatable
>> and accessible only by atomic operations. This patch removes the update
>> of page->flags in __free_pages_ok() with non-atomic operations in favor
>> of using atomic bit operations to update the bits to be cleared.
>> ClearPageDirty(page);
>> - page->flags &= ~(1<<PG_referenced);
>> + ClearPageUptodate(page);
>> + ClearPageSlab(page);
>> + ClearPageNosave(page);
>> + ClearPageChecked(page);

On Mon, Jun 03, 2002 at 11:14:43AM +0100, Hugh Dickins wrote:
> Don't all those atomic volatile bitops slow down a hotpath for no real
> gain? I'm all for clearing all possible flag bits at that point, but
> would prefer just one mask myself. But given all the preceding tests,
> and the ClearPageDirty, perhaps I'm foolish to question your additions.
> And wasn't it originally clearing the referenced bit, now leaving it?
> Hugh

It should be clearing it, I'd retransmit if there weren't other objections
to address...

Cheers,
Bill
-
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/