Date: Thu, 8 Apr 2004 16:00:31 -0700 (PDT) From: Robert Watson <rwatson@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 50676 for review Message-ID: <200404082300.i38N0VqD012049@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=50676 Change 50676 by rwatson@rwatson_paprika on 2004/04/08 16:00:16 Integrate netperf_socket: - pf warnings fixed, no longer requires nowerror. - Don't assume initial thread from execve is present when core is dumped. - sendfile() bugfix. - Reclaim pager_map_size from KVA. Affected files ... .. //depot/projects/netperf_socket/sys/conf/files#14 integrate .. //depot/projects/netperf_socket/sys/dev/acpica/acpi.c#12 integrate .. //depot/projects/netperf_socket/sys/dev/acpica/acpi_video.c#3 integrate .. //depot/projects/netperf_socket/sys/i386/acpica/acpi_toshiba.c#3 integrate .. //depot/projects/netperf_socket/sys/kern/imgact_elf.c#5 integrate .. //depot/projects/netperf_socket/sys/kern/uipc_syscalls.c#9 integrate .. //depot/projects/netperf_socket/sys/vm/vm_init.c#4 integrate .. //depot/projects/netperf_socket/sys/vm/vm_pager.c#3 integrate .. //depot/projects/netperf_socket/sys/vm/vm_pager.h#3 integrate Differences ... ==== //depot/projects/netperf_socket/sys/conf/files#14 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.881 2004/04/03 18:42:05 phk Exp $ +# $FreeBSD: src/sys/conf/files,v 1.882 2004/04/08 18:17:13 mlaier Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -208,7 +208,7 @@ contrib/ipfilter/netinet/mlfk_ipl.c optional ipfilter inet contrib/pf/net/if_pflog.c optional pflog contrib/pf/net/if_pfsync.c optional pfsync -contrib/pf/net/pf.c optional pf nowerror +contrib/pf/net/pf.c optional pf contrib/pf/net/pf_ioctl.c optional pf contrib/pf/net/pf_norm.c optional pf contrib/pf/net/pf_table.c optional pf ==== //depot/projects/netperf_socket/sys/dev/acpica/acpi.c#12 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/acpica/acpi.c,v 1.134 2004/04/01 04:21:33 njl Exp $ + * $FreeBSD: src/sys/dev/acpica/acpi.c,v 1.135 2004/04/08 16:45:12 njl Exp $ */ #include "opt_acpi.h" @@ -187,7 +187,7 @@ static devclass_t acpi_devclass; DRIVER_MODULE(acpi, nexus, acpi_driver, acpi_devclass, acpi_modevent, 0); -MODULE_VERSION(acpi, 100); +MODULE_VERSION(acpi, 1); SYSCTL_NODE(_debug, OID_AUTO, acpi, CTLFLAG_RW, NULL, "ACPI debugging"); static char acpi_ca_version[12]; ==== //depot/projects/netperf_socket/sys/dev/acpica/acpi_video.c#3 (text+ko) ==== @@ -24,7 +24,7 @@ * SUCH DAMAGE. * * $Id: acpi_vid.c,v 1.4 2003/10/13 10:07:36 taku Exp $ - * $FreeBSD: src/sys/dev/acpica/acpi_video.c,v 1.2 2004/03/03 18:34:42 njl Exp $ + * $FreeBSD: src/sys/dev/acpica/acpi_video.c,v 1.3 2004/04/08 16:45:12 njl Exp $ */ #include <sys/param.h> @@ -154,7 +154,7 @@ DRIVER_MODULE(acpi_video, acpi, acpi_video_driver, acpi_video_devclass, acpi_video_modevent, NULL); -MODULE_DEPEND(acpi_video, acpi, 100, 100, 100); +MODULE_DEPEND(acpi_video, acpi, 1, 1, 1); struct sysctl_ctx_list acpi_video_sysctl_ctx; struct sysctl_oid *acpi_video_sysctl_tree; ==== //depot/projects/netperf_socket/sys/i386/acpica/acpi_toshiba.c#3 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/i386/acpica/acpi_toshiba.c,v 1.4 2004/03/03 03:02:17 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/acpica/acpi_toshiba.c,v 1.5 2004/04/08 16:45:12 njl Exp $"); #include "opt_acpi.h" #include <sys/param.h> @@ -172,7 +172,7 @@ static devclass_t acpi_toshiba_devclass; DRIVER_MODULE(acpi_toshiba, acpi, acpi_toshiba_driver, acpi_toshiba_devclass, 0, 0); -MODULE_DEPEND(acpi_toshiba, acpi, 100, 100, 100); +MODULE_DEPEND(acpi_toshiba, acpi, 1, 1, 1); static int enable_fn_keys = 1; TUNABLE_INT("hw.acpi.toshiba.enable_fn_keys", &enable_fn_keys); ==== //depot/projects/netperf_socket/sys/kern/imgact_elf.c#5 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/kern/imgact_elf.c,v 1.146 2004/04/03 20:25:41 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/imgact_elf.c,v 1.147 2004/04/08 06:37:00 marcel Exp $"); #include <sys/param.h> #include <sys/exec.h> @@ -1178,18 +1178,21 @@ sizeof *psinfo); /* - * We want to start with the registers of the first thread in the + * We want to start with the registers of the initial thread in the * process so that the .reg and .reg2 pseudo-sections created by bfd * will be identical to the .reg/$PID and .reg2/$PID pseudo-sections. * This makes sure that any tool that only looks for .reg and .reg2 * and not for .reg/$PID and .reg2/$PID will behave the same as - * before. The first thread is the thread with an ID equal to the + * before. The first thread is the thread with an ID equal to the * process' ID. + * Note that the initial thread may already be gone. In that case + * 'first' is NULL. */ - first = TAILQ_FIRST(&p->p_threads); - while (first->td_tid > PID_MAX) + thr = first = TAILQ_FIRST(&p->p_threads); + while (first != NULL && first->td_tid > PID_MAX) first = TAILQ_NEXT(first, td_plist); - thr = first; + if (first != NULL) + thr = first; do { if (dst != NULL) { status->pr_version = PRSTATUS_VERSION; @@ -1209,7 +1212,7 @@ /* XXX allow for MD specific notes. */ thr = (thr == first) ? TAILQ_FIRST(&p->p_threads) : TAILQ_NEXT(thr, td_plist); - if (thr == first) + if (thr == first && thr != NULL) thr = TAILQ_NEXT(thr, td_plist); } while (thr != NULL); ==== //depot/projects/netperf_socket/sys/kern/uipc_syscalls.c#9 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/kern/uipc_syscalls.c,v 1.180 2004/04/05 21:03:36 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/uipc_syscalls.c,v 1.181 2004/04/08 07:14:34 silby Exp $"); #include "opt_compat.h" #include "opt_ktrace.h" @@ -1823,8 +1823,14 @@ xfsize = PAGE_SIZE - pgoff; if (uap->nbytes && xfsize > (uap->nbytes - sbytes)) xfsize = uap->nbytes - sbytes; - if (xfsize <= 0) - break; + if (xfsize <= 0) { + if (m_header != NULL) { + m = m_header; + m_header = NULL; + goto retry_space; + } else + break; + } /* * Optimize the non-blocking case by looking at the socket space * before going to the extra work of constituting the sf_buf. ==== //depot/projects/netperf_socket/sys/vm/vm_init.c#4 (text+ko) ==== @@ -63,7 +63,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/vm/vm_init.c,v 1.42 2004/04/06 20:15:36 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_init.c,v 1.43 2004/04/08 19:08:49 alc Exp $"); #include <sys/param.h> #include <sys/kernel.h> @@ -185,12 +185,12 @@ panic("startup: table size inconsistency"); clean_map = kmem_suballoc(kernel_map, &kmi->clean_sva, &kmi->clean_eva, - (nbuf*BKVASIZE) + (nswbuf*MAXPHYS) + pager_map_size); + (nbuf*BKVASIZE) + (nswbuf*MAXPHYS)); buffer_map = kmem_suballoc(clean_map, &kmi->buffer_sva, &kmi->buffer_eva, (nbuf*BKVASIZE)); buffer_map->system_map = 1; pager_map = kmem_suballoc(clean_map, &kmi->pager_sva, &kmi->pager_eva, - (nswbuf*MAXPHYS) + pager_map_size); + (nswbuf*MAXPHYS)); pager_map->system_map = 1; exec_map = kmem_suballoc(kernel_map, &minaddr, &maxaddr, (16*(ARG_MAX+(PAGE_SIZE*3)))); ==== //depot/projects/netperf_socket/sys/vm/vm_pager.c#3 (text+ko) ==== @@ -64,7 +64,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/vm/vm_pager.c,v 1.94 2004/04/06 20:15:37 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_pager.c,v 1.95 2004/04/08 19:08:49 alc Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -176,9 +176,6 @@ * cleaning requests (NPENDINGIO == 64) * the maximum swap cluster size * (MAXPHYS == 64k) if you want to get the most efficiency. */ -#define PAGER_MAP_SIZE (8 * 1024 * 1024) - -int pager_map_size = PAGER_MAP_SIZE; vm_map_t pager_map; static int bswneeded; static vm_offset_t swapbkva; /* swap buffers kva */ ==== //depot/projects/netperf_socket/sys/vm/vm_pager.h#3 (text+ko) ==== @@ -32,7 +32,7 @@ * SUCH DAMAGE. * * @(#)vm_pager.h 8.4 (Berkeley) 1/12/94 - * $FreeBSD: src/sys/vm/vm_pager.h,v 1.46 2004/04/06 20:15:37 imp Exp $ + * $FreeBSD: src/sys/vm/vm_pager.h,v 1.47 2004/04/08 19:08:49 alc Exp $ */ /* @@ -91,7 +91,6 @@ #endif extern vm_map_t pager_map; -extern int pager_map_size; extern struct pagerops *pagertab[]; extern struct mtx pbuf_mtx;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200404082300.i38N0VqD012049>