1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
*** ../mp/mp_fget.c.orig 2006-05-30 20:44:11.000000000 -0700
--- ../mp/mp_fget.c 2006-05-30 20:44:22.000000000 -0700
***************
*** 577,584 ****
*/
if (state != SECOND_MISS && bhp->ref == 1) {
bhp->priority = UINT32_MAX;
! SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh);
! SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq);
hp->hash_priority =
SH_TAILQ_FIRST(&hp->hash_bucket, __bh)->priority;
}
--- 577,587 ----
*/
if (state != SECOND_MISS && bhp->ref == 1) {
bhp->priority = UINT32_MAX;
! if (SH_TAILQ_FIRST(&hp->hash_bucket, __bh) !=
! SH_TAILQ_LAST(&hp->hash_bucket, hq, __bh)) {
! SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh);
! SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq);
! }
hp->hash_priority =
SH_TAILQ_FIRST(&hp->hash_bucket, __bh)->priority;
}
|