- atomic_set(&netlabel_unlabel_accept_flg, value);
- netlbl_audit_nomsg((value ?
- AUDIT_MAC_UNLBL_ACCEPT : AUDIT_MAC_UNLBL_DENY),
- audit_secid);
+ struct audit_buffer *audit_buf;
+ u8 old_val;
+
+ rcu_read_lock();
+ old_val = netlabel_unlabel_acceptflg;
+ spin_lock(&netlabel_unlabel_acceptflg_lock);
+ netlabel_unlabel_acceptflg = value;
+ spin_unlock(&netlabel_unlabel_acceptflg_lock);
+ rcu_read_unlock();
+
+ audit_buf = netlbl_audit_start_common(AUDIT_MAC_UNLBL_ALLOW,
+ audit_info);
+ if (audit_buf != NULL) {
+ audit_log_format(audit_buf,
+ " unlbl_accept=%u old=%u", value, old_val);
+ audit_log_end(audit_buf);
+ }