Date: Sat, 3 Jan 2009 13:24:08 +0000 (UTC) From: Konstantin Belousov <kib@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/kern uipc_cow.c src/sys/vm vm_page.c vm_page.h Message-ID: <200901042353.n04NrkfF084642@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
kib 2009-01-03 13:24:08 UTC FreeBSD src repository Modified files: sys/kern uipc_cow.c sys/vm vm_page.c vm_page.h Log: SVN rev 186719 on 2009-01-03 13:24:08Z by kib Extend the struct vm_page wire_count to u_int to avoid the overflow of the counter, that may happen when too many sendfile(2) calls are being executed with this vnode [1]. To keep the size of the struct vm_page and offsets of the fields accessed by out-of-tree modules, swap the types and locations of the wire_count and cow fields. Add safety checks to detect cow overflow and force fallback to the normal copy code for zero-copy sockets. [2] Reported by: Anton Yuzhaninov <citrin citrin ru> [1] Suggested by: alc [2] Reviewed by: alc MFC after: 2 weeks Revision Changes Path 1.28 +5 -1 src/sys/kern/uipc_cow.c 1.375 +5 -1 src/sys/vm/vm_page.c 1.156 +4 -4 src/sys/vm/vm_page.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200901042353.n04NrkfF084642>