X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=kernel%2Faudit.c;h=e8692a5748c24d2bd841ea7a81eaa09ae992bb04;hb=8c2e870a625bd336b2e7a65a97c1836acef07322;hp=b7d3709cc452afdba06492ecf2c977bab04dd530;hpb=95dfec6ae1cb8c03406aac612a5642cbddb676b3;p=linux-2.6 diff --git a/kernel/audit.c b/kernel/audit.c index b7d3709cc4..e8692a5748 100644 --- a/kernel/audit.c +++ b/kernel/audit.c @@ -572,16 +572,17 @@ void audit_send_reply(int pid, int seq, int type, int done, int multi, skb = audit_make_reply(pid, seq, type, done, multi, payload, size); if (!skb) - return; + goto out; reply->pid = pid; reply->skb = skb; tsk = kthread_run(audit_send_reply_thread, reply, "audit_send_reply"); - if (IS_ERR(tsk)) { - kfree(reply); - kfree_skb(skb); - } + if (!IS_ERR(tsk)) + return; + kfree_skb(skb); +out: + kfree(reply); } /*