On Fri, May 27, 2016 at 5:17 PM, Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> wrote: > > It does fix it. Ok, I've committed that in my tree, will do my usual build test and push out. > This is not the first time we've hit this and people have always been > changing code to initialize fields in execution path (and I didn't fix > it here myself because I wasn't sure where to do that). I guess we > could have been just adding braces all along. Well, adding the braces also requires that you get the *order* of the member initialization right, since the braces will be unnamed. In this case, the unnamed union was the first member, so the trivial patch worked, but that's not always the case. In fact, in this case, I think an alternate and possibly better fix would have been to just remove the ".data = { 0 }" initializer entirely, since in its absence it would have been initialized to zero anyway. But since you already tested my uglier "just add a brace like the error message suggests" that's the one I'll be committing. It's a fairly annoying failure of older compilers, exactly because people with newer compilers won't even realize that they are causing problems. Linus -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html