Use WRITE_ONCE() for rclp->len decrement in rcu_cblist_dequeue() to maintain consistency with rcu_cblist_enqueue(), which already uses WRITE_ONCE() for rclp->len increment. It maintains consistent access patterns to the rclp->len field across both enqueue and dequeue operations.
Signed-off-by: Kaushlendra Kumar <kaushlendra.ku...@intel.com> --- Changes in v2: - Revised justification to focus on code consistency rather than concurrent access claims. - Revised commit message to use imperative mood throughout per kernel documentation guidelines (suggested by Markus Elfring). kernel/rcu/rcu_segcblist.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/rcu/rcu_segcblist.c b/kernel/rcu/rcu_segcblist.c index 1693ea22ef1b..e10b36e9de54 100644 --- a/kernel/rcu/rcu_segcblist.c +++ b/kernel/rcu/rcu_segcblist.c @@ -71,7 +71,7 @@ struct rcu_head *rcu_cblist_dequeue(struct rcu_cblist *rclp) rhp = rclp->head; if (!rhp) return NULL; - rclp->len--; + WRITE_ONCE(rclp->len, rclp->len - 1); rclp->head = rhp->next; if (!rclp->head) rclp->tail = &rclp->head; -- 2.34.1