Roger Pau Monné
2017-Jan-20 16:44 UTC
FreeBSD 11 Stable on a Xen :: bridge0 crashing server
On Fri, Jan 20, 2017 at 07:20:15PM +0300, Andrey V. Elsukov wrote:> On 20.01.2017 18:57, Trond Endrest?l wrote: > > > Here is the situation: > > > I have a VPS server from a well reputed provider (and they deserve the > > > reputation), running FreeBSD 11 stable x64 under Xen Full Virtualization > > > (HVM). I have the xn0 interface which is working fine. I intend to use VIMAGE, > > > so I compiled the kernel, added cloned_interface="bridge0" and restarted the > > > server. But as soon as I am attaching the xn0 to bridge0, the kernel is > > > panicking and the server restarting. > > > Any suggestion/pointer/test-instruction is highly appreciated. > > > > The code crashes at line 427 of sys/netinet/if_ether.c: > > > > ARPSTAT_INC(txrequests); > > > > See > > https://svnweb.freebsd.org/base/stable/11/sys/netinet/if_ether.c?view=annotate#l427 > > > > stable/11 has problems accounting the outgoing octets of any xn > > interface, although this isn't connected to your case. > > > > Just to rule out any uncertainty, try this patch: > > > > https://svnweb.freebsd.org/base?view=revision&revision=308126 > > > > See PR 213439, > > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=213439 > > > > Note, I'm not a developer nor a committer, just a humble sysadmin. > > This problem is unrelated. ARP statistics is global and isn't related to > some specific interface. IMHO, the kernel panics due to missing VNET > context. As I see from the code in sys/dev/xen, it is not capable with > VIMAGE.I cannot really look into this right now due to lack of time, but I'm more than happy to review/apply patches in order to fix this. Roger.
Sarder Kamal
2017-Jan-20 17:40 UTC
FreeBSD 11 Stable on a Xen :: bridge0 crashing server :: &ro
On 20/01/2017 16:44, Roger Pau Monn? wrote:> On Fri, Jan 20, 2017 at 07:20:15PM +0300, Andrey V. Elsukov wrote: >> On 20.01.2017 18:57, Trond Endrest?l wrote: >>>> Here is the situation: >>>> I have a VPS server from a well reputed provider (and they deserve the >>>> reputation), running FreeBSD 11 stable x64 under Xen Full Virtualization >>>> (HVM). I have the xn0 interface which is working fine. I intend to use VIMAGE, >>>> so I compiled the kernel, added cloned_interface="bridge0" and restarted the >>>> server. But as soon as I am attaching the xn0 to bridge0, the kernel is >>>> panicking and the server restarting. >>>> Any suggestion/pointer/test-instruction is highly appreciated. >>> The code crashes at line 427 of sys/netinet/if_ether.c: >>> >>> ARPSTAT_INC(txrequests); >>> >>> See >>> https://svnweb.freebsd.org/base/stable/11/sys/netinet/if_ether.c?view=annotate#l427 >>> >>> stable/11 has problems accounting the outgoing octets of any xn >>> interface, although this isn't connected to your case. >>> >>> Just to rule out any uncertainty, try this patch: >>> >>> https://svnweb.freebsd.org/base?view=revision&revision=308126 >>> >>> See PR 213439, >>> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=213439 >>> >>> Note, I'm not a developer nor a committer, just a humble sysadmin. >> This problem is unrelated. ARP statistics is global and isn't related to >> some specific interface. IMHO, the kernel panics due to missing VNET >> context. As I see from the code in sys/dev/xen, it is not capable with >> VIMAGE. > I cannot really look into this right now due to lack of time, but I'm more than > happy to review/apply patches in order to fix this. > > Roger. >Further to my previous, since the provider of the VPS confirmed that they could run FreeBSD 10 and use bridge without any issue, I thought I'd have a look. The section from my crash-debug 0xffffffff80c2dd93 is in arprequest (/usr/src/sys/netinet/if_ether.c:427). 422 ro.ro_flags = 0; 423 424 m->m_flags |= M_BCAST; 425 m_clrprotoflags(m); /* Avoid confusing lower layers. */ 426 (*ifp->if_output)(ifp, m, &sa, &ro); 427 ARPSTAT_INC(txrequests); 428 } 429 430 I compared the file (if_ether.c) from 10, and it seems that the line 426 is different -- it contains NULL instead of &ro at the end. I did nto see any ro.* (right before this section) on the file in 10 either. Could this be significant? Thanks and regards SK ______________________________________________________________________ Centre for Parliamentary Studies This email and its attachments are intended only for disclosure to the recipients to whom they are addressed. Should you have received it in error, we regret any inconvenience and would request that you notify postmaster at parlicentre.org. Any opinions presented are solely those of its author and do not necessarily represent those of the organisation. Recipients are advised to check for the presence of malware as the organisation accepts no liability for the accidental transmission thereof. Centre for Parliamentary Studies is a trading name of CPS Framework Ltd. Head Office: Unit N0001, Westminster Business Square, 1-45 Durham Street, London, SE11 5JH Registered Office: 253 Grays Inn Road, London, United Kingdom, WC1X 8QT Registered in England & Wales, No. 6926090
On 20/01/2017 16:44, Roger Pau Monn? wrote:> On Fri, Jan 20, 2017 at 07:20:15PM +0300, Andrey V. Elsukov wrote: >> On 20.01.2017 18:57, Trond Endrest?l wrote: >>>> Here is the situation: >>>> I have a VPS server from a well reputed provider (and they deserve the >>>> reputation), running FreeBSD 11 stable x64 under Xen Full Virtualization >>>> (HVM). I have the xn0 interface which is working fine. I intend to use VIMAGE, >>>> so I compiled the kernel, added cloned_interface="bridge0" and restarted the >>>> server. But as soon as I am attaching the xn0 to bridge0, the kernel is >>>> panicking and the server restarting. >>>> Any suggestion/pointer/test-instruction is highly appreciated. >>> The code crashes at line 427 of sys/netinet/if_ether.c: >>> >>> ARPSTAT_INC(txrequests); >>> >>> See >>> https://svnweb.freebsd.org/base/stable/11/sys/netinet/if_ether.c?view=annotate#l427 >>> >>> stable/11 has problems accounting the outgoing octets of any xn >>> interface, although this isn't connected to your case. >>> >>> Just to rule out any uncertainty, try this patch: >>> >>> https://svnweb.freebsd.org/base?view=revision&revision=308126 >>> >>> See PR 213439, >>> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=213439 >>> >>> Note, I'm not a developer nor a committer, just a humble sysadmin. >> This problem is unrelated. ARP statistics is global and isn't related to >> some specific interface. IMHO, the kernel panics due to missing VNET >> context. As I see from the code in sys/dev/xen, it is not capable with >> VIMAGE. > I cannot really look into this right now due to lack of time, but I'm more than > happy to review/apply patches in order to fix this. > > Roger. >Further to my previous, since the provider of the VPS confirmed that they could run FreeBSD 10 and use bridge without any issue, I thought I'd have a look. The section from my crash-debug 0xffffffff80c2dd93 is in arprequest (/usr/src/sys/netinet/if_ether.c:427). 422 ro.ro_flags = 0; 423 424 m->m_flags |= M_BCAST; 425 m_clrprotoflags(m); /* Avoid confusing lower layers. */ 426 (*ifp->if_output)(ifp, m, &sa, &ro); 427 ARPSTAT_INC(txrequests); 428 } 429 430 I compared the file (if_ether.c) from 10, and it seems that the line 426 is different -- it contains NULL instead of &ro at the end. I did nto see any ro.* (right before this section) on the file in 10 either. Could this be significant? Thanks and regards SK