[patch 26/26] Add try_to_freeze to kauditd

Greg KH
2005-12-13T08:28:53Z

[-- Attachment #1: add-try_to_freeze-to-kauditd.patch --]
[-- Type: text/plain, Size: 1129 bytes --]

-stable review patch. If anyone has any objections, please let us know.

------------------
From: Pierre Ossman <drzeus@drzeus.cx>

kauditd was causing suspends to fail because it refused to freeze. Adding
a try_to_freeze() to its sleep loop solves the issue.

Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Acked-by: Pavel Machek <pavel@suse.cz>
Cc: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

diff --git a/kernel/audit.c b/kernel/audit.c
index 0c56320..32fa03a 100644
---
kernel/audit.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

--- linux-2.6.14.3.orig/kernel/audit.c
+++ linux-2.6.14.3/kernel/audit.c
@@ -291,8 +291,10 @@ int kauditd_thread(void *dummy)
set_current_state(TASK_INTERRUPTIBLE);
add_wait_queue(&kauditd_wait, &wait);

- if (!skb_queue_len(&audit_skb_queue))
+ if (!skb_queue_len(&audit_skb_queue)) {
+ try_to_freeze();
schedule();
+ }

__set_current_state(TASK_RUNNING);
remove_wait_queue(&kauditd_wait, &wait);

--