Date: Tue, 26 Dec 2017 15:52:42 +0530 From: Harsh Jain <harsh@chelsio.com> To: "Andrey V. Elsukov" <bu7cher@yandex.ru>, freebsd-net@freebsd.org Subject: Re: [freebsd-current]Who should reset M_PKTHDR flag in m_buf when IP packets are fragmented. m_unshare panic throw when IPSec is enabled Message-ID: <fdb72f54-efdd-c54b-c8f7-c53057d24adf@chelsio.com> In-Reply-To: <993c58bb-3bf2-d6a3-9a05-13e1631aec87@yandex.ru> References: <73302ead-b2e9-c25b-4d11-475f38dec1a1@chelsio.com> <993c58bb-3bf2-d6a3-9a05-13e1631aec87@yandex.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
On 26-12-2017 15:22, Andrey V. Elsukov wrote: > On 26.12.2017 07:43, Harsh Jain wrote: >> Hi All, >> >> If I try to run ping of size say 6000 in IPSec transport mode, m_unshare() panic with following trace. It seems that while re-assembly of IP packet "ip_reass" missed re-setting of "M_PKTHDR". After applying below patch things work fine. Can some one suggest Is it a BUG or I am missing somethings. >> >> panic: m_unshare: m0 0xfffff80020f82600, m 0xfffff8005d054100 has M_PKTHDR >> cpuid = 15 >> time = 1495578455 >> KDB: stack backtrace: >> db_trace_self_wrapper() at db_trace_self_wrapper+0x2c/frame 0xfffffe044e9bb890 >> kdb_backtrace() at kdb_backtrace+0x53/frame 0xfffffe044e9bb960 >> vpanic() at vpanic+0x269/frame 0xfffffe044e9bba30 >> kassert_panic() at kassert_panic+0xc7/frame 0xfffffe044e9bbac0 >> m_unshare() at m_unshare+0x578/frame 0xfffffe044e9bbbc0 >> esp_output() at esp_output+0x44c/frame 0xfffffe044e9bbe40 >> ipsec4_perform_request() at ipsec4_perform_request+0x5df/frame 0xfffffe044e9bbff0 > Hi, > > it seems unusual that IP reassembly happens on outbound path. It can be re-produced with single Ping packet on chelsio(cxgbe) NIC. I tried with Intel NIC. It seems they re-produce M_WRITEABLE() buffer(follows different path in m_unshare) which is not true for cxgbe. > Do you have some packet normalization using firewall? Default FREEBSD current installation. No explicit firewall. What you think above patch makes sense. >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?fdb72f54-efdd-c54b-c8f7-c53057d24adf>