Skip to content

Commit 2cf64d7

Browse files
committed
Merge tag 'tomoyo-pr-20200128' of git://git.osdn.net/gitroot/tomoyo/tomoyo-test1
Pull tomoyo update from Tetsuo Handa: "One 'int' -> 'atomic_t' conversion patch to suppress KCSAN's warning" * tag 'tomoyo-pr-20200128' of git://git.osdn.net/gitroot/tomoyo/tomoyo-test1: tomoyo: Use atomic_t for statistics counter
2 parents 740eaf7 + a8772fa commit 2cf64d7

File tree

1 file changed

+4
-7
lines changed

1 file changed

+4
-7
lines changed

security/tomoyo/common.c

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2322,9 +2322,9 @@ static const char * const tomoyo_memory_headers[TOMOYO_MAX_MEMORY_STAT] = {
23222322
[TOMOYO_MEMORY_QUERY] = "query message:",
23232323
};
23242324

2325-
/* Timestamp counter for last updated. */
2326-
static unsigned int tomoyo_stat_updated[TOMOYO_MAX_POLICY_STAT];
23272325
/* Counter for number of updates. */
2326+
static atomic_t tomoyo_stat_updated[TOMOYO_MAX_POLICY_STAT];
2327+
/* Timestamp counter for last updated. */
23282328
static time64_t tomoyo_stat_modified[TOMOYO_MAX_POLICY_STAT];
23292329

23302330
/**
@@ -2336,10 +2336,7 @@ static time64_t tomoyo_stat_modified[TOMOYO_MAX_POLICY_STAT];
23362336
*/
23372337
void tomoyo_update_stat(const u8 index)
23382338
{
2339-
/*
2340-
* I don't use atomic operations because race condition is not fatal.
2341-
*/
2342-
tomoyo_stat_updated[index]++;
2339+
atomic_inc(&tomoyo_stat_updated[index]);
23432340
tomoyo_stat_modified[index] = ktime_get_real_seconds();
23442341
}
23452342

@@ -2360,7 +2357,7 @@ static void tomoyo_read_stat(struct tomoyo_io_buffer *head)
23602357
for (i = 0; i < TOMOYO_MAX_POLICY_STAT; i++) {
23612358
tomoyo_io_printf(head, "Policy %-30s %10u",
23622359
tomoyo_policy_headers[i],
2363-
tomoyo_stat_updated[i]);
2360+
atomic_read(&tomoyo_stat_updated[i]));
23642361
if (tomoyo_stat_modified[i]) {
23652362
struct tomoyo_time stamp;
23662363

0 commit comments

Comments
 (0)