summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2011-12-09 23:48:11 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2011-12-09 23:51:02 +0000
commit22d9bc0bc1ccd869ebcc93f9a57efc8a85840cb8 (patch)
tree4972b4b0e940d6b5dc5e38c3d3aae826182d928a
parenteb3e04d960cd749adf696ba15c501a17cd1a184e (diff)
sna: Use a single definition for the inactive cache timeout
And share it between the timer and the expiration function, just to simplify the code. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r--src/sna/kgem.c2
-rw-r--r--src/sna/kgem.h1
-rw-r--r--src/sna/sna_accel.c8
3 files changed, 4 insertions, 7 deletions
diff --git a/src/sna/kgem.c b/src/sna/kgem.c
index efe1c352..1c9da8ec 100644
--- a/src/sna/kgem.c
+++ b/src/sna/kgem.c
@@ -1159,7 +1159,7 @@ bool kgem_expire_cache(struct kgem *kgem)
list_for_each_entry(bo, &kgem->inactive[i], list) {
assert(bo->purged);
if (bo->delta) {
- expire = now - 5;
+ expire = now - MAX_INACTIVE_TIME;
break;
}
diff --git a/src/sna/kgem.h b/src/sna/kgem.h
index 59e64cf5..14faa709 100644
--- a/src/sna/kgem.h
+++ b/src/sna/kgem.h
@@ -347,6 +347,7 @@ struct kgem_bo *kgem_create_buffer(struct kgem *kgem,
void kgem_buffer_read_sync(struct kgem *kgem, struct kgem_bo *bo);
void kgem_throttle(struct kgem *kgem);
+#define MAX_INACTIVE_TIME 10
bool kgem_expire_cache(struct kgem *kgem);
void kgem_cleanup_cache(struct kgem *kgem);
diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
index e4d6ffb6..db225079 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -8474,13 +8474,9 @@ static Bool sna_accel_do_expire(struct sna *sna)
if (sna->timer[EXPIRE_TIMER] == -1)
return TRUE;
- /* Initial expiration after 5s. */
- to.it_value.tv_sec = 5;
- to.it_value.tv_nsec = 0;
-
- /* Then periodic update every 10s.*/
- to.it_interval.tv_sec = 10;
+ to.it_interval.tv_sec = MAX_INACTIVE_TIME;
to.it_interval.tv_nsec = 0;
+ to.it_value = to.it_interval;
timerfd_settime(sna->timer[EXPIRE_TIMER], 0, &to, NULL);
sna->timer_active |= 1 << EXPIRE_TIMER;