Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> writes: > Hi Alex, > > On Wed, Jan 23, 2019 at 5:30 AM Alex Williamson > <alex.williamson@xxxxxxxxxx> wrote: >> The below patch comes about from the build regressions and improvements >> list you've sent out, but something doesn't add up that we'd be testing >> with an old compiler where initialization with { 0 } generates a >> "missing braces around initialization" warning. Is this really the >> case or are we missing something here? There's no harm that I can see >> with Alexey's fix, but are these really just false positives from a >> compiler bug that we should selectively ignore if the "fix" is less >> clean? Thanks, > > Yes, they are false positives, AFAIK. > >> On Wed, 23 Jan 2019 15:07:11 +1100 >> Alexey Kardashevskiy <aik@xxxxxxxxx> wrote: >> >> > Using the {0} construct as a generic initializer is perfectly fine in C, >> > however due to a bug in old gcc there is a warning: >> > >> > + /kisskb/src/drivers/vfio/pci/vfio_pci_nvlink2.c: warning: (near >> > initialization for 'cap.header') [-Wmissing-braces]: => 181:9 > > These all seem to come from an old gcc 4.6, which is the oldest still > supported version for compiling Linux > http://kisskb.ellerman.id.au/kisskb/buildresult/13663641/ > > Note that kisskb is also using gcc 4.6.3 for s390x and mips, which are the only > other builds showing missing braces warnings. As documented here: https://www.kernel.org/doc/html/latest/process/changes.html#current-minimal-requirements x86 has effectively dropped support for 4.6 because it doesn't support retpoline and CONFIG_RETPOLINE is default y. So it might be time to stop supporting 4.6, but I'd rather that happened by someone sending a patch to change the requirements doc above, and then kisskb can stop doing the builds with 4.6. cheers