diff --git a/[refs] b/[refs] index 3501d185bb60..1ed5c7bec66d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 6ee650467d5bf972d10441e99688e9b48171f99c +refs/heads/master: fcaf1eb8685a00a99259e138e403841e984385b0 diff --git a/trunk/kernel/audit.c b/trunk/kernel/audit.c index b7d3709cc452..e8692a5748c2 100644 --- a/trunk/kernel/audit.c +++ b/trunk/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); } /*