On 20 August 2015 at 20:27, Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx> wrote: > On Tue, Aug 11, 2015 at 08:50:28AM -0700, Akemi Yagi wrote: >> On Tue, Jul 14, 2015 at 10:12 AM, Jozsef Kadlecsik > <kadlec@xxxxxxxxxxxxxxxxx> wrote: > [...] >> > As I mentioned at the workshop, the patch >> > net-netfilter-ipset-work-around-gcc-444-initializer-bug.patch has been >> > added to the -mm tree at Jun 17. My impression was that that way the bug >> > was fixed and everything was all right. >> > >> > Best regards, >> > Jozsef >> >> The referenced patch does indeed fix the issue but it is still not in >> Linus' tree as of kernel 4.2.0-0.rc6. Does anyone know how to push >> forward this so the official 4.2 kernel would have the fix? > > Is this problem still present in 4.2.0-rc7? > > I can put this into my nf git tree then pass this up to David. If so, > could you please Cc the author of that patch so he knows this is > following its path to master, I would like to avoid that we get this > from two different paths. > > Thanks! Hello Pablo, I can confirm that problem is still present in linux-4.2-rc7 and the attached file shows the relevant locations within Linus' tree. [quote] [linux]$ date Mon Aug 17 10:46:45 EDT 2015 [linux]$ git pull Already up-to-date. [linux]$ head -n 4 Makefile VERSION = 4 PATCHLEVEL = 2 SUBLEVEL = 0 EXTRAVERSION = -rc7 [linux]$ cd net/netfilter/ipset/ [ipset]$ grep -l ' \.cidr' * ip_set_hash_ipportnet.c ip_set_hash_net.c ip_set_hash_netiface.c ip_set_hash_netnet.c ip_set_hash_netport.c ip_set_hash_netportnet.c [ipset]$ for F in $(grep -l ' \.cidr' *) > do echo -e "\n###### $F ######\n" > grep ' \.cidr' $F > done; echo ###### ip_set_hash_ipportnet.c ###### struct hash_ipportnet4_elem e = { .cidr = HOST_MASK - 1 }; struct hash_ipportnet6_elem e = { .cidr = HOST_MASK - 1 }; ###### ip_set_hash_net.c ###### struct hash_net4_elem e = { .cidr = HOST_MASK }; struct hash_net6_elem e = { .cidr = HOST_MASK }; ###### ip_set_hash_netiface.c ###### struct hash_netiface4_elem e = { .cidr = HOST_MASK, .elem = 1 }; struct hash_netiface6_elem e = { .cidr = HOST_MASK, .elem = 1 }; ###### ip_set_hash_netnet.c ###### struct hash_netnet4_elem e = { .cidr = { HOST_MASK, HOST_MASK, }, }; struct hash_netnet6_elem e = { .cidr = { HOST_MASK, HOST_MASK, }, }; ###### ip_set_hash_netport.c ###### struct hash_netport4_elem e = { .cidr = HOST_MASK - 1 }; struct hash_netport6_elem e = { .cidr = HOST_MASK - 1 }; ###### ip_set_hash_netportnet.c ###### struct hash_netportnet4_elem e = { .cidr = { HOST_MASK, HOST_MASK, }, }; struct hash_netportnet6_elem e = { .cidr = { HOST_MASK, HOST_MASK, }, }; [ipset]$ [/quote] Alan.
[linux]$ date Mon Aug 17 10:46:45 EDT 2015 [linux]$ git pull Already up-to-date. [linux]$ head -n 4 Makefile VERSION = 4 PATCHLEVEL = 2 SUBLEVEL = 0 EXTRAVERSION = -rc7 [linux]$ cd net/netfilter/ipset/ [ipset]$ grep -l ' \.cidr' * ip_set_hash_ipportnet.c ip_set_hash_net.c ip_set_hash_netiface.c ip_set_hash_netnet.c ip_set_hash_netport.c ip_set_hash_netportnet.c [ipset]$ for F in $(grep -l ' \.cidr' *) > do echo -e "\n###### $F ######\n" > grep ' \.cidr' $F > done; echo ###### ip_set_hash_ipportnet.c ###### struct hash_ipportnet4_elem e = { .cidr = HOST_MASK - 1 }; struct hash_ipportnet6_elem e = { .cidr = HOST_MASK - 1 }; ###### ip_set_hash_net.c ###### struct hash_net4_elem e = { .cidr = HOST_MASK }; struct hash_net6_elem e = { .cidr = HOST_MASK }; ###### ip_set_hash_netiface.c ###### struct hash_netiface4_elem e = { .cidr = HOST_MASK, .elem = 1 }; struct hash_netiface6_elem e = { .cidr = HOST_MASK, .elem = 1 }; ###### ip_set_hash_netnet.c ###### struct hash_netnet4_elem e = { .cidr = { HOST_MASK, HOST_MASK, }, }; struct hash_netnet6_elem e = { .cidr = { HOST_MASK, HOST_MASK, }, }; ###### ip_set_hash_netport.c ###### struct hash_netport4_elem e = { .cidr = HOST_MASK - 1 }; struct hash_netport6_elem e = { .cidr = HOST_MASK - 1 }; ###### ip_set_hash_netportnet.c ###### struct hash_netportnet4_elem e = { .cidr = { HOST_MASK, HOST_MASK, }, }; struct hash_netportnet6_elem e = { .cidr = { HOST_MASK, HOST_MASK, }, }; [ipset]$