Skip to content

Commit

Permalink
audit: wait_for_auditd rework for readability
Browse files Browse the repository at this point in the history
We had some craziness with signed to unsigned long casting which appears
wholely unnecessary.  Just use signed long.  Even though 2 values of the
math equation are unsigned longs the result is expected to be a signed
long.  So why keep casting the result to signed long?  Just make it
signed long and use it.

We also remove the needless "timeout" variable.  We already have the
stack "sleep_time" variable.  Just use that...

Signed-off-by: Eric Paris <[email protected]>
  • Loading branch information
eparis committed Jan 14, 2014
1 parent 8c8115f commit c81825d
Showing 1 changed file with 7 additions and 9 deletions.
16 changes: 7 additions & 9 deletions kernel/audit.c
Original file line number Diff line number Diff line change
Expand Up @@ -1281,21 +1281,20 @@ static inline void audit_get_stamp(struct audit_context *ctx,
/*
* Wait for auditd to drain the queue a little
*/
static unsigned long wait_for_auditd(unsigned long sleep_time)
static long wait_for_auditd(long sleep_time)
{
unsigned long timeout = sleep_time;
DECLARE_WAITQUEUE(wait, current);
set_current_state(TASK_UNINTERRUPTIBLE);
add_wait_queue_exclusive(&audit_backlog_wait, &wait);

if (audit_backlog_limit &&
skb_queue_len(&audit_skb_queue) > audit_backlog_limit)
timeout = schedule_timeout(sleep_time);
sleep_time = schedule_timeout(sleep_time);

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

return timeout;
return sleep_time;
}

/**
Expand Down Expand Up @@ -1339,13 +1338,12 @@ struct audit_buffer *audit_log_start(struct audit_context *ctx, gfp_t gfp_mask,
while (audit_backlog_limit
&& skb_queue_len(&audit_skb_queue) > audit_backlog_limit + reserve) {
if (gfp_mask & __GFP_WAIT && audit_backlog_wait_time) {
unsigned long sleep_time;
long sleep_time;

sleep_time = timeout_start + audit_backlog_wait_time -
jiffies;
if ((long)sleep_time > 0) {
sleep_time = timeout_start + audit_backlog_wait_time - jiffies;
if (sleep_time > 0) {
sleep_time = wait_for_auditd(sleep_time);
if ((long)sleep_time > 0)
if (sleep_time > 0)
continue;
}
}
Expand Down

0 comments on commit c81825d

Please sign in to comment.