Commit 72786ff2 authored by Thomas Gleixner's avatar Thomas Gleixner
Browse files

posix-timers: Set k_itimer:: It_signal to NULL on exit()



Technically it's not required to set k_itimer::it_signal to NULL on exit()
because there is no other thread anymore which could lookup the timer
concurrently.

Set it to NULL for consistency sake and add a comment to that effect.

Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Reviewed-by: default avatarFrederic Weisbecker <frederic@kernel.org>
Link: https://lore.kernel.org/r/20230425183313.196462644@linutronix.de
parent 028cf5ea
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -1101,6 +1101,14 @@ static void itimer_delete(struct k_itimer *timer)
	}
	list_del(&timer->list);

	/*
	 * Setting timer::it_signal to NULL is technically not required
	 * here as nothing can access the timer anymore legitimately via
	 * the hash table. Set it to NULL nevertheless so that all deletion
	 * paths are consistent.
	 */
	WRITE_ONCE(timer->it_signal, NULL);

	spin_unlock_irqrestore(&timer->it_lock, flags);
	release_posix_timer(timer, IT_ID_SET);
}