eliminate atomics in syslog setlogmask function

This commit is contained in:
Rich Felker 2015-03-04 09:44:43 -05:00
parent 7a81fe3710
commit 6de071a0be
1 changed files with 6 additions and 4 deletions

View File

@ -10,19 +10,21 @@
#include <errno.h>
#include <fcntl.h>
#include "libc.h"
#include "atomic.h"
static volatile int lock[2];
static char log_ident[32];
static int log_opt;
static int log_facility = LOG_USER;
static volatile int log_mask = 0xff;
static int log_mask = 0xff;
static int log_fd = -1;
int setlogmask(int maskpri)
{
if (maskpri) return a_swap(&log_mask, maskpri);
else return log_mask;
LOCK(lock);
int ret = log_mask;
if (maskpri) log_mask = maskpri;
UNLOCK(lock);
return ret;
}
static const struct {