Edward O'Callaghan has posted comments on this change. ( https://review.coreboot.org/c/flashrom/+/66654 )
Change subject: tree: Change signature of extract_programmer_param_str() ......................................................................
Patch Set 6:
(1 comment)
File atavia.c:
https://review.coreboot.org/c/flashrom/+/66654/comment/99d4446b_1eb74d23 PS6, Line 148: NULL
The idea of having a special macro for `NULL` is so that it can be grepped for. […]
Yes, thank you for writing it down. I've been grepping however just a different pattern of `func(NULL, [..]`. I do not recall that as a suggestion being written down so clearly although I have observed that being realised in other parts of the code that has lead to the need for these refactors in the first place because of all the half finished patterns. chipoff is one that comes to mind where a typedef was leveraged with the noble goal of having a unified type to represent spi flash memory topology however due to going the other way you have some parts consuming one type and others another which causes even more really subtle issues. A lot of work is now needed to sort out the complex web of types though the control flow graph.
The key idea with this patch stream was that issues could be caught and reverted with just one final patch. It would seem unrealistic to me to have such 20/20 hindsight and so having the last one patch be able to break hard and surface the issues quickly seemed preferable. We probably shouldn't be scared of a revert on the master branch happening once or twice a year in the case of dealing with such large amounts of tech debt being unrolled, we just need to mitigate the statistic of it, learn but at the same time not beat the drums too much.
Ultimately I think you have the correct characterisation, same destination, different journey and lets see what we can all learn from it.