diff --git a/security/apparmor/include/lib.h b/security/apparmor/include/lib.h index 4699c2b43fa0..61dedd7333df 100644 --- a/security/apparmor/include/lib.h +++ b/security/apparmor/include/lib.h @@ -19,6 +19,17 @@ #include "match.h" +/* Provide our own test for whether a write lock is held for asserts + * this is because on none SMP systems write_can_lock will always + * resolve to true, which is what you want for code making decisions + * based on it, but wrong for asserts checking that the lock is held + */ +#ifdef CONFIG_SMP +#define write_is_locked(X) !write_can_lock(X) +#else +#define write_is_locked(X) (1) +#endif /* CONFIG_SMP */ + /* * DEBUG remains global (no per profile flag) since it is mostly used in sysctl * which is not related to profile accesses.