Thanks, Sam. Yes it does look like that's the same issue.
I applied that patch to v6.6.3 instead of reverting the change to the randomize_layout plugin and the problem also goes away with the patch applied.
In that thread with the patch, Gustavo does mention that many other zero-length arrays, besides this one in struct neighbor, were found in the kernel source. But a quick (and possibly imperfect) grepping seems to show that struct neighbor was the only one used with __randomize_layout. So, I *think* it might be the only one that could cause a problem with the recent change to the randomize_layout plugin.
-- Dan