PERFORCE change 50676 for review
Robert Watson
rwatson at FreeBSD.org
Thu Apr 8 16:00:33 PDT 2004
http://perforce.freebsd.org/chv.cgi?CH=50676
Change 50676 by rwatson at 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;
More information about the p4-projects
mailing list