mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-10 07:00:48 +00:00
audit: use atomic_t to simplify audit_serial()
Since there is already a primitive to do this operation in the atomic_t, use it to simplify audit_serial(). Signed-off-by: Richard Guy Briggs <rgb@redhat.com>
This commit is contained in:
parent
6eed9b2613
commit
01478d7d60
@ -1301,19 +1301,9 @@ err:
|
|||||||
*/
|
*/
|
||||||
unsigned int audit_serial(void)
|
unsigned int audit_serial(void)
|
||||||
{
|
{
|
||||||
static DEFINE_SPINLOCK(serial_lock);
|
static atomic_t serial = ATOMIC_INIT(0);
|
||||||
static unsigned int serial = 0;
|
|
||||||
|
|
||||||
unsigned long flags;
|
return atomic_add_return(1, &serial);
|
||||||
unsigned int ret;
|
|
||||||
|
|
||||||
spin_lock_irqsave(&serial_lock, flags);
|
|
||||||
do {
|
|
||||||
ret = ++serial;
|
|
||||||
} while (unlikely(!ret));
|
|
||||||
spin_unlock_irqrestore(&serial_lock, flags);
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void audit_get_stamp(struct audit_context *ctx,
|
static inline void audit_get_stamp(struct audit_context *ctx,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user