Re: [linux-next] oops in ip_route_input_noref

2015-09-19 Thread David Ahern

On 9/18/15 5:06 PM, Andrew Morton wrote:


I've been hitting this as well.  An oops on boot in
ip_route_input_slow(), here:


Fixed in net-next. bde6f9ded1bd37ff27a042dcb968e104d92b02c1

David

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] oops in ip_route_input_noref

2015-09-18 Thread Andrew Morton
On Thu, 17 Sep 2015 10:58:52 +0200 Thierry Reding  
wrote:

> On Wed, Sep 16, 2015 at 09:04:15AM -0600, David Ahern wrote:
> > On 9/16/15 9:00 AM, Fabio Estevam wrote:
> > >On Wed, Sep 16, 2015 at 6:24 AM, Sergey Senozhatsky
> > > wrote:
> > >
> > >>added by b7503e0cdb5dbec5d201aa69dc14679b5ae8
> > >>
> > >> net: Add FIB table id to rtable
> > >>
> > >> Add the FIB table id to rtable to make the information available for
> > >> IPv4 as it is for IPv6.
> > >
> > >I see the same issue here when booting a mx25 ARM processor via NFS.
> > >
> > >defconfig is arch/arm/configs/imx_v4_v5_defconfig.
> > >
> > 
> > I am still not able to reproduce. While I work on a full Cumulus image for
> > other test cases here's a patch to try; eagle eye Nikolay noted a potential
> > use without init in the maze of goto's.
> > 
> > Thanks,
> > David
> 
> > diff --git a/net/ipv4/route.c b/net/ipv4/route.c
> > index da427a4a33fe..80f7c5b7b832 100644
> > --- a/net/ipv4/route.c
> > +++ b/net/ipv4/route.c
> > @@ -1712,6 +1712,7 @@ static int ip_route_input_slow(struct sk_buff *skb, 
> > __be32 daddr, __be32 saddr,
> > goto martian_source;
> >  
> > res.fi = NULL;
> > +   res.table = NULL;
> > if (ipv4_is_lbcast(daddr) || (saddr == 0 && daddr == 0))
> > goto brd_input;
> >  
> > @@ -1834,6 +1835,7 @@ out:  return err;
> > RT_CACHE_STAT_INC(in_no_route);
> > res.type = RTN_UNREACHABLE;
> > res.fi = NULL;
> > +   res.table = NULL;
> > goto local_input;
> >  
> > /*
> 
> I was seeing the same oops as Fabio (except that the faulting address
> was 0xb instead of 0x7) and after applying this patch I no longer see
> it:
> 
> Tested-by: Thierry Reding 

I've been hitting this as well.  An oops on boot in
ip_route_input_slow(), here:

#ifdef CONFIG_IP_ROUTE_CLASSID
rth->dst.tclassid = itag;
#endif
rth->rt_is_input = 1;
if (res.table)
-->>rth->rt_table_id = res.table->tb_id;

RT_CACHE_STAT_INC(in_slow_tot);


I did this, which made it go away:

--- a/net/ipv4/route.c~a
+++ a/net/ipv4/route.c
@@ -1692,6 +1692,8 @@ static int ip_route_input_slow(struct sk
struct net*net = dev_net(dev);
bool do_cache;
 
+   res.table = 0;
+
/* IP on this device is disabled. */
 
if (!in_dev)
_

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] oops in ip_route_input_noref

2015-09-17 Thread Tomeu Vizoso
On 17 September 2015 at 01:47, Sergey Senozhatsky
 wrote:
> On (09/16/15 07:07), David Ahern wrote:
>> Hi Sergey:
>>
>
> Hi,
>
> sorry for long reply. Baremetal. So grabbing the backtrace is
> a bit complicated. But it looks very close to what Richard Alpe
> has posted.

Hi,

in this boot log you will find a backtrace:
https://lava.collabora.co.uk/scheduler/job/67404/log_file

(ip_route_input_noref) from [] (ip_rcv+0x39c/0x6e8)
(ip_rcv) from [] (__netif_receive_skb_core+0x5ec/0x7c0)
(__netif_receive_skb_core) from [] (netif_receive_skb_internal+0x34/0xa4)
(netif_receive_skb_internal) from [] (napi_gro_receive+0x78/0xa4)
(napi_gro_receive) from [] (rtl8169_poll+0x2dc/0x5dc)
(rtl8169_poll) from [] (net_rx_action+0x1d4/0x2d0)
(net_rx_action) from [] (__do_softirq+0xfc/0x214)
(__do_softirq) from [] (irq_exit+0xb0/0x118)
(irq_exit) from [] (__handle_domain_irq+0x60/0xb4)
(__handle_domain_irq) from [] (gic_handle_irq+0x54/0x94)
(gic_handle_irq) from [] (__irq_svc+0x54/0x70)

This is on a jetson-tk1 booting a multi_v7_defconfig kernel.

I expect this issue to appear in today's kernelci.org boots.

I don't see this or any other boot error after applying David's patch.

Regards,

Tomeu

> in IRQ
>
> RIP is at ip_route_input_noref
>
> [0.877597]  [] arp_process+0x39c/0x690
> [0.877597]  [] arp_rcv+0x13e/0x170
>
>
> -ss
>
>
>> Is this with KVM or baremetal?
>>
>> -8<-
>> thanks for the analysis
>>
>> >>addr2line -e vmlinux -i 0x8146c0b1
>> >>net/ipv4/route.c:1815
>> >>net/ipv4/route.c:1905
>> >>
>> >>
>> >>which seems to be this line ip_route_input_noref()->ip_route_input_slow():
>> >>...
>> >>1813 rth->rt_is_input = 1;
>> >>1814 if (res.table)
>> >>1815 rth->rt_table_id = res.table->tb_id;
>> >>1816
>> >>...
>> >>
>> >>
>> >>added by b7503e0cdb5dbec5d201aa69dc14679b5ae8
>> >>
>> >> net: Add FIB table id to rtable
>> >>
>> >> Add the FIB table id to rtable to make the information available for
>> >> IPv4 as it is for IPv6.
>> >>
>> >>
>> >>-ss
>>
>> Hi Richard:
>>
>> >I to get an Oops in ip_route_input_noref(). It happens occasionally during 
>> >bootup.
>> >KVM environment using virtio driver. Let me know if you need any additional 
>> >info or
>> >if you want me to try to bisect it.
>> >
>> >Starting network...
>> >...
>> >[0.877040] BUG: unable to handle kernel NULL pointer dereference at 
>> >0056
>> >[0.877597] IP: [] ip_route_input_noref+0x1a2/0xb00
>>
>> Can you send me your kernel config and qemu command line? KVM with virtio
>> networking is a primary test vehicle, and I did not encounter this at all.
>>
>> Thanks,
>> David
>>
>>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] oops in ip_route_input_noref

2015-09-17 Thread Thierry Reding
On Wed, Sep 16, 2015 at 09:04:15AM -0600, David Ahern wrote:
> On 9/16/15 9:00 AM, Fabio Estevam wrote:
> >On Wed, Sep 16, 2015 at 6:24 AM, Sergey Senozhatsky
> > wrote:
> >
> >>added by b7503e0cdb5dbec5d201aa69dc14679b5ae8
> >>
> >> net: Add FIB table id to rtable
> >>
> >> Add the FIB table id to rtable to make the information available for
> >> IPv4 as it is for IPv6.
> >
> >I see the same issue here when booting a mx25 ARM processor via NFS.
> >
> >defconfig is arch/arm/configs/imx_v4_v5_defconfig.
> >
> 
> I am still not able to reproduce. While I work on a full Cumulus image for
> other test cases here's a patch to try; eagle eye Nikolay noted a potential
> use without init in the maze of goto's.
> 
> Thanks,
> David

> diff --git a/net/ipv4/route.c b/net/ipv4/route.c
> index da427a4a33fe..80f7c5b7b832 100644
> --- a/net/ipv4/route.c
> +++ b/net/ipv4/route.c
> @@ -1712,6 +1712,7 @@ static int ip_route_input_slow(struct sk_buff *skb, 
> __be32 daddr, __be32 saddr,
>   goto martian_source;
>  
>   res.fi = NULL;
> + res.table = NULL;
>   if (ipv4_is_lbcast(daddr) || (saddr == 0 && daddr == 0))
>   goto brd_input;
>  
> @@ -1834,6 +1835,7 @@ out:return err;
>   RT_CACHE_STAT_INC(in_no_route);
>   res.type = RTN_UNREACHABLE;
>   res.fi = NULL;
> + res.table = NULL;
>   goto local_input;
>  
>   /*

I was seeing the same oops as Fabio (except that the faulting address
was 0xb instead of 0x7) and after applying this patch I no longer see
it:

Tested-by: Thierry Reding 


signature.asc
Description: PGP signature


[linux-next] oops in ip_route_input_noref

2015-09-16 Thread Sergey Senozhatsky
Hi,

4.3.0-rc1-next-20150916

oops after removal of rndis usb device

...
8146c052:   00 
8146c053:   0f b6 55 8a movzbl -0x76(%rbp),%edx
8146c057:   49 8b bf e8 01 00 00mov0x1e8(%r15),%rdi
8146c05e:   45 89 d1mov%r10d,%r9d
8146c061:   44 89 f6mov%r14d,%esi
8146c064:   44 88 95 70 ff ff ffmov%r10b,-0x90(%rbp)
8146c06b:   0f 95 c1setne  %cl
8146c06e:   81 ce 00 00 00 80   or $0x8000,%esi
8146c074:   41 83 e1 01 and$0x1,%r9d
8146c078:   45 31 c0xor%r8d,%r8d
8146c07b:   e8 49 d5 ff ff  callq  814695c9 

8146c080:   48 85 c0test   %rax,%rax
8146c083:   49 89 c5mov%rax,%r13
8146c086:   75 0a   jne8146c092 

8146c088:   bb 97 ff ff ff  mov$0xff97,%ebx
8146c08d:   e9 06 f8 ff ff  jmpq   8146b898 

8146c092:   48 c7 40 58 a3 95 46movq   
$0x814695a3,0x58(%rax)
8146c099:   81 
8146c09a:   c6 80 a2 00 00 00 01movb   $0x1,0xa2(%rax)
8146c0a1:   48 8b 45 98 mov-0x68(%rbp),%rax
8146c0a5:   44 8a 95 70 ff ff ffmov-0x90(%rbp),%r10b
8146c0ac:   48 85 c0test   %rax,%rax
8146c0af:   74 0a   je 8146c0bb 

8146c0b1:   8b 40 10mov0x10(%rax),%eax
^^^
8146c0b4:   41 89 85 b0 00 00 00mov%eax,0xb0(%r13)
8146c0bb:   65 ff 05 9e 54 ba 7eincl   %gs:0x7eba549e(%rip) 
   # 11560 
8146c0c2:   80 7d 8a 07 cmpb   $0x7,-0x76(%rbp)
8146c0c6:   75 1a   jne8146c0e2 

8146c0c8:   41 81 a5 9c 00 00 00andl   $0x7fff,0x9c(%r13)
8146c0cf:   ff ff ff 7f 
8146c0d3:   f7 db   neg%ebx
8146c0d5:   49 c7 45 50 b1 96 46movq   
$0x814696b1,0x50(%r13)
8146c0dc:   81 
8146c0dd:   66 41 89 5d 64  mov%bx,0x64(%r13)
8146c0e2:   45 84 d2test   %r10b,%r10b
8146c0e5:   74 29   je 8146c110 

8146c0e7:   0f b6 7d 89 movzbl -0x77(%rbp),%edi
8146c0eb:   4c 89 eemov%r13,%rsi
8146c0ee:   48 ff c7inc%rdi
8146c0f1:   48 6b ff 60 imul   $0x60,%rdi,%rdi
8146c0f5:   48 03 7d 90 add-0x70(%rbp),%rdi
8146c0f9:   e8 10 d1 ff ff  callq  8146920e 

8146c0fe:   84 c0   test   %al,%al
8146c100:   75 0e   jne8146c110 

8146c102:   66 41 83 4d 60 10   orw$0x10,0x60(%r13)
8146c108:   4c 89 efmov%r13,%rdi
8146c10b:   e8 7d cc ff ff  callq  81468d8d 

8146c110:   4d 89 6c 24 58  mov%r13,0x58(%r12)
8146c115:   31 db   xor%ebx,%ebx
8146c117:   e9 7c f7 ff ff  jmpq   8146b898 

8146c11c:   bb 8f ff ff ff  mov$0xff8f,%ebx
8146c121:   c6 45 8a 07 movb   $0x7,-0x76(%rbp)
8146c125:   48 c7 45 90 00 00 00movq   $0x0,-0x70(%rbp)
...

addr2line -e vmlinux -i 0x8146c0b1
net/ipv4/route.c:1815
net/ipv4/route.c:1905


which seems to be this line ip_route_input_noref()->ip_route_input_slow():
...
1813 rth->rt_is_input = 1;
1814 if (res.table)
1815 rth->rt_table_id = res.table->tb_id;
1816
...


added by b7503e0cdb5dbec5d201aa69dc14679b5ae8

net: Add FIB table id to rtable

Add the FIB table id to rtable to make the information available for
IPv4 as it is for IPv6.


-ss
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] oops in ip_route_input_noref

2015-09-16 Thread Richard Alpe
On 2015-09-16 11:24, Sergey Senozhatsky wrote:
> Hi,
> 
> 4.3.0-rc1-next-20150916
> 
> oops after removal of rndis usb device
> 
> ...
> 8146c052:   00 
> 8146c053:   0f b6 55 8a movzbl -0x76(%rbp),%edx
> 8146c057:   49 8b bf e8 01 00 00mov0x1e8(%r15),%rdi
> 8146c05e:   45 89 d1mov%r10d,%r9d
> 8146c061:   44 89 f6mov%r14d,%esi
> 8146c064:   44 88 95 70 ff ff ffmov%r10b,-0x90(%rbp)
> 8146c06b:   0f 95 c1setne  %cl
> 8146c06e:   81 ce 00 00 00 80   or $0x8000,%esi
> 8146c074:   41 83 e1 01 and$0x1,%r9d
> 8146c078:   45 31 c0xor%r8d,%r8d
> 8146c07b:   e8 49 d5 ff ff  callq  814695c9 
> 
> 8146c080:   48 85 c0test   %rax,%rax
> 8146c083:   49 89 c5mov%rax,%r13
> 8146c086:   75 0a   jne8146c092 
> 
> 8146c088:   bb 97 ff ff ff  mov$0xff97,%ebx
> 8146c08d:   e9 06 f8 ff ff  jmpq   8146b898 
> 
> 8146c092:   48 c7 40 58 a3 95 46movq   
> $0x814695a3,0x58(%rax)
> 8146c099:   81 
> 8146c09a:   c6 80 a2 00 00 00 01movb   $0x1,0xa2(%rax)
> 8146c0a1:   48 8b 45 98 mov-0x68(%rbp),%rax
> 8146c0a5:   44 8a 95 70 ff ff ffmov-0x90(%rbp),%r10b
> 8146c0ac:   48 85 c0test   %rax,%rax
> 8146c0af:   74 0a   je 8146c0bb 
> 
> 8146c0b1:   8b 40 10mov0x10(%rax),%eax
> ^^^
> 8146c0b4:   41 89 85 b0 00 00 00mov%eax,0xb0(%r13)
> 8146c0bb:   65 ff 05 9e 54 ba 7eincl   %gs:0x7eba549e(%rip)   
>  # 11560 
> 8146c0c2:   80 7d 8a 07 cmpb   $0x7,-0x76(%rbp)
> 8146c0c6:   75 1a   jne8146c0e2 
> 
> 8146c0c8:   41 81 a5 9c 00 00 00andl   $0x7fff,0x9c(%r13)
> 8146c0cf:   ff ff ff 7f 
> 8146c0d3:   f7 db   neg%ebx
> 8146c0d5:   49 c7 45 50 b1 96 46movq   
> $0x814696b1,0x50(%r13)
> 8146c0dc:   81 
> 8146c0dd:   66 41 89 5d 64  mov%bx,0x64(%r13)
> 8146c0e2:   45 84 d2test   %r10b,%r10b
> 8146c0e5:   74 29   je 8146c110 
> 
> 8146c0e7:   0f b6 7d 89 movzbl -0x77(%rbp),%edi
> 8146c0eb:   4c 89 eemov%r13,%rsi
> 8146c0ee:   48 ff c7inc%rdi
> 8146c0f1:   48 6b ff 60 imul   $0x60,%rdi,%rdi
> 8146c0f5:   48 03 7d 90 add-0x70(%rbp),%rdi
> 8146c0f9:   e8 10 d1 ff ff  callq  8146920e 
> 
> 8146c0fe:   84 c0   test   %al,%al
> 8146c100:   75 0e   jne8146c110 
> 
> 8146c102:   66 41 83 4d 60 10   orw$0x10,0x60(%r13)
> 8146c108:   4c 89 efmov%r13,%rdi
> 8146c10b:   e8 7d cc ff ff  callq  81468d8d 
> 
> 8146c110:   4d 89 6c 24 58  mov%r13,0x58(%r12)
> 8146c115:   31 db   xor%ebx,%ebx
> 8146c117:   e9 7c f7 ff ff  jmpq   8146b898 
> 
> 8146c11c:   bb 8f ff ff ff  mov$0xff8f,%ebx
> 8146c121:   c6 45 8a 07 movb   $0x7,-0x76(%rbp)
> 8146c125:   48 c7 45 90 00 00 00movq   $0x0,-0x70(%rbp)
> ...
> 
> addr2line -e vmlinux -i 0x8146c0b1
> net/ipv4/route.c:1815
> net/ipv4/route.c:1905
> 
> 
> which seems to be this line ip_route_input_noref()->ip_route_input_slow():
> ...
> 1813 rth->rt_is_input = 1;
> 1814 if (res.table)
> 1815 rth->rt_table_id = res.table->tb_id;
> 1816
> ...
> 
> 
> added by b7503e0cdb5dbec5d201aa69dc14679b5ae8
> 
> net: Add FIB table id to rtable
> 
> Add the FIB table id to rtable to make the information available for
> IPv4 as it is for IPv6.
> 
> 
>   -ss
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

I to get an Oops in ip_route_input_noref(). It happens occasionally during 
bootup.
KVM environment using virtio driver. Let me know if you need any additional 

Re: [linux-next] oops in ip_route_input_noref

2015-09-16 Thread Richard Alpe
On 2015-09-16 15:07, David Ahern wrote:
> On 9/16/15 5:50 AM, Richard Alpe wrote:
>> On 2015-09-16 11:24, Sergey Senozhatsky wrote:
>>> Hi,
>>>
>>> 4.3.0-rc1-next-20150916
>>>
>>> oops after removal of rndis usb device
> 
> Hi Sergey:
> 
> Is this with KVM or baremetal?
> 
> -8<-
> thanks for the analysis
> 
>>> addr2line -e vmlinux -i 0x8146c0b1
>>> net/ipv4/route.c:1815
>>> net/ipv4/route.c:1905
>>>
>>>
>>> which seems to be this line ip_route_input_noref()->ip_route_input_slow():
>>> ...
>>> 1813 rth->rt_is_input = 1;
>>> 1814 if (res.table)
>>> 1815 rth->rt_table_id = res.table->tb_id;
>>> 1816
>>> ...
>>>
>>>
>>> added by b7503e0cdb5dbec5d201aa69dc14679b5ae8
>>>
>>>  net: Add FIB table id to rtable
>>>
>>>  Add the FIB table id to rtable to make the information available for
>>>  IPv4 as it is for IPv6.
>>>
>>>
>>> -ss
> 
> Hi Richard:
> 
>> I to get an Oops in ip_route_input_noref(). It happens occasionally during 
>> bootup.
>> KVM environment using virtio driver. Let me know if you need any additional 
>> info or
>> if you want me to try to bisect it.
>>
>> Starting network...
>> ...
>> [0.877040] BUG: unable to handle kernel NULL pointer dereference at 
>> 0056
>> [0.877597] IP: [] ip_route_input_noref+0x1a2/0xb00
> 
> Can you send me your kernel config and qemu command line? KVM with virtio 
> networking is a primary test vehicle, and I did not encounter this at all.
Sure thing. Not sure how ppl normally provide files on netdev but I'm just going
to go ahead and paste them here :)

$ ps aux | grep kvm
qemu-system-x86_64 -enable-kvm -name tipc-medium-node1 -S -machine 
pc-0.14,accel=kvm,usb=off -m 1024 -realtime mlock=off -smp 
2,sockets=2,cores=1,threads=1 -uuid cdec478a-5f0d-49f1-b25e-fac4ca0b290c 
-no-user-config -nodefaults -chardev 
socket,id=charmonitor,path=/var/lib/libvirt/qemu/tipc-medium-node1.monitor,server,nowait
 -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown 
-boot order=n,menu=on,strict=on -device 
piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -netdev tap,fd=25,id=hostnet0 
-device e1000,netdev=hostnet0,id=net0,mac=00:0f:ff:10:04:01,bus=pci.0,addr=0x3 
-chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 
-vnc 127.0.0.1:28101 -device cirrus-vga,id=video0,bus=pci.0,addr=0x2 -device 
virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 -msg timestamp=on

$ cat .config
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86 3.12.28 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
CONFIG_X86=y
CONFIG_INSTRUCTION_DECODER=y
CONFIG_OUTPUT_FORMAT="elf64-x86-64"
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_MMU=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_ARCH_HAS_CPU_RELAX=y
CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
CONFIG_ARCH_HAS_CPU_AUTOPROBE=y
CONFIG_HAVE_SETUP_PER_CPU_AREA=y
CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
CONFIG_ZONE_DMA32=y
CONFIG_AUDIT_ARCH=y
CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
CONFIG_X86_64_SMP=y
CONFIG_X86_HT=y
CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi -fcall-saved-rsi -fcall-saved-rdx 
-fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 -fcall-saved-r10 
-fcall-saved-r11"
CONFIG_ARCH_CPU_PROBE_RELEASE=y
CONFIG_ARCH_SUPPORTS_UPROBES=y
CONFIG_SUSE_KERNEL=y
# CONFIG_SUSE_KERNEL_SUPPORTED is not set
# CONFIG_SPLIT_PACKAGE is not set
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_EXTABLE_SORT=y

#
# General setup
#
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_CROSS_COMPILE=""
# CONFIG_COMPILE_TEST is not set
CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_HAVE_KERNEL_GZIP=y
CONFIG_HAVE_KERNEL_BZIP2=y
CONFIG_HAVE_KERNEL_LZMA=y
CONFIG_HAVE_KERNEL_XZ=y
CONFIG_HAVE_KERNEL_LZO=y
CONFIG_HAVE_KERNEL_LZ4=y
CONFIG_KERNEL_GZIP=y
# CONFIG_KERNEL_BZIP2 is not set
# CONFIG_KERNEL_LZMA is not set
# CONFIG_KERNEL_XZ is not set
# CONFIG_KERNEL_LZO is not set
# CONFIG_KERNEL_LZ4 is not set
CONFIG_DEFAULT_HOSTNAME="(none)"
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
# CONFIG_POSIX_MQUEUE is not set
# CONFIG_FHANDLE is not set
CONFIG_AUDIT=y
CONFIG_AUDITSYSCALL=y
CONFIG_AUDIT_WATCH=y
CONFIG_AUDIT_TREE=y

#
# IRQ subsystem
#
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_GENERIC_IRQ_SHOW=y
CONFIG_GENERIC_PENDING_IRQ=y
CONFIG_IRQ_FORCED_THREADING=y
CONFIG_SPARSE_IRQ=y
CONFIG_CLOCKSOURCE_WATCHDOG=y
CONFIG_ARCH_CLOCKSOURCE_DATA=y
CONFIG_GENERIC_TIME_VSYSCALL=y

Re: [linux-next] oops in ip_route_input_noref

2015-09-16 Thread Richard Alpe
On 2015-09-16 15:53, Richard Alpe wrote:
> On 2015-09-16 15:07, David Ahern wrote:
>> On 9/16/15 5:50 AM, Richard Alpe wrote:
>>> On 2015-09-16 11:24, Sergey Senozhatsky wrote:
 Hi,

 4.3.0-rc1-next-20150916

 oops after removal of rndis usb device
>>
>> Hi Sergey:
>>
>> Is this with KVM or baremetal?
>>
>> -8<-
>> thanks for the analysis
>>
 addr2line -e vmlinux -i 0x8146c0b1
 net/ipv4/route.c:1815
 net/ipv4/route.c:1905


 which seems to be this line ip_route_input_noref()->ip_route_input_slow():
 ...
 1813 rth->rt_is_input = 1;
 1814 if (res.table)
 1815 rth->rt_table_id = res.table->tb_id;
 1816
 ...


 added by b7503e0cdb5dbec5d201aa69dc14679b5ae8

  net: Add FIB table id to rtable

  Add the FIB table id to rtable to make the information available for
  IPv4 as it is for IPv6.


 -ss
>>
>> Hi Richard:
>>
>>> I to get an Oops in ip_route_input_noref(). It happens occasionally during 
>>> bootup.
>>> KVM environment using virtio driver. Let me know if you need any additional 
>>> info or
>>> if you want me to try to bisect it.
>>>
>>> Starting network...
>>> ...
>>> [0.877040] BUG: unable to handle kernel NULL pointer dereference at 
>>> 0056
>>> [0.877597] IP: [] ip_route_input_noref+0x1a2/0xb00
>>
>> Can you send me your kernel config and qemu command line? KVM with virtio 
>> networking is a primary test vehicle, and I did not encounter this at all.
> Sure thing. Not sure how ppl normally provide files on netdev but I'm just 
> going
> to go ahead and paste them here :)
> 
> $ ps aux | grep kvm
> qemu-system-x86_64 -enable-kvm -name tipc-medium-node1 -S -machine 
> pc-0.14,accel=kvm,usb=off -m 1024 -realtime mlock=off -smp 
> 2,sockets=2,cores=1,threads=1 -uuid cdec478a-5f0d-49f1-b25e-fac4ca0b290c 
> -no-user-config -nodefaults -chardev 
> socket,id=charmonitor,path=/var/lib/libvirt/qemu/tipc-medium-node1.monitor,server,nowait
>  -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown 
> -boot order=n,menu=on,strict=on -device 
> piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -netdev tap,fd=25,id=hostnet0 
> -device 
> e1000,netdev=hostnet0,id=net0,mac=00:0f:ff:10:04:01,bus=pci.0,addr=0x3 
> -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 
> -vnc 127.0.0.1:28101 -device cirrus-vga,id=video0,bus=pci.0,addr=0x2 -device 
> virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 -msg timestamp=on

Sorry about that kvm cmdline was a copy-paste error. Here's the right one using 
virtio.

$ ps aux | grep qemu
qemu-system-x86_64 -enable-kvm -name tipc-large-node16 -S -machine 
pc-0.14,accel=kvm,usb=off -m 1024 -realtime mlock=off -smp 
2,sockets=2,cores=1,threads=1 -uuid 5c2ffa5f-fc39-47a2-9868-9ef93bada31a 
-no-user-config -nodefaults -chardev 
socket,id=charmonitor,path=/var/lib/libvirt/qemu/tipc-large-node16.monitor,server,nowait
 -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown 
-boot order=n,menu=on,strict=on -device 
piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -netdev 
tap,fd=25,id=hostnet0,vhost=on,vhostfd=48 -device 
virtio-net-pci,netdev=hostnet0,id=net0,mac=00:0f:ff:10:05:16,bus=pci.0,addr=0x3 
-chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 
-vnc 127.0.0.1:29116 -device cirrus-vga,id=video0,bus=pci.0,addr=0x2 -device 
virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 -msg timestamp=on

Regards
Richard

> 
> $ cat .config
> #
> # Automatically generated file; DO NOT EDIT.
> # Linux/x86 3.12.28 Kernel Configuration
> #
> CONFIG_64BIT=y
> CONFIG_X86_64=y
> CONFIG_X86=y
> CONFIG_INSTRUCTION_DECODER=y
> CONFIG_OUTPUT_FORMAT="elf64-x86-64"
> CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
> CONFIG_LOCKDEP_SUPPORT=y
> CONFIG_STACKTRACE_SUPPORT=y
> CONFIG_HAVE_LATENCYTOP_SUPPORT=y
> CONFIG_MMU=y
> CONFIG_NEED_DMA_MAP_STATE=y
> CONFIG_NEED_SG_DMA_LENGTH=y
> CONFIG_GENERIC_ISA_DMA=y
> CONFIG_GENERIC_BUG=y
> CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
> CONFIG_GENERIC_HWEIGHT=y
> CONFIG_ARCH_MAY_HAVE_PC_FDC=y
> CONFIG_RWSEM_XCHGADD_ALGORITHM=y
> CONFIG_GENERIC_CALIBRATE_DELAY=y
> CONFIG_ARCH_HAS_CPU_RELAX=y
> CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
> CONFIG_ARCH_HAS_CPU_AUTOPROBE=y
> CONFIG_HAVE_SETUP_PER_CPU_AREA=y
> CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
> CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
> CONFIG_ARCH_HIBERNATION_POSSIBLE=y
> CONFIG_ARCH_SUSPEND_POSSIBLE=y
> CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
> CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
> CONFIG_ZONE_DMA32=y
> CONFIG_AUDIT_ARCH=y
> CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
> CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
> CONFIG_X86_64_SMP=y
> CONFIG_X86_HT=y
> CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi -fcall-saved-rsi 
> -fcall-saved-rdx -fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 
> -fcall-saved-r10 -fcall-saved-r11"
> CONFIG_ARCH_CPU_PROBE_RELEASE=y
> 

Re: [linux-next] oops in ip_route_input_noref

2015-09-16 Thread David Ahern

On 9/16/15 5:50 AM, Richard Alpe wrote:

On 2015-09-16 11:24, Sergey Senozhatsky wrote:

Hi,

4.3.0-rc1-next-20150916

oops after removal of rndis usb device


Hi Sergey:

Is this with KVM or baremetal?

-8<-
thanks for the analysis


addr2line -e vmlinux -i 0x8146c0b1
net/ipv4/route.c:1815
net/ipv4/route.c:1905


which seems to be this line ip_route_input_noref()->ip_route_input_slow():
...
1813 rth->rt_is_input = 1;
1814 if (res.table)
1815 rth->rt_table_id = res.table->tb_id;
1816
...


added by b7503e0cdb5dbec5d201aa69dc14679b5ae8

 net: Add FIB table id to rtable

 Add the FIB table id to rtable to make the information available for
 IPv4 as it is for IPv6.


-ss


Hi Richard:


I to get an Oops in ip_route_input_noref(). It happens occasionally during 
bootup.
KVM environment using virtio driver. Let me know if you need any additional 
info or
if you want me to try to bisect it.

Starting network...
...
[0.877040] BUG: unable to handle kernel NULL pointer dereference at 
0056
[0.877597] IP: [] ip_route_input_noref+0x1a2/0xb00


Can you send me your kernel config and qemu command line? KVM with 
virtio networking is a primary test vehicle, and I did not encounter 
this at all.


Thanks,
David


--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] oops in ip_route_input_noref

2015-09-16 Thread David Ahern

On 9/16/15 3:24 AM, Sergey Senozhatsky wrote:

Hi,

4.3.0-rc1-next-20150916

oops after removal of rndis usb device


Sergey:

Can you send me the oops output?

Thanks,
David

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] oops in ip_route_input_noref

2015-09-16 Thread David Ahern

On 9/16/15 7:53 AM, Richard Alpe wrote:

I to get an Oops in ip_route_input_noref(). It happens occasionally during 
bootup.
KVM environment using virtio driver. Let me know if you need any additional 
info or
if you want me to try to bisect it.

Starting network...
...
[0.877040] BUG: unable to handle kernel NULL pointer dereference at 
0056
[0.877597] IP: [] ip_route_input_noref+0x1a2/0xb00


Can you send me your kernel config and qemu command line? KVM with virtio 
networking is a primary test vehicle, and I did not encounter this at all.

Sure thing. Not sure how ppl normally provide files on netdev but I'm just going
to go ahead and paste them here :)


An attachment for the config is better than inline.



$ ps aux | grep kvm
qemu-system-x86_64 -enable-kvm -name tipc-medium-node1 -S -machine 
pc-0.14,accel=kvm,usb=off -m 1024 -realtime mlock=off -smp 
2,sockets=2,cores=1,threads=1 -uuid cdec478a-5f0d-49f1-b25e-fac4ca0b290c 
-no-user-config -nodefaults -chardev 
socket,id=charmonitor,path=/var/lib/libvirt/qemu/tipc-medium-node1.monitor,server,nowait
 -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown 
-boot order=n,menu=on,strict=on -device 
piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -netdev tap,fd=25,id=hostnet0 
-device e1000,netdev=hostnet0,id=net0,mac=00:0f:ff:10:04:01,bus=pci.0,addr=0x3 
-chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 
-vnc 127.0.0.1:28101 -device cirrus-vga,id=video0,bus=pci.0,addr=0x2 -device 
virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 -msg timestamp=on

$ cat .config
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86 3.12.28 Kernel Configuration
#


3.12.28? That should say this for net-next:

# Linux/x86 4.2.0 Kernel Configuration

Or are you reporting a problem with 3.12.28?

David
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] oops in ip_route_input_noref

2015-09-16 Thread David Ahern

On 9/16/15 7:59 AM, Richard Alpe wrote:

Sorry about that kvm cmdline was a copy-paste error. Here's the right one using 
virtio.


I was just about to respond to that as well...
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [linux-next] oops in ip_route_input_noref

2015-09-16 Thread Richard Alpe
On 2015-09-16 15:57, David Ahern wrote:
> On 9/16/15 7:53 AM, Richard Alpe wrote:
 I to get an Oops in ip_route_input_noref(). It happens occasionally during 
 bootup.
 KVM environment using virtio driver. Let me know if you need any 
 additional info or
 if you want me to try to bisect it.

 Starting network...
 ...
 [0.877040] BUG: unable to handle kernel NULL pointer dereference at 
 0056
 [0.877597] IP: [] ip_route_input_noref+0x1a2/0xb00
>>>
>>> Can you send me your kernel config and qemu command line? KVM with virtio 
>>> networking is a primary test vehicle, and I did not encounter this at all.
>> Sure thing. Not sure how ppl normally provide files on netdev but I'm just 
>> going
>> to go ahead and paste them here :)
> 
> An attachment for the config is better than inline.
Fantastic day today, I managed to mess up two out of two copy pastes.
Sorry about that.. Here is the proper kconfig as .gz :)

Regards
Richard

> 
>>
>> $ ps aux | grep kvm
>> qemu-system-x86_64 -enable-kvm -name tipc-medium-node1 -S -machine 
>> pc-0.14,accel=kvm,usb=off -m 1024 -realtime mlock=off -smp 
>> 2,sockets=2,cores=1,threads=1 -uuid cdec478a-5f0d-49f1-b25e-fac4ca0b290c 
>> -no-user-config -nodefaults -chardev 
>> socket,id=charmonitor,path=/var/lib/libvirt/qemu/tipc-medium-node1.monitor,server,nowait
>>  -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown 
>> -boot order=n,menu=on,strict=on -device 
>> piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -netdev tap,fd=25,id=hostnet0 
>> -device 
>> e1000,netdev=hostnet0,id=net0,mac=00:0f:ff:10:04:01,bus=pci.0,addr=0x3 
>> -chardev pty,id=charserial0 -device 
>> isa-serial,chardev=charserial0,id=serial0 -vnc 127.0.0.1:28101 -device 
>> cirrus-vga,id=video0,bus=pci.0,addr=0x2 -device 
>> virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4 -msg timestamp=on
>>
>> $ cat .config
>> #
>> # Automatically generated file; DO NOT EDIT.
>> # Linux/x86 3.12.28 Kernel Configuration
>> #
> 
> 3.12.28? That should say this for net-next:
> 
> # Linux/x86 4.2.0 Kernel Configuration
> 
> Or are you reporting a problem with 3.12.28?
> 
> David



config.gz
Description: application/gzip


Re: [linux-next] oops in ip_route_input_noref

2015-09-16 Thread Fabio Estevam
On Wed, Sep 16, 2015 at 6:24 AM, Sergey Senozhatsky
 wrote:

> added by b7503e0cdb5dbec5d201aa69dc14679b5ae8
>
> net: Add FIB table id to rtable
>
> Add the FIB table id to rtable to make the information available for
> IPv4 as it is for IPv6.

I see the same issue here when booting a mx25 ARM processor via NFS.

defconfig is arch/arm/configs/imx_v4_v5_defconfig.

It happens in 100% of the boots and the log is:

fec 50038000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
Sending DHCP requests .
Unable to handle kernel NULL pointer dereference at virtual address 0007
pgd = c0004000
[0007] *pgd=
Internal error: Oops: 1 [#1] PREEMPT ARM
Modules linked in:
CPU: 0 PID: 0 Comm: swapper Not tainted 4.3.0-rc1-next-20150916-dirty #96
Hardware name: Freescale i.MX25 (Device Tree Support)
task: c06ac1d0 ti: c06a8000 task.ti: c06a8000
PC is at ip_route_input_noref+0x3d8/0x808
LR is at __local_bh_enable_ip+0x5c/0xdc
pc : []lr : []psr: a013
sp : c06a9cb0  ip : 000a  fp : 
r10: c39b7000  r9 : c39c8d00  r8 : 1e00a8c0
r7 : c39c04a0  r6 :   r5 : c3969a00  r4 : ff8f
r3 :   r2 : 0001  r1 : c0438410  r0 : c3969a00
Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
Control: 0005317f  Table: 80004000  DAC: 0053
Process swapper (pid: 0, stack limit = 0xc06a8190)
Stack: (0xc06a9cb0 to 0xc06aa000)
9ca0:   0044 c06ab93c
9cc0: 0100a8c0 c06f0540 c3a8f74e  0002 00070044 c043bba8 
9ce0:  c06a9d24  0002  1e00 0100a8c0 
9d00:   0100a8c0 1e00a8c0 c3a8f720 0001  c3a8f74e
9d20: c39c04a0 c39c04a0 002e c3a8f720 0001  c06fa580 c043bbbc
9d40: c39b7000 c06a9d60 c3a8f720 c39b7000 c39c04a0 c06f0540 002e c043c3a0
9d60: c3a8f896 c06929f4 c39b7000 c30d3ce0 c06a9d78 0100a8c0 c0401190 c06ab9d8
9d80: 0008 c39b7048 0008 c06ab9d8 c39b7000 c39b705c c39c04a0 c040dfa0
9da0: c39c04a0 c3a8f74e 002e c39b753c c39c04a0 c39c04a0 c06ab9c0 c39b705c
9dc0: c39b7520 0008     c39c04a0 c04117c0
9de0: 08e0 c39c04a0 c39c04a0 c39b7520 0001   
9e00: c39b7000 c0411400   0003 c04120cc c485d000 0800
9e20: c39c04a0 c02fde40  c06ac1d0 c06b1c38 0040 c39b7030 c39b7040
9e40: c3943000   0002 c30d39e0   
9e60: c39b74b8 0040 c39b7460 c39b7520 c06b3ce0 c383de14 e1e6cf80 c39b7520
9e80: 0001 0040 012c c06a9ea8 8c4d c06b4500 c06fa580 c0411bdc
9ea0: c06a9eb0 8c4d c06a9ea8 c06a9ea8 c06a9eb0 c06a9eb0 0001 
9ec0: 0008 0003 c06fd76c c06fa8d0 0101 0004 000c c001bc24
9ee0: c39d2080  0001 000a 8c4c 0020  
9f00: c06cf3a4  0001 c06a9f58 41069264 c3802000  c001c148
9f20:  c004c958 c06a9f58 c06fd284 c06a9f58  c06a9f8c c06fa69d
9f40: c06b3034 c0009404 c000ac20 6013  c04b5c64  0005317f
9f60: 0005217f 6013 c06aa0f4 c06fae98 c06fa69d c06fae98 c06fa69d 41069264
9f80: c06b3034  60d3 c06a9fa8 c000ac30 c000ac20 6013 
9fa0: 0053 c06fae98  c0041724 c06ac1d0   c065ebc4
9fc0:    c065e670  c06978bc  c06fd174
9fe0: c06aa094 c06978b8 c06ad120 80004000 80695fb8 80008048  
[] (ip_route_input_noref) from [] (ip_rcv_finish+0xe8/0x31c)
[] (ip_rcv_finish) from [] (ip_rcv+0x2b4/0x3d4)
[] (ip_rcv) from [] (__netif_receive_skb_core+0x304/0x944)
[] (__netif_receive_skb_core) from []
(netif_receive_skb_internal+0x28/0x78)
[] (netif_receive_skb_internal) from []
(napi_gro_receive+0x88/0x130)
[] (napi_gro_receive) from [] (fec_enet_rx_napi+0x404/0xa78)
[] (fec_enet_rx_napi) from [] (net_rx_action+0xf8/0x334)
[] (net_rx_action) from [] (__do_softirq+0x11c/0x3a0)
[] (__do_softirq) from [] (irq_exit+0xac/0xf8)
[] (irq_exit) from [] (__handle_domain_irq+0x64/0xd0)
[] (__handle_domain_irq) from [] (avic_handle_irq+0x34/0x54)
[] (avic_handle_irq) from [] (__irq_svc+0x44/0x78)
Exception stack(0xc06a9f58 to 0xc06a9fa0)
9f40:    0005317f
9f60: 0005217f 6013 c06aa0f4 c06fae98 c06fa69d c06fae98 c06fa69d 41069264
9f80: c06b3034  60d3 c06a9fa8 c000ac30 c000ac20 6013 
[] (__irq_svc) from [] (arch_cpu_idle+0x28/0x44)
[] (arch_cpu_idle) from [] (cpu_startup_entry+0x118/0x2bc)
[] (cpu_startup_entry) from [] (start_kernel+0x308/0x368)
[] (start_kernel) from [<80008048>] (0x80008048)
Code: e3a02001 e353 e585102c e5c5205e (15933008)
---[ end trace 443993f61e8bf0a0 ]---
Kernel panic - not syncing: Fatal exception in interrupt
---[ end Kernel panic - not syncing: Fatal exception in interrupt
--
To unsubscribe from this list: send the 

Re: [linux-next] oops in ip_route_input_noref

2015-09-16 Thread David Ahern

On 9/16/15 9:00 AM, Fabio Estevam wrote:

On Wed, Sep 16, 2015 at 6:24 AM, Sergey Senozhatsky
 wrote:


added by b7503e0cdb5dbec5d201aa69dc14679b5ae8

 net: Add FIB table id to rtable

 Add the FIB table id to rtable to make the information available for
 IPv4 as it is for IPv6.


I see the same issue here when booting a mx25 ARM processor via NFS.

defconfig is arch/arm/configs/imx_v4_v5_defconfig.



I am still not able to reproduce. While I work on a full Cumulus image 
for other test cases here's a patch to try; eagle eye Nikolay noted a 
potential use without init in the maze of goto's.


Thanks,
David
diff --git a/net/ipv4/route.c b/net/ipv4/route.c
index da427a4a33fe..80f7c5b7b832 100644
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
@@ -1712,6 +1712,7 @@ static int ip_route_input_slow(struct sk_buff *skb, 
__be32 daddr, __be32 saddr,
goto martian_source;
 
res.fi = NULL;
+   res.table = NULL;
if (ipv4_is_lbcast(daddr) || (saddr == 0 && daddr == 0))
goto brd_input;
 
@@ -1834,6 +1835,7 @@ out:  return err;
RT_CACHE_STAT_INC(in_no_route);
res.type = RTN_UNREACHABLE;
res.fi = NULL;
+   res.table = NULL;
goto local_input;
 
/*


Re: [linux-next] oops in ip_route_input_noref

2015-09-16 Thread Sergey Senozhatsky
On (09/16/15 07:07), David Ahern wrote:
> Hi Sergey:
> 

Hi,

sorry for long reply. Baremetal. So grabbing the backtrace is
a bit complicated. But it looks very close to what Richard Alpe
has posted.

in IRQ

RIP is at ip_route_input_noref

[0.877597]  [] arp_process+0x39c/0x690
[0.877597]  [] arp_rcv+0x13e/0x170


-ss


> Is this with KVM or baremetal?
> 
> -8<-
> thanks for the analysis
> 
> >>addr2line -e vmlinux -i 0x8146c0b1
> >>net/ipv4/route.c:1815
> >>net/ipv4/route.c:1905
> >>
> >>
> >>which seems to be this line ip_route_input_noref()->ip_route_input_slow():
> >>...
> >>1813 rth->rt_is_input = 1;
> >>1814 if (res.table)
> >>1815 rth->rt_table_id = res.table->tb_id;
> >>1816
> >>...
> >>
> >>
> >>added by b7503e0cdb5dbec5d201aa69dc14679b5ae8
> >>
> >> net: Add FIB table id to rtable
> >>
> >> Add the FIB table id to rtable to make the information available for
> >> IPv4 as it is for IPv6.
> >>
> >>
> >>-ss
> 
> Hi Richard:
> 
> >I to get an Oops in ip_route_input_noref(). It happens occasionally during 
> >bootup.
> >KVM environment using virtio driver. Let me know if you need any additional 
> >info or
> >if you want me to try to bisect it.
> >
> >Starting network...
> >...
> >[0.877040] BUG: unable to handle kernel NULL pointer dereference at 
> >0056
> >[0.877597] IP: [] ip_route_input_noref+0x1a2/0xb00
> 
> Can you send me your kernel config and qemu command line? KVM with virtio
> networking is a primary test vehicle, and I did not encounter this at all.
> 
> Thanks,
> David
> 
> 
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html