> > > TBH, I'm not sure this is 'the right patch' (hence the RFC...): in > > > fact, I'm currently missing the motivations for allowing assignments > > > such as the "r0 = ..." assignment above in generic code. (BTW, it's > > > not currently possible to use such assignments in litmus tests...) > > > > Given that a quick (and perhaps error-prone) search of the uses of > > rcu_assign_pointer() in v5.1 didn't find a single use of the return > > value, let's please instead change the documentation and implementation > > to eliminate the return value. > > FWIW, I completely agree, and for similar reasons I'd say we should do > the same to WRITE_ONCE(), where this 'cool feature' has been inherited > from. > > For WRITE_ONCE() there's at least one user that needs to be cleaned up > first (relying on non-portable implementation detaisl of atomic*_set()), > but I suspect rcu_assign_pointer() isn't used as much as a building > block for low-level macros. Thanks for the confirmation, Mark. I can look at the WRITE_ONCE() issues (user and implementation); it will probably be a separate patchset... Thanks, Andrea