On Tue, Mar 14, 2023 at 12:37 PM Peter Smith <smithpb2...@gmail.com> wrote: > > Thanks for the review! > > On Mon, Mar 13, 2023 at 6:19 PM vignesh C <vignes...@gmail.com> wrote: > ... > > > 4) We check if txn->toptxn is not null twice here both in if condition > > and in the assignment, we could retain the assignment operation as > > earlier to remove the 2nd check: > > - if (txn->toptxn) > > - txn = txn->toptxn; > > + if (isa_subtxn(txn)) > > + txn = get_toptxn(txn); > > > > We could avoid one check again by: > > + if (isa_subtxn(txn)) > > + txn = txn->toptxn; > > > > Yeah, that is true, but I chose not to keep the original assignment in > this case mainly because then it is consistent with the other changed > code --- e.g. Every other direct member assignment/access of the > 'toptxn' member now hides behind the macros so I did not want this > single place to be the odd one out. TBH, I don't think 1 extra check > is of any significance, but it is not a problem to change like you > suggested if other people also want it done that way. >
Can't we directly use rbtxn_get_toptxn() for this case? I think that way code will look neat. I see that it is not exactly matching the existing check so you might be worried but I feel the new code will achieve the same purpose and will be easy to follow. -- With Regards, Amit Kapila.