svn commit: r351558 - head/sys/kern
John Baldwin
jhb at FreeBSD.org
Tue Aug 27 22:21:19 UTC 2019
Author: jhb
Date: Tue Aug 27 22:21:18 2019
New Revision: 351558
URL: https://svnweb.freebsd.org/changeset/base/351558
Log:
Only define the 'tls' member of sfio in KERN_TLS is defined.
This field was not initialized in the !KERN_TLS case triggering an
assertion failure when using sendfile(2).
Reported by: pho, asomers
Sponsored by: Netflix
Modified:
head/sys/kern/kern_sendfile.c
Modified: head/sys/kern/kern_sendfile.c
==============================================================================
--- head/sys/kern/kern_sendfile.c Tue Aug 27 21:29:37 2019 (r351557)
+++ head/sys/kern/kern_sendfile.c Tue Aug 27 22:21:18 2019 (r351558)
@@ -88,7 +88,9 @@ struct sf_io {
int npages;
struct socket *so;
struct mbuf *m;
+#ifdef KERN_TLS
struct ktls_session *tls;
+#endif
vm_page_t pa[];
};
@@ -266,7 +268,7 @@ sendfile_iodone(void *arg, vm_page_t *pg, int count, i
if (!refcount_release(&sfio->nios))
return;
-#ifdef INVARIANTS
+#if defined(KERN_TLS) && defined(INVARIANTS)
if ((sfio->m->m_flags & M_EXT) != 0 &&
sfio->m->m_ext.ext_type == EXT_PGS)
KASSERT(sfio->tls == sfio->m->m_ext.ext_pgs->tls,
More information about the svn-src-all
mailing list