Date: Fri, 09 Dec 2016 12:19:32 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 210315] panic: destroying non-empty racct: 2113536 allocated for resource 4 Message-ID: <bug-210315-8-rIM41t6hE5@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-210315-8@https.bugs.freebsd.org/bugzilla/> References: <bug-210315-8@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=3D210315 Andriy Gapon <avg@FreeBSD.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |kib@FreeBSD.org --- Comment #1 from Andriy Gapon <avg@FreeBSD.org> --- I've just got another of these panics. I wonder if it could be caused by this code: size =3D vmspace_resident_count(vm); if (size >=3D limit) { vm_pageout_map_deactivate_pages( &vm->vm_map, limit); } #ifdef RACCT if (racct_enable) { rsize =3D IDX_TO_OFF(size); PROC_LOCK(p); racct_set(p, RACCT_RSS, rsize); ravailable =3D racct_get_available(p, RACCT= _RSS); PROC_UNLOCK(p); Specifically, we calculate rsize from size, but the value of the latter cou= ld be outdated if size was larger than limit and vm_pageout_map_deactivate_pag= es() got called. As a side note, I wonder why greater-than-or-equal is used for comparing si= ze and limit. --=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-210315-8-rIM41t6hE5>