powerpc: Convert open coded native hashtable bit lock
Now we have real bit locks use them instead of open coding it. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
864b9e6fd7
commit
66d99b8834
|
@ -122,7 +122,7 @@ static inline void native_lock_hpte(struct hash_pte *hptep)
|
||||||
unsigned long *word = &hptep->v;
|
unsigned long *word = &hptep->v;
|
||||||
|
|
||||||
while (1) {
|
while (1) {
|
||||||
if (!test_and_set_bit(HPTE_LOCK_BIT, word))
|
if (!test_and_set_bit_lock(HPTE_LOCK_BIT, word))
|
||||||
break;
|
break;
|
||||||
while(test_bit(HPTE_LOCK_BIT, word))
|
while(test_bit(HPTE_LOCK_BIT, word))
|
||||||
cpu_relax();
|
cpu_relax();
|
||||||
|
@ -133,8 +133,7 @@ static inline void native_unlock_hpte(struct hash_pte *hptep)
|
||||||
{
|
{
|
||||||
unsigned long *word = &hptep->v;
|
unsigned long *word = &hptep->v;
|
||||||
|
|
||||||
asm volatile("lwsync":::"memory");
|
clear_bit_unlock(HPTE_LOCK_BIT, word);
|
||||||
clear_bit(HPTE_LOCK_BIT, word);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static long native_hpte_insert(unsigned long hpte_group, unsigned long va,
|
static long native_hpte_insert(unsigned long hpte_group, unsigned long va,
|
||||||
|
|
Loading…
Reference in New Issue