Latest working kernel version: Earliest failing kernel version: Distribution: Hardware Environment: T61 Software Environment: Fedora rawhide (kernel build from Linus tree) Problem Description: Iptable generated an oops on the screen once during the boot - I've had digital cammera - so I've taken a snapshot - see the attachement (Kernel has this git commit number: ec772ac1f415ca0d) Steps to reproduce: Happend only once during boot - and I have only digicatal camera snapshot So I've no idea how to reproduce or check whether its been fixed.
The attachment appears to be missing.
Created attachment 16223 [details] Snapshot of the ip_table ooops Here is the code trace of the suspected buggy error place (0xae7) static inline int set_entry_to_counter(const struct ipt_entry *e, struct ipt_counters total[], unsigned int *i) { SET_COUNTER(total[*i], e->counters.bcnt, e->counters.pcnt); ad9: 48 c1 e0 04 shl $0x4,%rax add: 48 8b 51 68 mov 0x68(%rcx),%rdx ae1: 49 8d 04 04 lea (%r12,%rax,1),%rax (*i)++; ae5: ff c7 inc %edi static inline int set_entry_to_counter(const struct ipt_entry *e, struct ipt_counters total[], unsigned int *i) { SET_COUNTER(total[*i], e->counters.bcnt, e->counters.pcnt); ae7: 48 89 50 08 mov %rdx,0x8(%rax) aeb: 48 8b 51 60 mov 0x60(%rcx),%rdx aef: 48 89 10 mov %rdx,(%rax) * We dont care about preemption here. */ curcpu = raw_smp_processor_id(); i = 0; IPT_ENTRY_ITERATE(t->entries[curcpu], af2: 0f b7 41 5a movzwl 0x5a(%rcx),%eax af6: 01 c6 add %eax,%esi af8: 39 33 cmp %esi,(%rbx) afa: 77 d4 ja ad0 <get_counters+0x30> t->size, set_entry_to_counter, counters, &i);
Ahh sorry :) you are too fast ;) - I've wanted to attach also the code, so it has taken some minute. I hope it helps somehow.
Thanks, I'll look into it. Could you also attach your .config please?
Created attachment 16224 [details] Config file Sure - here it is.
Also I've copied wrong commit number - this is the right one: 8033c6e9736c29cce5f0d0abbca9a44dffb20c39
Created attachment 16277 [details] oops snapshot Hi - this oops in :ip_tables:do_add_counters happend to me yesterday during doing shutdown - again I've just a snapshot - the bactrace is different and this time it's probably missing some topmost lines :( - but there is visible at least the place. Maybe it will help to find the problem ?
No luck so far. Could you please also attach the script containing the iptables commands executed on startup? Thanks.
Here is my /etc/sysconfig/iptables script file Maybe the oops is also related to my DEBUG_PAGEALLOC problem I've reported - now I'm running without this option and I do not have also problems with suspend. So something weird might hidden elsewhere... # Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *nat :PREROUTING ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] --insert POSTROUTING --source 192.168.122.0/255.255.255.0 --destination ! 192.168.122.0/255.255.255.0 --jump MAS QUERADE COMMIT *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -p ah -j ACCEPT -A INPUT -p esp -j ACCEPT -A INPUT -m state --state NEW -m udp -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 631 -j ACCEPT -A INPUT -m state --state NEW -m udp -p udp --dport 631 -j ACCEPT --insert FORWARD --in-interface virbr0 --jump REJECT --insert FORWARD --out-interface virbr0 --jump REJECT --insert FORWARD --in-interface virbr0 --out-interface virbr0 --jump ACCEPT --insert FORWARD --source 192.168.122.0/255.255.255.0 --in-interface virbr0 --jump ACCEPT --insert FORWARD --destination 192.168.122.0/255.255.255.0 --out-interface virbr0 --match state --state ESTABLIS HED,RELATED --jump ACCEPT --insert INPUT --in-interface virbr0 --protocol tcp --destination-port 67 --jump ACCEPT --insert INPUT --in-interface virbr0 --protocol udp --destination-port 67 --jump ACCEPT --insert INPUT --in-interface virbr0 --protocol tcp --destination-port 53 --jump ACCEPT --insert INPUT --in-interface virbr0 --protocol udp --destination-port 53 --jump ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT
I unsuccessfully tried to reproduce this using your scripts and enabling all the debugging options. I also can't figure out why this would happen, so I'm not sure how to proceed. Maybe you could add a few debugging printks to get some more information?
Unfortunately this problem might have been related to my usage of the DEBUG_PAGEALLOC option - which was causing me also other problems during suspend on my box - when I've removed this flag from .config I could have reliably suspend. Now I'm using this option again without any problem so far so my memory allocation race might have been fixed - http://bugzilla.kernel.org/show_bug.cgi?id=10851 Also from that time I've not noticed any ip_table oops again - so it these thing could have been related...
OK thanks. Since I haven't seen any similar reports of this, you're probably right. Please update bugzilla status appropriately.