Re: [PATCH 1 of 4] mm: add a ptep_modify_prot transaction abstraction

From: Jeremy Fitzhardinge
Date: Wed Jun 18 2008 - 20:38:20 EST


Linus Torvalds wrote:
On Wed, 18 Jun 2008, Jeremy Fitzhardinge wrote:
Along the lines of:

Hell no. There's a reason we have a special set_wrprotect() thing. We can do it more efficiently on native hardware by just clearing the bit atomically. No need to do the cmpxchg games.

It's not cmpxchg, just xchg.

In other words, is:

lock btr $_PAGE_BIT_RW, (%rbx)

much cheaper than

mov $0, %rax
xchg %rax, (%rbx)
and $~_PAGE_RW, %rax
mov %rax, (%rbx)

?

It's the same number of locked RMW operations, so aside from being a few instructions longer, I think it would be much the same.

I guess the correct answer is "lmbench".

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