Page MenuHomeFreeBSD

D8685.id22631.diff
No OneTemporary

D8685.id22631.diff

Index: sys/sys/buf_ring.h
===================================================================
--- sys/sys/buf_ring.h
+++ sys/sys/buf_ring.h
@@ -67,11 +67,13 @@
uint32_t prod_head, prod_next, cons_tail;
#ifdef DEBUG_BUFRING
int i;
- for (i = br->br_cons_head; i != br->br_prod_head;
- i = ((i + 1) & br->br_cons_mask))
- if(br->br_ring[i] == buf)
- panic("buf=%p already enqueue at %d prod=%d cons=%d",
- buf, i, br->br_prod_tail, br->br_cons_tail);
+ if (br->br_cons_head != br->br_prod_head) {
+ for (i = br->br_cons_head + 1; i != br->br_prod_head;
+ i = ((i + 1) & br->br_cons_mask))
+ if(br->br_ring[i] == buf)
+ panic("buf=%p already enqueue at %d prod=%d cons=%d",
+ buf, i, br->br_prod_tail, br->br_cons_tail);
+ }
#endif
critical_enter();
do {

File Metadata

Mime Type
text/plain
Expires
Mon, Mar 9, 12:19 AM (14 h, 45 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29420241
Default Alt Text
D8685.id22631.diff (795 B)

Event Timeline