2009-09-16 14:55:22

by David Howells

[permalink] [raw]
Subject: [PATCH] KEYS: Have the garbage collector set its timer for live expired keys

The key garbage collector sets a timer to start a new collection cycle at the
point the earliest key to expire should be considered garbage. However, it
currently only does this if the key it is considering hasn't yet expired.

If the key being considering has expired, but hasn't yet reached the collection
time then it is ignored, and won't be collected until some other key provokes a
round of collection.

Make the garbage collector set the timer for the earliest key that hasn't yet
passed its collection time, rather than the earliest key that hasn't yet
expired.

Signed-off-by: David Howells <[email protected]>
---

security/keys/gc.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)


diff --git a/security/keys/gc.c b/security/keys/gc.c
index 485fc62..4770be3 100644
--- a/security/keys/gc.c
+++ b/security/keys/gc.c
@@ -169,9 +169,9 @@ static void key_garbage_collector(struct work_struct *work)

/* trawl through the keys looking for keyrings */
for (;;) {
- if (key->expiry > now && key->expiry < new_timer) {
+ if (key->expiry > limit && key->expiry < new_timer) {
kdebug("will expire %x in %ld",
- key_serial(key), key->expiry - now);
+ key_serial(key), key->expiry - limit);
new_timer = key->expiry;
}


2009-09-16 15:06:22

by Ingo Molnar

[permalink] [raw]
Subject: Re: [PATCH] KEYS: Have the garbage collector set its timer for live expired keys


* David Howells <[email protected]> wrote:

> The key garbage collector sets a timer to start a new collection cycle at the
> point the earliest key to expire should be considered garbage. However, it
> currently only does this if the key it is considering hasn't yet expired.
>
> If the key being considering has expired, but hasn't yet reached the collection
> time then it is ignored, and won't be collected until some other key provokes a
> round of collection.
>
> Make the garbage collector set the timer for the earliest key that hasn't yet
> passed its collection time, rather than the earliest key that hasn't yet
> expired.
>
> Signed-off-by: David Howells <[email protected]>

Is this in response to my bugreport? (If yes then the changelog is quite
vague about the circumstances of the bug, its effects, which tools were
used to find it, etc. etc.)

Ingo

2009-09-16 15:18:41

by David Howells

[permalink] [raw]
Subject: Re: [PATCH] KEYS: Have the garbage collector set its timer for live expired keys

Ingo Molnar <[email protected]> wrote:

> Is this in response to my bugreport? (If yes then the changelog is quite
> vague about the circumstances of the bug, its effects, which tools were
> used to find it, etc. etc.)

No.

David

2009-09-16 22:12:12

by James Morris

[permalink] [raw]
Subject: Re: [PATCH] KEYS: Have the garbage collector set its timer for live expired keys

On Wed, 16 Sep 2009, David Howells wrote:

> Ingo Molnar <[email protected]> wrote:
>
> > Is this in response to my bugreport? (If yes then the changelog is quite
> > vague about the circumstances of the bug, its effects, which tools were
> > used to find it, etc. etc.)
>
> No.

Is it a bugfix, or an enhancement?

--
James Morris
<[email protected]>

2009-09-17 06:48:40

by David Howells

[permalink] [raw]
Subject: Re: [PATCH] KEYS: Have the garbage collector set its timer for live expired keys

James Morris <[email protected]> wrote:

> Is it a bugfix, or an enhancement?

Bug fix.

David