lkml.org 
[lkml]   [2015]   [Jan]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] KEYS: close race between key lookup and freeing
Date
Sasha Levin <sasha.levin@oracle.com> wrote:

> When a key is being garbage collected, it's key->user would get put before
> the ->destroy() callback is called, where the key is removed from it's
> respective tracking structures.
>
> This leaves a key hanging in a semi-invalid state which leaves a window open
> for a different task to try an access key->user. An example is
> find_keyring_by_name() which would dereference key->user for a key that is
> in the process of being garbage collected (where key->user was freed but
> ->destroy() wasn't called yet - so it's still present in the linked list).
>
> This would cause either a panic, or corrupt memory.
>
> Signed-off-by: Sasha Levin <sasha.levin@oracle.com>

Applied.


\
 
 \ /
  Last update: 2015-01-05 17:21    [W:0.036 / U:1.748 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site