Page MenuHomeFreeBSD

D34381.id103244.diff
No OneTemporary

D34381.id103244.diff

Index: sys/kern/kern_rmlock.c
===================================================================
--- sys/kern/kern_rmlock.c
+++ sys/kern/kern_rmlock.c
@@ -449,17 +449,13 @@
THREAD_NO_SLEEPING();
td->td_critnest++; /* critical_enter(); */
-
atomic_interrupt_fence();
pc = get_pcpu();
-
rm_tracker_add(pc, tracker);
-
sched_pin();
atomic_interrupt_fence();
-
td->td_critnest--;
/*
@@ -517,8 +513,12 @@
return;
td->td_critnest++; /* critical_enter(); */
+ atomic_interrupt_fence();
+
pc = get_pcpu();
rm_tracker_remove(pc, tracker);
+
+ atomic_interrupt_fence();
td->td_critnest--;
sched_unpin();

File Metadata

Mime Type
text/plain
Expires
Fri, Nov 15, 5:36 AM (8 h, 19 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
14638919
Default Alt Text
D34381.id103244.diff (639 B)

Event Timeline