Andrii Nakryiko <andrii.nakryiko@xxxxxxxxx> writes: [...] >> Is that different from what happens already? > > yes, it's different, we don't follow pointers. that identical_structs > recurse only for embedded/nested structs, not structs-by-pointer. > idential_arrays also doesn't follow any references > > so it could lead to loop only if BTF is broken and we have one struct > embedding another, while that other embeds its parent, which isn't > legal in BTF and C (so whatever) Missed that, thank you for explaining. [...] > And yes, "visited" marks are the solution, but I was thinking that if > we implement a pre-processing deduplication step as we discussed > offline, we won't need to do any of this, so didn't want to pursue > this further.