Date: Sat, 11 Mar 2023 00:37:41 +0000 From: bugzilla-noreply@freebsd.org To: testing@FreeBSD.org Subject: [Bug 260547] sys.netmap.ctrl-api-test.main fails in CI Message-ID: <bug-260547-32464-L2tpLXod5g@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-260547-32464@https.bugs.freebsd.org/bugzilla/> References: <bug-260547-32464@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D260547 Mark Johnston <markj@FreeBSD.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |markj@FreeBSD.org, | |vmaffione@FreeBSD.org Status|New |Open --- Comment #2 from Mark Johnston <markj@FreeBSD.org> --- I hit a different test failure in ctrl-api-test. The problem is in the "infinite options" test. Since commit 253b2ec199b831cacc022b58cb38c3e3c29c1a8f, nmreq_copyin() does = some extra validation of the option linked list, but that appears to break the t= est and prevents an infinite loop only by accident. In particular, if multiple options have the same req type, the loop just sk= ips to the next option. But after the first iteration, opt->nro_next will be a kernel pointer not a user point, and then the subsequent copyin() fails bec= ause netmap is trying to copyin from a kernel address. This causes the test to = fail since the ioctl returns EFAULT instead of EMSGSIZE. If not for that bug, I think there would be an infinite loop. There is a second bug there in that "error" is set in some of those error cases, but the next iteration can set "error" back to 0. If I disable the infinite_options test, everything else passes for me. So = it'd be nice to fix the kernel and re-enable the netmap tests in CI. --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-260547-32464-L2tpLXod5g>
