From owner-svn-src-user@FreeBSD.ORG Sun Aug 4 01:22:27 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 6E01BB11; Sun, 4 Aug 2013 01:22:27 +0000 (UTC) (envelope-from syuu@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4A80B2539; Sun, 4 Aug 2013 01:22:27 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r741MQul047076; Sun, 4 Aug 2013 01:22:26 GMT (envelope-from syuu@svn.freebsd.org) Received: (from syuu@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r741MQSY047075; Sun, 4 Aug 2013 01:22:26 GMT (envelope-from syuu@svn.freebsd.org) Message-Id: <201308040122.r741MQSY047075@svn.freebsd.org> From: Takuya ASADA Date: Sun, 4 Aug 2013 01:22:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253922 - user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 01:22:27 -0000 Author: syuu Date: Sun Aug 4 01:22:26 2013 New Revision: 253922 URL: http://svnweb.freebsd.org/changeset/base/253922 Log: support standalone binary loading Modified: user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.c Modified: user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.c ============================================================================== --- user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.c Sat Aug 3 22:16:24 2013 (r253921) +++ user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.c Sun Aug 4 01:22:26 2013 (r253922) @@ -60,6 +60,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -75,6 +76,8 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include +#include #include @@ -556,13 +559,152 @@ usage(void) exit(1); } -int -main(int argc, char** argv) +#define MSR_EFER 0xc0000080 +#define CR4_PAE 0x00000020 +#define CR4_PSE 0x00000010 +#define CR0_PG 0x80000000 +#define CR0_PE 0x00000001 /* Protected mode Enable */ +#define CR0_NE 0x00000020 /* Numeric Error enable (EX16 vs IRQ13) */ + +#define PG_V 0x001 +#define PG_RW 0x002 +#define PG_U 0x004 +#define PG_PS 0x080 + +typedef u_int64_t p4_entry_t; +typedef u_int64_t p3_entry_t; +typedef u_int64_t p2_entry_t; + +#define GUEST_NULL_SEL 0 +#define GUEST_CODE_SEL 1 +#define GUEST_DATA_SEL 2 +#define GUEST_GDTR_LIMIT (3 * 8 - 1) + +static void +setup_stand_gdt(uint64_t *gdtr) +{ + gdtr[GUEST_NULL_SEL] = 0; + gdtr[GUEST_CODE_SEL] = 0x0020980000000000; + gdtr[GUEST_DATA_SEL] = 0x0000900000000000; +} + +static int +stand_load(char *image, uint64_t addr) +{ + int i; + int fd; + struct stat sb; + char *buf; + uint32_t stack[1024]; + p4_entry_t PT4[512]; + p3_entry_t PT3[512]; + p2_entry_t PT2[512]; + uint64_t gdtr[3]; + + if ((fd = open(image, O_RDONLY)) < 0) { + perror("open"); + return (1); + } + if (fstat(fd, &sb)) { + perror("fstat"); + return (1); + } + buf = alloca(sb.st_size); + if (read(fd, buf, sb.st_size) != sb.st_size) { + perror("read"); + return (1); + } + if (close(fd) < 0) { + perror("close"); + return (1); + } + if (cb_copyin(NULL, buf, addr, sb.st_size)) { + perror("copyin"); + return (1); + } + + bzero(PT4, PAGE_SIZE); + bzero(PT3, PAGE_SIZE); + bzero(PT2, PAGE_SIZE); + + /* + * Build a scratch stack at physical 0x1000, page tables: + * PT4 at 0x2000, + * PT3 at 0x3000, + * PT2 at 0x4000, + * gdtr at 0x5000, + */ + + /* + * This is kinda brutal, but every single 1GB VM memory segment + * points to the same first 1GB of physical memory. But it is + * more than adequate. + */ + for (i = 0; i < 512; i++) { + /* Each slot of the level 4 pages points to the same level 3 page */ + PT4[i] = (p4_entry_t) 0x3000; + PT4[i] |= PG_V | PG_RW | PG_U; + + /* Each slot of the level 3 pages points to the same level 2 page */ + PT3[i] = (p3_entry_t) 0x4000; + PT3[i] |= PG_V | PG_RW | PG_U; + + /* The level 2 page slots are mapped with 2MB pages for 1GB. */ + PT2[i] = i * (2 * 1024 * 1024); + PT2[i] |= PG_V | PG_RW | PG_PS | PG_U; + } + +#ifdef DEBUG + printf("Start @ %#llx ...\n", addr); +#endif + + cb_copyin(NULL, stack, 0x1000, sizeof(stack)); + cb_copyin(NULL, PT4, 0x2000, sizeof(PT4)); + cb_copyin(NULL, PT3, 0x3000, sizeof(PT3)); + cb_copyin(NULL, PT2, 0x4000, sizeof(PT2)); + cb_setreg(NULL, 4, 0x1000); + + cb_setmsr(NULL, MSR_EFER, EFER_LMA | EFER_LME); + cb_setcr(NULL, 4, CR4_PAE | CR4_VMXE); + cb_setcr(NULL, 3, 0x2000); + cb_setcr(NULL, 0, CR0_PG | CR0_PE | CR0_NE); + + setup_stand_gdt(gdtr); + cb_copyin(NULL, gdtr, 0x5000, sizeof(gdtr)); + cb_setgdt(NULL, 0x5000, sizeof(gdtr)); + + cb_exec(NULL, addr); + return (0); +} + +static int +freebsd_load(void) { void *h; void (*func)(struct loader_callbacks *, void *, int, int); + + h = dlopen("/boot/userboot.so", RTLD_LOCAL); + if (!h) { + printf("%s\n", dlerror()); + return (1); + } + func = dlsym(h, "loader_main"); + if (!func) { + printf("%s\n", dlerror()); + return (1); + } + + func(&cb, NULL, USERBOOT_VERSION_3, disk_fd >= 0); + return (0); +} + +int +main(int argc, char** argv) +{ uint64_t mem_size; int opt, error; + uint64_t stand_addr; + char *stand_image; char *disk_image; progname = argv[0]; @@ -570,7 +712,7 @@ main(int argc, char** argv) mem_size = 256 * MB; disk_image = NULL; - while ((opt = getopt(argc, argv, "d:h:m:")) != -1) { + while ((opt = getopt(argc, argv, "d:h:m:S:I:")) != -1) { switch (opt) { case 'd': disk_image = optarg; @@ -583,6 +725,25 @@ main(int argc, char** argv) case 'm': mem_size = strtoul(optarg, NULL, 0) * MB; break; + + case 'S': { + char *addr_str; + + stand_image = strtok(optarg, ":"); + if (stand_image == NULL) { + usage(); + break; + } + + addr_str = strtok(NULL, ":"); + if (addr_str == NULL) { + usage(); + break; + } + stand_addr = strtoll(addr_str, NULL, 0); + + break; + } case '?': usage(); @@ -621,19 +782,16 @@ main(int argc, char** argv) term.c_lflag &= ~(ICANON|ECHO); term.c_iflag &= ~ICRNL; tcsetattr(0, TCSAFLUSH, &term); - h = dlopen("/boot/userboot.so", RTLD_LOCAL); - if (!h) { - printf("%s\n", dlerror()); - return (1); - } - func = dlsym(h, "loader_main"); - if (!func) { - printf("%s\n", dlerror()); - return (1); - } if (disk_image) { disk_fd = open(disk_image, O_RDONLY); } - func(&cb, NULL, USERBOOT_VERSION_3, disk_fd >= 0); + + if (stand_image) { + if (stand_load(stand_image, stand_addr)) + exit(1); + }else{ + if (freebsd_load()) + exit(1); + } } From owner-svn-src-user@FreeBSD.ORG Sun Aug 4 02:37:07 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 9D7D02D0; Sun, 4 Aug 2013 02:37:07 +0000 (UTC) (envelope-from marcel@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 7B323276C; Sun, 4 Aug 2013 02:37:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r742b7b0068087; Sun, 4 Aug 2013 02:37:07 GMT (envelope-from marcel@svn.freebsd.org) Received: (from marcel@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r742b6uD068082; Sun, 4 Aug 2013 02:37:06 GMT (envelope-from marcel@svn.freebsd.org) Message-Id: <201308040237.r742b6uD068082@svn.freebsd.org> From: Marcel Moolenaar Date: Sun, 4 Aug 2013 02:37:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253923 - user/marcel/mkimg X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 02:37:07 -0000 Author: marcel Date: Sun Aug 4 02:37:05 2013 New Revision: 253923 URL: http://svnweb.freebsd.org/changeset/base/253923 Log: Safe WIP: mkimg is a user-space utility for creating disk images. In its current form and shape, it creates images with the correct partition contents and overall image layout. What it doesn't do yet is actually scribble the metadata, such as partition tables and boot code. This is where I'd like to leverage code from other places, such as geom_part, and if possible/feasible. Also, the utility should be a little bit smarter about files and pipes so that we create temporary files only when needed (e.g. when we don't know the size of a partition's contents in advance while wrting the image to stdout). Added: user/marcel/mkimg/ user/marcel/mkimg/Makefile user/marcel/mkimg/mkimg.8 user/marcel/mkimg/mkimg.c user/marcel/mkimg/scheme.c user/marcel/mkimg/scheme.h Added: user/marcel/mkimg/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/marcel/mkimg/Makefile Sun Aug 4 02:37:05 2013 (r253923) @@ -0,0 +1,10 @@ +# $FreeBSD$ + +PROG= mkimg +SRCS= mkimg.c scheme.c +MAN= mkimg.8 + +DPADD= ${LIBUTIL} +LDADD= -lutil + +.include Added: user/marcel/mkimg/mkimg.8 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/marcel/mkimg/mkimg.8 Sun Aug 4 02:37:05 2013 (r253923) @@ -0,0 +1,51 @@ +.\" Copyright (c) 2013 Juniper Networks, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd July 26, 2013 +.Dt MKIMG 1 +.Os +.Sh NAME +.Nm mkimg +.Nd "utility to make a disk image" +.Sh SYNOPSIS +.Nm +.Op Fl b Ar bootcode +.Op Fl o Ar outfile +.Op Fl p Ar partition +.Op Fl s Ar scheme +.Op Fl z +.Sh DESCRIPTION +The +.Nm +utility creates a disk image from the raw partition contents and using the +partitioning scheme specified. +.Sh SEE ALSO +.Xr makefs 8 +.Sh HISTORY +The +.Nm +utility appeared in +.Fx 10.0 Added: user/marcel/mkimg/mkimg.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/marcel/mkimg/mkimg.c Sun Aug 4 02:37:05 2013 (r253923) @@ -0,0 +1,320 @@ +/*- + * Copyright (c) 2013 Juniper Networks, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "scheme.h" + +#define BUFFER_SIZE (1024*1024) + +struct part { + STAILQ_ENTRY(part) link; + char *type; /* Partition type. */ + char *contents; /* Contents/size specification. */ + u_int kind; /* Content kind. */ +#define PART_UNDEF 0 +#define PART_KIND_FILE 1 +#define PART_KIND_PIPE 2 +#define PART_KIND_SIZE 3 + u_int index; /* Partition index (0-based). */ + off_t offset; /* Byte-offset of partition in image. */ + off_t size; /* Size in bytes of partition. */ +}; + +static STAILQ_HEAD(, part) parts = STAILQ_HEAD_INITIALIZER(parts); +static u_int nparts = 0; + +static int bcfd = 0; +static int outfd = 0; +static int tmpfd = -1; + +static char tmpfname[] = "/tmp/mkimg-XXXXXX"; + +static void +cleanup(void) +{ + + if (tmpfd != -1) + close(tmpfd); + unlink(tmpfname); +} + +static void +usage(const char *why) +{ + warnx("error: %s", why); + fprintf(stderr, "usage: %s \n", getprogname()); + fprintf(stderr, " options:\n"); + fprintf(stderr, "\t-b \n"); + fprintf(stderr, "\t-o \n"); + fprintf(stderr, "\t-p \n"); + fprintf(stderr, "\t-s \n"); + fprintf(stderr, "\t-z\n"); + exit(EX_USAGE); +} + +/* + * A partition specification has the following format: + * ':' + * where: + * type the partition type alias + * kind the interpretation of the contents specification + * ':' contents holds the size of an empty partition + * '=' contents holds the name of a file to read + * '!' contents holds a command to run; the output of + * which is the contents of the partition. + * contents the specification of a partition's contents + */ +static int +parse_part(const char *spec) +{ + struct part *part; + char *sep; + size_t len; + int error; + + part = calloc(1, sizeof(struct part)); + if (part == NULL) + return (ENOMEM); + + sep = strchr(spec, ':'); + if (sep == NULL) { + error = EINVAL; + goto errout; + } + len = sep - spec + 1; + if (len < 2) { + error = EINVAL; + goto errout; + } + part->type = malloc(len); + if (part->type == NULL) { + error = ENOMEM; + goto errout; + } + strlcpy(part->type, spec, len); + spec = sep + 1; + + switch (*spec) { + case ':': + part->kind = PART_KIND_SIZE; + break; + case '=': + part->kind = PART_KIND_FILE; + break; + case '!': + part->kind = PART_KIND_PIPE; + break; + default: + error = EINVAL; + goto errout; + } + spec++; + + part->contents = strdup(spec); + if (part->contents == NULL) { + error = ENOMEM; + goto errout; + } + + part->index = nparts; + STAILQ_INSERT_TAIL(&parts, part, link); + nparts++; + return (0); + + errout: + if (part->type != NULL) + free(part->type); + free(part); + return (error); +} + +static int +fdcopy(int src, int dst, uint64_t *count) +{ + void *buffer; + ssize_t rdsz, wrsz; + + if (count != 0) + *count = 0; + + buffer = malloc(BUFFER_SIZE); + if (buffer == NULL) + return (errno); + while (1) { + rdsz = read(src, buffer, BUFFER_SIZE); + if (rdsz <= 0) { + free(buffer); + return ((rdsz < 0) ? errno : 0); + } + if (count != NULL) + *count += rdsz; + wrsz = write(dst, buffer, rdsz); + if (wrsz < 0) + break; + } + free(buffer); + return (errno); +} + +static void +mkimg(void) +{ + FILE *fp; + struct part *part; + off_t offset; + uint64_t size; + int error, fd; + + if (nparts > scheme_max_parts()) + errc(EX_DATAERR, ENOSPC, "only %d partitions are supported", + scheme_max_parts()); + + offset = scheme_first_offset(nparts); + STAILQ_FOREACH(part, &parts, link) { + part->offset = offset; + lseek(tmpfd, offset, SEEK_SET); + /* XXX check error */ + + error = 0; + switch (part->kind) { + case PART_KIND_SIZE: + if (expand_number(part->contents, &size) == -1) + error = errno; + break; + case PART_KIND_FILE: + fd = open(part->contents, O_RDONLY, 0); + if (fd != -1) { + error = fdcopy(fd, tmpfd, &size); + close(fd); + } else + error = errno; + break; + case PART_KIND_PIPE: + fp = popen(part->contents, "r"); + if (fp != NULL) { + error = fdcopy(fileno(fp), tmpfd, &size); + pclose(fp); + } else + error = errno; + break; + } + part->size = size; + scheme_add_part(part->index, part->type, part->offset, + part->size); + offset = scheme_next_offset(offset, size); + } + + scheme_write(tmpfd, offset); +} + +int +main(int argc, char *argv[]) +{ + int c, error; + + while ((c = getopt(argc, argv, "b:h:o:p:s:t:z")) != -1) { + switch (c) { + case 'b': /* BOOT CODE */ + if (bcfd != 0) + usage("multiple bootcode given"); + bcfd = open(optarg, O_RDONLY, 0); + if (bcfd == -1) + err(EX_UNAVAILABLE, "%s", optarg); + break; + case 'h': /* GEOMETRY: HEADS */ + break; + case 'o': /* OUTPUT FILE */ + if (outfd != 0) + usage("multiple output files given"); + outfd = open(optarg, O_WRONLY | O_CREAT | O_TRUNC, + S_IWUSR | S_IRUSR | S_IRGRP | S_IROTH); + if (outfd == -1) + err(EX_CANTCREAT, "%s", optarg); + break; + case 'p': /* PARTITION */ + error = parse_part(optarg); + if (error) + errc(EX_DATAERR, error, "partition"); + break; + case 's': /* SCHEME */ + if (scheme_selected() != SCHEME_UNDEF) + usage("multiple schemes given"); + error = scheme_select(optarg); + if (error) + errc(EX_DATAERR, error, "scheme"); + break; + case 't': /* GEOMETRY: TRACK SIZE */ + break; + case 'z': /* SPARSE OUTPUT */ + break; + default: + usage("unknown option"); + } + } + if (argc > optind) + usage("trailing arguments"); + if (scheme_selected() == SCHEME_UNDEF) + usage("no scheme"); + if (nparts == 0) + usage("no partitions"); + + if (outfd == 0) { + if (atexit(cleanup) == -1) + err(EX_OSERR, "cannot register cleanup function"); + outfd = 1; + tmpfd = mkstemp(tmpfname); + if (tmpfd == -1) + err(EX_OSERR, "cannot create temporary file"); + } else + tmpfd = outfd; + + mkimg(); + + if (tmpfd != outfd) { + if (lseek(tmpfd, 0, SEEK_SET) == 0) + error = fdcopy(tmpfd, outfd, NULL); + else + error = errno; + /* XXX check error */ + } + + return (0); +} Added: user/marcel/mkimg/scheme.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/marcel/mkimg/scheme.c Sun Aug 4 02:37:05 2013 (r253923) @@ -0,0 +1,206 @@ +/*- + * Copyright (c) 2013 Juniper Networks, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "scheme.h" + +#define MAX(a, b) ((a < b) ? b : a) + +static struct scheme { + const char *lexeme; + u_int token; +} schemes[] = { + { .lexeme = "apm", .token = SCHEME_APM }, + { .lexeme = "bsd", .token = SCHEME_BSD }, + { .lexeme = "ebr", .token = SCHEME_EBR }, + { .lexeme = "gpt", .token = SCHEME_GPT }, + { .lexeme = "mbr", .token = SCHEME_MBR }, + { .lexeme = "pc98", .token = SCHEME_PC98 }, + { .lexeme = "vtoc8", .token = SCHEME_VTOC8 }, + { .lexeme = NULL, .token = SCHEME_UNDEF } +}; + +static u_int scheme = SCHEME_UNDEF; +static u_int secsz = 512; +static u_int nparts = 0; + +int +scheme_select(const char *spec) +{ + struct scheme *s; + + s = schemes; + while (s->lexeme != NULL) { + if (strcasecmp(spec, s->lexeme) == 0) { + scheme = s->token; + return (0); + } + s++; + } + return (EINVAL); +} + +u_int +scheme_selected(void) +{ + + return (scheme); +} + +int +scheme_add_part(u_int idx, const char *type, off_t offset, off_t size) +{ + + warnx("part: index=%u, type=`%s', offset=%ju, size=%ju", idx, + type, (uintmax_t)offset, (uintmax_t)size); + switch (scheme) { + case SCHEME_APM: + break; + case SCHEME_BSD: + break; + case SCHEME_EBR: + break; + case SCHEME_GPT: + break; + case SCHEME_MBR: + break; + case SCHEME_PC98: + break; + case SCHEME_VTOC8: + break; + } + return (0); +} + +u_int +scheme_max_parts(void) +{ + u_int parts; + + switch (scheme) { + case SCHEME_APM: + parts = 4096; + break; + case SCHEME_BSD: + parts = 20; + break; + case SCHEME_EBR: + parts = 4096; + break; + case SCHEME_GPT: + parts = 4096; + break; + case SCHEME_MBR: + parts = 4; + break; + case SCHEME_PC98: + parts = 16; + break; + case SCHEME_VTOC8: + parts = VTOC8_NPARTS; + break; + default: + parts = 0; + break; + } + return (parts); +} + +off_t +scheme_first_offset(u_int parts) +{ + off_t off; + + nparts = parts; /* Save nparts for later. */ + switch (scheme) { + case SCHEME_APM: + off = parts + 1; + break; + case SCHEME_BSD: + off = 16; + break; + case SCHEME_EBR: + off = 1; + break; + case SCHEME_GPT: + off = 2 + (MAX(128, parts) + 3) / 4; + break; + case SCHEME_MBR: + off = 1; + break; + case SCHEME_PC98: + off = 16; + break; + case SCHEME_VTOC8: + off = 1; + break; + default: + off = 0; + break; + } + off *= secsz; + return (off); +} + +off_t +scheme_next_offset(off_t off, uint64_t sz) +{ + + sz = (sz + secsz - 1) & ~(secsz - 1); + if (scheme == SCHEME_EBR) + sz += secsz; + return (off + sz); +} + +void +scheme_write(int fd, off_t off) +{ + off_t lim; + + switch (scheme) { + case SCHEME_GPT: + lim = off + secsz * (1 + (MAX(128, nparts) + 3) / 4); + break; + case SCHEME_EBR: + off -= secsz; + /* FALLTHROUGH */ + default: + lim = off; + break; + } + ftruncate(fd, lim); +} Added: user/marcel/mkimg/scheme.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/marcel/mkimg/scheme.h Sun Aug 4 02:37:05 2013 (r253923) @@ -0,0 +1,50 @@ +/*- + * Copyright (c) 2013 Juniper Networks, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _MKIMG_SCHEME_H_ +#define _MKIMG_SCHEME_H_ + +#define SCHEME_UNDEF 0 +#define SCHEME_APM 1 +#define SCHEME_BSD 2 +#define SCHEME_EBR 3 +#define SCHEME_GPT 4 +#define SCHEME_MBR 5 +#define SCHEME_PC98 6 +#define SCHEME_VTOC8 7 + +int scheme_select(const char *); +u_int scheme_selected(void); + +int scheme_add_part(u_int, const char *, off_t, off_t); +u_int scheme_max_parts(void); +off_t scheme_first_offset(u_int); +off_t scheme_next_offset(off_t, uint64_t); +void scheme_write(int, off_t); + +#endif /* _MKIMG_SCHEME_H_ */ From owner-svn-src-user@FreeBSD.ORG Sun Aug 4 16:10:18 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id D10A98F; Sun, 4 Aug 2013 16:10:18 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BADD92E18; Sun, 4 Aug 2013 16:10:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r74GAIX7008401; Sun, 4 Aug 2013 16:10:18 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r74GAAPv008110; Sun, 4 Aug 2013 16:10:10 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308041610.r74GAAPv008110@svn.freebsd.org> From: Attilio Rao Date: Sun, 4 Aug 2013 16:10:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253928 - in user/attilio/vmcontention: . bin/sh cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs cddl/contrib/opensolaris/c... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 16:10:18 -0000 Author: attilio Date: Sun Aug 4 16:10:09 2013 New Revision: 253928 URL: http://svnweb.freebsd.org/changeset/base/253928 Log: MFC Added: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PRINT_AGG.bad.d - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PRINT_AGG.bad.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.dyn.d - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.dyn.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.xlate.d - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.xlate.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.xlate.d.out - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.xlate.d.out user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.signs.d - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.signs.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.signs.d.out - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.signs.d.out user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/err.D_TRACE_AGG.bad.d - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/err.D_TRACE_AGG.bad.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/tst.dyn.d - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/tst.dyn.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability1.ksh - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability1.ksh user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability1.ksh.out - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability1.ksh.out user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability2.ksh - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability2.ksh user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability2.ksh.out - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability2.ksh.out user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/types/tst.const.d - copied unchanged from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/types/tst.const.d user/attilio/vmcontention/contrib/apr-util/crypto/apr_passwd.c - copied unchanged from r253927, head/contrib/apr-util/crypto/apr_passwd.c user/attilio/vmcontention/contrib/apr-util/crypto/crypt_blowfish.c - copied unchanged from r253927, head/contrib/apr-util/crypto/crypt_blowfish.c user/attilio/vmcontention/contrib/apr-util/crypto/crypt_blowfish.h - copied unchanged from r253927, head/contrib/apr-util/crypto/crypt_blowfish.h user/attilio/vmcontention/contrib/serf/SConstruct - copied unchanged from r253927, head/contrib/serf/SConstruct user/attilio/vmcontention/contrib/serf/auth/auth_spnego.c - copied unchanged from r253927, head/contrib/serf/auth/auth_spnego.c user/attilio/vmcontention/contrib/serf/auth/auth_spnego.h - copied unchanged from r253927, head/contrib/serf/auth/auth_spnego.h user/attilio/vmcontention/contrib/serf/auth/auth_spnego_gss.c - copied unchanged from r253927, head/contrib/serf/auth/auth_spnego_gss.c user/attilio/vmcontention/contrib/serf/auth/auth_spnego_sspi.c - copied unchanged from r253927, head/contrib/serf/auth/auth_spnego_sspi.c user/attilio/vmcontention/contrib/serf/build/check.py - copied unchanged from r253927, head/contrib/serf/build/check.py user/attilio/vmcontention/contrib/serf/build/serf.pc.in - copied unchanged from r253927, head/contrib/serf/build/serf.pc.in user/attilio/vmcontention/etc/libmap.conf - copied unchanged from r253927, head/etc/libmap.conf user/attilio/vmcontention/lib/libc++/libc++.ldscript - copied unchanged from r253927, head/lib/libc++/libc++.ldscript user/attilio/vmcontention/lib/libusb/libusb-0.1.pc - copied unchanged from r253927, head/lib/libusb/libusb-0.1.pc user/attilio/vmcontention/lib/libusb/libusb-1.0.pc - copied unchanged from r253927, head/lib/libusb/libusb-1.0.pc user/attilio/vmcontention/lib/libusb/libusb-2.0.pc - copied unchanged from r253927, head/lib/libusb/libusb-2.0.pc user/attilio/vmcontention/share/man/man4/rsu.4 - copied unchanged from r253927, head/share/man/man4/rsu.4 user/attilio/vmcontention/share/man/man4/rsufw.4 - copied unchanged from r253927, head/share/man/man4/rsufw.4 user/attilio/vmcontention/sys/arm/freescale/imx/files.imx51 - copied unchanged from r253927, head/sys/arm/freescale/imx/files.imx51 user/attilio/vmcontention/sys/arm/freescale/imx/std.imx51 - copied unchanged from r253927, head/sys/arm/freescale/imx/std.imx51 user/attilio/vmcontention/sys/contrib/dev/rsu/ - copied from r253927, head/sys/contrib/dev/rsu/ user/attilio/vmcontention/sys/dev/cxgbe/t4_tracer.c - copied unchanged from r253927, head/sys/dev/cxgbe/t4_tracer.c user/attilio/vmcontention/sys/dev/iwn/if_iwn_devid.h - copied unchanged from r253927, head/sys/dev/iwn/if_iwn_devid.h user/attilio/vmcontention/sys/dev/usb/wlan/if_rsu.c - copied unchanged from r253927, head/sys/dev/usb/wlan/if_rsu.c user/attilio/vmcontention/sys/dev/usb/wlan/if_rsureg.h - copied unchanged from r253927, head/sys/dev/usb/wlan/if_rsureg.h user/attilio/vmcontention/sys/dev/wi/if_wi_macio.c - copied unchanged from r253927, head/sys/dev/wi/if_wi_macio.c user/attilio/vmcontention/sys/libkern/flsll.c - copied unchanged from r253927, head/sys/libkern/flsll.c user/attilio/vmcontention/sys/modules/usb/rsu/ - copied from r253927, head/sys/modules/usb/rsu/ user/attilio/vmcontention/sys/modules/usb/rsufw/ - copied from r253927, head/sys/modules/usb/rsufw/ user/attilio/vmcontention/sys/modules/usb/runfw/ - copied from r253927, head/sys/modules/usb/runfw/ user/attilio/vmcontention/tools/build/options/WITH_GNU_PATCH - copied unchanged from r253927, head/tools/build/options/WITH_GNU_PATCH Deleted: user/attilio/vmcontention/bin/sh/init.h user/attilio/vmcontention/bin/sh/mkinit.c user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.complex.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PRINT_DYN.bad.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/man.TestTransStability.d user/attilio/vmcontention/contrib/apr-util/aprutil.dsp user/attilio/vmcontention/contrib/apr-util/crypto/apr_crypto_nss.dsp user/attilio/vmcontention/contrib/apr-util/crypto/apr_crypto_openssl.dsp user/attilio/vmcontention/contrib/apr-util/dbd/apr_dbd_freetds.dsp user/attilio/vmcontention/contrib/apr-util/dbd/apr_dbd_mysql.dsp user/attilio/vmcontention/contrib/apr-util/dbd/apr_dbd_odbc.dsp user/attilio/vmcontention/contrib/apr-util/dbd/apr_dbd_oracle.dsp user/attilio/vmcontention/contrib/apr-util/dbd/apr_dbd_pgsql.dsp user/attilio/vmcontention/contrib/apr-util/dbd/apr_dbd_sqlite2.dsp user/attilio/vmcontention/contrib/apr-util/dbd/apr_dbd_sqlite3.dsp user/attilio/vmcontention/contrib/apr-util/dbm/apr_dbm_db.dsp user/attilio/vmcontention/contrib/apr-util/dbm/apr_dbm_gdbm.dsp user/attilio/vmcontention/contrib/apr-util/ldap/apr_ldap.dsp user/attilio/vmcontention/contrib/apr-util/libaprutil.dsp user/attilio/vmcontention/contrib/apr-util/test/testutildll.dsp user/attilio/vmcontention/contrib/apr-util/test/testutillib.dsp user/attilio/vmcontention/contrib/serf/Makefile.in user/attilio/vmcontention/contrib/serf/auth/auth_kerb.c user/attilio/vmcontention/contrib/serf/auth/auth_kerb.h user/attilio/vmcontention/contrib/serf/auth/auth_kerb_gss.c user/attilio/vmcontention/contrib/serf/auth/auth_kerb_sspi.c user/attilio/vmcontention/contrib/serf/build/apr_common.m4 user/attilio/vmcontention/contrib/serf/build/config.guess user/attilio/vmcontention/contrib/serf/build/config.sub user/attilio/vmcontention/contrib/serf/build/find_apr.m4 user/attilio/vmcontention/contrib/serf/build/find_apu.m4 user/attilio/vmcontention/contrib/serf/build/get-version.sh user/attilio/vmcontention/contrib/serf/build/install.sh user/attilio/vmcontention/contrib/serf/build/serf.def user/attilio/vmcontention/contrib/serf/buildconf user/attilio/vmcontention/contrib/serf/config.layout user/attilio/vmcontention/contrib/serf/configure user/attilio/vmcontention/contrib/serf/configure.in user/attilio/vmcontention/contrib/serf/serf.mak user/attilio/vmcontention/contrib/serf/serf.pc.in user/attilio/vmcontention/contrib/serf/serfmake user/attilio/vmcontention/sys/arm/freescale/imx/imx.files user/attilio/vmcontention/sys/arm/freescale/imx/std.imx user/attilio/vmcontention/sys/modules/runfw/ user/attilio/vmcontention/tools/build/options/WITH_BSD_PATCH Modified: user/attilio/vmcontention/MAINTAINERS (contents, props changed) user/attilio/vmcontention/Makefile user/attilio/vmcontention/Makefile.inc1 user/attilio/vmcontention/UPDATING user/attilio/vmcontention/bin/sh/Makefile user/attilio/vmcontention/bin/sh/TOUR user/attilio/vmcontention/bin/sh/eval.c user/attilio/vmcontention/bin/sh/eval.h user/attilio/vmcontention/bin/sh/exec.c user/attilio/vmcontention/bin/sh/input.c user/attilio/vmcontention/bin/sh/input.h user/attilio/vmcontention/bin/sh/jobs.c user/attilio/vmcontention/bin/sh/main.c user/attilio/vmcontention/bin/sh/output.c user/attilio/vmcontention/bin/sh/parser.c user/attilio/vmcontention/bin/sh/parser.h user/attilio/vmcontention/bin/sh/redir.c user/attilio/vmcontention/bin/sh/redir.h user/attilio/vmcontention/bin/sh/shell.h user/attilio/vmcontention/bin/sh/trap.c user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts/dtest.pl user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionentry.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionreturnvalue.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.ioctlargs.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offset.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offsetzero.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.return0.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.tailcall.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/funcs/tst.strjoin.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.BadAlign.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.InvalidAddress2.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.InvalidAddress3.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.InvalidAddress4.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PRINT_VOID.bad.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PROTO_LEN.bad.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.ints.d.out user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/safety/tst.copyin.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/speculation/err.BufSizeVariations2.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/err.D_PROTO_LEN.bad.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/err.D_TRACE_VOID.bad.d user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libdtrace/common/dt_aggregate.c user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libdtrace/common/dt_cc.c user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libdtrace/common/dt_cg.c user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libdtrace/common/dt_decl.c user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libdtrace/common/dt_error.c user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libdtrace/common/dt_errtags.h user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libdtrace/common/dt_impl.h user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libdtrace/common/dt_parser.c user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libdtrace/common/dt_printf.c user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libdtrace/common/dt_subr.c user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libdtrace/i386/dt_isadep.c user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c user/attilio/vmcontention/cddl/contrib/opensolaris/tools/ctf/cvt/ctf.c user/attilio/vmcontention/cddl/contrib/opensolaris/tools/ctf/cvt/ctftools.h user/attilio/vmcontention/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c user/attilio/vmcontention/cddl/contrib/opensolaris/tools/ctf/cvt/st_parse.c user/attilio/vmcontention/contrib/apr-util/CHANGES user/attilio/vmcontention/contrib/apr-util/Makefile.win user/attilio/vmcontention/contrib/apr-util/NWGNUmakefile user/attilio/vmcontention/contrib/apr-util/apr-util.spec user/attilio/vmcontention/contrib/apr-util/buckets/apr_brigade.c user/attilio/vmcontention/contrib/apr-util/buckets/apr_buckets_alloc.c user/attilio/vmcontention/contrib/apr-util/build-outputs.mk user/attilio/vmcontention/contrib/apr-util/build.conf user/attilio/vmcontention/contrib/apr-util/configure user/attilio/vmcontention/contrib/apr-util/configure.in user/attilio/vmcontention/contrib/apr-util/crypto/apr_crypto.c user/attilio/vmcontention/contrib/apr-util/crypto/apr_crypto_nss.c user/attilio/vmcontention/contrib/apr-util/crypto/apr_crypto_openssl.c user/attilio/vmcontention/contrib/apr-util/crypto/apr_md5.c user/attilio/vmcontention/contrib/apr-util/dbd/NWGNUdbdmysql user/attilio/vmcontention/contrib/apr-util/dbd/apr_dbd_freetds.c user/attilio/vmcontention/contrib/apr-util/dbd/apr_dbd_mysql.c user/attilio/vmcontention/contrib/apr-util/dbd/apr_dbd_pgsql.c user/attilio/vmcontention/contrib/apr-util/dbd/apr_dbd_sqlite2.c user/attilio/vmcontention/contrib/apr-util/hooks/apr_hooks.c user/attilio/vmcontention/contrib/apr-util/include/apr_base64.h user/attilio/vmcontention/contrib/apr-util/include/apr_buckets.h user/attilio/vmcontention/contrib/apr-util/include/apr_md5.h user/attilio/vmcontention/contrib/apr-util/include/apr_queue.h user/attilio/vmcontention/contrib/apr-util/include/apu.h.in user/attilio/vmcontention/contrib/apr-util/include/apu_version.h user/attilio/vmcontention/contrib/apr-util/include/private/apr_crypto_internal.h user/attilio/vmcontention/contrib/apr-util/memcache/apr_memcache.c user/attilio/vmcontention/contrib/apr-util/misc/apr_thread_pool.c user/attilio/vmcontention/contrib/apr-util/test/Makefile.in user/attilio/vmcontention/contrib/apr-util/test/Makefile.win user/attilio/vmcontention/contrib/apr-util/test/NWGNUmakefile user/attilio/vmcontention/contrib/apr-util/test/testbuckets.c user/attilio/vmcontention/contrib/apr-util/test/testmd5.c user/attilio/vmcontention/contrib/apr-util/test/testmemcache.c user/attilio/vmcontention/contrib/apr-util/test/testpass.c user/attilio/vmcontention/contrib/apr-util/test/testuri.c user/attilio/vmcontention/contrib/apr-util/test/testutil.c user/attilio/vmcontention/contrib/apr-util/test/testutil.h user/attilio/vmcontention/contrib/apr-util/uri/apr_uri.c user/attilio/vmcontention/contrib/apr/CHANGES user/attilio/vmcontention/contrib/apr/Makefile.win user/attilio/vmcontention/contrib/apr/apr.spec user/attilio/vmcontention/contrib/apr/atomic/unix/ia32.c user/attilio/vmcontention/contrib/apr/atomic/unix/ppc.c user/attilio/vmcontention/contrib/apr/atomic/unix/s390.c user/attilio/vmcontention/contrib/apr/configure user/attilio/vmcontention/contrib/apr/docs/pool-design.html user/attilio/vmcontention/contrib/apr/file_io/unix/seek.c user/attilio/vmcontention/contrib/apr/include/apr.hw user/attilio/vmcontention/contrib/apr/include/apr_allocator.h user/attilio/vmcontention/contrib/apr/include/apr_general.h user/attilio/vmcontention/contrib/apr/include/apr_network_io.h user/attilio/vmcontention/contrib/apr/include/apr_pools.h user/attilio/vmcontention/contrib/apr/include/apr_strings.h user/attilio/vmcontention/contrib/apr/include/apr_thread_proc.h user/attilio/vmcontention/contrib/apr/include/apr_version.h user/attilio/vmcontention/contrib/apr/libapr.rc user/attilio/vmcontention/contrib/apr/network_io/unix/multicast.c user/attilio/vmcontention/contrib/apr/network_io/unix/sendrecv.c user/attilio/vmcontention/contrib/apr/network_io/unix/sockaddr.c user/attilio/vmcontention/contrib/apr/network_io/unix/sockopt.c user/attilio/vmcontention/contrib/apr/random/unix/sha2.c user/attilio/vmcontention/contrib/apr/random/unix/sha2.h user/attilio/vmcontention/contrib/apr/random/unix/sha2_glue.c user/attilio/vmcontention/contrib/apr/tables/apr_tables.c user/attilio/vmcontention/contrib/apr/threadproc/unix/thread.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/keydata_65533.c user/attilio/vmcontention/contrib/binutils/ld/ldmain.c user/attilio/vmcontention/contrib/bmake/ChangeLog user/attilio/vmcontention/contrib/bmake/Makefile user/attilio/vmcontention/contrib/bmake/bmake.1 user/attilio/vmcontention/contrib/bmake/bmake.cat1 user/attilio/vmcontention/contrib/bmake/compat.c user/attilio/vmcontention/contrib/bmake/configure user/attilio/vmcontention/contrib/bmake/configure.in user/attilio/vmcontention/contrib/bmake/job.c user/attilio/vmcontention/contrib/bmake/job.h user/attilio/vmcontention/contrib/bmake/main.c user/attilio/vmcontention/contrib/bmake/make.1 user/attilio/vmcontention/contrib/bmake/make.h user/attilio/vmcontention/contrib/bmake/meta.c user/attilio/vmcontention/contrib/bmake/mk/ChangeLog user/attilio/vmcontention/contrib/bmake/mk/init.mk user/attilio/vmcontention/contrib/bmake/mk/install-mk user/attilio/vmcontention/contrib/bmake/mk/lib.mk user/attilio/vmcontention/contrib/bmake/mk/meta2deps.py user/attilio/vmcontention/contrib/bmake/mk/own.mk user/attilio/vmcontention/contrib/bmake/mk/prog.mk user/attilio/vmcontention/contrib/bmake/parse.c user/attilio/vmcontention/contrib/bmake/unit-tests/Makefile.in user/attilio/vmcontention/contrib/bmake/var.c user/attilio/vmcontention/contrib/llvm/tools/clang/lib/Headers/cpuid.h user/attilio/vmcontention/contrib/serf/CHANGES user/attilio/vmcontention/contrib/serf/README user/attilio/vmcontention/contrib/serf/auth/auth.c user/attilio/vmcontention/contrib/serf/auth/auth.h user/attilio/vmcontention/contrib/serf/auth/auth_basic.c user/attilio/vmcontention/contrib/serf/auth/auth_digest.c user/attilio/vmcontention/contrib/serf/buckets/aggregate_buckets.c user/attilio/vmcontention/contrib/serf/buckets/buckets.c user/attilio/vmcontention/contrib/serf/buckets/dechunk_buckets.c user/attilio/vmcontention/contrib/serf/buckets/headers_buckets.c user/attilio/vmcontention/contrib/serf/buckets/limit_buckets.c user/attilio/vmcontention/contrib/serf/buckets/request_buckets.c user/attilio/vmcontention/contrib/serf/buckets/response_buckets.c user/attilio/vmcontention/contrib/serf/buckets/simple_buckets.c user/attilio/vmcontention/contrib/serf/buckets/ssl_buckets.c user/attilio/vmcontention/contrib/serf/build/gen_def.py user/attilio/vmcontention/contrib/serf/context.c user/attilio/vmcontention/contrib/serf/incoming.c user/attilio/vmcontention/contrib/serf/outgoing.c user/attilio/vmcontention/contrib/serf/serf.h user/attilio/vmcontention/contrib/serf/serf_bucket_types.h user/attilio/vmcontention/contrib/serf/serf_bucket_util.h user/attilio/vmcontention/contrib/serf/serf_private.h user/attilio/vmcontention/contrib/serf/ssltunnel.c user/attilio/vmcontention/contrib/subversion/CHANGES user/attilio/vmcontention/contrib/subversion/Makefile.in user/attilio/vmcontention/contrib/subversion/build-outputs.mk user/attilio/vmcontention/contrib/subversion/configure user/attilio/vmcontention/contrib/subversion/configure.ac user/attilio/vmcontention/contrib/subversion/get-deps.sh user/attilio/vmcontention/contrib/subversion/subversion/include/private/svn_client_private.h user/attilio/vmcontention/contrib/subversion/subversion/include/private/svn_io_private.h user/attilio/vmcontention/contrib/subversion/subversion/include/private/svn_ra_private.h user/attilio/vmcontention/contrib/subversion/subversion/include/svn_version.h user/attilio/vmcontention/contrib/subversion/subversion/libsvn_client/client.h user/attilio/vmcontention/contrib/subversion/subversion/libsvn_client/commit.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_client/copy.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_client/diff.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_client/diff_local.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_client/log.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_client/merge.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_client/mergeinfo.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_client/ra.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_client/switch.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_delta/compat.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_fs_base/bdb/env.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_fs_base/tree.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_fs_fs/fs_fs.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_fs_fs/rep-cache-db.h user/attilio/vmcontention/contrib/subversion/subversion/libsvn_fs_fs/tree.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra/ra_loader.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra/util.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/blame.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/commit.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/getdate.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/getlocations.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/getlocationsegments.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/getlocks.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/inherited_props.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/log.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/mergeinfo.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/options.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/property.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/ra_serf.h user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/replay.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/serf.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/update.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/util.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_serf/xml.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_svn/client.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_ra_svn/protocol user/attilio/vmcontention/contrib/subversion/subversion/libsvn_repos/fs-wrap.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_subr/config_file.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_subr/gpg_agent.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_subr/internal_statements.h user/attilio/vmcontention/contrib/subversion/subversion/libsvn_subr/io.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_subr/named_atomic.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_subr/sqlite.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_subr/stream.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_subr/subst.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_subr/utf.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/adm_ops.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/crop.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/externals.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/update_editor.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/upgrade.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/wc-checks.h user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/wc-metadata.h user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/wc-queries.h user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/wc-queries.sql user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/wc_db.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/wc_db.h user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/wc_db_update_move.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/wc_db_wcroot.c user/attilio/vmcontention/contrib/subversion/subversion/libsvn_wc/workqueue.c user/attilio/vmcontention/contrib/subversion/subversion/svn/cl.h user/attilio/vmcontention/contrib/subversion/subversion/svn/conflict-callbacks.c user/attilio/vmcontention/contrib/subversion/subversion/svn/file-merge.c user/attilio/vmcontention/contrib/subversion/subversion/svn/merge-cmd.c user/attilio/vmcontention/contrib/subversion/subversion/svn/mergeinfo-cmd.c user/attilio/vmcontention/contrib/subversion/subversion/svn/svn.c user/attilio/vmcontention/contrib/subversion/subversion/svn/util.c user/attilio/vmcontention/contrib/subversion/subversion/svnadmin/svnadmin.c user/attilio/vmcontention/contrib/subversion/subversion/svnlook/svnlook.c user/attilio/vmcontention/contrib/subversion/subversion/svnserve/serve.c user/attilio/vmcontention/contrib/subversion/win-tests.py user/attilio/vmcontention/contrib/tcpdump/tcpdump.c user/attilio/vmcontention/etc/Makefile user/attilio/vmcontention/etc/devd/usb.conf user/attilio/vmcontention/etc/mtree/BSD.usr.dist user/attilio/vmcontention/etc/network.subr user/attilio/vmcontention/etc/rc.d/netif user/attilio/vmcontention/gnu/usr.bin/patch/Makefile user/attilio/vmcontention/lib/libc++/Makefile user/attilio/vmcontention/lib/libc/gen/sysctl.3 user/attilio/vmcontention/lib/libc/gen/wordexp.c user/attilio/vmcontention/lib/libc/sys/kqueue.2 user/attilio/vmcontention/lib/libfetch/common.c user/attilio/vmcontention/lib/libfetch/common.h user/attilio/vmcontention/lib/libfetch/fetch.3 user/attilio/vmcontention/lib/libfetch/http.c user/attilio/vmcontention/lib/libusb/Makefile user/attilio/vmcontention/lib/msun/src/math.h user/attilio/vmcontention/release/ia64/mkisoimages.sh user/attilio/vmcontention/release/sparc64/mkisoimages.sh user/attilio/vmcontention/sbin/fsck_ffs/fsck.h user/attilio/vmcontention/sbin/fsck_ffs/fsck_ffs.8 user/attilio/vmcontention/sbin/fsck_ffs/fsutil.c user/attilio/vmcontention/sbin/fsck_ffs/main.c user/attilio/vmcontention/sbin/ipfw/ipfw.8 user/attilio/vmcontention/sbin/mdconfig/mdconfig.c user/attilio/vmcontention/sbin/route/route.c user/attilio/vmcontention/sbin/swapon/swapon.c user/attilio/vmcontention/share/man/man4/Makefile user/attilio/vmcontention/share/man/man4/bridge.4 user/attilio/vmcontention/share/man/man5/rc.conf.5 user/attilio/vmcontention/share/man/man9/Makefile user/attilio/vmcontention/share/man/man9/microuptime.9 user/attilio/vmcontention/share/mk/bsd.own.mk user/attilio/vmcontention/sys/amd64/amd64/identcpu.c user/attilio/vmcontention/sys/amd64/amd64/initcpu.c user/attilio/vmcontention/sys/amd64/amd64/pmap.c user/attilio/vmcontention/sys/amd64/amd64/sys_machdep.c user/attilio/vmcontention/sys/amd64/include/md_var.h user/attilio/vmcontention/sys/amd64/vmm/intel/vmx.c user/attilio/vmcontention/sys/amd64/vmm/vmm.c user/attilio/vmcontention/sys/amd64/vmm/vmm_instruction_emul.c user/attilio/vmcontention/sys/arm/arm/busdma_machdep-v6.c user/attilio/vmcontention/sys/arm/arm/cpufunc.c user/attilio/vmcontention/sys/arm/arm/gic.c user/attilio/vmcontention/sys/arm/arm/identcpu.c user/attilio/vmcontention/sys/arm/arm/pl310.c user/attilio/vmcontention/sys/arm/conf/BEAGLEBONE user/attilio/vmcontention/sys/arm/conf/EFIKA_MX user/attilio/vmcontention/sys/arm/conf/RPI-B user/attilio/vmcontention/sys/arm/freescale/imx/console.c user/attilio/vmcontention/sys/arm/include/armreg.h user/attilio/vmcontention/sys/arm/include/kdb.h user/attilio/vmcontention/sys/arm/include/smp.h user/attilio/vmcontention/sys/arm/ti/am335x/am335x_prcm.c user/attilio/vmcontention/sys/arm/ti/ti_prcm.h user/attilio/vmcontention/sys/boot/arm/uboot/Makefile user/attilio/vmcontention/sys/boot/fdt/dts/am335x.dtsi user/attilio/vmcontention/sys/boot/ficl/loader.c user/attilio/vmcontention/sys/boot/forth/loader.rc user/attilio/vmcontention/sys/cam/ata/ata_da.c user/attilio/vmcontention/sys/cam/scsi/scsi_da.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_destroy.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/ddt.h user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_impl.h user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_objset.h user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_send.h user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dataset.h user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_destroy.h user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/sys/fs/zfs.h user/attilio/vmcontention/sys/cddl/dev/dtrace/amd64/dis_tables.c user/attilio/vmcontention/sys/cddl/dev/dtrace/amd64/dis_tables.h user/attilio/vmcontention/sys/cddl/dev/dtrace/i386/dis_tables.c user/attilio/vmcontention/sys/cddl/dev/dtrace/i386/dis_tables.h user/attilio/vmcontention/sys/conf/NOTES user/attilio/vmcontention/sys/conf/WITHOUT_SOURCELESS_UCODE user/attilio/vmcontention/sys/conf/files user/attilio/vmcontention/sys/conf/newvers.sh user/attilio/vmcontention/sys/conf/options user/attilio/vmcontention/sys/contrib/dev/acpica/changes.txt (contents, props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/common/dmextern.c user/attilio/vmcontention/sys/contrib/dev/acpica/common/getopt.c user/attilio/vmcontention/sys/contrib/dev/acpica/compiler/asloffset.c user/attilio/vmcontention/sys/contrib/dev/acpica/compiler/asloperands.c user/attilio/vmcontention/sys/contrib/dev/acpica/compiler/asloptions.c user/attilio/vmcontention/sys/contrib/dev/acpica/compiler/dttemplate.c user/attilio/vmcontention/sys/contrib/dev/acpica/components/executer/exoparg1.c user/attilio/vmcontention/sys/contrib/dev/acpica/components/hardware/hwtimer.c user/attilio/vmcontention/sys/contrib/dev/acpica/components/namespace/nspredef.c user/attilio/vmcontention/sys/contrib/dev/acpica/components/namespace/nswalk.c user/attilio/vmcontention/sys/contrib/dev/acpica/components/namespace/nsxfeval.c user/attilio/vmcontention/sys/contrib/dev/acpica/components/tables/tbfadt.c user/attilio/vmcontention/sys/contrib/dev/acpica/components/tables/tbxfroot.c user/attilio/vmcontention/sys/contrib/dev/acpica/components/utilities/utglobal.c user/attilio/vmcontention/sys/contrib/dev/acpica/components/utilities/utosi.c user/attilio/vmcontention/sys/contrib/dev/acpica/components/utilities/utxface.c user/attilio/vmcontention/sys/contrib/dev/acpica/include/acglobal.h user/attilio/vmcontention/sys/contrib/dev/acpica/include/aclocal.h user/attilio/vmcontention/sys/contrib/dev/acpica/include/acnamesp.h user/attilio/vmcontention/sys/contrib/dev/acpica/include/acpixf.h user/attilio/vmcontention/sys/contrib/dev/acpica/include/actables.h user/attilio/vmcontention/sys/contrib/dev/acpica/include/actypes.h user/attilio/vmcontention/sys/contrib/dev/acpica/include/acutils.h user/attilio/vmcontention/sys/dev/ahci/ahci.c user/attilio/vmcontention/sys/dev/ahci/ahci.h user/attilio/vmcontention/sys/dev/aic7xxx/aic7xxx_pci.c user/attilio/vmcontention/sys/dev/ata/chipsets/ata-promise.c user/attilio/vmcontention/sys/dev/ciss/ciss.c user/attilio/vmcontention/sys/dev/cxgbe/adapter.h user/attilio/vmcontention/sys/dev/cxgbe/common/t4_hw.c user/attilio/vmcontention/sys/dev/cxgbe/common/t4_hw.h user/attilio/vmcontention/sys/dev/cxgbe/t4_ioctl.h user/attilio/vmcontention/sys/dev/cxgbe/t4_main.c user/attilio/vmcontention/sys/dev/cxgbe/t4_sge.c user/attilio/vmcontention/sys/dev/drm2/i915/intel_ringbuffer.c user/attilio/vmcontention/sys/dev/drm2/ttm/ttm_bo_vm.c user/attilio/vmcontention/sys/dev/filemon/filemon.c user/attilio/vmcontention/sys/dev/ipmi/ipmi_isa.c user/attilio/vmcontention/sys/dev/ipmi/ipmivars.h user/attilio/vmcontention/sys/dev/iwn/if_iwn.c user/attilio/vmcontention/sys/dev/iwn/if_iwnreg.h user/attilio/vmcontention/sys/dev/ixgbe/ixgbe.c user/attilio/vmcontention/sys/dev/mps/mps_sas.c user/attilio/vmcontention/sys/dev/scc/scc_bfe.h user/attilio/vmcontention/sys/dev/scc/scc_bfe_ebus.c user/attilio/vmcontention/sys/dev/scc/scc_bfe_macio.c user/attilio/vmcontention/sys/dev/scc/scc_bfe_quicc.c user/attilio/vmcontention/sys/dev/scc/scc_bfe_sbus.c user/attilio/vmcontention/sys/dev/scc/scc_core.c user/attilio/vmcontention/sys/dev/scc/scc_dev_quicc.c user/attilio/vmcontention/sys/dev/scc/scc_dev_sab82532.c user/attilio/vmcontention/sys/dev/scc/scc_dev_z8530.c user/attilio/vmcontention/sys/dev/sound/pci/ds1.c user/attilio/vmcontention/sys/dev/uart/uart_bus_pci.c user/attilio/vmcontention/sys/dev/usb/gadget/g_audio.c user/attilio/vmcontention/sys/dev/usb/gadget/g_keyboard.c user/attilio/vmcontention/sys/dev/usb/gadget/g_modem.c user/attilio/vmcontention/sys/dev/usb/gadget/g_mouse.c user/attilio/vmcontention/sys/dev/usb/net/if_ipheth.c user/attilio/vmcontention/sys/dev/usb/wlan/if_rumvar.h user/attilio/vmcontention/sys/dev/usb/wlan/if_runvar.h user/attilio/vmcontention/sys/dev/usb/wlan/if_uathvar.h user/attilio/vmcontention/sys/dev/usb/wlan/if_upgtvar.h user/attilio/vmcontention/sys/dev/usb/wlan/if_uralvar.h user/attilio/vmcontention/sys/dev/usb/wlan/if_urtwnreg.h user/attilio/vmcontention/sys/dev/usb/wlan/if_urtwvar.h user/attilio/vmcontention/sys/dev/usb/wlan/if_zydreg.h user/attilio/vmcontention/sys/dev/watchdog/watchdog.c user/attilio/vmcontention/sys/dev/wi/if_wi.c user/attilio/vmcontention/sys/fs/cd9660/iso.h user/attilio/vmcontention/sys/fs/devfs/devfs_rule.c user/attilio/vmcontention/sys/fs/ext2fs/ext2_hash.c user/attilio/vmcontention/sys/fs/ext2fs/ext2_lookup.c user/attilio/vmcontention/sys/fs/fuse/fuse_kernel.h user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c user/attilio/vmcontention/sys/gdb/gdb_cons.c user/attilio/vmcontention/sys/geom/raid/g_raid.c user/attilio/vmcontention/sys/geom/raid/g_raid_ctl.c user/attilio/vmcontention/sys/i386/i386/identcpu.c user/attilio/vmcontention/sys/i386/i386/initcpu.c user/attilio/vmcontention/sys/i386/i386/sys_machdep.c user/attilio/vmcontention/sys/i386/include/md_var.h user/attilio/vmcontention/sys/kern/init_main.c user/attilio/vmcontention/sys/kern/kern_malloc.c user/attilio/vmcontention/sys/kern/kern_ntptime.c user/attilio/vmcontention/sys/kern/kern_uuid.c user/attilio/vmcontention/sys/kern/sched_4bsd.c user/attilio/vmcontention/sys/kern/subr_vmem.c user/attilio/vmcontention/sys/kern/uipc_shm.c user/attilio/vmcontention/sys/kern/uipc_syscalls.c user/attilio/vmcontention/sys/kern/vfs_aio.c user/attilio/vmcontention/sys/kern/vfs_mountroot.c user/attilio/vmcontention/sys/kern/vfs_subr.c user/attilio/vmcontention/sys/mips/conf/DIR-825 user/attilio/vmcontention/sys/mips/conf/DIR-825.hints user/attilio/vmcontention/sys/modules/Makefile user/attilio/vmcontention/sys/modules/cxgbe/if_cxgbe/Makefile user/attilio/vmcontention/sys/modules/dtrace/dtrace/Makefile user/attilio/vmcontention/sys/modules/iwn/Makefile user/attilio/vmcontention/sys/modules/usb/Makefile user/attilio/vmcontention/sys/modules/wi/Makefile user/attilio/vmcontention/sys/net/ieee8023ad_lacp.c user/attilio/vmcontention/sys/net/ieee8023ad_lacp.h user/attilio/vmcontention/sys/net/if_bridge.c user/attilio/vmcontention/sys/net/if_ethersubr.c user/attilio/vmcontention/sys/net/if_lagg.c user/attilio/vmcontention/sys/net/if_lagg.h user/attilio/vmcontention/sys/net/rtsock.c user/attilio/vmcontention/sys/net80211/ieee80211.h user/attilio/vmcontention/sys/net80211/ieee80211_mesh.c user/attilio/vmcontention/sys/net80211/ieee80211_output.c user/attilio/vmcontention/sys/net80211/ieee80211_proto.h user/attilio/vmcontention/sys/netinet/sctp_usrreq.c user/attilio/vmcontention/sys/netinet6/in6.c user/attilio/vmcontention/sys/netinet6/in6_ifattach.c user/attilio/vmcontention/sys/netinet6/nd6.c user/attilio/vmcontention/sys/netpfil/pf/if_pfsync.c user/attilio/vmcontention/sys/nfs/bootp_subr.c user/attilio/vmcontention/sys/ofed/drivers/net/mlx4/en_netdev.c user/attilio/vmcontention/sys/ofed/drivers/net/mlx4/en_tx.c user/attilio/vmcontention/sys/ofed/include/linux/module.h user/attilio/vmcontention/sys/powerpc/include/spr.h user/attilio/vmcontention/sys/powerpc/ofw/ofw_real.c user/attilio/vmcontention/sys/powerpc/powermac/macio.c user/attilio/vmcontention/sys/powerpc/powermac/maciovar.h user/attilio/vmcontention/sys/sys/kernel.h user/attilio/vmcontention/sys/sys/libkern.h user/attilio/vmcontention/sys/sys/param.h user/attilio/vmcontention/sys/sys/priv.h user/attilio/vmcontention/sys/sys/sched.h user/attilio/vmcontention/sys/sys/uuid.h user/attilio/vmcontention/sys/vm/uma_int.h user/attilio/vmcontention/sys/vm/vm.h user/attilio/vmcontention/sys/vm/vm_glue.c user/attilio/vmcontention/sys/vm/vm_map.c user/attilio/vmcontention/sys/vm/vm_pageout.c user/attilio/vmcontention/sys/vm/vm_param.h user/attilio/vmcontention/sys/vm/vnode_pager.c user/attilio/vmcontention/sys/x86/include/specialreg.h user/attilio/vmcontention/tools/regression/lib/libc/gen/test-wordexp.c user/attilio/vmcontention/tools/tools/crypto/ipsecstats.c user/attilio/vmcontention/tools/tools/cxgbetool/cxgbetool.c user/attilio/vmcontention/tools/tools/sysdoc/tunables.mdoc user/attilio/vmcontention/tools/tools/zfsboottest/Makefile user/attilio/vmcontention/usr.bin/bmake/Makefile user/attilio/vmcontention/usr.bin/bmake/config.h user/attilio/vmcontention/usr.bin/bmake/unit-tests/Makefile user/attilio/vmcontention/usr.bin/fetch/fetch.1 user/attilio/vmcontention/usr.bin/fetch/fetch.c user/attilio/vmcontention/usr.bin/find/function.c user/attilio/vmcontention/usr.bin/grep/regex/tre-fastmatch.c user/attilio/vmcontention/usr.bin/patch/Makefile user/attilio/vmcontention/usr.bin/patch/patch.c user/attilio/vmcontention/usr.bin/script/script.1 user/attilio/vmcontention/usr.bin/svn/lib/libapr_util/Makefile user/attilio/vmcontention/usr.bin/svn/lib/libapr_util/apu.h user/attilio/vmcontention/usr.bin/svn/lib/libserf/Makefile user/attilio/vmcontention/usr.bin/svn/svn_private_config.h user/attilio/vmcontention/usr.bin/truss/syscall.h user/attilio/vmcontention/usr.bin/truss/syscalls.c user/attilio/vmcontention/usr.sbin/makefs/cd9660.c user/attilio/vmcontention/usr.sbin/makefs/cd9660/iso9660_rrip.c user/attilio/vmcontention/usr.sbin/makefs/ffs/ufs_bswap.h user/attilio/vmcontention/usr.sbin/pkg/config.c user/attilio/vmcontention/usr.sbin/watchdogd/watchdogd.8 user/attilio/vmcontention/usr.sbin/watchdogd/watchdogd.c Directory Properties: user/attilio/vmcontention/ (props changed) user/attilio/vmcontention/cddl/ (props changed) user/attilio/vmcontention/cddl/contrib/opensolaris/ (props changed) user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/ (props changed) user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/zfs/ (props changed) user/attilio/vmcontention/cddl/contrib/opensolaris/lib/libzfs/ (props changed) user/attilio/vmcontention/contrib/apr/ (props changed) user/attilio/vmcontention/contrib/apr-util/ (props changed) user/attilio/vmcontention/contrib/bind9/ (props changed) user/attilio/vmcontention/contrib/binutils/ (props changed) user/attilio/vmcontention/contrib/bmake/ (props changed) user/attilio/vmcontention/contrib/llvm/ (props changed) user/attilio/vmcontention/contrib/llvm/tools/clang/ (props changed) user/attilio/vmcontention/contrib/serf/ (props changed) user/attilio/vmcontention/contrib/subversion/ (props changed) user/attilio/vmcontention/contrib/tcpdump/ (props changed) user/attilio/vmcontention/lib/libc/ (props changed) user/attilio/vmcontention/sbin/ (props changed) user/attilio/vmcontention/sbin/ipfw/ (props changed) user/attilio/vmcontention/share/man/man4/ (props changed) user/attilio/vmcontention/sys/ (props changed) user/attilio/vmcontention/sys/amd64/vmm/ (props changed) user/attilio/vmcontention/sys/boot/ (props changed) user/attilio/vmcontention/sys/cddl/contrib/opensolaris/ (props changed) user/attilio/vmcontention/sys/conf/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/common/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/compiler/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/components/debugger/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/components/disassembler/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/components/dispatcher/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/components/events/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/components/executer/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/components/hardware/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/components/namespace/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/components/parser/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/components/resources/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/components/tables/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/components/utilities/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/include/ (props changed) user/attilio/vmcontention/sys/contrib/dev/acpica/os_specific/ (props changed) user/attilio/vmcontention/sys/dev/usb/serial/uark.c (props changed) Modified: user/attilio/vmcontention/MAINTAINERS ============================================================================== --- user/attilio/vmcontention/MAINTAINERS Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/MAINTAINERS Sun Aug 4 16:10:09 2013 (r253928) @@ -128,3 +128,6 @@ sysdoc trhodes Pre-commit review prefe sh(1) jilles Pre-commit review requested. This also applies to kill(1), printf(1) and test(1) which are compiled in as builtins. +nvme(4) jimharris Pre-commit review requested. +nvd(4) jimharris Pre-commit review requested. +nvmecontrol(8) jimharris Pre-commit review requested. Modified: user/attilio/vmcontention/Makefile ============================================================================== --- user/attilio/vmcontention/Makefile Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/Makefile Sun Aug 4 16:10:09 2013 (r253928) @@ -130,11 +130,34 @@ _MAKEOBJDIRPREFIX!= /usr/bin/env -i PATH .error MAKEOBJDIRPREFIX can only be set in environment, not as a global\ (in make.conf(5)) or command-line variable. .endif -MAKEPATH= ${MAKEOBJDIRPREFIX}${.CURDIR}/make.${MACHINE} -BINMAKE= \ - `if [ -x ${MAKEPATH}/make ]; then echo ${MAKEPATH}/make; else echo ${MAKE}; fi` \ + +# We often need to use the tree's version of make to build it. +# Choices add to complexity though. +# We cannot blindly use a make which may not be the one we want +# so be exlicit - until all choice is removed. +.if !defined(WITHOUT_BMAKE) +WANT_MAKE= bmake +.else +WANT_MAKE= fmake +.endif +MYMAKE= ${MAKEOBJDIRPREFIX}${.CURDIR}/make.${MACHINE}/${WANT_MAKE} +.if defined(.PARSEDIR) +HAVE_MAKE= bmake +.else +HAVE_MAKE= fmake +.endif +.if exists(${MYMAKE}) +SUB_MAKE:= ${MYMAKE} -m ${.CURDIR}/share/mk +.elif ${WANT_MAKE} != ${HAVE_MAKE} || ${WANT_MAKE} != "bmake" +# It may not exist yet but we may cause it to. +# In the case of fmake, upgrade_checks may cause a newer version to be built. +SUB_MAKE= `test -x ${MYMAKE} && echo ${MYMAKE} || echo ${MAKE}` \ -m ${.CURDIR}/share/mk -_MAKE= PATH=${PATH} ${BINMAKE} -f Makefile.inc1 TARGET=${_TARGET} TARGET_ARCH=${_TARGET_ARCH} +.else +SUB_MAKE= ${MAKE} -m ${.CURDIR}/share/mk +.endif + +_MAKE= PATH=${PATH} ${SUB_MAKE} -f Makefile.inc1 TARGET=${_TARGET} TARGET_ARCH=${_TARGET_ARCH} # Guess machine architecture from machine type, and vice versa. .if !defined(TARGET_ARCH) && defined(TARGET) @@ -291,11 +314,13 @@ kernel: buildkernel installkernel # Perform a few tests to determine if the installed tools are adequate # for building the world. # +# Note: if we ever need to care about the version of bmake, simply testing +# MAKE_VERSION against a required version should suffice. +# upgrade_checks: -.if !defined(.PARSEDIR) -.if !defined(WITHOUT_BMAKE) - (cd ${.CURDIR} && ${MAKE} bmake) -.else +.if ${HAVE_MAKE} != ${WANT_MAKE} + @(cd ${.CURDIR} && ${MAKE} ${WANT_MAKE:S,^f,,}) +.elif ${WANT_MAKE} == "fmake" @if ! (cd ${.CURDIR}/tools/build/make_check && \ PATH=${PATH} ${BINMAKE} obj >/dev/null 2>&1 && \ PATH=${PATH} ${BINMAKE} >/dev/null 2>&1); \ @@ -303,14 +328,13 @@ upgrade_checks: (cd ${.CURDIR} && ${MAKE} make); \ fi .endif -.endif # # Upgrade make(1) to the current version using the installed # headers, libraries and tools. Also, allow the location of # the system bsdmake-like utility to be overridden. # -MMAKEENV= MAKEOBJDIRPREFIX=${MAKEPATH} \ +MMAKEENV= MAKEOBJDIRPREFIX=${MYMAKE:H} \ DESTDIR= \ INSTALL="sh ${.CURDIR}/tools/install.sh" MMAKE= ${MMAKEENV} ${MAKE} \ @@ -327,7 +351,7 @@ make bmake: .PHONY ${MMAKE} obj && \ ${MMAKE} depend && \ ${MMAKE} all && \ - ${MMAKE} install DESTDIR=${MAKEPATH} BINDIR= + ${MMAKE} install DESTDIR=${MYMAKE:H} BINDIR= PROGNAME=${MYMAKE:T} tinderbox: @cd ${.CURDIR} && ${MAKE} DOING_TINDERBOX=YES universe @@ -377,7 +401,8 @@ MAKEFAIL=tee -a ${FAILFILE} MAKEFAIL=cat .endif -universe: universe_prologue upgrade_checks +universe_prologue: upgrade_checks +universe: universe_prologue universe_prologue: @echo "--------------------------------------------------------------" @echo ">>> make universe started on ${STARTTIME}" @@ -387,9 +412,9 @@ universe_prologue: .endif .for target in ${TARGETS} universe: universe_${target} -.ORDER: universe_prologue upgrade_checks universe_${target} universe_epilogue +universe_epilogue: universe_${target} universe_${target}: universe_${target}_prologue -universe_${target}_prologue: +universe_${target}_prologue: universe_prologue @echo ">> ${target} started on `LC_ALL=C date`" .if !defined(MAKE_JUST_KERNELS) .for target_arch in ${TARGET_ARCHES_${target}} @@ -397,7 +422,7 @@ universe_${target}: universe_${target}_$ universe_${target}_${target_arch}: universe_${target}_prologue @echo ">> ${target}.${target_arch} ${UNIVERSE_TARGET} started on `LC_ALL=C date`" @(cd ${.CURDIR} && env __MAKE_CONF=/dev/null \ - ${MAKE} ${JFLAG} ${UNIVERSE_TARGET} \ + ${SUB_MAKE} ${JFLAG} ${UNIVERSE_TARGET} \ TARGET=${target} \ TARGET_ARCH=${target_arch} \ > _.${target}.${target_arch}.${UNIVERSE_TARGET} 2>&1 || \ @@ -418,11 +443,11 @@ universe_${target}: universe_${target}_k universe_${target}_kernels: universe_${target}_prologue .if exists(${KERNSRCDIR}/${target}/conf/NOTES) @(cd ${KERNSRCDIR}/${target}/conf && env __MAKE_CONF=/dev/null \ - ${MAKE} LINT > ${.CURDIR}/_.${target}.makeLINT 2>&1 || \ + ${SUB_MAKE} LINT > ${.CURDIR}/_.${target}.makeLINT 2>&1 || \ (echo "${target} 'make LINT' failed," \ "check _.${target}.makeLINT for details"| ${MAKEFAIL})) .endif - @cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} TARGET=${target} \ + @cd ${.CURDIR} && ${SUB_MAKE} ${.MAKEFLAGS} TARGET=${target} \ universe_kernels .endif @echo ">> ${target} completed on `LC_ALL=C date`" @@ -445,7 +470,7 @@ TARGET_ARCH_${kernel}!= cd ${KERNSRCDIR} universe_kernconfs: universe_kernconf_${TARGET}_${kernel} universe_kernconf_${TARGET}_${kernel}: @(cd ${.CURDIR} && env __MAKE_CONF=/dev/null \ - ${MAKE} ${JFLAG} buildkernel \ + ${SUB_MAKE} ${JFLAG} buildkernel \ TARGET=${TARGET} \ TARGET_ARCH=${TARGET_ARCH_${kernel}} \ KERNCONF=${kernel} \ Modified: user/attilio/vmcontention/Makefile.inc1 ============================================================================== --- user/attilio/vmcontention/Makefile.inc1 Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/Makefile.inc1 Sun Aug 4 16:10:09 2013 (r253928) @@ -833,6 +833,18 @@ distributeworld installworld: installche awk 'BEGIN { print "#${MTREE_MAGIC}" } !/ type=/ { file = $$1 } / type=/ { if ($$1 == file) { sub(/^\.\/${dist}\//, "./"); print } }' > \ ${DESTDIR}/${DISTDIR}/${dist}.meta .endfor +.if ${MK_DEBUG_FILES} != "no" +. for dist in base ${EXTRA_DISTRIBUTIONS} + @# For each file that exists in this dist, print the corresponding + @# line from the METALOG. This relies on the fact that + @# a line containing only the filename will sort immediatly before + @# the relevant mtree line. + cd ${DESTDIR}/${DISTDIR}; \ + find ./${dist}/usr/lib/debug | sort -u ${METALOG} - | \ + awk 'BEGIN { print "#${MTREE_MAGIC}" } !/ type=/ { file = $$1 } / type=/ { if ($$1 == file) { sub(/^\.\/${dist}\//, "./"); print } }' > \ + ${DESTDIR}/${DISTDIR}/${dist}.debug.meta +. endfor +.endif .endif .endif @@ -841,13 +853,29 @@ packageworld: .if defined(NO_ROOT) ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz \ + --exclude usr/lib/debug \ @${DESTDIR}/${DISTDIR}/${dist}.meta .else ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ - tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz . + tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz \ + --exclude usr/lib/debug . .endif .endfor +.if ${MK_DEBUG_FILES} != "no" +. for dist in base ${EXTRA_DISTRIBUTIONS} +. if defined(NO_ROOT) + ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ + tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.debug.txz \ + @${DESTDIR}/${DISTDIR}/${dist}.debug.meta +. else + ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ + tar cvJfL ${DESTDIR}/${DISTDIR}/${dist}.debug.txz \ + usr/lib/debug +. endif +. endfor +.endif + # # reinstall # Modified: user/attilio/vmcontention/UPDATING ============================================================================== --- user/attilio/vmcontention/UPDATING Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/UPDATING Sun Aug 4 16:10:09 2013 (r253928) @@ -31,6 +31,26 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20130802: + find -delete can now delete the pathnames given as arguments, + instead of only files found below them or if the pathname did + not contain any slashes. Formerly, the following error message + would result: + + find: -delete: : relative path potentially not safe + + Deleting the pathnames given as arguments can be prevented + without error messages using -mindepth 1 or by changing + directory and passing "." as argument to find. This works in the + old as well as the new version of find. + +20130726: + Behavior of devfs rules path matching has been changed. + Pattern is now always matched against fully qualified devfs + path and slash characters must be explicitly matched by + slashes in pattern (FNM_PATHNAME). Rulesets involving devfs + subdirectories must be reviewed. + 20130716: The default ARM ABI has changed to the ARM EABI. The old ABI is incompatible with the ARM EABI and all programs and modules will Modified: user/attilio/vmcontention/bin/sh/Makefile ============================================================================== --- user/attilio/vmcontention/bin/sh/Makefile Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/Makefile Sun Aug 4 16:10:09 2013 (r253928) @@ -8,7 +8,7 @@ SHSRCS= alias.c arith_yacc.c arith_yylex histedit.c input.c jobs.c kill.c mail.c main.c memalloc.c miscbltin.c \ mystring.c options.c output.c parser.c printf.c redir.c show.c \ test.c trap.c var.c -GENSRCS= builtins.c init.c nodes.c syntax.c +GENSRCS= builtins.c nodes.c syntax.c GENHDRS= builtins.h nodes.h syntax.h token.h SRCS= ${SHSRCS} ${GENSRCS} ${GENHDRS} @@ -30,26 +30,21 @@ WFORMAT=0 ${.CURDIR}/../test \ ${.CURDIR}/../../usr.bin/printf -CLEANFILES+= mkinit mkinit.o mknodes mknodes.o \ +CLEANFILES+= mknodes mknodes.o \ mksyntax mksyntax.o CLEANFILES+= ${GENSRCS} ${GENHDRS} -build-tools: mkinit mknodes mksyntax +build-tools: mknodes mksyntax .ORDER: builtins.c builtins.h builtins.c builtins.h: mkbuiltins builtins.def sh ${.CURDIR}/mkbuiltins ${.CURDIR} -init.c: mkinit alias.c eval.c exec.c input.c jobs.c options.c parser.c \ - redir.c trap.c var.c - ./mkinit ${.ALLSRC:S/^mkinit$//} - # XXX this is just to stop the default .c rule being used, so that the # intermediate object has a fixed name. # XXX we have a default .c rule, but no default .o rule. .o: ${CC} ${CFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} -mkinit: mkinit.o mknodes: mknodes.o mksyntax: mksyntax.o Modified: user/attilio/vmcontention/bin/sh/TOUR ============================================================================== --- user/attilio/vmcontention/bin/sh/TOUR Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/TOUR Sun Aug 4 16:10:09 2013 (r253928) @@ -25,38 +25,11 @@ programs is: program input files generates ------- ----------- --------- mkbuiltins builtins builtins.h builtins.c - mkinit *.c init.c mknodes nodetypes nodes.h nodes.c mksyntax - syntax.h syntax.c mktokens - token.h -There are undoubtedly too many of these. Mkinit searches all the -C source files for entries looking like: - - RESET { - x = 2; /* executed when the shell does a longjmp - back to the main command loop */ - } - -It pulls this code out into routines which are when particular -events occur. The intent is to improve modularity by isolating -the information about which modules need to be explicitly -initialized/reset within the modules themselves. - -Mkinit recognizes several constructs for placing declarations in -the init.c file. - INCLUDE "file.h" -includes a file. The storage class MKINIT makes a declaration -available in the init.c file, for example: - MKINIT int funcnest; /* depth of function calls */ -MKINIT alone on a line introduces a structure or union declara- -tion: - MKINIT - struct redirtab { - short renamed[10]; - }; -Preprocessor #define statements are copied to init.c without any -special action to request this. +There are undoubtedly too many of these. EXCEPTIONS: Code for dealing with exceptions appears in exceptions.c. The C language doesn't include exception handling, Modified: user/attilio/vmcontention/bin/sh/eval.c ============================================================================== --- user/attilio/vmcontention/bin/sh/eval.c Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/eval.c Sun Aug 4 16:10:09 2013 (r253928) @@ -76,7 +76,7 @@ __FBSDID("$FreeBSD$"); int evalskip; /* set if we are skipping commands */ int skipcount; /* number of levels to skip */ -MKINIT int loopnest; /* current loop nesting level */ +static int loopnest; /* current loop nesting level */ int funcnest; /* depth of function calls */ static int builtin_flags; /* evalcommand flags for builtins */ @@ -104,16 +104,13 @@ static void prehash(union node *); * Called to reset things after an exception. */ -#ifdef mkinit -INCLUDE "eval.h" - -RESET { +void +reseteval(void) +{ evalskip = 0; loopnest = 0; funcnest = 0; } -#endif - /* Modified: user/attilio/vmcontention/bin/sh/eval.h ============================================================================== --- user/attilio/vmcontention/bin/sh/eval.h Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/eval.h Sun Aug 4 16:10:09 2013 (r253928) @@ -46,6 +46,8 @@ struct backcmd { /* result of evalbackc struct job *jp; /* job structure for command */ }; +void reseteval(void); + /* flags in argument to evaltree/evalstring */ #define EV_EXIT 01 /* exit after evaluating tree */ #define EV_TESTED 02 /* exit status is checked; ignore -e flag */ Modified: user/attilio/vmcontention/bin/sh/exec.c ============================================================================== --- user/attilio/vmcontention/bin/sh/exec.c Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/exec.c Sun Aug 4 16:10:09 2013 (r253928) @@ -70,7 +70,6 @@ __FBSDID("$FreeBSD$"); #include "syntax.h" #include "memalloc.h" #include "error.h" -#include "init.h" #include "mystring.h" #include "show.h" #include "jobs.h" Modified: user/attilio/vmcontention/bin/sh/input.c ============================================================================== --- user/attilio/vmcontention/bin/sh/input.c Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/input.c Sun Aug 4 16:10:09 2013 (r253928) @@ -92,7 +92,7 @@ struct parsefile { int plinno = 1; /* input line number */ int parsenleft; /* copy of parsefile->nleft */ -MKINIT int parselleft; /* copy of parsefile->lleft */ +static int parselleft; /* copy of parsefile->lleft */ const char *parsenextc; /* copy of parsefile->nextc */ static char basebuf[BUFSIZ + 1];/* buffer for top level input file */ static struct parsefile basepf = { /* top level input file */ @@ -108,15 +108,12 @@ static void pushfile(void); static int preadfd(void); static void popstring(void); -#ifdef mkinit -INCLUDE "input.h" -INCLUDE "error.h" - -RESET { +void +resetinput(void) +{ popallfiles(); parselleft = parsenleft = 0; /* clear input buffer */ } -#endif /* Modified: user/attilio/vmcontention/bin/sh/input.h ============================================================================== --- user/attilio/vmcontention/bin/sh/input.h Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/input.h Sun Aug 4 16:10:09 2013 (r253928) @@ -47,6 +47,7 @@ extern const char *parsenextc; /* next c struct alias; struct parsefile; +void resetinput(void); char *pfgets(char *, int); int pgetc(void); int preadbuffer(void); Modified: user/attilio/vmcontention/bin/sh/jobs.c ============================================================================== --- user/attilio/vmcontention/bin/sh/jobs.c Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/jobs.c Sun Aug 4 16:10:09 2013 (r253928) @@ -77,8 +77,8 @@ __FBSDID("$FreeBSD$"); static struct job *jobtab; /* array of jobs */ static int njobs; /* size of array */ -MKINIT pid_t backgndpid = -1; /* pid of last background process */ -MKINIT struct job *bgjob = NULL; /* last background process */ +static pid_t backgndpid = -1; /* pid of last background process */ +static struct job *bgjob = NULL; /* last background process */ #if JOBS static struct job *jobmru; /* most recently used job list */ static pid_t initialpgrp; /* pgrp of shell on invocation */ @@ -116,7 +116,7 @@ static void showjob(struct job *, int); * Turn job control on and off. */ -MKINIT int jobctl; +static int jobctl; #if JOBS void Modified: user/attilio/vmcontention/bin/sh/main.c ============================================================================== --- user/attilio/vmcontention/bin/sh/main.c Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/main.c Sun Aug 4 16:10:09 2013 (r253928) @@ -68,10 +68,10 @@ __FBSDID("$FreeBSD$"); #include "show.h" #include "memalloc.h" #include "error.h" -#include "init.h" #include "mystring.h" #include "exec.h" #include "cd.h" +#include "redir.h" #include "builtins.h" int rootpid; @@ -79,6 +79,7 @@ int rootshell; struct jmploc main_handler; int localeisutf8, initial_localeisutf8; +static void reset(void); static void cmdloop(int); static void read_profile(const char *); static char *find_dot_file(char *); @@ -179,6 +180,14 @@ state4: return 0; } +static void +reset(void) +{ + reseteval(); + resetinput(); + resetparser(); + resetredir(); +} /* * Read and execute commands. "Top" is nonzero for the top level command Modified: user/attilio/vmcontention/bin/sh/output.c ============================================================================== --- user/attilio/vmcontention/bin/sh/output.c Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/output.c Sun Aug 4 16:10:09 2013 (r253928) @@ -75,25 +75,6 @@ struct output memout = {NULL, 0, NULL, 0 struct output *out1 = &output; struct output *out2 = &errout; - - -#ifdef mkinit - -INCLUDE "output.h" -INCLUDE "memalloc.h" - -RESET { - out1 = &output; - out2 = &errout; - if (memout.buf != NULL) { - ckfree(memout.buf); - memout.buf = NULL; - } -} - -#endif - - void outcslow(int c, struct output *file) { Modified: user/attilio/vmcontention/bin/sh/parser.c ============================================================================== --- user/attilio/vmcontention/bin/sh/parser.c Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/parser.c Sun Aug 4 16:10:09 2013 (r253928) @@ -96,9 +96,9 @@ static struct heredoc *heredoclist; /* l static int doprompt; /* if set, prompt the user */ static int needprompt; /* true if interactive and at start of line */ static int lasttoken; /* last token read */ -MKINIT int tokpushback; /* last token pushed back */ +int tokpushback; /* last token pushed back */ static char *wordtext; /* text of last word returned by readtoken */ -MKINIT int checkkwd; /* 1 == check for kwds, 2 == also eat newlines */ +static int checkkwd; static struct nodelist *backquotelist; static union node *redirnode; static struct heredoc *heredoc; @@ -1819,13 +1819,13 @@ parsearith: { } /* end of readtoken */ - -#ifdef mkinit -RESET { +void +resetparser(void) +{ tokpushback = 0; checkkwd = 0; } -#endif + /* * Returns true if the text contains nothing to expand (no dollar signs Modified: user/attilio/vmcontention/bin/sh/parser.h ============================================================================== --- user/attilio/vmcontention/bin/sh/parser.h Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/parser.h Sun Aug 4 16:10:09 2013 (r253928) @@ -79,6 +79,7 @@ extern const char *const parsekwd[]; union node *parsecmd(int); void fixredir(union node *, const char *, int); +void resetparser(void); int goodname(const char *); int isassignment(const char *); char *getprompt(void *); Modified: user/attilio/vmcontention/bin/sh/redir.c ============================================================================== --- user/attilio/vmcontention/bin/sh/redir.c Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/redir.c Sun Aug 4 16:10:09 2013 (r253928) @@ -66,14 +66,13 @@ __FBSDID("$FreeBSD$"); #define CLOSED -1 /* fd was not open before redir */ -MKINIT struct redirtab { struct redirtab *next; int renamed[10]; }; -MKINIT struct redirtab *redirlist; +static struct redirtab *redirlist; /* * We keep track of whether or not fd0 has been redirected. This is for @@ -324,16 +323,13 @@ popredir(void) * Undo all redirections. Called on error or interrupt. */ -#ifdef mkinit - -INCLUDE "redir.h" - -RESET { +void +resetredir(void) +{ while (redirlist) popredir(); } -#endif /* Return true if fd 0 has already been redirected at least once. */ int Modified: user/attilio/vmcontention/bin/sh/redir.h ============================================================================== --- user/attilio/vmcontention/bin/sh/redir.h Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/redir.h Sun Aug 4 16:10:09 2013 (r253928) @@ -40,6 +40,7 @@ union node; void redirect(union node *, int); void popredir(void); +void resetredir(void); int fd0_redirected_p(void); void clearredir(void); Modified: user/attilio/vmcontention/bin/sh/shell.h ============================================================================== --- user/attilio/vmcontention/bin/sh/shell.h Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/shell.h Sun Aug 4 16:10:09 2013 (r253928) @@ -63,7 +63,6 @@ typedef intmax_t arith_t; #define ARITH_MAX INTMAX_MAX typedef void *pointer; -#define MKINIT /* empty */ #include Modified: user/attilio/vmcontention/bin/sh/trap.c ============================================================================== --- user/attilio/vmcontention/bin/sh/trap.c Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/bin/sh/trap.c Sun Aug 4 16:10:09 2013 (r253928) @@ -72,7 +72,7 @@ __FBSDID("$FreeBSD$"); #define S_RESET 5 /* temporary - to reset a hard ignored sig */ -MKINIT char sigmode[NSIG]; /* current value of signal */ +static char sigmode[NSIG]; /* current value of signal */ volatile sig_atomic_t pendingsig; /* indicates some signal received */ int in_dotrap; /* do we execute in a trap handler? */ static char *volatile trap[NSIG]; /* trap handler commands */ Modified: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts/dtest.pl ============================================================================== --- user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts/dtest.pl Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts/dtest.pl Sun Aug 4 16:10:09 2013 (r253928) @@ -583,6 +583,8 @@ if ($opt_x) { die "$PNAME: failed to open $PNAME.$$.log: $!\n" unless (!$opt_l || open(LOG, ">$PNAME.$$.log")); +$ENV{'DTRACE_DEBUG_REGSET'} = 'true'; + if ($opt_g) { $ENV{'UMEM_DEBUG'} = 'default,verbose'; $ENV{'UMEM_LOGGING'} = 'fail,contents'; Copied: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d (from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d Sun Aug 4 16:10:09 2013 (r253928, copy of r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d) @@ -0,0 +1,35 @@ +/* + * CDDL HEADER START + * + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + +#pragma D option quiet + +/* + * Make sure the sizes of compatible keys doesn't affect the sort order. + */ + +BEGIN +{ + @[(int)1, 0] = sum(10); + @[(uint64_t)2, 0] = sum(20); + @[(int)3, 0] = sum(30); + @[(uint64_t)4, 0] = sum(40); + printa(@); + + exit(0); +} Copied: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out (from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out Sun Aug 4 16:10:09 2013 (r253928, copy of r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out) @@ -0,0 +1,6 @@ + + 1 0 10 + 2 0 20 + 3 0 30 + 4 0 40 + Copied: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out (from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out Sun Aug 4 16:10:09 2013 (r253928, copy of r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out) @@ -0,0 +1,8 @@ +The value of i is 6 +The value of i is 18 +The value of i is 72 +The value of i is 25920 +The value of i is 935761216 +The value of i is -91738734 +The value of i is -91738729 + Copied: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d (from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d Sun Aug 4 16:10:09 2013 (r253928, copy of r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d) @@ -0,0 +1,50 @@ +/* + * CDDL HEADER START + * + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + +/* + * Test compile-time casting between integer types of different size. + */ + +#pragma D option quiet + +int64_t x; + +BEGIN +{ + x = (int32_t)(int16_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (int32_t)(uint16_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (uint32_t)(int16_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (uint32_t)(uint16_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + printf("\n"); + + x = (int16_t)(int32_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (int16_t)(uint32_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (uint16_t)(int32_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (uint16_t)(uint32_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + + exit(0); +} Copied: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out (from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out Sun Aug 4 16:10:09 2013 (r253928, copy of r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out) @@ -0,0 +1,10 @@ +fffffffffffffff0 -16 18446744073709551600 + fff0 65520 65520 + fffffff0 4294967280 4294967280 + fff0 65520 65520 + +fffffffffffffff0 -16 18446744073709551600 +fffffffffffffff0 -16 18446744073709551600 + fff0 65520 65520 + fff0 65520 65520 + Copied: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d (from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d Sun Aug 4 16:10:09 2013 (r253928, copy of r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d) @@ -0,0 +1,36 @@ +/* + * CDDL HEADER START + * + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + +/* + * Test narrowing at assignment. + */ + +#pragma D option quiet + +uint16_t x; +uint32_t y; + +BEGIN +{ + x = 0xbeefcafe; + y = x; + printf("%x", y); /* where's the beef? */ + + exit(0); +} Copied: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out (from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out Sun Aug 4 16:10:09 2013 (r253928, copy of r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out) @@ -0,0 +1 @@ +cafe Copied: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d (from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d Sun Aug 4 16:10:09 2013 (r253928, copy of r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d) @@ -0,0 +1,52 @@ +/* + * CDDL HEADER START + * + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + +/* + * Test execution-time casting between integer types of different size. + */ + +#pragma D option quiet + +int64_t x; + +BEGIN +{ + z = 0xfff0; + + x = (int32_t)(int16_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (int32_t)(uint16_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (uint32_t)(int16_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (uint32_t)(uint16_t)z; + printf("%16x %20d %20u\n", x, x, x); + printf("\n"); + + x = (int16_t)(int32_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (int16_t)(uint32_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (uint16_t)(int32_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (uint16_t)(uint32_t)z; + printf("%16x %20d %20u\n", x, x, x); + + exit(0); +} Copied: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out (from r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out Sun Aug 4 16:10:09 2013 (r253928, copy of r253927, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out) @@ -0,0 +1,10 @@ +fffffffffffffff0 -16 18446744073709551600 + fff0 65520 65520 + fffffff0 4294967280 4294967280 + fff0 65520 65520 + +fffffffffffffff0 -16 18446744073709551600 +fffffffffffffff0 -16 18446744073709551600 + fff0 65520 65520 + fff0 65520 65520 + Modified: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionentry.d ============================================================================== --- user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionentry.d Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionentry.d Sun Aug 4 16:10:09 2013 (r253928) @@ -36,12 +36,12 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:entry +fbt::kern_ioctl:entry { printf("Entering the ioctl function\n"); } -fbt::ioctl:return +fbt::kern_ioctl:return { printf("Returning from ioctl function\n"); exit(0); Modified: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionreturnvalue.d ============================================================================== --- user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionreturnvalue.d Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionreturnvalue.d Sun Aug 4 16:10:09 2013 (r253928) @@ -36,7 +36,7 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:return +fbt::kern_ioctl:return { printf("The function return value is stored in %u\n", arg1); exit(0); Modified: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.ioctlargs.d ============================================================================== --- user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.ioctlargs.d Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.ioctlargs.d Sun Aug 4 16:10:09 2013 (r253928) @@ -36,13 +36,13 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:entry +fbt::kern_ioctl:entry { printf("Entering the ioctl function\n"); printf("The few arguments are %u %u %u %u\n", arg0, arg1, arg2, arg3); } -fbt::ioctl:return +fbt::kern_ioctl:return { printf("Returning from ioctl function\n"); printf("The few arguments are %u %u %u %u\n", arg0, arg1, arg2, arg3); Modified: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offset.d ============================================================================== --- user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offset.d Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offset.d Sun Aug 4 16:10:09 2013 (r253928) @@ -41,12 +41,12 @@ BEGIN self->traceme = 1; } -fbt::ioctl:entry +fbt::kern_ioctl:entry { printf("Entering the function\n"); } -fbt::ioctl:return +fbt::kern_ioctl:return { printf("The offset = %u\n", arg0); exit(0); Modified: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offsetzero.d ============================================================================== --- user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offsetzero.d Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offsetzero.d Sun Aug 4 16:10:09 2013 (r253928) @@ -36,14 +36,14 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:entry +fbt::kern_ioctl:entry { printf("Entering the ioctl function\n"); printf("The few arguments are %u %u %u %u\n", arg0, arg1, arg2, arg3); exit(0); } -fbt::ioctl:return +fbt::kern_ioctl:return { printf("Returning from ioctl function\n"); printf("The few arguments are %u %u %u %u\n", arg0, arg1, arg2, arg3); Modified: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.return0.d ============================================================================== --- user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.return0.d Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.return0.d Sun Aug 4 16:10:09 2013 (r253928) @@ -36,7 +36,7 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:return +fbt::kern_ioctl:return /arg1 == 0/ { printf("%s %x returned 0", probefunc, arg0); Modified: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.tailcall.d ============================================================================== --- user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.tailcall.d Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.tailcall.d Sun Aug 4 16:10:09 2013 (r253928) @@ -36,7 +36,7 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:entry +fbt::kern_ioctl:entry { self->traceme = 1; } @@ -47,7 +47,7 @@ fbt:::entry printf("called %s\n", probefunc); } -fbt::ioctl:return +fbt::kern_ioctl:return /self->traceme/ { self->traceme = 0; Modified: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/funcs/tst.strjoin.d ============================================================================== --- user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/funcs/tst.strjoin.d Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/funcs/tst.strjoin.d Sun Aug 4 16:10:09 2013 (r253928) @@ -24,7 +24,9 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ #pragma D option quiet @@ -36,3 +38,8 @@ BEGIN printf("%s\n", strjoin("", "")); exit(0); } + +BEGIN +{ + exit(1); +} Modified: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.BadAlign.d ============================================================================== --- user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.BadAlign.d Sun Aug 4 15:56:19 2013 (r253927) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.BadAlign.d Sun Aug 4 16:10:09 2013 (r253928) @@ -24,7 +24,9 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ /* * ASSERTION: This test reproduces the alignment error. @@ -39,9 +41,10 @@ BEGIN { - x = (int *) 64; + x = (int *)64; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-user@FreeBSD.ORG Sun Aug 4 16:23:18 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id B80C434A; Sun, 4 Aug 2013 16:23:18 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A16832E7E; Sun, 4 Aug 2013 16:23:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r74GNI5R013275; Sun, 4 Aug 2013 16:23:18 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r74GNAH0013227; Sun, 4 Aug 2013 16:23:10 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308041623.r74GNAH0013227@svn.freebsd.org> From: Attilio Rao Date: Sun, 4 Aug 2013 16:23:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253929 - in user/attilio/vmobj-readlock: . bin/sh cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs cddl/contrib/opensolaris... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 16:23:18 -0000 Author: attilio Date: Sun Aug 4 16:23:09 2013 New Revision: 253929 URL: http://svnweb.freebsd.org/changeset/base/253929 Log: MFC Added: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PRINT_AGG.bad.d - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PRINT_AGG.bad.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.dyn.d - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.dyn.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.xlate.d - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.xlate.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.xlate.d.out - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.xlate.d.out user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.signs.d - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.signs.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.signs.d.out - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.signs.d.out user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/err.D_TRACE_AGG.bad.d - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/err.D_TRACE_AGG.bad.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/tst.dyn.d - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/tst.dyn.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability1.ksh - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability1.ksh user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability1.ksh.out - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability1.ksh.out user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability2.ksh - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability2.ksh user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability2.ksh.out - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability2.ksh.out user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/types/tst.const.d - copied unchanged from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/types/tst.const.d user/attilio/vmobj-readlock/contrib/apr-util/crypto/apr_passwd.c - copied unchanged from r253928, user/attilio/vmcontention/contrib/apr-util/crypto/apr_passwd.c user/attilio/vmobj-readlock/contrib/apr-util/crypto/crypt_blowfish.c - copied unchanged from r253928, user/attilio/vmcontention/contrib/apr-util/crypto/crypt_blowfish.c user/attilio/vmobj-readlock/contrib/apr-util/crypto/crypt_blowfish.h - copied unchanged from r253928, user/attilio/vmcontention/contrib/apr-util/crypto/crypt_blowfish.h user/attilio/vmobj-readlock/contrib/serf/SConstruct - copied unchanged from r253928, user/attilio/vmcontention/contrib/serf/SConstruct user/attilio/vmobj-readlock/contrib/serf/auth/auth_spnego.c - copied unchanged from r253928, user/attilio/vmcontention/contrib/serf/auth/auth_spnego.c user/attilio/vmobj-readlock/contrib/serf/auth/auth_spnego.h - copied unchanged from r253928, user/attilio/vmcontention/contrib/serf/auth/auth_spnego.h user/attilio/vmobj-readlock/contrib/serf/auth/auth_spnego_gss.c - copied unchanged from r253928, user/attilio/vmcontention/contrib/serf/auth/auth_spnego_gss.c user/attilio/vmobj-readlock/contrib/serf/auth/auth_spnego_sspi.c - copied unchanged from r253928, user/attilio/vmcontention/contrib/serf/auth/auth_spnego_sspi.c user/attilio/vmobj-readlock/contrib/serf/build/check.py - copied unchanged from r253928, user/attilio/vmcontention/contrib/serf/build/check.py user/attilio/vmobj-readlock/contrib/serf/build/serf.pc.in - copied unchanged from r253928, user/attilio/vmcontention/contrib/serf/build/serf.pc.in user/attilio/vmobj-readlock/etc/libmap.conf - copied unchanged from r253928, user/attilio/vmcontention/etc/libmap.conf user/attilio/vmobj-readlock/lib/libc++/libc++.ldscript - copied unchanged from r253928, user/attilio/vmcontention/lib/libc++/libc++.ldscript user/attilio/vmobj-readlock/lib/libusb/libusb-0.1.pc - copied unchanged from r253928, user/attilio/vmcontention/lib/libusb/libusb-0.1.pc user/attilio/vmobj-readlock/lib/libusb/libusb-1.0.pc - copied unchanged from r253928, user/attilio/vmcontention/lib/libusb/libusb-1.0.pc user/attilio/vmobj-readlock/lib/libusb/libusb-2.0.pc - copied unchanged from r253928, user/attilio/vmcontention/lib/libusb/libusb-2.0.pc user/attilio/vmobj-readlock/share/man/man4/rsu.4 - copied unchanged from r253928, user/attilio/vmcontention/share/man/man4/rsu.4 user/attilio/vmobj-readlock/share/man/man4/rsufw.4 - copied unchanged from r253928, user/attilio/vmcontention/share/man/man4/rsufw.4 user/attilio/vmobj-readlock/sys/arm/freescale/imx/files.imx51 - copied unchanged from r253928, user/attilio/vmcontention/sys/arm/freescale/imx/files.imx51 user/attilio/vmobj-readlock/sys/arm/freescale/imx/std.imx51 - copied unchanged from r253928, user/attilio/vmcontention/sys/arm/freescale/imx/std.imx51 user/attilio/vmobj-readlock/sys/contrib/dev/rsu/ - copied from r253928, user/attilio/vmcontention/sys/contrib/dev/rsu/ user/attilio/vmobj-readlock/sys/dev/cxgbe/t4_tracer.c - copied unchanged from r253928, user/attilio/vmcontention/sys/dev/cxgbe/t4_tracer.c user/attilio/vmobj-readlock/sys/dev/iwn/if_iwn_devid.h - copied unchanged from r253928, user/attilio/vmcontention/sys/dev/iwn/if_iwn_devid.h user/attilio/vmobj-readlock/sys/dev/usb/wlan/if_rsu.c - copied unchanged from r253928, user/attilio/vmcontention/sys/dev/usb/wlan/if_rsu.c user/attilio/vmobj-readlock/sys/dev/usb/wlan/if_rsureg.h - copied unchanged from r253928, user/attilio/vmcontention/sys/dev/usb/wlan/if_rsureg.h user/attilio/vmobj-readlock/sys/dev/wi/if_wi_macio.c - copied unchanged from r253928, user/attilio/vmcontention/sys/dev/wi/if_wi_macio.c user/attilio/vmobj-readlock/sys/libkern/flsll.c - copied unchanged from r253928, user/attilio/vmcontention/sys/libkern/flsll.c user/attilio/vmobj-readlock/sys/modules/usb/rsu/ - copied from r253928, user/attilio/vmcontention/sys/modules/usb/rsu/ user/attilio/vmobj-readlock/sys/modules/usb/rsufw/ - copied from r253928, user/attilio/vmcontention/sys/modules/usb/rsufw/ user/attilio/vmobj-readlock/sys/modules/usb/runfw/ - copied from r253928, user/attilio/vmcontention/sys/modules/usb/runfw/ user/attilio/vmobj-readlock/tools/build/options/WITH_GNU_PATCH - copied unchanged from r253928, user/attilio/vmcontention/tools/build/options/WITH_GNU_PATCH Deleted: user/attilio/vmobj-readlock/bin/sh/init.h user/attilio/vmobj-readlock/bin/sh/mkinit.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.complex.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PRINT_DYN.bad.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/man.TestTransStability.d user/attilio/vmobj-readlock/contrib/apr-util/aprutil.dsp user/attilio/vmobj-readlock/contrib/apr-util/crypto/apr_crypto_nss.dsp user/attilio/vmobj-readlock/contrib/apr-util/crypto/apr_crypto_openssl.dsp user/attilio/vmobj-readlock/contrib/apr-util/dbd/apr_dbd_freetds.dsp user/attilio/vmobj-readlock/contrib/apr-util/dbd/apr_dbd_mysql.dsp user/attilio/vmobj-readlock/contrib/apr-util/dbd/apr_dbd_odbc.dsp user/attilio/vmobj-readlock/contrib/apr-util/dbd/apr_dbd_oracle.dsp user/attilio/vmobj-readlock/contrib/apr-util/dbd/apr_dbd_pgsql.dsp user/attilio/vmobj-readlock/contrib/apr-util/dbd/apr_dbd_sqlite2.dsp user/attilio/vmobj-readlock/contrib/apr-util/dbd/apr_dbd_sqlite3.dsp user/attilio/vmobj-readlock/contrib/apr-util/dbm/apr_dbm_db.dsp user/attilio/vmobj-readlock/contrib/apr-util/dbm/apr_dbm_gdbm.dsp user/attilio/vmobj-readlock/contrib/apr-util/ldap/apr_ldap.dsp user/attilio/vmobj-readlock/contrib/apr-util/libaprutil.dsp user/attilio/vmobj-readlock/contrib/apr-util/test/testutildll.dsp user/attilio/vmobj-readlock/contrib/apr-util/test/testutillib.dsp user/attilio/vmobj-readlock/contrib/serf/Makefile.in user/attilio/vmobj-readlock/contrib/serf/auth/auth_kerb.c user/attilio/vmobj-readlock/contrib/serf/auth/auth_kerb.h user/attilio/vmobj-readlock/contrib/serf/auth/auth_kerb_gss.c user/attilio/vmobj-readlock/contrib/serf/auth/auth_kerb_sspi.c user/attilio/vmobj-readlock/contrib/serf/build/apr_common.m4 user/attilio/vmobj-readlock/contrib/serf/build/config.guess user/attilio/vmobj-readlock/contrib/serf/build/config.sub user/attilio/vmobj-readlock/contrib/serf/build/find_apr.m4 user/attilio/vmobj-readlock/contrib/serf/build/find_apu.m4 user/attilio/vmobj-readlock/contrib/serf/build/get-version.sh user/attilio/vmobj-readlock/contrib/serf/build/install.sh user/attilio/vmobj-readlock/contrib/serf/build/serf.def user/attilio/vmobj-readlock/contrib/serf/buildconf user/attilio/vmobj-readlock/contrib/serf/config.layout user/attilio/vmobj-readlock/contrib/serf/configure user/attilio/vmobj-readlock/contrib/serf/configure.in user/attilio/vmobj-readlock/contrib/serf/serf.mak user/attilio/vmobj-readlock/contrib/serf/serf.pc.in user/attilio/vmobj-readlock/contrib/serf/serfmake user/attilio/vmobj-readlock/sys/arm/freescale/imx/imx.files user/attilio/vmobj-readlock/sys/arm/freescale/imx/std.imx user/attilio/vmobj-readlock/sys/modules/runfw/ user/attilio/vmobj-readlock/tools/build/options/WITH_BSD_PATCH Modified: user/attilio/vmobj-readlock/MAINTAINERS (contents, props changed) user/attilio/vmobj-readlock/Makefile user/attilio/vmobj-readlock/Makefile.inc1 user/attilio/vmobj-readlock/UPDATING user/attilio/vmobj-readlock/bin/sh/Makefile user/attilio/vmobj-readlock/bin/sh/TOUR user/attilio/vmobj-readlock/bin/sh/eval.c user/attilio/vmobj-readlock/bin/sh/eval.h user/attilio/vmobj-readlock/bin/sh/exec.c user/attilio/vmobj-readlock/bin/sh/input.c user/attilio/vmobj-readlock/bin/sh/input.h user/attilio/vmobj-readlock/bin/sh/jobs.c user/attilio/vmobj-readlock/bin/sh/main.c user/attilio/vmobj-readlock/bin/sh/output.c user/attilio/vmobj-readlock/bin/sh/parser.c user/attilio/vmobj-readlock/bin/sh/parser.h user/attilio/vmobj-readlock/bin/sh/redir.c user/attilio/vmobj-readlock/bin/sh/redir.h user/attilio/vmobj-readlock/bin/sh/shell.h user/attilio/vmobj-readlock/bin/sh/trap.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts/dtest.pl user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionentry.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionreturnvalue.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.ioctlargs.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offset.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offsetzero.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.return0.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.tailcall.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/funcs/tst.strjoin.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.BadAlign.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.InvalidAddress2.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.InvalidAddress3.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.InvalidAddress4.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PRINT_VOID.bad.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PROTO_LEN.bad.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.ints.d.out user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/safety/tst.copyin.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/speculation/err.BufSizeVariations2.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/err.D_PROTO_LEN.bad.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/err.D_TRACE_VOID.bad.d user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_aggregate.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_cc.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_cg.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_decl.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_error.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_errtags.h user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_impl.h user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_parser.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_printf.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_subr.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/i386/dt_isadep.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/tools/ctf/cvt/ctf.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/tools/ctf/cvt/ctftools.h user/attilio/vmobj-readlock/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/tools/ctf/cvt/st_parse.c user/attilio/vmobj-readlock/contrib/apr-util/CHANGES user/attilio/vmobj-readlock/contrib/apr-util/Makefile.win user/attilio/vmobj-readlock/contrib/apr-util/NWGNUmakefile user/attilio/vmobj-readlock/contrib/apr-util/apr-util.spec user/attilio/vmobj-readlock/contrib/apr-util/buckets/apr_brigade.c user/attilio/vmobj-readlock/contrib/apr-util/buckets/apr_buckets_alloc.c user/attilio/vmobj-readlock/contrib/apr-util/build-outputs.mk user/attilio/vmobj-readlock/contrib/apr-util/build.conf user/attilio/vmobj-readlock/contrib/apr-util/configure user/attilio/vmobj-readlock/contrib/apr-util/configure.in user/attilio/vmobj-readlock/contrib/apr-util/crypto/apr_crypto.c user/attilio/vmobj-readlock/contrib/apr-util/crypto/apr_crypto_nss.c user/attilio/vmobj-readlock/contrib/apr-util/crypto/apr_crypto_openssl.c user/attilio/vmobj-readlock/contrib/apr-util/crypto/apr_md5.c user/attilio/vmobj-readlock/contrib/apr-util/dbd/NWGNUdbdmysql user/attilio/vmobj-readlock/contrib/apr-util/dbd/apr_dbd_freetds.c user/attilio/vmobj-readlock/contrib/apr-util/dbd/apr_dbd_mysql.c user/attilio/vmobj-readlock/contrib/apr-util/dbd/apr_dbd_pgsql.c user/attilio/vmobj-readlock/contrib/apr-util/dbd/apr_dbd_sqlite2.c user/attilio/vmobj-readlock/contrib/apr-util/hooks/apr_hooks.c user/attilio/vmobj-readlock/contrib/apr-util/include/apr_base64.h user/attilio/vmobj-readlock/contrib/apr-util/include/apr_buckets.h user/attilio/vmobj-readlock/contrib/apr-util/include/apr_md5.h user/attilio/vmobj-readlock/contrib/apr-util/include/apr_queue.h user/attilio/vmobj-readlock/contrib/apr-util/include/apu.h.in user/attilio/vmobj-readlock/contrib/apr-util/include/apu_version.h user/attilio/vmobj-readlock/contrib/apr-util/include/private/apr_crypto_internal.h user/attilio/vmobj-readlock/contrib/apr-util/memcache/apr_memcache.c user/attilio/vmobj-readlock/contrib/apr-util/misc/apr_thread_pool.c user/attilio/vmobj-readlock/contrib/apr-util/test/Makefile.in user/attilio/vmobj-readlock/contrib/apr-util/test/Makefile.win user/attilio/vmobj-readlock/contrib/apr-util/test/NWGNUmakefile user/attilio/vmobj-readlock/contrib/apr-util/test/testbuckets.c user/attilio/vmobj-readlock/contrib/apr-util/test/testmd5.c user/attilio/vmobj-readlock/contrib/apr-util/test/testmemcache.c user/attilio/vmobj-readlock/contrib/apr-util/test/testpass.c user/attilio/vmobj-readlock/contrib/apr-util/test/testuri.c user/attilio/vmobj-readlock/contrib/apr-util/test/testutil.c user/attilio/vmobj-readlock/contrib/apr-util/test/testutil.h user/attilio/vmobj-readlock/contrib/apr-util/uri/apr_uri.c user/attilio/vmobj-readlock/contrib/apr/CHANGES user/attilio/vmobj-readlock/contrib/apr/Makefile.win user/attilio/vmobj-readlock/contrib/apr/apr.spec user/attilio/vmobj-readlock/contrib/apr/atomic/unix/ia32.c user/attilio/vmobj-readlock/contrib/apr/atomic/unix/ppc.c user/attilio/vmobj-readlock/contrib/apr/atomic/unix/s390.c user/attilio/vmobj-readlock/contrib/apr/configure user/attilio/vmobj-readlock/contrib/apr/docs/pool-design.html user/attilio/vmobj-readlock/contrib/apr/file_io/unix/seek.c user/attilio/vmobj-readlock/contrib/apr/include/apr.hw user/attilio/vmobj-readlock/contrib/apr/include/apr_allocator.h user/attilio/vmobj-readlock/contrib/apr/include/apr_general.h user/attilio/vmobj-readlock/contrib/apr/include/apr_network_io.h user/attilio/vmobj-readlock/contrib/apr/include/apr_pools.h user/attilio/vmobj-readlock/contrib/apr/include/apr_strings.h user/attilio/vmobj-readlock/contrib/apr/include/apr_thread_proc.h user/attilio/vmobj-readlock/contrib/apr/include/apr_version.h user/attilio/vmobj-readlock/contrib/apr/libapr.rc user/attilio/vmobj-readlock/contrib/apr/network_io/unix/multicast.c user/attilio/vmobj-readlock/contrib/apr/network_io/unix/sendrecv.c user/attilio/vmobj-readlock/contrib/apr/network_io/unix/sockaddr.c user/attilio/vmobj-readlock/contrib/apr/network_io/unix/sockopt.c user/attilio/vmobj-readlock/contrib/apr/random/unix/sha2.c user/attilio/vmobj-readlock/contrib/apr/random/unix/sha2.h user/attilio/vmobj-readlock/contrib/apr/random/unix/sha2_glue.c user/attilio/vmobj-readlock/contrib/apr/tables/apr_tables.c user/attilio/vmobj-readlock/contrib/apr/threadproc/unix/thread.c user/attilio/vmobj-readlock/contrib/bind9/lib/dns/rdata/generic/keydata_65533.c user/attilio/vmobj-readlock/contrib/binutils/ld/ldmain.c user/attilio/vmobj-readlock/contrib/bmake/ChangeLog user/attilio/vmobj-readlock/contrib/bmake/Makefile user/attilio/vmobj-readlock/contrib/bmake/bmake.1 user/attilio/vmobj-readlock/contrib/bmake/bmake.cat1 user/attilio/vmobj-readlock/contrib/bmake/compat.c user/attilio/vmobj-readlock/contrib/bmake/configure user/attilio/vmobj-readlock/contrib/bmake/configure.in user/attilio/vmobj-readlock/contrib/bmake/job.c user/attilio/vmobj-readlock/contrib/bmake/job.h user/attilio/vmobj-readlock/contrib/bmake/main.c user/attilio/vmobj-readlock/contrib/bmake/make.1 user/attilio/vmobj-readlock/contrib/bmake/make.h user/attilio/vmobj-readlock/contrib/bmake/meta.c user/attilio/vmobj-readlock/contrib/bmake/mk/ChangeLog user/attilio/vmobj-readlock/contrib/bmake/mk/init.mk user/attilio/vmobj-readlock/contrib/bmake/mk/install-mk user/attilio/vmobj-readlock/contrib/bmake/mk/lib.mk user/attilio/vmobj-readlock/contrib/bmake/mk/meta2deps.py user/attilio/vmobj-readlock/contrib/bmake/mk/own.mk user/attilio/vmobj-readlock/contrib/bmake/mk/prog.mk user/attilio/vmobj-readlock/contrib/bmake/parse.c user/attilio/vmobj-readlock/contrib/bmake/unit-tests/Makefile.in user/attilio/vmobj-readlock/contrib/bmake/var.c user/attilio/vmobj-readlock/contrib/llvm/tools/clang/lib/Headers/cpuid.h user/attilio/vmobj-readlock/contrib/serf/CHANGES user/attilio/vmobj-readlock/contrib/serf/README user/attilio/vmobj-readlock/contrib/serf/auth/auth.c user/attilio/vmobj-readlock/contrib/serf/auth/auth.h user/attilio/vmobj-readlock/contrib/serf/auth/auth_basic.c user/attilio/vmobj-readlock/contrib/serf/auth/auth_digest.c user/attilio/vmobj-readlock/contrib/serf/buckets/aggregate_buckets.c user/attilio/vmobj-readlock/contrib/serf/buckets/buckets.c user/attilio/vmobj-readlock/contrib/serf/buckets/dechunk_buckets.c user/attilio/vmobj-readlock/contrib/serf/buckets/headers_buckets.c user/attilio/vmobj-readlock/contrib/serf/buckets/limit_buckets.c user/attilio/vmobj-readlock/contrib/serf/buckets/request_buckets.c user/attilio/vmobj-readlock/contrib/serf/buckets/response_buckets.c user/attilio/vmobj-readlock/contrib/serf/buckets/simple_buckets.c user/attilio/vmobj-readlock/contrib/serf/buckets/ssl_buckets.c user/attilio/vmobj-readlock/contrib/serf/build/gen_def.py user/attilio/vmobj-readlock/contrib/serf/context.c user/attilio/vmobj-readlock/contrib/serf/incoming.c user/attilio/vmobj-readlock/contrib/serf/outgoing.c user/attilio/vmobj-readlock/contrib/serf/serf.h user/attilio/vmobj-readlock/contrib/serf/serf_bucket_types.h user/attilio/vmobj-readlock/contrib/serf/serf_bucket_util.h user/attilio/vmobj-readlock/contrib/serf/serf_private.h user/attilio/vmobj-readlock/contrib/serf/ssltunnel.c user/attilio/vmobj-readlock/contrib/subversion/CHANGES user/attilio/vmobj-readlock/contrib/subversion/Makefile.in user/attilio/vmobj-readlock/contrib/subversion/build-outputs.mk user/attilio/vmobj-readlock/contrib/subversion/configure user/attilio/vmobj-readlock/contrib/subversion/configure.ac user/attilio/vmobj-readlock/contrib/subversion/get-deps.sh user/attilio/vmobj-readlock/contrib/subversion/subversion/include/private/svn_client_private.h user/attilio/vmobj-readlock/contrib/subversion/subversion/include/private/svn_io_private.h user/attilio/vmobj-readlock/contrib/subversion/subversion/include/private/svn_ra_private.h user/attilio/vmobj-readlock/contrib/subversion/subversion/include/svn_version.h user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_client/client.h user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_client/commit.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_client/copy.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_client/diff.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_client/diff_local.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_client/log.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_client/merge.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_client/mergeinfo.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_client/ra.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_client/switch.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_delta/compat.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_fs_base/bdb/env.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_fs_base/tree.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_fs_fs/fs_fs.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_fs_fs/rep-cache-db.h user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_fs_fs/tree.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra/ra_loader.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra/util.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/blame.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/commit.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/getdate.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/getlocations.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/getlocationsegments.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/getlocks.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/inherited_props.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/log.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/mergeinfo.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/options.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/property.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/ra_serf.h user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/replay.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/serf.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/update.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/util.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_serf/xml.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_svn/client.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_ra_svn/protocol user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_repos/fs-wrap.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_subr/config_file.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_subr/gpg_agent.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_subr/internal_statements.h user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_subr/io.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_subr/named_atomic.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_subr/sqlite.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_subr/stream.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_subr/subst.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_subr/utf.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/adm_ops.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/crop.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/externals.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/update_editor.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/upgrade.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/wc-checks.h user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/wc-metadata.h user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/wc-queries.h user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/wc-queries.sql user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/wc_db.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/wc_db.h user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/wc_db_update_move.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/wc_db_wcroot.c user/attilio/vmobj-readlock/contrib/subversion/subversion/libsvn_wc/workqueue.c user/attilio/vmobj-readlock/contrib/subversion/subversion/svn/cl.h user/attilio/vmobj-readlock/contrib/subversion/subversion/svn/conflict-callbacks.c user/attilio/vmobj-readlock/contrib/subversion/subversion/svn/file-merge.c user/attilio/vmobj-readlock/contrib/subversion/subversion/svn/merge-cmd.c user/attilio/vmobj-readlock/contrib/subversion/subversion/svn/mergeinfo-cmd.c user/attilio/vmobj-readlock/contrib/subversion/subversion/svn/svn.c user/attilio/vmobj-readlock/contrib/subversion/subversion/svn/util.c user/attilio/vmobj-readlock/contrib/subversion/subversion/svnadmin/svnadmin.c user/attilio/vmobj-readlock/contrib/subversion/subversion/svnlook/svnlook.c user/attilio/vmobj-readlock/contrib/subversion/subversion/svnserve/serve.c user/attilio/vmobj-readlock/contrib/subversion/win-tests.py user/attilio/vmobj-readlock/contrib/tcpdump/tcpdump.c user/attilio/vmobj-readlock/etc/Makefile user/attilio/vmobj-readlock/etc/devd/usb.conf user/attilio/vmobj-readlock/etc/mtree/BSD.usr.dist user/attilio/vmobj-readlock/etc/network.subr user/attilio/vmobj-readlock/etc/rc.d/netif user/attilio/vmobj-readlock/gnu/usr.bin/patch/Makefile user/attilio/vmobj-readlock/lib/libc++/Makefile user/attilio/vmobj-readlock/lib/libc/gen/sysctl.3 user/attilio/vmobj-readlock/lib/libc/gen/wordexp.c user/attilio/vmobj-readlock/lib/libc/sys/kqueue.2 user/attilio/vmobj-readlock/lib/libfetch/common.c user/attilio/vmobj-readlock/lib/libfetch/common.h user/attilio/vmobj-readlock/lib/libfetch/fetch.3 user/attilio/vmobj-readlock/lib/libfetch/http.c user/attilio/vmobj-readlock/lib/libusb/Makefile user/attilio/vmobj-readlock/lib/msun/src/math.h user/attilio/vmobj-readlock/release/ia64/mkisoimages.sh user/attilio/vmobj-readlock/release/sparc64/mkisoimages.sh user/attilio/vmobj-readlock/sbin/fsck_ffs/fsck.h user/attilio/vmobj-readlock/sbin/fsck_ffs/fsck_ffs.8 user/attilio/vmobj-readlock/sbin/fsck_ffs/fsutil.c user/attilio/vmobj-readlock/sbin/fsck_ffs/main.c user/attilio/vmobj-readlock/sbin/ipfw/ipfw.8 user/attilio/vmobj-readlock/sbin/mdconfig/mdconfig.c user/attilio/vmobj-readlock/sbin/route/route.c user/attilio/vmobj-readlock/sbin/swapon/swapon.c user/attilio/vmobj-readlock/share/man/man4/Makefile user/attilio/vmobj-readlock/share/man/man4/bridge.4 user/attilio/vmobj-readlock/share/man/man5/rc.conf.5 user/attilio/vmobj-readlock/share/man/man9/Makefile user/attilio/vmobj-readlock/share/man/man9/microuptime.9 user/attilio/vmobj-readlock/share/mk/bsd.own.mk user/attilio/vmobj-readlock/sys/amd64/amd64/identcpu.c user/attilio/vmobj-readlock/sys/amd64/amd64/initcpu.c user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c user/attilio/vmobj-readlock/sys/amd64/amd64/sys_machdep.c user/attilio/vmobj-readlock/sys/amd64/include/md_var.h user/attilio/vmobj-readlock/sys/amd64/vmm/intel/vmx.c user/attilio/vmobj-readlock/sys/amd64/vmm/vmm.c user/attilio/vmobj-readlock/sys/amd64/vmm/vmm_instruction_emul.c user/attilio/vmobj-readlock/sys/arm/arm/busdma_machdep-v6.c user/attilio/vmobj-readlock/sys/arm/arm/cpufunc.c user/attilio/vmobj-readlock/sys/arm/arm/gic.c user/attilio/vmobj-readlock/sys/arm/arm/identcpu.c user/attilio/vmobj-readlock/sys/arm/arm/pl310.c user/attilio/vmobj-readlock/sys/arm/conf/BEAGLEBONE user/attilio/vmobj-readlock/sys/arm/conf/EFIKA_MX user/attilio/vmobj-readlock/sys/arm/conf/RPI-B user/attilio/vmobj-readlock/sys/arm/freescale/imx/console.c user/attilio/vmobj-readlock/sys/arm/include/armreg.h user/attilio/vmobj-readlock/sys/arm/include/kdb.h user/attilio/vmobj-readlock/sys/arm/include/smp.h user/attilio/vmobj-readlock/sys/arm/ti/am335x/am335x_prcm.c user/attilio/vmobj-readlock/sys/arm/ti/ti_prcm.h user/attilio/vmobj-readlock/sys/boot/arm/uboot/Makefile user/attilio/vmobj-readlock/sys/boot/fdt/dts/am335x.dtsi user/attilio/vmobj-readlock/sys/boot/ficl/loader.c user/attilio/vmobj-readlock/sys/boot/forth/loader.rc user/attilio/vmobj-readlock/sys/cam/ata/ata_da.c user/attilio/vmobj-readlock/sys/cam/scsi/scsi_da.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_destroy.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/ddt.h user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_impl.h user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_objset.h user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_send.h user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dataset.h user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_destroy.h user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/sys/fs/zfs.h user/attilio/vmobj-readlock/sys/cddl/dev/dtrace/amd64/dis_tables.c user/attilio/vmobj-readlock/sys/cddl/dev/dtrace/amd64/dis_tables.h user/attilio/vmobj-readlock/sys/cddl/dev/dtrace/i386/dis_tables.c user/attilio/vmobj-readlock/sys/cddl/dev/dtrace/i386/dis_tables.h user/attilio/vmobj-readlock/sys/conf/NOTES user/attilio/vmobj-readlock/sys/conf/WITHOUT_SOURCELESS_UCODE user/attilio/vmobj-readlock/sys/conf/files user/attilio/vmobj-readlock/sys/conf/newvers.sh user/attilio/vmobj-readlock/sys/conf/options user/attilio/vmobj-readlock/sys/contrib/dev/acpica/changes.txt (contents, props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/common/dmextern.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/common/getopt.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/compiler/asloffset.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/compiler/asloperands.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/compiler/asloptions.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/compiler/dttemplate.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/executer/exoparg1.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/hardware/hwtimer.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/namespace/nspredef.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/namespace/nswalk.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/namespace/nsxfeval.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/tables/tbfadt.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/tables/tbxfroot.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/utilities/utglobal.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/utilities/utosi.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/utilities/utxface.c user/attilio/vmobj-readlock/sys/contrib/dev/acpica/include/acglobal.h user/attilio/vmobj-readlock/sys/contrib/dev/acpica/include/aclocal.h user/attilio/vmobj-readlock/sys/contrib/dev/acpica/include/acnamesp.h user/attilio/vmobj-readlock/sys/contrib/dev/acpica/include/acpixf.h user/attilio/vmobj-readlock/sys/contrib/dev/acpica/include/actables.h user/attilio/vmobj-readlock/sys/contrib/dev/acpica/include/actypes.h user/attilio/vmobj-readlock/sys/contrib/dev/acpica/include/acutils.h user/attilio/vmobj-readlock/sys/dev/ahci/ahci.c user/attilio/vmobj-readlock/sys/dev/ahci/ahci.h user/attilio/vmobj-readlock/sys/dev/aic7xxx/aic7xxx_pci.c user/attilio/vmobj-readlock/sys/dev/ata/chipsets/ata-promise.c user/attilio/vmobj-readlock/sys/dev/ciss/ciss.c user/attilio/vmobj-readlock/sys/dev/cxgbe/adapter.h user/attilio/vmobj-readlock/sys/dev/cxgbe/common/t4_hw.c user/attilio/vmobj-readlock/sys/dev/cxgbe/common/t4_hw.h user/attilio/vmobj-readlock/sys/dev/cxgbe/t4_ioctl.h user/attilio/vmobj-readlock/sys/dev/cxgbe/t4_main.c user/attilio/vmobj-readlock/sys/dev/cxgbe/t4_sge.c user/attilio/vmobj-readlock/sys/dev/drm2/i915/intel_ringbuffer.c user/attilio/vmobj-readlock/sys/dev/drm2/ttm/ttm_bo_vm.c user/attilio/vmobj-readlock/sys/dev/filemon/filemon.c user/attilio/vmobj-readlock/sys/dev/ipmi/ipmi_isa.c user/attilio/vmobj-readlock/sys/dev/ipmi/ipmivars.h user/attilio/vmobj-readlock/sys/dev/iwn/if_iwn.c user/attilio/vmobj-readlock/sys/dev/iwn/if_iwnreg.h user/attilio/vmobj-readlock/sys/dev/ixgbe/ixgbe.c user/attilio/vmobj-readlock/sys/dev/mps/mps_sas.c user/attilio/vmobj-readlock/sys/dev/scc/scc_bfe.h user/attilio/vmobj-readlock/sys/dev/scc/scc_bfe_ebus.c user/attilio/vmobj-readlock/sys/dev/scc/scc_bfe_macio.c user/attilio/vmobj-readlock/sys/dev/scc/scc_bfe_quicc.c user/attilio/vmobj-readlock/sys/dev/scc/scc_bfe_sbus.c user/attilio/vmobj-readlock/sys/dev/scc/scc_core.c user/attilio/vmobj-readlock/sys/dev/scc/scc_dev_quicc.c user/attilio/vmobj-readlock/sys/dev/scc/scc_dev_sab82532.c user/attilio/vmobj-readlock/sys/dev/scc/scc_dev_z8530.c user/attilio/vmobj-readlock/sys/dev/sound/pci/ds1.c user/attilio/vmobj-readlock/sys/dev/uart/uart_bus_pci.c user/attilio/vmobj-readlock/sys/dev/usb/gadget/g_audio.c user/attilio/vmobj-readlock/sys/dev/usb/gadget/g_keyboard.c user/attilio/vmobj-readlock/sys/dev/usb/gadget/g_modem.c user/attilio/vmobj-readlock/sys/dev/usb/gadget/g_mouse.c user/attilio/vmobj-readlock/sys/dev/usb/net/if_ipheth.c user/attilio/vmobj-readlock/sys/dev/usb/wlan/if_rumvar.h user/attilio/vmobj-readlock/sys/dev/usb/wlan/if_runvar.h user/attilio/vmobj-readlock/sys/dev/usb/wlan/if_uathvar.h user/attilio/vmobj-readlock/sys/dev/usb/wlan/if_upgtvar.h user/attilio/vmobj-readlock/sys/dev/usb/wlan/if_uralvar.h user/attilio/vmobj-readlock/sys/dev/usb/wlan/if_urtwnreg.h user/attilio/vmobj-readlock/sys/dev/usb/wlan/if_urtwvar.h user/attilio/vmobj-readlock/sys/dev/usb/wlan/if_zydreg.h user/attilio/vmobj-readlock/sys/dev/watchdog/watchdog.c user/attilio/vmobj-readlock/sys/dev/wi/if_wi.c user/attilio/vmobj-readlock/sys/fs/cd9660/iso.h user/attilio/vmobj-readlock/sys/fs/devfs/devfs_rule.c user/attilio/vmobj-readlock/sys/fs/ext2fs/ext2_hash.c user/attilio/vmobj-readlock/sys/fs/ext2fs/ext2_lookup.c user/attilio/vmobj-readlock/sys/fs/fuse/fuse_kernel.h user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_vnops.c user/attilio/vmobj-readlock/sys/gdb/gdb_cons.c user/attilio/vmobj-readlock/sys/geom/raid/g_raid.c user/attilio/vmobj-readlock/sys/geom/raid/g_raid_ctl.c user/attilio/vmobj-readlock/sys/i386/i386/identcpu.c user/attilio/vmobj-readlock/sys/i386/i386/initcpu.c user/attilio/vmobj-readlock/sys/i386/i386/sys_machdep.c user/attilio/vmobj-readlock/sys/i386/include/md_var.h user/attilio/vmobj-readlock/sys/kern/init_main.c user/attilio/vmobj-readlock/sys/kern/kern_malloc.c user/attilio/vmobj-readlock/sys/kern/kern_ntptime.c user/attilio/vmobj-readlock/sys/kern/kern_uuid.c user/attilio/vmobj-readlock/sys/kern/sched_4bsd.c user/attilio/vmobj-readlock/sys/kern/subr_vmem.c user/attilio/vmobj-readlock/sys/kern/uipc_shm.c user/attilio/vmobj-readlock/sys/kern/uipc_syscalls.c user/attilio/vmobj-readlock/sys/kern/vfs_aio.c user/attilio/vmobj-readlock/sys/kern/vfs_mountroot.c user/attilio/vmobj-readlock/sys/kern/vfs_subr.c user/attilio/vmobj-readlock/sys/mips/conf/DIR-825 user/attilio/vmobj-readlock/sys/mips/conf/DIR-825.hints user/attilio/vmobj-readlock/sys/modules/Makefile user/attilio/vmobj-readlock/sys/modules/cxgbe/if_cxgbe/Makefile user/attilio/vmobj-readlock/sys/modules/dtrace/dtrace/Makefile user/attilio/vmobj-readlock/sys/modules/iwn/Makefile user/attilio/vmobj-readlock/sys/modules/usb/Makefile user/attilio/vmobj-readlock/sys/modules/wi/Makefile user/attilio/vmobj-readlock/sys/net/ieee8023ad_lacp.c user/attilio/vmobj-readlock/sys/net/ieee8023ad_lacp.h user/attilio/vmobj-readlock/sys/net/if_bridge.c user/attilio/vmobj-readlock/sys/net/if_ethersubr.c user/attilio/vmobj-readlock/sys/net/if_lagg.c user/attilio/vmobj-readlock/sys/net/if_lagg.h user/attilio/vmobj-readlock/sys/net/rtsock.c user/attilio/vmobj-readlock/sys/net80211/ieee80211.h user/attilio/vmobj-readlock/sys/net80211/ieee80211_mesh.c user/attilio/vmobj-readlock/sys/net80211/ieee80211_output.c user/attilio/vmobj-readlock/sys/net80211/ieee80211_proto.h user/attilio/vmobj-readlock/sys/netinet/sctp_usrreq.c user/attilio/vmobj-readlock/sys/netinet6/in6.c user/attilio/vmobj-readlock/sys/netinet6/in6_ifattach.c user/attilio/vmobj-readlock/sys/netinet6/nd6.c user/attilio/vmobj-readlock/sys/netpfil/pf/if_pfsync.c user/attilio/vmobj-readlock/sys/nfs/bootp_subr.c user/attilio/vmobj-readlock/sys/ofed/drivers/net/mlx4/en_netdev.c user/attilio/vmobj-readlock/sys/ofed/drivers/net/mlx4/en_tx.c user/attilio/vmobj-readlock/sys/ofed/include/linux/module.h user/attilio/vmobj-readlock/sys/powerpc/include/spr.h user/attilio/vmobj-readlock/sys/powerpc/ofw/ofw_real.c user/attilio/vmobj-readlock/sys/powerpc/powermac/macio.c user/attilio/vmobj-readlock/sys/powerpc/powermac/maciovar.h user/attilio/vmobj-readlock/sys/sys/kernel.h user/attilio/vmobj-readlock/sys/sys/libkern.h user/attilio/vmobj-readlock/sys/sys/param.h user/attilio/vmobj-readlock/sys/sys/priv.h user/attilio/vmobj-readlock/sys/sys/sched.h user/attilio/vmobj-readlock/sys/sys/uuid.h user/attilio/vmobj-readlock/sys/vm/uma_int.h user/attilio/vmobj-readlock/sys/vm/vm.h user/attilio/vmobj-readlock/sys/vm/vm_glue.c user/attilio/vmobj-readlock/sys/vm/vm_map.c user/attilio/vmobj-readlock/sys/vm/vm_pageout.c user/attilio/vmobj-readlock/sys/vm/vm_param.h user/attilio/vmobj-readlock/sys/vm/vnode_pager.c user/attilio/vmobj-readlock/sys/x86/include/specialreg.h user/attilio/vmobj-readlock/tools/regression/lib/libc/gen/test-wordexp.c user/attilio/vmobj-readlock/tools/tools/crypto/ipsecstats.c user/attilio/vmobj-readlock/tools/tools/cxgbetool/cxgbetool.c user/attilio/vmobj-readlock/tools/tools/sysdoc/tunables.mdoc user/attilio/vmobj-readlock/tools/tools/zfsboottest/Makefile user/attilio/vmobj-readlock/usr.bin/bmake/Makefile user/attilio/vmobj-readlock/usr.bin/bmake/config.h user/attilio/vmobj-readlock/usr.bin/bmake/unit-tests/Makefile user/attilio/vmobj-readlock/usr.bin/fetch/fetch.1 user/attilio/vmobj-readlock/usr.bin/fetch/fetch.c user/attilio/vmobj-readlock/usr.bin/find/function.c user/attilio/vmobj-readlock/usr.bin/grep/regex/tre-fastmatch.c user/attilio/vmobj-readlock/usr.bin/patch/Makefile user/attilio/vmobj-readlock/usr.bin/patch/patch.c user/attilio/vmobj-readlock/usr.bin/script/script.1 user/attilio/vmobj-readlock/usr.bin/svn/lib/libapr_util/Makefile user/attilio/vmobj-readlock/usr.bin/svn/lib/libapr_util/apu.h user/attilio/vmobj-readlock/usr.bin/svn/lib/libserf/Makefile user/attilio/vmobj-readlock/usr.bin/svn/svn_private_config.h user/attilio/vmobj-readlock/usr.bin/truss/syscall.h user/attilio/vmobj-readlock/usr.bin/truss/syscalls.c user/attilio/vmobj-readlock/usr.sbin/makefs/cd9660.c user/attilio/vmobj-readlock/usr.sbin/makefs/cd9660/iso9660_rrip.c user/attilio/vmobj-readlock/usr.sbin/makefs/ffs/ufs_bswap.h user/attilio/vmobj-readlock/usr.sbin/pkg/config.c user/attilio/vmobj-readlock/usr.sbin/watchdogd/watchdogd.8 user/attilio/vmobj-readlock/usr.sbin/watchdogd/watchdogd.c Directory Properties: user/attilio/vmobj-readlock/ (props changed) user/attilio/vmobj-readlock/cddl/ (props changed) user/attilio/vmobj-readlock/cddl/contrib/opensolaris/ (props changed) user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/ (props changed) user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/zfs/ (props changed) user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libzfs/ (props changed) user/attilio/vmobj-readlock/contrib/apr/ (props changed) user/attilio/vmobj-readlock/contrib/apr-util/ (props changed) user/attilio/vmobj-readlock/contrib/bind9/ (props changed) user/attilio/vmobj-readlock/contrib/binutils/ (props changed) user/attilio/vmobj-readlock/contrib/bmake/ (props changed) user/attilio/vmobj-readlock/contrib/llvm/ (props changed) user/attilio/vmobj-readlock/contrib/llvm/tools/clang/ (props changed) user/attilio/vmobj-readlock/contrib/serf/ (props changed) user/attilio/vmobj-readlock/contrib/subversion/ (props changed) user/attilio/vmobj-readlock/contrib/tcpdump/ (props changed) user/attilio/vmobj-readlock/lib/libc/ (props changed) user/attilio/vmobj-readlock/sbin/ (props changed) user/attilio/vmobj-readlock/sbin/ipfw/ (props changed) user/attilio/vmobj-readlock/share/man/man4/ (props changed) user/attilio/vmobj-readlock/sys/ (props changed) user/attilio/vmobj-readlock/sys/amd64/vmm/ (props changed) user/attilio/vmobj-readlock/sys/boot/ (props changed) user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/ (props changed) user/attilio/vmobj-readlock/sys/conf/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/common/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/compiler/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/debugger/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/disassembler/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/dispatcher/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/events/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/executer/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/hardware/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/namespace/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/parser/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/resources/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/tables/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/components/utilities/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/include/ (props changed) user/attilio/vmobj-readlock/sys/contrib/dev/acpica/os_specific/ (props changed) Modified: user/attilio/vmobj-readlock/MAINTAINERS ============================================================================== --- user/attilio/vmobj-readlock/MAINTAINERS Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/MAINTAINERS Sun Aug 4 16:23:09 2013 (r253929) @@ -128,3 +128,6 @@ sysdoc trhodes Pre-commit review prefe sh(1) jilles Pre-commit review requested. This also applies to kill(1), printf(1) and test(1) which are compiled in as builtins. +nvme(4) jimharris Pre-commit review requested. +nvd(4) jimharris Pre-commit review requested. +nvmecontrol(8) jimharris Pre-commit review requested. Modified: user/attilio/vmobj-readlock/Makefile ============================================================================== --- user/attilio/vmobj-readlock/Makefile Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/Makefile Sun Aug 4 16:23:09 2013 (r253929) @@ -130,11 +130,34 @@ _MAKEOBJDIRPREFIX!= /usr/bin/env -i PATH .error MAKEOBJDIRPREFIX can only be set in environment, not as a global\ (in make.conf(5)) or command-line variable. .endif -MAKEPATH= ${MAKEOBJDIRPREFIX}${.CURDIR}/make.${MACHINE} -BINMAKE= \ - `if [ -x ${MAKEPATH}/make ]; then echo ${MAKEPATH}/make; else echo ${MAKE}; fi` \ + +# We often need to use the tree's version of make to build it. +# Choices add to complexity though. +# We cannot blindly use a make which may not be the one we want +# so be exlicit - until all choice is removed. +.if !defined(WITHOUT_BMAKE) +WANT_MAKE= bmake +.else +WANT_MAKE= fmake +.endif +MYMAKE= ${MAKEOBJDIRPREFIX}${.CURDIR}/make.${MACHINE}/${WANT_MAKE} +.if defined(.PARSEDIR) +HAVE_MAKE= bmake +.else +HAVE_MAKE= fmake +.endif +.if exists(${MYMAKE}) +SUB_MAKE:= ${MYMAKE} -m ${.CURDIR}/share/mk +.elif ${WANT_MAKE} != ${HAVE_MAKE} || ${WANT_MAKE} != "bmake" +# It may not exist yet but we may cause it to. +# In the case of fmake, upgrade_checks may cause a newer version to be built. +SUB_MAKE= `test -x ${MYMAKE} && echo ${MYMAKE} || echo ${MAKE}` \ -m ${.CURDIR}/share/mk -_MAKE= PATH=${PATH} ${BINMAKE} -f Makefile.inc1 TARGET=${_TARGET} TARGET_ARCH=${_TARGET_ARCH} +.else +SUB_MAKE= ${MAKE} -m ${.CURDIR}/share/mk +.endif + +_MAKE= PATH=${PATH} ${SUB_MAKE} -f Makefile.inc1 TARGET=${_TARGET} TARGET_ARCH=${_TARGET_ARCH} # Guess machine architecture from machine type, and vice versa. .if !defined(TARGET_ARCH) && defined(TARGET) @@ -291,11 +314,13 @@ kernel: buildkernel installkernel # Perform a few tests to determine if the installed tools are adequate # for building the world. # +# Note: if we ever need to care about the version of bmake, simply testing +# MAKE_VERSION against a required version should suffice. +# upgrade_checks: -.if !defined(.PARSEDIR) -.if !defined(WITHOUT_BMAKE) - (cd ${.CURDIR} && ${MAKE} bmake) -.else +.if ${HAVE_MAKE} != ${WANT_MAKE} + @(cd ${.CURDIR} && ${MAKE} ${WANT_MAKE:S,^f,,}) +.elif ${WANT_MAKE} == "fmake" @if ! (cd ${.CURDIR}/tools/build/make_check && \ PATH=${PATH} ${BINMAKE} obj >/dev/null 2>&1 && \ PATH=${PATH} ${BINMAKE} >/dev/null 2>&1); \ @@ -303,14 +328,13 @@ upgrade_checks: (cd ${.CURDIR} && ${MAKE} make); \ fi .endif -.endif # # Upgrade make(1) to the current version using the installed # headers, libraries and tools. Also, allow the location of # the system bsdmake-like utility to be overridden. # -MMAKEENV= MAKEOBJDIRPREFIX=${MAKEPATH} \ +MMAKEENV= MAKEOBJDIRPREFIX=${MYMAKE:H} \ DESTDIR= \ INSTALL="sh ${.CURDIR}/tools/install.sh" MMAKE= ${MMAKEENV} ${MAKE} \ @@ -327,7 +351,7 @@ make bmake: .PHONY ${MMAKE} obj && \ ${MMAKE} depend && \ ${MMAKE} all && \ - ${MMAKE} install DESTDIR=${MAKEPATH} BINDIR= + ${MMAKE} install DESTDIR=${MYMAKE:H} BINDIR= PROGNAME=${MYMAKE:T} tinderbox: @cd ${.CURDIR} && ${MAKE} DOING_TINDERBOX=YES universe @@ -377,7 +401,8 @@ MAKEFAIL=tee -a ${FAILFILE} MAKEFAIL=cat .endif -universe: universe_prologue upgrade_checks +universe_prologue: upgrade_checks +universe: universe_prologue universe_prologue: @echo "--------------------------------------------------------------" @echo ">>> make universe started on ${STARTTIME}" @@ -387,9 +412,9 @@ universe_prologue: .endif .for target in ${TARGETS} universe: universe_${target} -.ORDER: universe_prologue upgrade_checks universe_${target} universe_epilogue +universe_epilogue: universe_${target} universe_${target}: universe_${target}_prologue -universe_${target}_prologue: +universe_${target}_prologue: universe_prologue @echo ">> ${target} started on `LC_ALL=C date`" .if !defined(MAKE_JUST_KERNELS) .for target_arch in ${TARGET_ARCHES_${target}} @@ -397,7 +422,7 @@ universe_${target}: universe_${target}_$ universe_${target}_${target_arch}: universe_${target}_prologue @echo ">> ${target}.${target_arch} ${UNIVERSE_TARGET} started on `LC_ALL=C date`" @(cd ${.CURDIR} && env __MAKE_CONF=/dev/null \ - ${MAKE} ${JFLAG} ${UNIVERSE_TARGET} \ + ${SUB_MAKE} ${JFLAG} ${UNIVERSE_TARGET} \ TARGET=${target} \ TARGET_ARCH=${target_arch} \ > _.${target}.${target_arch}.${UNIVERSE_TARGET} 2>&1 || \ @@ -418,11 +443,11 @@ universe_${target}: universe_${target}_k universe_${target}_kernels: universe_${target}_prologue .if exists(${KERNSRCDIR}/${target}/conf/NOTES) @(cd ${KERNSRCDIR}/${target}/conf && env __MAKE_CONF=/dev/null \ - ${MAKE} LINT > ${.CURDIR}/_.${target}.makeLINT 2>&1 || \ + ${SUB_MAKE} LINT > ${.CURDIR}/_.${target}.makeLINT 2>&1 || \ (echo "${target} 'make LINT' failed," \ "check _.${target}.makeLINT for details"| ${MAKEFAIL})) .endif - @cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} TARGET=${target} \ + @cd ${.CURDIR} && ${SUB_MAKE} ${.MAKEFLAGS} TARGET=${target} \ universe_kernels .endif @echo ">> ${target} completed on `LC_ALL=C date`" @@ -445,7 +470,7 @@ TARGET_ARCH_${kernel}!= cd ${KERNSRCDIR} universe_kernconfs: universe_kernconf_${TARGET}_${kernel} universe_kernconf_${TARGET}_${kernel}: @(cd ${.CURDIR} && env __MAKE_CONF=/dev/null \ - ${MAKE} ${JFLAG} buildkernel \ + ${SUB_MAKE} ${JFLAG} buildkernel \ TARGET=${TARGET} \ TARGET_ARCH=${TARGET_ARCH_${kernel}} \ KERNCONF=${kernel} \ Modified: user/attilio/vmobj-readlock/Makefile.inc1 ============================================================================== --- user/attilio/vmobj-readlock/Makefile.inc1 Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/Makefile.inc1 Sun Aug 4 16:23:09 2013 (r253929) @@ -833,6 +833,18 @@ distributeworld installworld: installche awk 'BEGIN { print "#${MTREE_MAGIC}" } !/ type=/ { file = $$1 } / type=/ { if ($$1 == file) { sub(/^\.\/${dist}\//, "./"); print } }' > \ ${DESTDIR}/${DISTDIR}/${dist}.meta .endfor +.if ${MK_DEBUG_FILES} != "no" +. for dist in base ${EXTRA_DISTRIBUTIONS} + @# For each file that exists in this dist, print the corresponding + @# line from the METALOG. This relies on the fact that + @# a line containing only the filename will sort immediatly before + @# the relevant mtree line. + cd ${DESTDIR}/${DISTDIR}; \ + find ./${dist}/usr/lib/debug | sort -u ${METALOG} - | \ + awk 'BEGIN { print "#${MTREE_MAGIC}" } !/ type=/ { file = $$1 } / type=/ { if ($$1 == file) { sub(/^\.\/${dist}\//, "./"); print } }' > \ + ${DESTDIR}/${DISTDIR}/${dist}.debug.meta +. endfor +.endif .endif .endif @@ -841,13 +853,29 @@ packageworld: .if defined(NO_ROOT) ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz \ + --exclude usr/lib/debug \ @${DESTDIR}/${DISTDIR}/${dist}.meta .else ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ - tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz . + tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz \ + --exclude usr/lib/debug . .endif .endfor +.if ${MK_DEBUG_FILES} != "no" +. for dist in base ${EXTRA_DISTRIBUTIONS} +. if defined(NO_ROOT) + ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ + tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.debug.txz \ + @${DESTDIR}/${DISTDIR}/${dist}.debug.meta +. else + ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ + tar cvJfL ${DESTDIR}/${DISTDIR}/${dist}.debug.txz \ + usr/lib/debug +. endif +. endfor +.endif + # # reinstall # Modified: user/attilio/vmobj-readlock/UPDATING ============================================================================== --- user/attilio/vmobj-readlock/UPDATING Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/UPDATING Sun Aug 4 16:23:09 2013 (r253929) @@ -31,6 +31,26 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20130802: + find -delete can now delete the pathnames given as arguments, + instead of only files found below them or if the pathname did + not contain any slashes. Formerly, the following error message + would result: + + find: -delete: : relative path potentially not safe + + Deleting the pathnames given as arguments can be prevented + without error messages using -mindepth 1 or by changing + directory and passing "." as argument to find. This works in the + old as well as the new version of find. + +20130726: + Behavior of devfs rules path matching has been changed. + Pattern is now always matched against fully qualified devfs + path and slash characters must be explicitly matched by + slashes in pattern (FNM_PATHNAME). Rulesets involving devfs + subdirectories must be reviewed. + 20130716: The default ARM ABI has changed to the ARM EABI. The old ABI is incompatible with the ARM EABI and all programs and modules will Modified: user/attilio/vmobj-readlock/bin/sh/Makefile ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/Makefile Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/Makefile Sun Aug 4 16:23:09 2013 (r253929) @@ -8,7 +8,7 @@ SHSRCS= alias.c arith_yacc.c arith_yylex histedit.c input.c jobs.c kill.c mail.c main.c memalloc.c miscbltin.c \ mystring.c options.c output.c parser.c printf.c redir.c show.c \ test.c trap.c var.c -GENSRCS= builtins.c init.c nodes.c syntax.c +GENSRCS= builtins.c nodes.c syntax.c GENHDRS= builtins.h nodes.h syntax.h token.h SRCS= ${SHSRCS} ${GENSRCS} ${GENHDRS} @@ -30,26 +30,21 @@ WFORMAT=0 ${.CURDIR}/../test \ ${.CURDIR}/../../usr.bin/printf -CLEANFILES+= mkinit mkinit.o mknodes mknodes.o \ +CLEANFILES+= mknodes mknodes.o \ mksyntax mksyntax.o CLEANFILES+= ${GENSRCS} ${GENHDRS} -build-tools: mkinit mknodes mksyntax +build-tools: mknodes mksyntax .ORDER: builtins.c builtins.h builtins.c builtins.h: mkbuiltins builtins.def sh ${.CURDIR}/mkbuiltins ${.CURDIR} -init.c: mkinit alias.c eval.c exec.c input.c jobs.c options.c parser.c \ - redir.c trap.c var.c - ./mkinit ${.ALLSRC:S/^mkinit$//} - # XXX this is just to stop the default .c rule being used, so that the # intermediate object has a fixed name. # XXX we have a default .c rule, but no default .o rule. .o: ${CC} ${CFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} -mkinit: mkinit.o mknodes: mknodes.o mksyntax: mksyntax.o Modified: user/attilio/vmobj-readlock/bin/sh/TOUR ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/TOUR Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/TOUR Sun Aug 4 16:23:09 2013 (r253929) @@ -25,38 +25,11 @@ programs is: program input files generates ------- ----------- --------- mkbuiltins builtins builtins.h builtins.c - mkinit *.c init.c mknodes nodetypes nodes.h nodes.c mksyntax - syntax.h syntax.c mktokens - token.h -There are undoubtedly too many of these. Mkinit searches all the -C source files for entries looking like: - - RESET { - x = 2; /* executed when the shell does a longjmp - back to the main command loop */ - } - -It pulls this code out into routines which are when particular -events occur. The intent is to improve modularity by isolating -the information about which modules need to be explicitly -initialized/reset within the modules themselves. - -Mkinit recognizes several constructs for placing declarations in -the init.c file. - INCLUDE "file.h" -includes a file. The storage class MKINIT makes a declaration -available in the init.c file, for example: - MKINIT int funcnest; /* depth of function calls */ -MKINIT alone on a line introduces a structure or union declara- -tion: - MKINIT - struct redirtab { - short renamed[10]; - }; -Preprocessor #define statements are copied to init.c without any -special action to request this. +There are undoubtedly too many of these. EXCEPTIONS: Code for dealing with exceptions appears in exceptions.c. The C language doesn't include exception handling, Modified: user/attilio/vmobj-readlock/bin/sh/eval.c ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/eval.c Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/eval.c Sun Aug 4 16:23:09 2013 (r253929) @@ -76,7 +76,7 @@ __FBSDID("$FreeBSD$"); int evalskip; /* set if we are skipping commands */ int skipcount; /* number of levels to skip */ -MKINIT int loopnest; /* current loop nesting level */ +static int loopnest; /* current loop nesting level */ int funcnest; /* depth of function calls */ static int builtin_flags; /* evalcommand flags for builtins */ @@ -104,16 +104,13 @@ static void prehash(union node *); * Called to reset things after an exception. */ -#ifdef mkinit -INCLUDE "eval.h" - -RESET { +void +reseteval(void) +{ evalskip = 0; loopnest = 0; funcnest = 0; } -#endif - /* Modified: user/attilio/vmobj-readlock/bin/sh/eval.h ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/eval.h Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/eval.h Sun Aug 4 16:23:09 2013 (r253929) @@ -46,6 +46,8 @@ struct backcmd { /* result of evalbackc struct job *jp; /* job structure for command */ }; +void reseteval(void); + /* flags in argument to evaltree/evalstring */ #define EV_EXIT 01 /* exit after evaluating tree */ #define EV_TESTED 02 /* exit status is checked; ignore -e flag */ Modified: user/attilio/vmobj-readlock/bin/sh/exec.c ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/exec.c Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/exec.c Sun Aug 4 16:23:09 2013 (r253929) @@ -70,7 +70,6 @@ __FBSDID("$FreeBSD$"); #include "syntax.h" #include "memalloc.h" #include "error.h" -#include "init.h" #include "mystring.h" #include "show.h" #include "jobs.h" Modified: user/attilio/vmobj-readlock/bin/sh/input.c ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/input.c Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/input.c Sun Aug 4 16:23:09 2013 (r253929) @@ -92,7 +92,7 @@ struct parsefile { int plinno = 1; /* input line number */ int parsenleft; /* copy of parsefile->nleft */ -MKINIT int parselleft; /* copy of parsefile->lleft */ +static int parselleft; /* copy of parsefile->lleft */ const char *parsenextc; /* copy of parsefile->nextc */ static char basebuf[BUFSIZ + 1];/* buffer for top level input file */ static struct parsefile basepf = { /* top level input file */ @@ -108,15 +108,12 @@ static void pushfile(void); static int preadfd(void); static void popstring(void); -#ifdef mkinit -INCLUDE "input.h" -INCLUDE "error.h" - -RESET { +void +resetinput(void) +{ popallfiles(); parselleft = parsenleft = 0; /* clear input buffer */ } -#endif /* Modified: user/attilio/vmobj-readlock/bin/sh/input.h ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/input.h Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/input.h Sun Aug 4 16:23:09 2013 (r253929) @@ -47,6 +47,7 @@ extern const char *parsenextc; /* next c struct alias; struct parsefile; +void resetinput(void); char *pfgets(char *, int); int pgetc(void); int preadbuffer(void); Modified: user/attilio/vmobj-readlock/bin/sh/jobs.c ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/jobs.c Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/jobs.c Sun Aug 4 16:23:09 2013 (r253929) @@ -77,8 +77,8 @@ __FBSDID("$FreeBSD$"); static struct job *jobtab; /* array of jobs */ static int njobs; /* size of array */ -MKINIT pid_t backgndpid = -1; /* pid of last background process */ -MKINIT struct job *bgjob = NULL; /* last background process */ +static pid_t backgndpid = -1; /* pid of last background process */ +static struct job *bgjob = NULL; /* last background process */ #if JOBS static struct job *jobmru; /* most recently used job list */ static pid_t initialpgrp; /* pgrp of shell on invocation */ @@ -116,7 +116,7 @@ static void showjob(struct job *, int); * Turn job control on and off. */ -MKINIT int jobctl; +static int jobctl; #if JOBS void Modified: user/attilio/vmobj-readlock/bin/sh/main.c ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/main.c Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/main.c Sun Aug 4 16:23:09 2013 (r253929) @@ -68,10 +68,10 @@ __FBSDID("$FreeBSD$"); #include "show.h" #include "memalloc.h" #include "error.h" -#include "init.h" #include "mystring.h" #include "exec.h" #include "cd.h" +#include "redir.h" #include "builtins.h" int rootpid; @@ -79,6 +79,7 @@ int rootshell; struct jmploc main_handler; int localeisutf8, initial_localeisutf8; +static void reset(void); static void cmdloop(int); static void read_profile(const char *); static char *find_dot_file(char *); @@ -179,6 +180,14 @@ state4: return 0; } +static void +reset(void) +{ + reseteval(); + resetinput(); + resetparser(); + resetredir(); +} /* * Read and execute commands. "Top" is nonzero for the top level command Modified: user/attilio/vmobj-readlock/bin/sh/output.c ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/output.c Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/output.c Sun Aug 4 16:23:09 2013 (r253929) @@ -75,25 +75,6 @@ struct output memout = {NULL, 0, NULL, 0 struct output *out1 = &output; struct output *out2 = &errout; - - -#ifdef mkinit - -INCLUDE "output.h" -INCLUDE "memalloc.h" - -RESET { - out1 = &output; - out2 = &errout; - if (memout.buf != NULL) { - ckfree(memout.buf); - memout.buf = NULL; - } -} - -#endif - - void outcslow(int c, struct output *file) { Modified: user/attilio/vmobj-readlock/bin/sh/parser.c ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/parser.c Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/parser.c Sun Aug 4 16:23:09 2013 (r253929) @@ -96,9 +96,9 @@ static struct heredoc *heredoclist; /* l static int doprompt; /* if set, prompt the user */ static int needprompt; /* true if interactive and at start of line */ static int lasttoken; /* last token read */ -MKINIT int tokpushback; /* last token pushed back */ +int tokpushback; /* last token pushed back */ static char *wordtext; /* text of last word returned by readtoken */ -MKINIT int checkkwd; /* 1 == check for kwds, 2 == also eat newlines */ +static int checkkwd; static struct nodelist *backquotelist; static union node *redirnode; static struct heredoc *heredoc; @@ -1819,13 +1819,13 @@ parsearith: { } /* end of readtoken */ - -#ifdef mkinit -RESET { +void +resetparser(void) +{ tokpushback = 0; checkkwd = 0; } -#endif + /* * Returns true if the text contains nothing to expand (no dollar signs Modified: user/attilio/vmobj-readlock/bin/sh/parser.h ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/parser.h Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/parser.h Sun Aug 4 16:23:09 2013 (r253929) @@ -79,6 +79,7 @@ extern const char *const parsekwd[]; union node *parsecmd(int); void fixredir(union node *, const char *, int); +void resetparser(void); int goodname(const char *); int isassignment(const char *); char *getprompt(void *); Modified: user/attilio/vmobj-readlock/bin/sh/redir.c ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/redir.c Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/redir.c Sun Aug 4 16:23:09 2013 (r253929) @@ -66,14 +66,13 @@ __FBSDID("$FreeBSD$"); #define CLOSED -1 /* fd was not open before redir */ -MKINIT struct redirtab { struct redirtab *next; int renamed[10]; }; -MKINIT struct redirtab *redirlist; +static struct redirtab *redirlist; /* * We keep track of whether or not fd0 has been redirected. This is for @@ -324,16 +323,13 @@ popredir(void) * Undo all redirections. Called on error or interrupt. */ -#ifdef mkinit - -INCLUDE "redir.h" - -RESET { +void +resetredir(void) +{ while (redirlist) popredir(); } -#endif /* Return true if fd 0 has already been redirected at least once. */ int Modified: user/attilio/vmobj-readlock/bin/sh/redir.h ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/redir.h Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/redir.h Sun Aug 4 16:23:09 2013 (r253929) @@ -40,6 +40,7 @@ union node; void redirect(union node *, int); void popredir(void); +void resetredir(void); int fd0_redirected_p(void); void clearredir(void); Modified: user/attilio/vmobj-readlock/bin/sh/shell.h ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/shell.h Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/shell.h Sun Aug 4 16:23:09 2013 (r253929) @@ -63,7 +63,6 @@ typedef intmax_t arith_t; #define ARITH_MAX INTMAX_MAX typedef void *pointer; -#define MKINIT /* empty */ #include Modified: user/attilio/vmobj-readlock/bin/sh/trap.c ============================================================================== --- user/attilio/vmobj-readlock/bin/sh/trap.c Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/bin/sh/trap.c Sun Aug 4 16:23:09 2013 (r253929) @@ -72,7 +72,7 @@ __FBSDID("$FreeBSD$"); #define S_RESET 5 /* temporary - to reset a hard ignored sig */ -MKINIT char sigmode[NSIG]; /* current value of signal */ +static char sigmode[NSIG]; /* current value of signal */ volatile sig_atomic_t pendingsig; /* indicates some signal received */ int in_dotrap; /* do we execute in a trap handler? */ static char *volatile trap[NSIG]; /* trap handler commands */ Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts/dtest.pl ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts/dtest.pl Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts/dtest.pl Sun Aug 4 16:23:09 2013 (r253929) @@ -583,6 +583,8 @@ if ($opt_x) { die "$PNAME: failed to open $PNAME.$$.log: $!\n" unless (!$opt_l || open(LOG, ">$PNAME.$$.log")); +$ENV{'DTRACE_DEBUG_REGSET'} = 'true'; + if ($opt_g) { $ENV{'UMEM_DEBUG'} = 'default,verbose'; $ENV{'UMEM_LOGGING'} = 'fail,contents'; Copied: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d (from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d Sun Aug 4 16:23:09 2013 (r253929, copy of r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d) @@ -0,0 +1,35 @@ +/* + * CDDL HEADER START + * + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + +#pragma D option quiet + +/* + * Make sure the sizes of compatible keys doesn't affect the sort order. + */ + +BEGIN +{ + @[(int)1, 0] = sum(10); + @[(uint64_t)2, 0] = sum(20); + @[(int)3, 0] = sum(30); + @[(uint64_t)4, 0] = sum(40); + printa(@); + + exit(0); +} Copied: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out (from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out Sun Aug 4 16:23:09 2013 (r253929, copy of r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out) @@ -0,0 +1,6 @@ + + 1 0 10 + 2 0 20 + 3 0 30 + 4 0 40 + Copied: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out (from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out Sun Aug 4 16:23:09 2013 (r253929, copy of r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out) @@ -0,0 +1,8 @@ +The value of i is 6 +The value of i is 18 +The value of i is 72 +The value of i is 25920 +The value of i is 935761216 +The value of i is -91738734 +The value of i is -91738729 + Copied: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d (from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d Sun Aug 4 16:23:09 2013 (r253929, copy of r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d) @@ -0,0 +1,50 @@ +/* + * CDDL HEADER START + * + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + +/* + * Test compile-time casting between integer types of different size. + */ + +#pragma D option quiet + +int64_t x; + +BEGIN +{ + x = (int32_t)(int16_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (int32_t)(uint16_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (uint32_t)(int16_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (uint32_t)(uint16_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + printf("\n"); + + x = (int16_t)(int32_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (int16_t)(uint32_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (uint16_t)(int32_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (uint16_t)(uint32_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + + exit(0); +} Copied: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out (from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out Sun Aug 4 16:23:09 2013 (r253929, copy of r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out) @@ -0,0 +1,10 @@ +fffffffffffffff0 -16 18446744073709551600 + fff0 65520 65520 + fffffff0 4294967280 4294967280 + fff0 65520 65520 + +fffffffffffffff0 -16 18446744073709551600 +fffffffffffffff0 -16 18446744073709551600 + fff0 65520 65520 + fff0 65520 65520 + Copied: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d (from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d Sun Aug 4 16:23:09 2013 (r253929, copy of r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d) @@ -0,0 +1,36 @@ +/* + * CDDL HEADER START + * + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + +/* + * Test narrowing at assignment. + */ + +#pragma D option quiet + +uint16_t x; +uint32_t y; + +BEGIN +{ + x = 0xbeefcafe; + y = x; + printf("%x", y); /* where's the beef? */ + + exit(0); +} Copied: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out (from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out Sun Aug 4 16:23:09 2013 (r253929, copy of r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out) @@ -0,0 +1 @@ +cafe Copied: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d (from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d Sun Aug 4 16:23:09 2013 (r253929, copy of r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d) @@ -0,0 +1,52 @@ +/* + * CDDL HEADER START + * + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + +/* + * Test execution-time casting between integer types of different size. + */ + +#pragma D option quiet + +int64_t x; + +BEGIN +{ + z = 0xfff0; + + x = (int32_t)(int16_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (int32_t)(uint16_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (uint32_t)(int16_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (uint32_t)(uint16_t)z; + printf("%16x %20d %20u\n", x, x, x); + printf("\n"); + + x = (int16_t)(int32_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (int16_t)(uint32_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (uint16_t)(int32_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (uint16_t)(uint32_t)z; + printf("%16x %20d %20u\n", x, x, x); + + exit(0); +} Copied: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out (from r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out Sun Aug 4 16:23:09 2013 (r253929, copy of r253928, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out) @@ -0,0 +1,10 @@ +fffffffffffffff0 -16 18446744073709551600 + fff0 65520 65520 + fffffff0 4294967280 4294967280 + fff0 65520 65520 + +fffffffffffffff0 -16 18446744073709551600 +fffffffffffffff0 -16 18446744073709551600 + fff0 65520 65520 + fff0 65520 65520 + Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionentry.d ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionentry.d Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionentry.d Sun Aug 4 16:23:09 2013 (r253929) @@ -36,12 +36,12 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:entry +fbt::kern_ioctl:entry { printf("Entering the ioctl function\n"); } -fbt::ioctl:return +fbt::kern_ioctl:return { printf("Returning from ioctl function\n"); exit(0); Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionreturnvalue.d ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionreturnvalue.d Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionreturnvalue.d Sun Aug 4 16:23:09 2013 (r253929) @@ -36,7 +36,7 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:return +fbt::kern_ioctl:return { printf("The function return value is stored in %u\n", arg1); exit(0); Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.ioctlargs.d ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.ioctlargs.d Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.ioctlargs.d Sun Aug 4 16:23:09 2013 (r253929) @@ -36,13 +36,13 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:entry +fbt::kern_ioctl:entry { printf("Entering the ioctl function\n"); printf("The few arguments are %u %u %u %u\n", arg0, arg1, arg2, arg3); } -fbt::ioctl:return +fbt::kern_ioctl:return { printf("Returning from ioctl function\n"); printf("The few arguments are %u %u %u %u\n", arg0, arg1, arg2, arg3); Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offset.d ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offset.d Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offset.d Sun Aug 4 16:23:09 2013 (r253929) @@ -41,12 +41,12 @@ BEGIN self->traceme = 1; } -fbt::ioctl:entry +fbt::kern_ioctl:entry { printf("Entering the function\n"); } -fbt::ioctl:return +fbt::kern_ioctl:return { printf("The offset = %u\n", arg0); exit(0); Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offsetzero.d ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offsetzero.d Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offsetzero.d Sun Aug 4 16:23:09 2013 (r253929) @@ -36,14 +36,14 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:entry +fbt::kern_ioctl:entry { printf("Entering the ioctl function\n"); printf("The few arguments are %u %u %u %u\n", arg0, arg1, arg2, arg3); exit(0); } -fbt::ioctl:return +fbt::kern_ioctl:return { printf("Returning from ioctl function\n"); printf("The few arguments are %u %u %u %u\n", arg0, arg1, arg2, arg3); Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.return0.d ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.return0.d Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.return0.d Sun Aug 4 16:23:09 2013 (r253929) @@ -36,7 +36,7 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:return +fbt::kern_ioctl:return /arg1 == 0/ { printf("%s %x returned 0", probefunc, arg0); Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.tailcall.d ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.tailcall.d Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.tailcall.d Sun Aug 4 16:23:09 2013 (r253929) @@ -36,7 +36,7 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:entry +fbt::kern_ioctl:entry { self->traceme = 1; } @@ -47,7 +47,7 @@ fbt:::entry printf("called %s\n", probefunc); } -fbt::ioctl:return +fbt::kern_ioctl:return /self->traceme/ { self->traceme = 0; Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/funcs/tst.strjoin.d ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/funcs/tst.strjoin.d Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/funcs/tst.strjoin.d Sun Aug 4 16:23:09 2013 (r253929) @@ -24,7 +24,9 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ #pragma D option quiet @@ -36,3 +38,8 @@ BEGIN printf("%s\n", strjoin("", "")); exit(0); } + +BEGIN +{ + exit(1); +} Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.BadAlign.d ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.BadAlign.d Sun Aug 4 16:10:09 2013 (r253928) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.BadAlign.d Sun Aug 4 16:23:09 2013 (r253929) @@ -24,7 +24,9 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ /* * ASSERTION: This test reproduces the alignment error. @@ -39,9 +41,10 @@ BEGIN { - x = (int *) 64; + x = (int *)64; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-user@FreeBSD.ORG Sun Aug 4 17:10:20 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 44D09EAE; Sun, 4 Aug 2013 17:10:20 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2E5302054; Sun, 4 Aug 2013 17:10:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r74HAJeg027620; Sun, 4 Aug 2013 17:10:19 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r74HABfg026105; Sun, 4 Aug 2013 17:10:11 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308041710.r74HABfg026105@svn.freebsd.org> From: Attilio Rao Date: Sun, 4 Aug 2013 17:10:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253931 - in user/attilio/vmobj-fullread: . bin/sh cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs cddl/contrib/opensolaris... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 17:10:20 -0000 Author: attilio Date: Sun Aug 4 17:10:10 2013 New Revision: 253931 URL: http://svnweb.freebsd.org/changeset/base/253931 Log: MFC Added: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PRINT_AGG.bad.d - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PRINT_AGG.bad.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.dyn.d - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.dyn.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.xlate.d - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.xlate.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.xlate.d.out - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/tst.xlate.d.out user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.signs.d - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.signs.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.signs.d.out - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.signs.d.out user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/err.D_TRACE_AGG.bad.d - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/err.D_TRACE_AGG.bad.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/tst.dyn.d - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/tst.dyn.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability1.ksh - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability1.ksh user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability1.ksh.out - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability1.ksh.out user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability2.ksh - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability2.ksh user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability2.ksh.out - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/tst.TestTransStability2.ksh.out user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/types/tst.const.d - copied unchanged from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/types/tst.const.d user/attilio/vmobj-fullread/contrib/apr-util/crypto/apr_passwd.c - copied unchanged from r253930, user/attilio/vmobj-readlock/contrib/apr-util/crypto/apr_passwd.c user/attilio/vmobj-fullread/contrib/apr-util/crypto/crypt_blowfish.c - copied unchanged from r253930, user/attilio/vmobj-readlock/contrib/apr-util/crypto/crypt_blowfish.c user/attilio/vmobj-fullread/contrib/apr-util/crypto/crypt_blowfish.h - copied unchanged from r253930, user/attilio/vmobj-readlock/contrib/apr-util/crypto/crypt_blowfish.h user/attilio/vmobj-fullread/contrib/serf/SConstruct - copied unchanged from r253930, user/attilio/vmobj-readlock/contrib/serf/SConstruct user/attilio/vmobj-fullread/contrib/serf/auth/auth_spnego.c - copied unchanged from r253930, user/attilio/vmobj-readlock/contrib/serf/auth/auth_spnego.c user/attilio/vmobj-fullread/contrib/serf/auth/auth_spnego.h - copied unchanged from r253930, user/attilio/vmobj-readlock/contrib/serf/auth/auth_spnego.h user/attilio/vmobj-fullread/contrib/serf/auth/auth_spnego_gss.c - copied unchanged from r253930, user/attilio/vmobj-readlock/contrib/serf/auth/auth_spnego_gss.c user/attilio/vmobj-fullread/contrib/serf/auth/auth_spnego_sspi.c - copied unchanged from r253930, user/attilio/vmobj-readlock/contrib/serf/auth/auth_spnego_sspi.c user/attilio/vmobj-fullread/contrib/serf/build/check.py - copied unchanged from r253930, user/attilio/vmobj-readlock/contrib/serf/build/check.py user/attilio/vmobj-fullread/contrib/serf/build/serf.pc.in - copied unchanged from r253930, user/attilio/vmobj-readlock/contrib/serf/build/serf.pc.in user/attilio/vmobj-fullread/etc/libmap.conf - copied unchanged from r253930, user/attilio/vmobj-readlock/etc/libmap.conf user/attilio/vmobj-fullread/lib/libc++/libc++.ldscript - copied unchanged from r253930, user/attilio/vmobj-readlock/lib/libc++/libc++.ldscript user/attilio/vmobj-fullread/lib/libusb/libusb-0.1.pc - copied unchanged from r253930, user/attilio/vmobj-readlock/lib/libusb/libusb-0.1.pc user/attilio/vmobj-fullread/lib/libusb/libusb-1.0.pc - copied unchanged from r253930, user/attilio/vmobj-readlock/lib/libusb/libusb-1.0.pc user/attilio/vmobj-fullread/lib/libusb/libusb-2.0.pc - copied unchanged from r253930, user/attilio/vmobj-readlock/lib/libusb/libusb-2.0.pc user/attilio/vmobj-fullread/share/man/man4/rsu.4 - copied unchanged from r253930, user/attilio/vmobj-readlock/share/man/man4/rsu.4 user/attilio/vmobj-fullread/share/man/man4/rsufw.4 - copied unchanged from r253930, user/attilio/vmobj-readlock/share/man/man4/rsufw.4 user/attilio/vmobj-fullread/sys/arm/freescale/imx/files.imx51 - copied unchanged from r253930, user/attilio/vmobj-readlock/sys/arm/freescale/imx/files.imx51 user/attilio/vmobj-fullread/sys/arm/freescale/imx/std.imx51 - copied unchanged from r253930, user/attilio/vmobj-readlock/sys/arm/freescale/imx/std.imx51 user/attilio/vmobj-fullread/sys/contrib/dev/rsu/ - copied from r253930, user/attilio/vmobj-readlock/sys/contrib/dev/rsu/ user/attilio/vmobj-fullread/sys/dev/cxgbe/t4_tracer.c - copied unchanged from r253930, user/attilio/vmobj-readlock/sys/dev/cxgbe/t4_tracer.c user/attilio/vmobj-fullread/sys/dev/iwn/if_iwn_devid.h - copied unchanged from r253930, user/attilio/vmobj-readlock/sys/dev/iwn/if_iwn_devid.h user/attilio/vmobj-fullread/sys/dev/usb/wlan/if_rsu.c - copied unchanged from r253930, user/attilio/vmobj-readlock/sys/dev/usb/wlan/if_rsu.c user/attilio/vmobj-fullread/sys/dev/usb/wlan/if_rsureg.h - copied unchanged from r253930, user/attilio/vmobj-readlock/sys/dev/usb/wlan/if_rsureg.h user/attilio/vmobj-fullread/sys/dev/wi/if_wi_macio.c - copied unchanged from r253930, user/attilio/vmobj-readlock/sys/dev/wi/if_wi_macio.c user/attilio/vmobj-fullread/sys/libkern/flsll.c - copied unchanged from r253930, user/attilio/vmobj-readlock/sys/libkern/flsll.c user/attilio/vmobj-fullread/sys/modules/usb/rsu/ - copied from r253930, user/attilio/vmobj-readlock/sys/modules/usb/rsu/ user/attilio/vmobj-fullread/sys/modules/usb/rsufw/ - copied from r253930, user/attilio/vmobj-readlock/sys/modules/usb/rsufw/ user/attilio/vmobj-fullread/sys/modules/usb/runfw/ - copied from r253930, user/attilio/vmobj-readlock/sys/modules/usb/runfw/ user/attilio/vmobj-fullread/tools/build/options/WITH_GNU_PATCH - copied unchanged from r253930, user/attilio/vmobj-readlock/tools/build/options/WITH_GNU_PATCH Deleted: user/attilio/vmobj-fullread/bin/sh/init.h user/attilio/vmobj-fullread/bin/sh/mkinit.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.complex.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PRINT_DYN.bad.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/translators/man.TestTransStability.d user/attilio/vmobj-fullread/contrib/apr-util/aprutil.dsp user/attilio/vmobj-fullread/contrib/apr-util/crypto/apr_crypto_nss.dsp user/attilio/vmobj-fullread/contrib/apr-util/crypto/apr_crypto_openssl.dsp user/attilio/vmobj-fullread/contrib/apr-util/dbd/apr_dbd_freetds.dsp user/attilio/vmobj-fullread/contrib/apr-util/dbd/apr_dbd_mysql.dsp user/attilio/vmobj-fullread/contrib/apr-util/dbd/apr_dbd_odbc.dsp user/attilio/vmobj-fullread/contrib/apr-util/dbd/apr_dbd_oracle.dsp user/attilio/vmobj-fullread/contrib/apr-util/dbd/apr_dbd_pgsql.dsp user/attilio/vmobj-fullread/contrib/apr-util/dbd/apr_dbd_sqlite2.dsp user/attilio/vmobj-fullread/contrib/apr-util/dbd/apr_dbd_sqlite3.dsp user/attilio/vmobj-fullread/contrib/apr-util/dbm/apr_dbm_db.dsp user/attilio/vmobj-fullread/contrib/apr-util/dbm/apr_dbm_gdbm.dsp user/attilio/vmobj-fullread/contrib/apr-util/ldap/apr_ldap.dsp user/attilio/vmobj-fullread/contrib/apr-util/libaprutil.dsp user/attilio/vmobj-fullread/contrib/apr-util/test/testutildll.dsp user/attilio/vmobj-fullread/contrib/apr-util/test/testutillib.dsp user/attilio/vmobj-fullread/contrib/serf/Makefile.in user/attilio/vmobj-fullread/contrib/serf/auth/auth_kerb.c user/attilio/vmobj-fullread/contrib/serf/auth/auth_kerb.h user/attilio/vmobj-fullread/contrib/serf/auth/auth_kerb_gss.c user/attilio/vmobj-fullread/contrib/serf/auth/auth_kerb_sspi.c user/attilio/vmobj-fullread/contrib/serf/build/apr_common.m4 user/attilio/vmobj-fullread/contrib/serf/build/config.guess user/attilio/vmobj-fullread/contrib/serf/build/config.sub user/attilio/vmobj-fullread/contrib/serf/build/find_apr.m4 user/attilio/vmobj-fullread/contrib/serf/build/find_apu.m4 user/attilio/vmobj-fullread/contrib/serf/build/get-version.sh user/attilio/vmobj-fullread/contrib/serf/build/install.sh user/attilio/vmobj-fullread/contrib/serf/build/serf.def user/attilio/vmobj-fullread/contrib/serf/buildconf user/attilio/vmobj-fullread/contrib/serf/config.layout user/attilio/vmobj-fullread/contrib/serf/configure user/attilio/vmobj-fullread/contrib/serf/configure.in user/attilio/vmobj-fullread/contrib/serf/serf.mak user/attilio/vmobj-fullread/contrib/serf/serf.pc.in user/attilio/vmobj-fullread/contrib/serf/serfmake user/attilio/vmobj-fullread/sys/arm/freescale/imx/imx.files user/attilio/vmobj-fullread/sys/arm/freescale/imx/std.imx user/attilio/vmobj-fullread/sys/modules/runfw/ user/attilio/vmobj-fullread/tools/build/options/WITH_BSD_PATCH Modified: user/attilio/vmobj-fullread/MAINTAINERS (contents, props changed) user/attilio/vmobj-fullread/Makefile user/attilio/vmobj-fullread/Makefile.inc1 user/attilio/vmobj-fullread/UPDATING user/attilio/vmobj-fullread/bin/sh/Makefile user/attilio/vmobj-fullread/bin/sh/TOUR user/attilio/vmobj-fullread/bin/sh/eval.c user/attilio/vmobj-fullread/bin/sh/eval.h user/attilio/vmobj-fullread/bin/sh/exec.c user/attilio/vmobj-fullread/bin/sh/input.c user/attilio/vmobj-fullread/bin/sh/input.h user/attilio/vmobj-fullread/bin/sh/jobs.c user/attilio/vmobj-fullread/bin/sh/main.c user/attilio/vmobj-fullread/bin/sh/output.c user/attilio/vmobj-fullread/bin/sh/parser.c user/attilio/vmobj-fullread/bin/sh/parser.h user/attilio/vmobj-fullread/bin/sh/redir.c user/attilio/vmobj-fullread/bin/sh/redir.h user/attilio/vmobj-fullread/bin/sh/shell.h user/attilio/vmobj-fullread/bin/sh/trap.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts/dtest.pl user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionentry.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionreturnvalue.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.ioctlargs.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offset.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offsetzero.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.return0.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.tailcall.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/funcs/tst.strjoin.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.BadAlign.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.InvalidAddress2.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.InvalidAddress3.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.InvalidAddress4.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PRINT_VOID.bad.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/err.D_PROTO_LEN.bad.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/printf/tst.ints.d.out user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/safety/tst.copyin.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/speculation/err.BufSizeVariations2.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/err.D_PROTO_LEN.bad.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/trace/err.D_TRACE_VOID.bad.d user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libdtrace/common/dt_aggregate.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libdtrace/common/dt_cc.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libdtrace/common/dt_cg.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libdtrace/common/dt_decl.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libdtrace/common/dt_error.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libdtrace/common/dt_errtags.h user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libdtrace/common/dt_impl.h user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libdtrace/common/dt_parser.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libdtrace/common/dt_printf.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libdtrace/common/dt_subr.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libdtrace/i386/dt_isadep.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/tools/ctf/cvt/ctf.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/tools/ctf/cvt/ctftools.h user/attilio/vmobj-fullread/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c user/attilio/vmobj-fullread/cddl/contrib/opensolaris/tools/ctf/cvt/st_parse.c user/attilio/vmobj-fullread/contrib/apr-util/CHANGES user/attilio/vmobj-fullread/contrib/apr-util/Makefile.win user/attilio/vmobj-fullread/contrib/apr-util/NWGNUmakefile user/attilio/vmobj-fullread/contrib/apr-util/apr-util.spec user/attilio/vmobj-fullread/contrib/apr-util/buckets/apr_brigade.c user/attilio/vmobj-fullread/contrib/apr-util/buckets/apr_buckets_alloc.c user/attilio/vmobj-fullread/contrib/apr-util/build-outputs.mk user/attilio/vmobj-fullread/contrib/apr-util/build.conf user/attilio/vmobj-fullread/contrib/apr-util/configure user/attilio/vmobj-fullread/contrib/apr-util/configure.in user/attilio/vmobj-fullread/contrib/apr-util/crypto/apr_crypto.c user/attilio/vmobj-fullread/contrib/apr-util/crypto/apr_crypto_nss.c user/attilio/vmobj-fullread/contrib/apr-util/crypto/apr_crypto_openssl.c user/attilio/vmobj-fullread/contrib/apr-util/crypto/apr_md5.c user/attilio/vmobj-fullread/contrib/apr-util/dbd/NWGNUdbdmysql user/attilio/vmobj-fullread/contrib/apr-util/dbd/apr_dbd_freetds.c user/attilio/vmobj-fullread/contrib/apr-util/dbd/apr_dbd_mysql.c user/attilio/vmobj-fullread/contrib/apr-util/dbd/apr_dbd_pgsql.c user/attilio/vmobj-fullread/contrib/apr-util/dbd/apr_dbd_sqlite2.c user/attilio/vmobj-fullread/contrib/apr-util/hooks/apr_hooks.c user/attilio/vmobj-fullread/contrib/apr-util/include/apr_base64.h user/attilio/vmobj-fullread/contrib/apr-util/include/apr_buckets.h user/attilio/vmobj-fullread/contrib/apr-util/include/apr_md5.h user/attilio/vmobj-fullread/contrib/apr-util/include/apr_queue.h user/attilio/vmobj-fullread/contrib/apr-util/include/apu.h.in user/attilio/vmobj-fullread/contrib/apr-util/include/apu_version.h user/attilio/vmobj-fullread/contrib/apr-util/include/private/apr_crypto_internal.h user/attilio/vmobj-fullread/contrib/apr-util/memcache/apr_memcache.c user/attilio/vmobj-fullread/contrib/apr-util/misc/apr_thread_pool.c user/attilio/vmobj-fullread/contrib/apr-util/test/Makefile.in user/attilio/vmobj-fullread/contrib/apr-util/test/Makefile.win user/attilio/vmobj-fullread/contrib/apr-util/test/NWGNUmakefile user/attilio/vmobj-fullread/contrib/apr-util/test/testbuckets.c user/attilio/vmobj-fullread/contrib/apr-util/test/testmd5.c user/attilio/vmobj-fullread/contrib/apr-util/test/testmemcache.c user/attilio/vmobj-fullread/contrib/apr-util/test/testpass.c user/attilio/vmobj-fullread/contrib/apr-util/test/testuri.c user/attilio/vmobj-fullread/contrib/apr-util/test/testutil.c user/attilio/vmobj-fullread/contrib/apr-util/test/testutil.h user/attilio/vmobj-fullread/contrib/apr-util/uri/apr_uri.c user/attilio/vmobj-fullread/contrib/apr/CHANGES user/attilio/vmobj-fullread/contrib/apr/Makefile.win user/attilio/vmobj-fullread/contrib/apr/apr.spec user/attilio/vmobj-fullread/contrib/apr/atomic/unix/ia32.c user/attilio/vmobj-fullread/contrib/apr/atomic/unix/ppc.c user/attilio/vmobj-fullread/contrib/apr/atomic/unix/s390.c user/attilio/vmobj-fullread/contrib/apr/configure user/attilio/vmobj-fullread/contrib/apr/docs/pool-design.html user/attilio/vmobj-fullread/contrib/apr/file_io/unix/seek.c user/attilio/vmobj-fullread/contrib/apr/include/apr.hw user/attilio/vmobj-fullread/contrib/apr/include/apr_allocator.h user/attilio/vmobj-fullread/contrib/apr/include/apr_general.h user/attilio/vmobj-fullread/contrib/apr/include/apr_network_io.h user/attilio/vmobj-fullread/contrib/apr/include/apr_pools.h user/attilio/vmobj-fullread/contrib/apr/include/apr_strings.h user/attilio/vmobj-fullread/contrib/apr/include/apr_thread_proc.h user/attilio/vmobj-fullread/contrib/apr/include/apr_version.h user/attilio/vmobj-fullread/contrib/apr/libapr.rc user/attilio/vmobj-fullread/contrib/apr/network_io/unix/multicast.c user/attilio/vmobj-fullread/contrib/apr/network_io/unix/sendrecv.c user/attilio/vmobj-fullread/contrib/apr/network_io/unix/sockaddr.c user/attilio/vmobj-fullread/contrib/apr/network_io/unix/sockopt.c user/attilio/vmobj-fullread/contrib/apr/random/unix/sha2.c user/attilio/vmobj-fullread/contrib/apr/random/unix/sha2.h user/attilio/vmobj-fullread/contrib/apr/random/unix/sha2_glue.c user/attilio/vmobj-fullread/contrib/apr/tables/apr_tables.c user/attilio/vmobj-fullread/contrib/apr/threadproc/unix/thread.c user/attilio/vmobj-fullread/contrib/bind9/lib/dns/rdata/generic/keydata_65533.c user/attilio/vmobj-fullread/contrib/binutils/ld/ldmain.c user/attilio/vmobj-fullread/contrib/bmake/ChangeLog user/attilio/vmobj-fullread/contrib/bmake/Makefile user/attilio/vmobj-fullread/contrib/bmake/bmake.1 user/attilio/vmobj-fullread/contrib/bmake/bmake.cat1 user/attilio/vmobj-fullread/contrib/bmake/compat.c user/attilio/vmobj-fullread/contrib/bmake/configure user/attilio/vmobj-fullread/contrib/bmake/configure.in user/attilio/vmobj-fullread/contrib/bmake/job.c user/attilio/vmobj-fullread/contrib/bmake/job.h user/attilio/vmobj-fullread/contrib/bmake/main.c user/attilio/vmobj-fullread/contrib/bmake/make.1 user/attilio/vmobj-fullread/contrib/bmake/make.h user/attilio/vmobj-fullread/contrib/bmake/meta.c user/attilio/vmobj-fullread/contrib/bmake/mk/ChangeLog user/attilio/vmobj-fullread/contrib/bmake/mk/init.mk user/attilio/vmobj-fullread/contrib/bmake/mk/install-mk user/attilio/vmobj-fullread/contrib/bmake/mk/lib.mk user/attilio/vmobj-fullread/contrib/bmake/mk/meta2deps.py user/attilio/vmobj-fullread/contrib/bmake/mk/own.mk user/attilio/vmobj-fullread/contrib/bmake/mk/prog.mk user/attilio/vmobj-fullread/contrib/bmake/parse.c user/attilio/vmobj-fullread/contrib/bmake/unit-tests/Makefile.in user/attilio/vmobj-fullread/contrib/bmake/var.c user/attilio/vmobj-fullread/contrib/llvm/tools/clang/lib/Headers/cpuid.h user/attilio/vmobj-fullread/contrib/serf/CHANGES user/attilio/vmobj-fullread/contrib/serf/README user/attilio/vmobj-fullread/contrib/serf/auth/auth.c user/attilio/vmobj-fullread/contrib/serf/auth/auth.h user/attilio/vmobj-fullread/contrib/serf/auth/auth_basic.c user/attilio/vmobj-fullread/contrib/serf/auth/auth_digest.c user/attilio/vmobj-fullread/contrib/serf/buckets/aggregate_buckets.c user/attilio/vmobj-fullread/contrib/serf/buckets/buckets.c user/attilio/vmobj-fullread/contrib/serf/buckets/dechunk_buckets.c user/attilio/vmobj-fullread/contrib/serf/buckets/headers_buckets.c user/attilio/vmobj-fullread/contrib/serf/buckets/limit_buckets.c user/attilio/vmobj-fullread/contrib/serf/buckets/request_buckets.c user/attilio/vmobj-fullread/contrib/serf/buckets/response_buckets.c user/attilio/vmobj-fullread/contrib/serf/buckets/simple_buckets.c user/attilio/vmobj-fullread/contrib/serf/buckets/ssl_buckets.c user/attilio/vmobj-fullread/contrib/serf/build/gen_def.py user/attilio/vmobj-fullread/contrib/serf/context.c user/attilio/vmobj-fullread/contrib/serf/incoming.c user/attilio/vmobj-fullread/contrib/serf/outgoing.c user/attilio/vmobj-fullread/contrib/serf/serf.h user/attilio/vmobj-fullread/contrib/serf/serf_bucket_types.h user/attilio/vmobj-fullread/contrib/serf/serf_bucket_util.h user/attilio/vmobj-fullread/contrib/serf/serf_private.h user/attilio/vmobj-fullread/contrib/serf/ssltunnel.c user/attilio/vmobj-fullread/contrib/subversion/CHANGES user/attilio/vmobj-fullread/contrib/subversion/Makefile.in user/attilio/vmobj-fullread/contrib/subversion/build-outputs.mk user/attilio/vmobj-fullread/contrib/subversion/configure user/attilio/vmobj-fullread/contrib/subversion/configure.ac user/attilio/vmobj-fullread/contrib/subversion/get-deps.sh user/attilio/vmobj-fullread/contrib/subversion/subversion/include/private/svn_client_private.h user/attilio/vmobj-fullread/contrib/subversion/subversion/include/private/svn_io_private.h user/attilio/vmobj-fullread/contrib/subversion/subversion/include/private/svn_ra_private.h user/attilio/vmobj-fullread/contrib/subversion/subversion/include/svn_version.h user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_client/client.h user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_client/commit.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_client/copy.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_client/diff.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_client/diff_local.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_client/log.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_client/merge.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_client/mergeinfo.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_client/ra.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_client/switch.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_delta/compat.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_fs_base/bdb/env.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_fs_base/tree.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_fs_fs/fs_fs.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_fs_fs/rep-cache-db.h user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_fs_fs/tree.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra/ra_loader.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra/util.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/blame.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/commit.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/getdate.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/getlocations.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/getlocationsegments.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/getlocks.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/inherited_props.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/log.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/mergeinfo.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/options.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/property.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/ra_serf.h user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/replay.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/serf.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/update.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/util.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_serf/xml.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_svn/client.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_ra_svn/protocol user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_repos/fs-wrap.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_subr/config_file.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_subr/gpg_agent.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_subr/internal_statements.h user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_subr/io.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_subr/named_atomic.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_subr/sqlite.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_subr/stream.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_subr/subst.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_subr/utf.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/adm_ops.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/crop.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/externals.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/update_editor.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/upgrade.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/wc-checks.h user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/wc-metadata.h user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/wc-queries.h user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/wc-queries.sql user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/wc_db.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/wc_db.h user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/wc_db_update_move.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/wc_db_wcroot.c user/attilio/vmobj-fullread/contrib/subversion/subversion/libsvn_wc/workqueue.c user/attilio/vmobj-fullread/contrib/subversion/subversion/svn/cl.h user/attilio/vmobj-fullread/contrib/subversion/subversion/svn/conflict-callbacks.c user/attilio/vmobj-fullread/contrib/subversion/subversion/svn/file-merge.c user/attilio/vmobj-fullread/contrib/subversion/subversion/svn/merge-cmd.c user/attilio/vmobj-fullread/contrib/subversion/subversion/svn/mergeinfo-cmd.c user/attilio/vmobj-fullread/contrib/subversion/subversion/svn/svn.c user/attilio/vmobj-fullread/contrib/subversion/subversion/svn/util.c user/attilio/vmobj-fullread/contrib/subversion/subversion/svnadmin/svnadmin.c user/attilio/vmobj-fullread/contrib/subversion/subversion/svnlook/svnlook.c user/attilio/vmobj-fullread/contrib/subversion/subversion/svnserve/serve.c user/attilio/vmobj-fullread/contrib/subversion/win-tests.py user/attilio/vmobj-fullread/contrib/tcpdump/tcpdump.c user/attilio/vmobj-fullread/etc/Makefile user/attilio/vmobj-fullread/etc/devd/usb.conf user/attilio/vmobj-fullread/etc/mtree/BSD.usr.dist user/attilio/vmobj-fullread/etc/network.subr user/attilio/vmobj-fullread/etc/rc.d/netif user/attilio/vmobj-fullread/gnu/usr.bin/patch/Makefile user/attilio/vmobj-fullread/lib/libc++/Makefile user/attilio/vmobj-fullread/lib/libc/gen/sysctl.3 user/attilio/vmobj-fullread/lib/libc/gen/wordexp.c user/attilio/vmobj-fullread/lib/libc/sys/kqueue.2 user/attilio/vmobj-fullread/lib/libfetch/common.c user/attilio/vmobj-fullread/lib/libfetch/common.h user/attilio/vmobj-fullread/lib/libfetch/fetch.3 user/attilio/vmobj-fullread/lib/libfetch/http.c user/attilio/vmobj-fullread/lib/libusb/Makefile user/attilio/vmobj-fullread/lib/msun/src/math.h user/attilio/vmobj-fullread/release/ia64/mkisoimages.sh user/attilio/vmobj-fullread/release/sparc64/mkisoimages.sh user/attilio/vmobj-fullread/sbin/fsck_ffs/fsck.h user/attilio/vmobj-fullread/sbin/fsck_ffs/fsck_ffs.8 user/attilio/vmobj-fullread/sbin/fsck_ffs/fsutil.c user/attilio/vmobj-fullread/sbin/fsck_ffs/main.c user/attilio/vmobj-fullread/sbin/ipfw/ipfw.8 user/attilio/vmobj-fullread/sbin/mdconfig/mdconfig.c user/attilio/vmobj-fullread/sbin/route/route.c user/attilio/vmobj-fullread/sbin/swapon/swapon.c user/attilio/vmobj-fullread/share/man/man4/Makefile user/attilio/vmobj-fullread/share/man/man4/bridge.4 user/attilio/vmobj-fullread/share/man/man5/rc.conf.5 user/attilio/vmobj-fullread/share/man/man9/Makefile user/attilio/vmobj-fullread/share/man/man9/microuptime.9 user/attilio/vmobj-fullread/share/mk/bsd.own.mk user/attilio/vmobj-fullread/sys/amd64/amd64/identcpu.c user/attilio/vmobj-fullread/sys/amd64/amd64/initcpu.c user/attilio/vmobj-fullread/sys/amd64/amd64/pmap.c user/attilio/vmobj-fullread/sys/amd64/amd64/sys_machdep.c user/attilio/vmobj-fullread/sys/amd64/include/md_var.h user/attilio/vmobj-fullread/sys/amd64/vmm/intel/vmx.c user/attilio/vmobj-fullread/sys/amd64/vmm/vmm.c user/attilio/vmobj-fullread/sys/amd64/vmm/vmm_instruction_emul.c user/attilio/vmobj-fullread/sys/arm/arm/busdma_machdep-v6.c user/attilio/vmobj-fullread/sys/arm/arm/cpufunc.c user/attilio/vmobj-fullread/sys/arm/arm/gic.c user/attilio/vmobj-fullread/sys/arm/arm/identcpu.c user/attilio/vmobj-fullread/sys/arm/arm/pl310.c user/attilio/vmobj-fullread/sys/arm/conf/BEAGLEBONE user/attilio/vmobj-fullread/sys/arm/conf/EFIKA_MX user/attilio/vmobj-fullread/sys/arm/conf/RPI-B user/attilio/vmobj-fullread/sys/arm/freescale/imx/console.c user/attilio/vmobj-fullread/sys/arm/include/armreg.h user/attilio/vmobj-fullread/sys/arm/include/kdb.h user/attilio/vmobj-fullread/sys/arm/include/smp.h user/attilio/vmobj-fullread/sys/arm/ti/am335x/am335x_prcm.c user/attilio/vmobj-fullread/sys/arm/ti/ti_prcm.h user/attilio/vmobj-fullread/sys/boot/arm/uboot/Makefile user/attilio/vmobj-fullread/sys/boot/fdt/dts/am335x.dtsi user/attilio/vmobj-fullread/sys/boot/ficl/loader.c user/attilio/vmobj-fullread/sys/boot/forth/loader.rc user/attilio/vmobj-fullread/sys/cam/ata/ata_da.c user/attilio/vmobj-fullread/sys/cam/scsi/scsi_da.c user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.c user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_destroy.c user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/ddt.h user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_impl.h user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_objset.h user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_send.h user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dataset.h user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_destroy.h user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/uts/common/sys/fs/zfs.h user/attilio/vmobj-fullread/sys/cddl/dev/dtrace/amd64/dis_tables.c user/attilio/vmobj-fullread/sys/cddl/dev/dtrace/amd64/dis_tables.h user/attilio/vmobj-fullread/sys/cddl/dev/dtrace/i386/dis_tables.c user/attilio/vmobj-fullread/sys/cddl/dev/dtrace/i386/dis_tables.h user/attilio/vmobj-fullread/sys/conf/NOTES user/attilio/vmobj-fullread/sys/conf/WITHOUT_SOURCELESS_UCODE user/attilio/vmobj-fullread/sys/conf/files user/attilio/vmobj-fullread/sys/conf/newvers.sh user/attilio/vmobj-fullread/sys/conf/options user/attilio/vmobj-fullread/sys/contrib/dev/acpica/changes.txt (contents, props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/common/dmextern.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/common/getopt.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/compiler/asloffset.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/compiler/asloperands.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/compiler/asloptions.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/compiler/dttemplate.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/executer/exoparg1.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/hardware/hwtimer.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/namespace/nspredef.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/namespace/nswalk.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/namespace/nsxfeval.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/tables/tbfadt.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/tables/tbxfroot.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/utilities/utglobal.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/utilities/utosi.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/utilities/utxface.c user/attilio/vmobj-fullread/sys/contrib/dev/acpica/include/acglobal.h user/attilio/vmobj-fullread/sys/contrib/dev/acpica/include/aclocal.h user/attilio/vmobj-fullread/sys/contrib/dev/acpica/include/acnamesp.h user/attilio/vmobj-fullread/sys/contrib/dev/acpica/include/acpixf.h user/attilio/vmobj-fullread/sys/contrib/dev/acpica/include/actables.h user/attilio/vmobj-fullread/sys/contrib/dev/acpica/include/actypes.h user/attilio/vmobj-fullread/sys/contrib/dev/acpica/include/acutils.h user/attilio/vmobj-fullread/sys/dev/ahci/ahci.c user/attilio/vmobj-fullread/sys/dev/ahci/ahci.h user/attilio/vmobj-fullread/sys/dev/aic7xxx/aic7xxx_pci.c user/attilio/vmobj-fullread/sys/dev/ata/chipsets/ata-promise.c user/attilio/vmobj-fullread/sys/dev/ciss/ciss.c user/attilio/vmobj-fullread/sys/dev/cxgbe/adapter.h user/attilio/vmobj-fullread/sys/dev/cxgbe/common/t4_hw.c user/attilio/vmobj-fullread/sys/dev/cxgbe/common/t4_hw.h user/attilio/vmobj-fullread/sys/dev/cxgbe/t4_ioctl.h user/attilio/vmobj-fullread/sys/dev/cxgbe/t4_main.c user/attilio/vmobj-fullread/sys/dev/cxgbe/t4_sge.c user/attilio/vmobj-fullread/sys/dev/drm2/i915/intel_ringbuffer.c user/attilio/vmobj-fullread/sys/dev/drm2/ttm/ttm_bo_vm.c user/attilio/vmobj-fullread/sys/dev/filemon/filemon.c user/attilio/vmobj-fullread/sys/dev/ipmi/ipmi_isa.c user/attilio/vmobj-fullread/sys/dev/ipmi/ipmivars.h user/attilio/vmobj-fullread/sys/dev/iwn/if_iwn.c user/attilio/vmobj-fullread/sys/dev/iwn/if_iwnreg.h user/attilio/vmobj-fullread/sys/dev/ixgbe/ixgbe.c user/attilio/vmobj-fullread/sys/dev/mps/mps_sas.c user/attilio/vmobj-fullread/sys/dev/scc/scc_bfe.h user/attilio/vmobj-fullread/sys/dev/scc/scc_bfe_ebus.c user/attilio/vmobj-fullread/sys/dev/scc/scc_bfe_macio.c user/attilio/vmobj-fullread/sys/dev/scc/scc_bfe_quicc.c user/attilio/vmobj-fullread/sys/dev/scc/scc_bfe_sbus.c user/attilio/vmobj-fullread/sys/dev/scc/scc_core.c user/attilio/vmobj-fullread/sys/dev/scc/scc_dev_quicc.c user/attilio/vmobj-fullread/sys/dev/scc/scc_dev_sab82532.c user/attilio/vmobj-fullread/sys/dev/scc/scc_dev_z8530.c user/attilio/vmobj-fullread/sys/dev/sound/pci/ds1.c user/attilio/vmobj-fullread/sys/dev/uart/uart_bus_pci.c user/attilio/vmobj-fullread/sys/dev/usb/gadget/g_audio.c user/attilio/vmobj-fullread/sys/dev/usb/gadget/g_keyboard.c user/attilio/vmobj-fullread/sys/dev/usb/gadget/g_modem.c user/attilio/vmobj-fullread/sys/dev/usb/gadget/g_mouse.c user/attilio/vmobj-fullread/sys/dev/usb/net/if_ipheth.c user/attilio/vmobj-fullread/sys/dev/usb/wlan/if_rumvar.h user/attilio/vmobj-fullread/sys/dev/usb/wlan/if_runvar.h user/attilio/vmobj-fullread/sys/dev/usb/wlan/if_uathvar.h user/attilio/vmobj-fullread/sys/dev/usb/wlan/if_upgtvar.h user/attilio/vmobj-fullread/sys/dev/usb/wlan/if_uralvar.h user/attilio/vmobj-fullread/sys/dev/usb/wlan/if_urtwnreg.h user/attilio/vmobj-fullread/sys/dev/usb/wlan/if_urtwvar.h user/attilio/vmobj-fullread/sys/dev/usb/wlan/if_zydreg.h user/attilio/vmobj-fullread/sys/dev/watchdog/watchdog.c user/attilio/vmobj-fullread/sys/dev/wi/if_wi.c user/attilio/vmobj-fullread/sys/fs/cd9660/iso.h user/attilio/vmobj-fullread/sys/fs/devfs/devfs_rule.c user/attilio/vmobj-fullread/sys/fs/ext2fs/ext2_hash.c user/attilio/vmobj-fullread/sys/fs/ext2fs/ext2_lookup.c user/attilio/vmobj-fullread/sys/fs/fuse/fuse_kernel.h user/attilio/vmobj-fullread/sys/fs/tmpfs/tmpfs_vnops.c user/attilio/vmobj-fullread/sys/gdb/gdb_cons.c user/attilio/vmobj-fullread/sys/geom/raid/g_raid.c user/attilio/vmobj-fullread/sys/geom/raid/g_raid_ctl.c user/attilio/vmobj-fullread/sys/i386/i386/identcpu.c user/attilio/vmobj-fullread/sys/i386/i386/initcpu.c user/attilio/vmobj-fullread/sys/i386/i386/sys_machdep.c user/attilio/vmobj-fullread/sys/i386/include/md_var.h user/attilio/vmobj-fullread/sys/kern/init_main.c user/attilio/vmobj-fullread/sys/kern/kern_malloc.c user/attilio/vmobj-fullread/sys/kern/kern_ntptime.c user/attilio/vmobj-fullread/sys/kern/kern_uuid.c user/attilio/vmobj-fullread/sys/kern/sched_4bsd.c user/attilio/vmobj-fullread/sys/kern/subr_vmem.c user/attilio/vmobj-fullread/sys/kern/uipc_shm.c user/attilio/vmobj-fullread/sys/kern/uipc_syscalls.c user/attilio/vmobj-fullread/sys/kern/vfs_aio.c user/attilio/vmobj-fullread/sys/kern/vfs_mountroot.c user/attilio/vmobj-fullread/sys/kern/vfs_subr.c user/attilio/vmobj-fullread/sys/mips/conf/DIR-825 user/attilio/vmobj-fullread/sys/mips/conf/DIR-825.hints user/attilio/vmobj-fullread/sys/modules/Makefile user/attilio/vmobj-fullread/sys/modules/cxgbe/if_cxgbe/Makefile user/attilio/vmobj-fullread/sys/modules/dtrace/dtrace/Makefile user/attilio/vmobj-fullread/sys/modules/iwn/Makefile user/attilio/vmobj-fullread/sys/modules/usb/Makefile user/attilio/vmobj-fullread/sys/modules/wi/Makefile user/attilio/vmobj-fullread/sys/net/ieee8023ad_lacp.c user/attilio/vmobj-fullread/sys/net/ieee8023ad_lacp.h user/attilio/vmobj-fullread/sys/net/if_bridge.c user/attilio/vmobj-fullread/sys/net/if_ethersubr.c user/attilio/vmobj-fullread/sys/net/if_lagg.c user/attilio/vmobj-fullread/sys/net/if_lagg.h user/attilio/vmobj-fullread/sys/net/rtsock.c user/attilio/vmobj-fullread/sys/net80211/ieee80211.h user/attilio/vmobj-fullread/sys/net80211/ieee80211_mesh.c user/attilio/vmobj-fullread/sys/net80211/ieee80211_output.c user/attilio/vmobj-fullread/sys/net80211/ieee80211_proto.h user/attilio/vmobj-fullread/sys/netinet/sctp_usrreq.c user/attilio/vmobj-fullread/sys/netinet6/in6.c user/attilio/vmobj-fullread/sys/netinet6/in6_ifattach.c user/attilio/vmobj-fullread/sys/netinet6/nd6.c user/attilio/vmobj-fullread/sys/netpfil/pf/if_pfsync.c user/attilio/vmobj-fullread/sys/nfs/bootp_subr.c user/attilio/vmobj-fullread/sys/ofed/drivers/net/mlx4/en_netdev.c user/attilio/vmobj-fullread/sys/ofed/drivers/net/mlx4/en_tx.c user/attilio/vmobj-fullread/sys/ofed/include/linux/module.h user/attilio/vmobj-fullread/sys/powerpc/include/spr.h user/attilio/vmobj-fullread/sys/powerpc/ofw/ofw_real.c user/attilio/vmobj-fullread/sys/powerpc/powermac/macio.c user/attilio/vmobj-fullread/sys/powerpc/powermac/maciovar.h user/attilio/vmobj-fullread/sys/sys/kernel.h user/attilio/vmobj-fullread/sys/sys/libkern.h user/attilio/vmobj-fullread/sys/sys/param.h user/attilio/vmobj-fullread/sys/sys/priv.h user/attilio/vmobj-fullread/sys/sys/sched.h user/attilio/vmobj-fullread/sys/sys/uuid.h user/attilio/vmobj-fullread/sys/vm/uma_int.h user/attilio/vmobj-fullread/sys/vm/vm.h user/attilio/vmobj-fullread/sys/vm/vm_glue.c user/attilio/vmobj-fullread/sys/vm/vm_map.c user/attilio/vmobj-fullread/sys/vm/vm_page.c user/attilio/vmobj-fullread/sys/vm/vm_page.h user/attilio/vmobj-fullread/sys/vm/vm_pageout.c user/attilio/vmobj-fullread/sys/vm/vm_param.h user/attilio/vmobj-fullread/sys/vm/vnode_pager.c user/attilio/vmobj-fullread/sys/x86/include/specialreg.h user/attilio/vmobj-fullread/tools/regression/lib/libc/gen/test-wordexp.c user/attilio/vmobj-fullread/tools/tools/crypto/ipsecstats.c user/attilio/vmobj-fullread/tools/tools/cxgbetool/cxgbetool.c user/attilio/vmobj-fullread/tools/tools/sysdoc/tunables.mdoc user/attilio/vmobj-fullread/tools/tools/zfsboottest/Makefile user/attilio/vmobj-fullread/usr.bin/bmake/Makefile user/attilio/vmobj-fullread/usr.bin/bmake/config.h user/attilio/vmobj-fullread/usr.bin/bmake/unit-tests/Makefile user/attilio/vmobj-fullread/usr.bin/fetch/fetch.1 user/attilio/vmobj-fullread/usr.bin/fetch/fetch.c user/attilio/vmobj-fullread/usr.bin/find/function.c user/attilio/vmobj-fullread/usr.bin/grep/regex/tre-fastmatch.c user/attilio/vmobj-fullread/usr.bin/patch/Makefile user/attilio/vmobj-fullread/usr.bin/patch/patch.c user/attilio/vmobj-fullread/usr.bin/script/script.1 user/attilio/vmobj-fullread/usr.bin/svn/lib/libapr_util/Makefile user/attilio/vmobj-fullread/usr.bin/svn/lib/libapr_util/apu.h user/attilio/vmobj-fullread/usr.bin/svn/lib/libserf/Makefile user/attilio/vmobj-fullread/usr.bin/svn/svn_private_config.h user/attilio/vmobj-fullread/usr.bin/truss/syscall.h user/attilio/vmobj-fullread/usr.bin/truss/syscalls.c user/attilio/vmobj-fullread/usr.sbin/makefs/cd9660.c user/attilio/vmobj-fullread/usr.sbin/makefs/cd9660/iso9660_rrip.c user/attilio/vmobj-fullread/usr.sbin/makefs/ffs/ufs_bswap.h user/attilio/vmobj-fullread/usr.sbin/pkg/config.c user/attilio/vmobj-fullread/usr.sbin/watchdogd/watchdogd.8 user/attilio/vmobj-fullread/usr.sbin/watchdogd/watchdogd.c Directory Properties: user/attilio/vmobj-fullread/ (props changed) user/attilio/vmobj-fullread/cddl/ (props changed) user/attilio/vmobj-fullread/cddl/contrib/opensolaris/ (props changed) user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/ (props changed) user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/zfs/ (props changed) user/attilio/vmobj-fullread/cddl/contrib/opensolaris/lib/libzfs/ (props changed) user/attilio/vmobj-fullread/contrib/apr/ (props changed) user/attilio/vmobj-fullread/contrib/apr-util/ (props changed) user/attilio/vmobj-fullread/contrib/bind9/ (props changed) user/attilio/vmobj-fullread/contrib/binutils/ (props changed) user/attilio/vmobj-fullread/contrib/bmake/ (props changed) user/attilio/vmobj-fullread/contrib/llvm/ (props changed) user/attilio/vmobj-fullread/contrib/llvm/tools/clang/ (props changed) user/attilio/vmobj-fullread/contrib/serf/ (props changed) user/attilio/vmobj-fullread/contrib/subversion/ (props changed) user/attilio/vmobj-fullread/contrib/tcpdump/ (props changed) user/attilio/vmobj-fullread/lib/libc/ (props changed) user/attilio/vmobj-fullread/sbin/ (props changed) user/attilio/vmobj-fullread/sbin/ipfw/ (props changed) user/attilio/vmobj-fullread/share/man/man4/ (props changed) user/attilio/vmobj-fullread/sys/ (props changed) user/attilio/vmobj-fullread/sys/amd64/vmm/ (props changed) user/attilio/vmobj-fullread/sys/boot/ (props changed) user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/ (props changed) user/attilio/vmobj-fullread/sys/conf/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/common/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/compiler/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/debugger/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/disassembler/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/dispatcher/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/events/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/executer/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/hardware/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/namespace/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/parser/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/resources/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/tables/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/components/utilities/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/include/ (props changed) user/attilio/vmobj-fullread/sys/contrib/dev/acpica/os_specific/ (props changed) Modified: user/attilio/vmobj-fullread/MAINTAINERS ============================================================================== --- user/attilio/vmobj-fullread/MAINTAINERS Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/MAINTAINERS Sun Aug 4 17:10:10 2013 (r253931) @@ -128,3 +128,6 @@ sysdoc trhodes Pre-commit review prefe sh(1) jilles Pre-commit review requested. This also applies to kill(1), printf(1) and test(1) which are compiled in as builtins. +nvme(4) jimharris Pre-commit review requested. +nvd(4) jimharris Pre-commit review requested. +nvmecontrol(8) jimharris Pre-commit review requested. Modified: user/attilio/vmobj-fullread/Makefile ============================================================================== --- user/attilio/vmobj-fullread/Makefile Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/Makefile Sun Aug 4 17:10:10 2013 (r253931) @@ -130,11 +130,34 @@ _MAKEOBJDIRPREFIX!= /usr/bin/env -i PATH .error MAKEOBJDIRPREFIX can only be set in environment, not as a global\ (in make.conf(5)) or command-line variable. .endif -MAKEPATH= ${MAKEOBJDIRPREFIX}${.CURDIR}/make.${MACHINE} -BINMAKE= \ - `if [ -x ${MAKEPATH}/make ]; then echo ${MAKEPATH}/make; else echo ${MAKE}; fi` \ + +# We often need to use the tree's version of make to build it. +# Choices add to complexity though. +# We cannot blindly use a make which may not be the one we want +# so be exlicit - until all choice is removed. +.if !defined(WITHOUT_BMAKE) +WANT_MAKE= bmake +.else +WANT_MAKE= fmake +.endif +MYMAKE= ${MAKEOBJDIRPREFIX}${.CURDIR}/make.${MACHINE}/${WANT_MAKE} +.if defined(.PARSEDIR) +HAVE_MAKE= bmake +.else +HAVE_MAKE= fmake +.endif +.if exists(${MYMAKE}) +SUB_MAKE:= ${MYMAKE} -m ${.CURDIR}/share/mk +.elif ${WANT_MAKE} != ${HAVE_MAKE} || ${WANT_MAKE} != "bmake" +# It may not exist yet but we may cause it to. +# In the case of fmake, upgrade_checks may cause a newer version to be built. +SUB_MAKE= `test -x ${MYMAKE} && echo ${MYMAKE} || echo ${MAKE}` \ -m ${.CURDIR}/share/mk -_MAKE= PATH=${PATH} ${BINMAKE} -f Makefile.inc1 TARGET=${_TARGET} TARGET_ARCH=${_TARGET_ARCH} +.else +SUB_MAKE= ${MAKE} -m ${.CURDIR}/share/mk +.endif + +_MAKE= PATH=${PATH} ${SUB_MAKE} -f Makefile.inc1 TARGET=${_TARGET} TARGET_ARCH=${_TARGET_ARCH} # Guess machine architecture from machine type, and vice versa. .if !defined(TARGET_ARCH) && defined(TARGET) @@ -291,11 +314,13 @@ kernel: buildkernel installkernel # Perform a few tests to determine if the installed tools are adequate # for building the world. # +# Note: if we ever need to care about the version of bmake, simply testing +# MAKE_VERSION against a required version should suffice. +# upgrade_checks: -.if !defined(.PARSEDIR) -.if !defined(WITHOUT_BMAKE) - (cd ${.CURDIR} && ${MAKE} bmake) -.else +.if ${HAVE_MAKE} != ${WANT_MAKE} + @(cd ${.CURDIR} && ${MAKE} ${WANT_MAKE:S,^f,,}) +.elif ${WANT_MAKE} == "fmake" @if ! (cd ${.CURDIR}/tools/build/make_check && \ PATH=${PATH} ${BINMAKE} obj >/dev/null 2>&1 && \ PATH=${PATH} ${BINMAKE} >/dev/null 2>&1); \ @@ -303,14 +328,13 @@ upgrade_checks: (cd ${.CURDIR} && ${MAKE} make); \ fi .endif -.endif # # Upgrade make(1) to the current version using the installed # headers, libraries and tools. Also, allow the location of # the system bsdmake-like utility to be overridden. # -MMAKEENV= MAKEOBJDIRPREFIX=${MAKEPATH} \ +MMAKEENV= MAKEOBJDIRPREFIX=${MYMAKE:H} \ DESTDIR= \ INSTALL="sh ${.CURDIR}/tools/install.sh" MMAKE= ${MMAKEENV} ${MAKE} \ @@ -327,7 +351,7 @@ make bmake: .PHONY ${MMAKE} obj && \ ${MMAKE} depend && \ ${MMAKE} all && \ - ${MMAKE} install DESTDIR=${MAKEPATH} BINDIR= + ${MMAKE} install DESTDIR=${MYMAKE:H} BINDIR= PROGNAME=${MYMAKE:T} tinderbox: @cd ${.CURDIR} && ${MAKE} DOING_TINDERBOX=YES universe @@ -377,7 +401,8 @@ MAKEFAIL=tee -a ${FAILFILE} MAKEFAIL=cat .endif -universe: universe_prologue upgrade_checks +universe_prologue: upgrade_checks +universe: universe_prologue universe_prologue: @echo "--------------------------------------------------------------" @echo ">>> make universe started on ${STARTTIME}" @@ -387,9 +412,9 @@ universe_prologue: .endif .for target in ${TARGETS} universe: universe_${target} -.ORDER: universe_prologue upgrade_checks universe_${target} universe_epilogue +universe_epilogue: universe_${target} universe_${target}: universe_${target}_prologue -universe_${target}_prologue: +universe_${target}_prologue: universe_prologue @echo ">> ${target} started on `LC_ALL=C date`" .if !defined(MAKE_JUST_KERNELS) .for target_arch in ${TARGET_ARCHES_${target}} @@ -397,7 +422,7 @@ universe_${target}: universe_${target}_$ universe_${target}_${target_arch}: universe_${target}_prologue @echo ">> ${target}.${target_arch} ${UNIVERSE_TARGET} started on `LC_ALL=C date`" @(cd ${.CURDIR} && env __MAKE_CONF=/dev/null \ - ${MAKE} ${JFLAG} ${UNIVERSE_TARGET} \ + ${SUB_MAKE} ${JFLAG} ${UNIVERSE_TARGET} \ TARGET=${target} \ TARGET_ARCH=${target_arch} \ > _.${target}.${target_arch}.${UNIVERSE_TARGET} 2>&1 || \ @@ -418,11 +443,11 @@ universe_${target}: universe_${target}_k universe_${target}_kernels: universe_${target}_prologue .if exists(${KERNSRCDIR}/${target}/conf/NOTES) @(cd ${KERNSRCDIR}/${target}/conf && env __MAKE_CONF=/dev/null \ - ${MAKE} LINT > ${.CURDIR}/_.${target}.makeLINT 2>&1 || \ + ${SUB_MAKE} LINT > ${.CURDIR}/_.${target}.makeLINT 2>&1 || \ (echo "${target} 'make LINT' failed," \ "check _.${target}.makeLINT for details"| ${MAKEFAIL})) .endif - @cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} TARGET=${target} \ + @cd ${.CURDIR} && ${SUB_MAKE} ${.MAKEFLAGS} TARGET=${target} \ universe_kernels .endif @echo ">> ${target} completed on `LC_ALL=C date`" @@ -445,7 +470,7 @@ TARGET_ARCH_${kernel}!= cd ${KERNSRCDIR} universe_kernconfs: universe_kernconf_${TARGET}_${kernel} universe_kernconf_${TARGET}_${kernel}: @(cd ${.CURDIR} && env __MAKE_CONF=/dev/null \ - ${MAKE} ${JFLAG} buildkernel \ + ${SUB_MAKE} ${JFLAG} buildkernel \ TARGET=${TARGET} \ TARGET_ARCH=${TARGET_ARCH_${kernel}} \ KERNCONF=${kernel} \ Modified: user/attilio/vmobj-fullread/Makefile.inc1 ============================================================================== --- user/attilio/vmobj-fullread/Makefile.inc1 Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/Makefile.inc1 Sun Aug 4 17:10:10 2013 (r253931) @@ -833,6 +833,18 @@ distributeworld installworld: installche awk 'BEGIN { print "#${MTREE_MAGIC}" } !/ type=/ { file = $$1 } / type=/ { if ($$1 == file) { sub(/^\.\/${dist}\//, "./"); print } }' > \ ${DESTDIR}/${DISTDIR}/${dist}.meta .endfor +.if ${MK_DEBUG_FILES} != "no" +. for dist in base ${EXTRA_DISTRIBUTIONS} + @# For each file that exists in this dist, print the corresponding + @# line from the METALOG. This relies on the fact that + @# a line containing only the filename will sort immediatly before + @# the relevant mtree line. + cd ${DESTDIR}/${DISTDIR}; \ + find ./${dist}/usr/lib/debug | sort -u ${METALOG} - | \ + awk 'BEGIN { print "#${MTREE_MAGIC}" } !/ type=/ { file = $$1 } / type=/ { if ($$1 == file) { sub(/^\.\/${dist}\//, "./"); print } }' > \ + ${DESTDIR}/${DISTDIR}/${dist}.debug.meta +. endfor +.endif .endif .endif @@ -841,13 +853,29 @@ packageworld: .if defined(NO_ROOT) ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz \ + --exclude usr/lib/debug \ @${DESTDIR}/${DISTDIR}/${dist}.meta .else ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ - tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz . + tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.txz \ + --exclude usr/lib/debug . .endif .endfor +.if ${MK_DEBUG_FILES} != "no" +. for dist in base ${EXTRA_DISTRIBUTIONS} +. if defined(NO_ROOT) + ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ + tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.debug.txz \ + @${DESTDIR}/${DISTDIR}/${dist}.debug.meta +. else + ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \ + tar cvJfL ${DESTDIR}/${DISTDIR}/${dist}.debug.txz \ + usr/lib/debug +. endif +. endfor +.endif + # # reinstall # Modified: user/attilio/vmobj-fullread/UPDATING ============================================================================== --- user/attilio/vmobj-fullread/UPDATING Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/UPDATING Sun Aug 4 17:10:10 2013 (r253931) @@ -31,6 +31,26 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20130802: + find -delete can now delete the pathnames given as arguments, + instead of only files found below them or if the pathname did + not contain any slashes. Formerly, the following error message + would result: + + find: -delete: : relative path potentially not safe + + Deleting the pathnames given as arguments can be prevented + without error messages using -mindepth 1 or by changing + directory and passing "." as argument to find. This works in the + old as well as the new version of find. + +20130726: + Behavior of devfs rules path matching has been changed. + Pattern is now always matched against fully qualified devfs + path and slash characters must be explicitly matched by + slashes in pattern (FNM_PATHNAME). Rulesets involving devfs + subdirectories must be reviewed. + 20130716: The default ARM ABI has changed to the ARM EABI. The old ABI is incompatible with the ARM EABI and all programs and modules will Modified: user/attilio/vmobj-fullread/bin/sh/Makefile ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/Makefile Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/Makefile Sun Aug 4 17:10:10 2013 (r253931) @@ -8,7 +8,7 @@ SHSRCS= alias.c arith_yacc.c arith_yylex histedit.c input.c jobs.c kill.c mail.c main.c memalloc.c miscbltin.c \ mystring.c options.c output.c parser.c printf.c redir.c show.c \ test.c trap.c var.c -GENSRCS= builtins.c init.c nodes.c syntax.c +GENSRCS= builtins.c nodes.c syntax.c GENHDRS= builtins.h nodes.h syntax.h token.h SRCS= ${SHSRCS} ${GENSRCS} ${GENHDRS} @@ -30,26 +30,21 @@ WFORMAT=0 ${.CURDIR}/../test \ ${.CURDIR}/../../usr.bin/printf -CLEANFILES+= mkinit mkinit.o mknodes mknodes.o \ +CLEANFILES+= mknodes mknodes.o \ mksyntax mksyntax.o CLEANFILES+= ${GENSRCS} ${GENHDRS} -build-tools: mkinit mknodes mksyntax +build-tools: mknodes mksyntax .ORDER: builtins.c builtins.h builtins.c builtins.h: mkbuiltins builtins.def sh ${.CURDIR}/mkbuiltins ${.CURDIR} -init.c: mkinit alias.c eval.c exec.c input.c jobs.c options.c parser.c \ - redir.c trap.c var.c - ./mkinit ${.ALLSRC:S/^mkinit$//} - # XXX this is just to stop the default .c rule being used, so that the # intermediate object has a fixed name. # XXX we have a default .c rule, but no default .o rule. .o: ${CC} ${CFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} -mkinit: mkinit.o mknodes: mknodes.o mksyntax: mksyntax.o Modified: user/attilio/vmobj-fullread/bin/sh/TOUR ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/TOUR Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/TOUR Sun Aug 4 17:10:10 2013 (r253931) @@ -25,38 +25,11 @@ programs is: program input files generates ------- ----------- --------- mkbuiltins builtins builtins.h builtins.c - mkinit *.c init.c mknodes nodetypes nodes.h nodes.c mksyntax - syntax.h syntax.c mktokens - token.h -There are undoubtedly too many of these. Mkinit searches all the -C source files for entries looking like: - - RESET { - x = 2; /* executed when the shell does a longjmp - back to the main command loop */ - } - -It pulls this code out into routines which are when particular -events occur. The intent is to improve modularity by isolating -the information about which modules need to be explicitly -initialized/reset within the modules themselves. - -Mkinit recognizes several constructs for placing declarations in -the init.c file. - INCLUDE "file.h" -includes a file. The storage class MKINIT makes a declaration -available in the init.c file, for example: - MKINIT int funcnest; /* depth of function calls */ -MKINIT alone on a line introduces a structure or union declara- -tion: - MKINIT - struct redirtab { - short renamed[10]; - }; -Preprocessor #define statements are copied to init.c without any -special action to request this. +There are undoubtedly too many of these. EXCEPTIONS: Code for dealing with exceptions appears in exceptions.c. The C language doesn't include exception handling, Modified: user/attilio/vmobj-fullread/bin/sh/eval.c ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/eval.c Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/eval.c Sun Aug 4 17:10:10 2013 (r253931) @@ -76,7 +76,7 @@ __FBSDID("$FreeBSD$"); int evalskip; /* set if we are skipping commands */ int skipcount; /* number of levels to skip */ -MKINIT int loopnest; /* current loop nesting level */ +static int loopnest; /* current loop nesting level */ int funcnest; /* depth of function calls */ static int builtin_flags; /* evalcommand flags for builtins */ @@ -104,16 +104,13 @@ static void prehash(union node *); * Called to reset things after an exception. */ -#ifdef mkinit -INCLUDE "eval.h" - -RESET { +void +reseteval(void) +{ evalskip = 0; loopnest = 0; funcnest = 0; } -#endif - /* Modified: user/attilio/vmobj-fullread/bin/sh/eval.h ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/eval.h Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/eval.h Sun Aug 4 17:10:10 2013 (r253931) @@ -46,6 +46,8 @@ struct backcmd { /* result of evalbackc struct job *jp; /* job structure for command */ }; +void reseteval(void); + /* flags in argument to evaltree/evalstring */ #define EV_EXIT 01 /* exit after evaluating tree */ #define EV_TESTED 02 /* exit status is checked; ignore -e flag */ Modified: user/attilio/vmobj-fullread/bin/sh/exec.c ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/exec.c Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/exec.c Sun Aug 4 17:10:10 2013 (r253931) @@ -70,7 +70,6 @@ __FBSDID("$FreeBSD$"); #include "syntax.h" #include "memalloc.h" #include "error.h" -#include "init.h" #include "mystring.h" #include "show.h" #include "jobs.h" Modified: user/attilio/vmobj-fullread/bin/sh/input.c ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/input.c Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/input.c Sun Aug 4 17:10:10 2013 (r253931) @@ -92,7 +92,7 @@ struct parsefile { int plinno = 1; /* input line number */ int parsenleft; /* copy of parsefile->nleft */ -MKINIT int parselleft; /* copy of parsefile->lleft */ +static int parselleft; /* copy of parsefile->lleft */ const char *parsenextc; /* copy of parsefile->nextc */ static char basebuf[BUFSIZ + 1];/* buffer for top level input file */ static struct parsefile basepf = { /* top level input file */ @@ -108,15 +108,12 @@ static void pushfile(void); static int preadfd(void); static void popstring(void); -#ifdef mkinit -INCLUDE "input.h" -INCLUDE "error.h" - -RESET { +void +resetinput(void) +{ popallfiles(); parselleft = parsenleft = 0; /* clear input buffer */ } -#endif /* Modified: user/attilio/vmobj-fullread/bin/sh/input.h ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/input.h Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/input.h Sun Aug 4 17:10:10 2013 (r253931) @@ -47,6 +47,7 @@ extern const char *parsenextc; /* next c struct alias; struct parsefile; +void resetinput(void); char *pfgets(char *, int); int pgetc(void); int preadbuffer(void); Modified: user/attilio/vmobj-fullread/bin/sh/jobs.c ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/jobs.c Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/jobs.c Sun Aug 4 17:10:10 2013 (r253931) @@ -77,8 +77,8 @@ __FBSDID("$FreeBSD$"); static struct job *jobtab; /* array of jobs */ static int njobs; /* size of array */ -MKINIT pid_t backgndpid = -1; /* pid of last background process */ -MKINIT struct job *bgjob = NULL; /* last background process */ +static pid_t backgndpid = -1; /* pid of last background process */ +static struct job *bgjob = NULL; /* last background process */ #if JOBS static struct job *jobmru; /* most recently used job list */ static pid_t initialpgrp; /* pgrp of shell on invocation */ @@ -116,7 +116,7 @@ static void showjob(struct job *, int); * Turn job control on and off. */ -MKINIT int jobctl; +static int jobctl; #if JOBS void Modified: user/attilio/vmobj-fullread/bin/sh/main.c ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/main.c Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/main.c Sun Aug 4 17:10:10 2013 (r253931) @@ -68,10 +68,10 @@ __FBSDID("$FreeBSD$"); #include "show.h" #include "memalloc.h" #include "error.h" -#include "init.h" #include "mystring.h" #include "exec.h" #include "cd.h" +#include "redir.h" #include "builtins.h" int rootpid; @@ -79,6 +79,7 @@ int rootshell; struct jmploc main_handler; int localeisutf8, initial_localeisutf8; +static void reset(void); static void cmdloop(int); static void read_profile(const char *); static char *find_dot_file(char *); @@ -179,6 +180,14 @@ state4: return 0; } +static void +reset(void) +{ + reseteval(); + resetinput(); + resetparser(); + resetredir(); +} /* * Read and execute commands. "Top" is nonzero for the top level command Modified: user/attilio/vmobj-fullread/bin/sh/output.c ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/output.c Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/output.c Sun Aug 4 17:10:10 2013 (r253931) @@ -75,25 +75,6 @@ struct output memout = {NULL, 0, NULL, 0 struct output *out1 = &output; struct output *out2 = &errout; - - -#ifdef mkinit - -INCLUDE "output.h" -INCLUDE "memalloc.h" - -RESET { - out1 = &output; - out2 = &errout; - if (memout.buf != NULL) { - ckfree(memout.buf); - memout.buf = NULL; - } -} - -#endif - - void outcslow(int c, struct output *file) { Modified: user/attilio/vmobj-fullread/bin/sh/parser.c ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/parser.c Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/parser.c Sun Aug 4 17:10:10 2013 (r253931) @@ -96,9 +96,9 @@ static struct heredoc *heredoclist; /* l static int doprompt; /* if set, prompt the user */ static int needprompt; /* true if interactive and at start of line */ static int lasttoken; /* last token read */ -MKINIT int tokpushback; /* last token pushed back */ +int tokpushback; /* last token pushed back */ static char *wordtext; /* text of last word returned by readtoken */ -MKINIT int checkkwd; /* 1 == check for kwds, 2 == also eat newlines */ +static int checkkwd; static struct nodelist *backquotelist; static union node *redirnode; static struct heredoc *heredoc; @@ -1819,13 +1819,13 @@ parsearith: { } /* end of readtoken */ - -#ifdef mkinit -RESET { +void +resetparser(void) +{ tokpushback = 0; checkkwd = 0; } -#endif + /* * Returns true if the text contains nothing to expand (no dollar signs Modified: user/attilio/vmobj-fullread/bin/sh/parser.h ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/parser.h Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/parser.h Sun Aug 4 17:10:10 2013 (r253931) @@ -79,6 +79,7 @@ extern const char *const parsekwd[]; union node *parsecmd(int); void fixredir(union node *, const char *, int); +void resetparser(void); int goodname(const char *); int isassignment(const char *); char *getprompt(void *); Modified: user/attilio/vmobj-fullread/bin/sh/redir.c ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/redir.c Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/redir.c Sun Aug 4 17:10:10 2013 (r253931) @@ -66,14 +66,13 @@ __FBSDID("$FreeBSD$"); #define CLOSED -1 /* fd was not open before redir */ -MKINIT struct redirtab { struct redirtab *next; int renamed[10]; }; -MKINIT struct redirtab *redirlist; +static struct redirtab *redirlist; /* * We keep track of whether or not fd0 has been redirected. This is for @@ -324,16 +323,13 @@ popredir(void) * Undo all redirections. Called on error or interrupt. */ -#ifdef mkinit - -INCLUDE "redir.h" - -RESET { +void +resetredir(void) +{ while (redirlist) popredir(); } -#endif /* Return true if fd 0 has already been redirected at least once. */ int Modified: user/attilio/vmobj-fullread/bin/sh/redir.h ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/redir.h Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/redir.h Sun Aug 4 17:10:10 2013 (r253931) @@ -40,6 +40,7 @@ union node; void redirect(union node *, int); void popredir(void); +void resetredir(void); int fd0_redirected_p(void); void clearredir(void); Modified: user/attilio/vmobj-fullread/bin/sh/shell.h ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/shell.h Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/shell.h Sun Aug 4 17:10:10 2013 (r253931) @@ -63,7 +63,6 @@ typedef intmax_t arith_t; #define ARITH_MAX INTMAX_MAX typedef void *pointer; -#define MKINIT /* empty */ #include Modified: user/attilio/vmobj-fullread/bin/sh/trap.c ============================================================================== --- user/attilio/vmobj-fullread/bin/sh/trap.c Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/bin/sh/trap.c Sun Aug 4 17:10:10 2013 (r253931) @@ -72,7 +72,7 @@ __FBSDID("$FreeBSD$"); #define S_RESET 5 /* temporary - to reset a hard ignored sig */ -MKINIT char sigmode[NSIG]; /* current value of signal */ +static char sigmode[NSIG]; /* current value of signal */ volatile sig_atomic_t pendingsig; /* indicates some signal received */ int in_dotrap; /* do we execute in a trap handler? */ static char *volatile trap[NSIG]; /* trap handler commands */ Modified: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts/dtest.pl ============================================================================== --- user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts/dtest.pl Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/scripts/dtest.pl Sun Aug 4 17:10:10 2013 (r253931) @@ -583,6 +583,8 @@ if ($opt_x) { die "$PNAME: failed to open $PNAME.$$.log: $!\n" unless (!$opt_l || open(LOG, ">$PNAME.$$.log")); +$ENV{'DTRACE_DEBUG_REGSET'} = 'true'; + if ($opt_g) { $ENV{'UMEM_DEBUG'} = 'default,verbose'; $ENV{'UMEM_LOGGING'} = 'fail,contents'; Copied: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d (from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d Sun Aug 4 17:10:10 2013 (r253931, copy of r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d) @@ -0,0 +1,35 @@ +/* + * CDDL HEADER START + * + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + +#pragma D option quiet + +/* + * Make sure the sizes of compatible keys doesn't affect the sort order. + */ + +BEGIN +{ + @[(int)1, 0] = sum(10); + @[(uint64_t)2, 0] = sum(20); + @[(int)3, 0] = sum(30); + @[(uint64_t)4, 0] = sum(40); + printa(@); + + exit(0); +} Copied: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out (from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out Sun Aug 4 17:10:10 2013 (r253931, copy of r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/aggs/tst.sizedkeys.d.out) @@ -0,0 +1,6 @@ + + 1 0 10 + 2 0 20 + 3 0 30 + 4 0 40 + Copied: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out (from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out Sun Aug 4 17:10:10 2013 (r253931, copy of r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.basics.d.out) @@ -0,0 +1,8 @@ +The value of i is 6 +The value of i is 18 +The value of i is 72 +The value of i is 25920 +The value of i is 935761216 +The value of i is -91738734 +The value of i is -91738729 + Copied: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d (from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d Sun Aug 4 17:10:10 2013 (r253931, copy of r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d) @@ -0,0 +1,50 @@ +/* + * CDDL HEADER START + * + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + +/* + * Test compile-time casting between integer types of different size. + */ + +#pragma D option quiet + +int64_t x; + +BEGIN +{ + x = (int32_t)(int16_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (int32_t)(uint16_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (uint32_t)(int16_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (uint32_t)(uint16_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + printf("\n"); + + x = (int16_t)(int32_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (int16_t)(uint32_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (uint16_t)(int32_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + x = (uint16_t)(uint32_t)0xfff0; + printf("%16x %20d %20u\n", x, x, x); + + exit(0); +} Copied: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out (from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out Sun Aug 4 17:10:10 2013 (r253931, copy of r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compcast.d.out) @@ -0,0 +1,10 @@ +fffffffffffffff0 -16 18446744073709551600 + fff0 65520 65520 + fffffff0 4294967280 4294967280 + fff0 65520 65520 + +fffffffffffffff0 -16 18446744073709551600 +fffffffffffffff0 -16 18446744073709551600 + fff0 65520 65520 + fff0 65520 65520 + Copied: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d (from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d Sun Aug 4 17:10:10 2013 (r253931, copy of r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d) @@ -0,0 +1,36 @@ +/* + * CDDL HEADER START + * + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + +/* + * Test narrowing at assignment. + */ + +#pragma D option quiet + +uint16_t x; +uint32_t y; + +BEGIN +{ + x = 0xbeefcafe; + y = x; + printf("%x", y); /* where's the beef? */ + + exit(0); +} Copied: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out (from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out Sun Aug 4 17:10:10 2013 (r253931, copy of r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.compnarrowassign.d.out) @@ -0,0 +1 @@ +cafe Copied: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d (from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d Sun Aug 4 17:10:10 2013 (r253931, copy of r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d) @@ -0,0 +1,52 @@ +/* + * CDDL HEADER START + * + * This file and its contents are supplied under the terms of the + * Common Development and Distribution License ("CDDL"), version 1.0. + * You may only use this file in accordance with the terms of version + * 1.0 of the CDDL. + * + * A full copy of the text of the CDDL should have accompanied this + * source. A copy of the CDDL is also available via the Internet at + * http://www.illumos.org/license/CDDL. + * + * CDDL HEADER END + */ + +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + +/* + * Test execution-time casting between integer types of different size. + */ + +#pragma D option quiet + +int64_t x; + +BEGIN +{ + z = 0xfff0; + + x = (int32_t)(int16_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (int32_t)(uint16_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (uint32_t)(int16_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (uint32_t)(uint16_t)z; + printf("%16x %20d %20u\n", x, x, x); + printf("\n"); + + x = (int16_t)(int32_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (int16_t)(uint32_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (uint16_t)(int32_t)z; + printf("%16x %20d %20u\n", x, x, x); + x = (uint16_t)(uint32_t)z; + printf("%16x %20d %20u\n", x, x, x); + + exit(0); +} Copied: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out (from r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out Sun Aug 4 17:10:10 2013 (r253931, copy of r253930, user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/arithmetic/tst.execcast.d.out) @@ -0,0 +1,10 @@ +fffffffffffffff0 -16 18446744073709551600 + fff0 65520 65520 + fffffff0 4294967280 4294967280 + fff0 65520 65520 + +fffffffffffffff0 -16 18446744073709551600 +fffffffffffffff0 -16 18446744073709551600 + fff0 65520 65520 + fff0 65520 65520 + Modified: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionentry.d ============================================================================== --- user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionentry.d Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionentry.d Sun Aug 4 17:10:10 2013 (r253931) @@ -36,12 +36,12 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:entry +fbt::kern_ioctl:entry { printf("Entering the ioctl function\n"); } -fbt::ioctl:return +fbt::kern_ioctl:return { printf("Returning from ioctl function\n"); exit(0); Modified: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionreturnvalue.d ============================================================================== --- user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionreturnvalue.d Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.functionreturnvalue.d Sun Aug 4 17:10:10 2013 (r253931) @@ -36,7 +36,7 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:return +fbt::kern_ioctl:return { printf("The function return value is stored in %u\n", arg1); exit(0); Modified: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.ioctlargs.d ============================================================================== --- user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.ioctlargs.d Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.ioctlargs.d Sun Aug 4 17:10:10 2013 (r253931) @@ -36,13 +36,13 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:entry +fbt::kern_ioctl:entry { printf("Entering the ioctl function\n"); printf("The few arguments are %u %u %u %u\n", arg0, arg1, arg2, arg3); } -fbt::ioctl:return +fbt::kern_ioctl:return { printf("Returning from ioctl function\n"); printf("The few arguments are %u %u %u %u\n", arg0, arg1, arg2, arg3); Modified: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offset.d ============================================================================== --- user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offset.d Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offset.d Sun Aug 4 17:10:10 2013 (r253931) @@ -41,12 +41,12 @@ BEGIN self->traceme = 1; } -fbt::ioctl:entry +fbt::kern_ioctl:entry { printf("Entering the function\n"); } -fbt::ioctl:return +fbt::kern_ioctl:return { printf("The offset = %u\n", arg0); exit(0); Modified: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offsetzero.d ============================================================================== --- user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offsetzero.d Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.offsetzero.d Sun Aug 4 17:10:10 2013 (r253931) @@ -36,14 +36,14 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:entry +fbt::kern_ioctl:entry { printf("Entering the ioctl function\n"); printf("The few arguments are %u %u %u %u\n", arg0, arg1, arg2, arg3); exit(0); } -fbt::ioctl:return +fbt::kern_ioctl:return { printf("Returning from ioctl function\n"); printf("The few arguments are %u %u %u %u\n", arg0, arg1, arg2, arg3); Modified: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.return0.d ============================================================================== --- user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.return0.d Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.return0.d Sun Aug 4 17:10:10 2013 (r253931) @@ -36,7 +36,7 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:return +fbt::kern_ioctl:return /arg1 == 0/ { printf("%s %x returned 0", probefunc, arg0); Modified: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.tailcall.d ============================================================================== --- user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.tailcall.d Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/fbtprovider/tst.tailcall.d Sun Aug 4 17:10:10 2013 (r253931) @@ -36,7 +36,7 @@ #pragma D option quiet #pragma D option statusrate=10ms -fbt::ioctl:entry +fbt::kern_ioctl:entry { self->traceme = 1; } @@ -47,7 +47,7 @@ fbt:::entry printf("called %s\n", probefunc); } -fbt::ioctl:return +fbt::kern_ioctl:return /self->traceme/ { self->traceme = 0; Modified: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/funcs/tst.strjoin.d ============================================================================== --- user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/funcs/tst.strjoin.d Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/funcs/tst.strjoin.d Sun Aug 4 17:10:10 2013 (r253931) @@ -24,7 +24,9 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ #pragma D option quiet @@ -36,3 +38,8 @@ BEGIN printf("%s\n", strjoin("", "")); exit(0); } + +BEGIN +{ + exit(1); +} Modified: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.BadAlign.d ============================================================================== --- user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.BadAlign.d Sun Aug 4 16:25:46 2013 (r253930) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pointers/err.BadAlign.d Sun Aug 4 17:10:10 2013 (r253931) @@ -24,7 +24,9 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ /* * ASSERTION: This test reproduces the alignment error. @@ -39,9 +41,10 @@ BEGIN { - x = (int *) 64; + x = (int *)64; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-user@FreeBSD.ORG Sun Aug 4 17:21:42 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 5699630B; Sun, 4 Aug 2013 17:21:42 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 34E6320A4; Sun, 4 Aug 2013 17:21:42 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r74HLg85030769; Sun, 4 Aug 2013 17:21:42 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r74HLcnR030748; Sun, 4 Aug 2013 17:21:38 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308041721.r74HLcnR030748@svn.freebsd.org> From: Attilio Rao Date: Sun, 4 Aug 2013 17:21:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253932 - in user/attilio/vmobj-readlock/sys: amd64/amd64 amd64/include arm/arm arm/include i386/i386 i386/include i386/xen ia64/ia64 mips/include mips/mips powerpc/aim powerpc/include ... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 17:21:42 -0000 Author: attilio Date: Sun Aug 4 17:21:38 2013 New Revision: 253932 URL: http://svnweb.freebsd.org/changeset/base/253932 Log: Revert mdmemattr consolidation. It is a bit too shady concept and we are not so much space constrained in the end. Use however a __pad0 member to show where some available padding can be stolen to help reusability. Sponsored by: EMC / Isilon storage division Requested by: alc Modified: user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c user/attilio/vmobj-readlock/sys/amd64/include/pmap.h user/attilio/vmobj-readlock/sys/arm/arm/pmap-v6.c user/attilio/vmobj-readlock/sys/arm/arm/pmap.c user/attilio/vmobj-readlock/sys/arm/include/pmap.h user/attilio/vmobj-readlock/sys/i386/i386/pmap.c user/attilio/vmobj-readlock/sys/i386/i386/vm_machdep.c user/attilio/vmobj-readlock/sys/i386/include/pmap.h user/attilio/vmobj-readlock/sys/i386/xen/pmap.c user/attilio/vmobj-readlock/sys/ia64/ia64/pmap.c user/attilio/vmobj-readlock/sys/mips/include/pmap.h user/attilio/vmobj-readlock/sys/mips/mips/pmap.c user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea.c user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea64.c user/attilio/vmobj-readlock/sys/powerpc/include/pmap.h user/attilio/vmobj-readlock/sys/sparc64/include/pmap.h user/attilio/vmobj-readlock/sys/sparc64/sparc64/pmap.c user/attilio/vmobj-readlock/sys/vm/vm_page.h Modified: user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c Sun Aug 4 17:21:38 2013 (r253932) @@ -791,7 +791,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = PAT_WRITE_BACK; + m->md.pat_mode = PAT_WRITE_BACK; } /* @@ -1454,7 +1454,7 @@ pmap_qenter(vm_offset_t sva, vm_page_t * endpte = pte + count; while (pte < endpte) { m = *ma++; - pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->mdmemattr, 0); + pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 0); if ((*pte & (PG_FRAME | PG_PTE_CACHE)) != pa) { oldpte |= *pte; pte_store(pte, pa | PG_G | PG_RW | PG_V); @@ -3470,7 +3470,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, newpte |= PG_U; if (pmap == kernel_pmap) newpte |= PG_G; - newpte |= pmap_cache_bits(m->mdmemattr, 0); + newpte |= pmap_cache_bits(m->md.pat_mode, 0); mpte = NULL; @@ -3658,7 +3658,7 @@ pmap_enter_pde(pmap_t pmap, vm_offset_t " in pmap %p", va, pmap); return (FALSE); } - newpde = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->mdmemattr, 1) | + newpde = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 1) | PG_PS | PG_V; if ((m->oflags & VPO_UNMANAGED) == 0) { newpde |= PG_MANAGED; @@ -3860,7 +3860,7 @@ pmap_enter_quick_locked(pmap_t pmap, vm_ */ pmap_resident_count_inc(pmap, 1); - pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->mdmemattr, 0); + pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 0); if ((prot & VM_PROT_EXECUTE) == 0) pa |= pg_nx; @@ -3901,7 +3901,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs pd_entry_t *pde; vm_paddr_t pa, ptepa; vm_page_t p, pdpg; - vm_memattr_t pat_mode; + int pat_mode; VM_OBJECT_ASSERT_WLOCKED(object); KASSERT(object->type == OBJT_DEVICE || object->type == OBJT_SG, @@ -3912,7 +3912,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs p = vm_page_lookup(object, pindex); KASSERT(p->valid == VM_PAGE_BITS_ALL, ("pmap_object_init_pt: invalid page %p", p)); - pat_mode = p->mdmemattr; + pat_mode = p->md.pat_mode; /* * Abort the mapping if the first page is not physically @@ -3933,7 +3933,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs KASSERT(p->valid == VM_PAGE_BITS_ALL, ("pmap_object_init_pt: invalid page %p", p)); if (pa != VM_PAGE_TO_PHYS(p) || - pat_mode != p->mdmemattr) + pat_mode != p->md.pat_mode) return; p = TAILQ_NEXT(p, listq); } @@ -5121,7 +5121,7 @@ void pmap_page_set_memattr(vm_page_t m, vm_memattr_t ma) { - m->mdmemattr = ma; + m->md.pat_mode = ma; /* * If "m" is a normal page, update its direct mapping. This update @@ -5130,7 +5130,7 @@ pmap_page_set_memattr(vm_page_t m, vm_me */ if ((m->flags & PG_FICTITIOUS) == 0 && pmap_change_attr(PHYS_TO_DMAP(VM_PAGE_TO_PHYS(m)), PAGE_SIZE, - m->mdmemattr)) + m->md.pat_mode)) panic("memory attribute change on the direct map failed"); } Modified: user/attilio/vmobj-readlock/sys/amd64/include/pmap.h ============================================================================== --- user/attilio/vmobj-readlock/sys/amd64/include/pmap.h Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/amd64/include/pmap.h Sun Aug 4 17:21:38 2013 (r253932) @@ -233,6 +233,7 @@ struct pv_chunk; struct md_page { TAILQ_HEAD(,pv_entry) pv_list; + int pat_mode; }; /* @@ -299,7 +300,7 @@ extern vm_paddr_t dump_avail[]; extern vm_offset_t virtual_avail; extern vm_offset_t virtual_end; -#define pmap_page_get_memattr(m) ((m)->mdmemattr) +#define pmap_page_get_memattr(m) ((vm_memattr_t)(m)->md.pat_mode) #define pmap_page_is_write_mapped(m) (((m)->aflags & PGA_WRITEABLE) != 0) #define pmap_unmapbios(va, sz) pmap_unmapdev((va), (sz)) Modified: user/attilio/vmobj-readlock/sys/arm/arm/pmap-v6.c ============================================================================== --- user/attilio/vmobj-readlock/sys/arm/arm/pmap-v6.c Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/arm/arm/pmap-v6.c Sun Aug 4 17:21:38 2013 (r253932) @@ -1183,7 +1183,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = VM_MEMATTR_DEFAULT; + m->md.pv_memattr = VM_MEMATTR_DEFAULT; } static vm_offset_t @@ -2823,7 +2823,7 @@ validate: if (!(prot & VM_PROT_EXECUTE)) npte |= L2_XN; - if (m->mdmemattr != VM_MEMATTR_UNCACHEABLE) + if (m->md.pv_memattr != VM_MEMATTR_UNCACHEABLE) npte |= pte_l2_s_cache_mode; } @@ -4379,7 +4379,7 @@ pmap_page_set_memattr(vm_page_t m, vm_me * Remember the memattr in a field that gets used to set the appropriate * bits in the PTEs as mappings are established. */ - m->mdmemattr = ma; + m->md.pv_memattr = ma; /* * It appears that this function can only be called before any mappings Modified: user/attilio/vmobj-readlock/sys/arm/arm/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/arm/arm/pmap.c Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/arm/arm/pmap.c Sun Aug 4 17:21:38 2013 (r253932) @@ -1380,7 +1380,7 @@ pmap_fix_cache(struct vm_page *pg, pmap_ (pv->pv_flags & PVF_NC)) { pv->pv_flags &= ~PVF_NC; - if (pg->mdmemattr != VM_MEMATTR_UNCACHEABLE) + if (pg->md.pv_memattr != VM_MEMATTR_UNCACHEABLE) pmap_set_cache_entry(pv, pm, va, 1); continue; } @@ -1390,7 +1390,7 @@ pmap_fix_cache(struct vm_page *pg, pmap_ !pmwc && (pv->pv_flags & PVF_NC)) { pv->pv_flags &= ~(PVF_NC | PVF_MWC); - if (pg->mdmemattr != VM_MEMATTR_UNCACHEABLE) + if (pg->md.pv_memattr != VM_MEMATTR_UNCACHEABLE) pmap_set_cache_entry(pv, pm, va, 1); } } @@ -1442,7 +1442,8 @@ pmap_clearbit(struct vm_page *pg, u_int if (!(oflags & maskbits)) { if ((maskbits & PVF_WRITE) && (pv->pv_flags & PVF_NC)) { - if (pg->mdmemattr != VM_MEMATTR_UNCACHEABLE) { + if (pg->md.pv_memattr != + VM_MEMATTR_UNCACHEABLE) { PMAP_LOCK(pm); l2b = pmap_get_l2_bucket(pm, va); ptep = &l2b->l2b_kva[l2pte_index(va)]; @@ -1479,7 +1480,7 @@ pmap_clearbit(struct vm_page *pg, u_int * permission. */ if (maskbits & PVF_WRITE) { - if (pg->mdmemattr != + if (pg->md.pv_memattr != VM_MEMATTR_UNCACHEABLE) npte |= pte_l2_s_cache_mode; pv->pv_flags &= ~(PVF_NC | PVF_MWC); @@ -1810,7 +1811,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = VM_MEMATTR_DEFAULT; + m->md.pv_memattr = VM_MEMATTR_DEFAULT; } /* @@ -3411,7 +3412,7 @@ do_l2b_alloc: (m->oflags & VPO_UNMANAGED) == 0) vm_page_aflag_set(m, PGA_WRITEABLE); } - if (m->mdmemattr != VM_MEMATTR_UNCACHEABLE) + if (m->md.pv_memattr != VM_MEMATTR_UNCACHEABLE) npte |= pte_l2_s_cache_mode; if (m && m == opg) { /* @@ -5036,7 +5037,7 @@ pmap_page_set_memattr(vm_page_t m, vm_me * Remember the memattr in a field that gets used to set the appropriate * bits in the PTEs as mappings are established. */ - m->mdmemattr = ma; + m->md.pv_memattr = ma; /* * It appears that this function can only be called before any mappings Modified: user/attilio/vmobj-readlock/sys/arm/include/pmap.h ============================================================================== --- user/attilio/vmobj-readlock/sys/arm/include/pmap.h Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/arm/include/pmap.h Sun Aug 4 17:21:38 2013 (r253932) @@ -96,7 +96,7 @@ enum mem_type { #endif -#define pmap_page_get_memattr(m) ((m)->mdmemattr) +#define pmap_page_get_memattr(m) ((m)->md.pv_memattr) #define pmap_page_is_mapped(m) (!TAILQ_EMPTY(&(m)->md.pv_list)) #define pmap_page_is_write_mapped(m) (((m)->aflags & PGA_WRITEABLE) != 0) void pmap_page_set_memattr(vm_page_t m, vm_memattr_t ma); @@ -120,6 +120,7 @@ struct pv_chunk; struct md_page { int pvh_attrs; + vm_memattr_t pv_memattr; vm_offset_t pv_kva; /* first kernel VA mapping */ TAILQ_HEAD(,pv_entry) pv_list; }; Modified: user/attilio/vmobj-readlock/sys/i386/i386/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/i386/i386/pmap.c Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/i386/i386/pmap.c Sun Aug 4 17:21:38 2013 (r253932) @@ -645,7 +645,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = PAT_WRITE_BACK; + m->md.pat_mode = PAT_WRITE_BACK; } #ifdef PAE @@ -1534,7 +1534,7 @@ pmap_qenter(vm_offset_t sva, vm_page_t * endpte = pte + count; while (pte < endpte) { m = *ma++; - pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->mdmemattr, 0); + pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 0); if ((*pte & (PG_FRAME | PG_PTE_CACHE)) != pa) { oldpte |= *pte; pte_store(pte, pa | pgeflag | PG_RW | PG_V); @@ -3532,7 +3532,7 @@ validate: /* * Now validate mapping with desired protection/wiring. */ - newpte = (pt_entry_t)(pa | pmap_cache_bits(m->mdmemattr, 0) | PG_V); + newpte = (pt_entry_t)(pa | pmap_cache_bits(m->md.pat_mode, 0) | PG_V); if ((prot & VM_PROT_WRITE) != 0) { newpte |= PG_RW; if ((newpte & PG_MANAGED) != 0) @@ -3621,7 +3621,7 @@ pmap_enter_pde(pmap_t pmap, vm_offset_t " in pmap %p", va, pmap); return (FALSE); } - newpde = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->mdmemattr, 1) | + newpde = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 1) | PG_PS | PG_V; if ((m->oflags & VPO_UNMANAGED) == 0) { newpde |= PG_MANAGED; @@ -3812,7 +3812,7 @@ pmap_enter_quick_locked(pmap_t pmap, vm_ */ pmap->pm_stats.resident_count++; - pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->mdmemattr, 0); + pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 0); #ifdef PAE if ((prot & VM_PROT_EXECUTE) == 0) pa |= pg_nx; @@ -3855,7 +3855,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs pd_entry_t *pde; vm_paddr_t pa, ptepa; vm_page_t p; - vm_memattr_t pat_mode; + int pat_mode; VM_OBJECT_ASSERT_WLOCKED(object); KASSERT(object->type == OBJT_DEVICE || object->type == OBJT_SG, @@ -3867,7 +3867,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs p = vm_page_lookup(object, pindex); KASSERT(p->valid == VM_PAGE_BITS_ALL, ("pmap_object_init_pt: invalid page %p", p)); - pat_mode = p->mdmemattr; + pat_mode = p->md.pat_mode; /* * Abort the mapping if the first page is not physically @@ -3888,7 +3888,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs KASSERT(p->valid == VM_PAGE_BITS_ALL, ("pmap_object_init_pt: invalid page %p", p)); if (pa != VM_PAGE_TO_PHYS(p) || - pat_mode != p->mdmemattr) + pat_mode != p->md.pat_mode) return; p = TAILQ_NEXT(p, listq); } @@ -4119,7 +4119,7 @@ pmap_zero_page(vm_page_t m) panic("pmap_zero_page: CMAP2 busy"); sched_pin(); *sysmaps->CMAP2 = PG_V | PG_RW | VM_PAGE_TO_PHYS(m) | PG_A | PG_M | - pmap_cache_bits(m->mdmemattr, 0); + pmap_cache_bits(m->md.pat_mode, 0); invlcaddr(sysmaps->CADDR2); pagezero(sysmaps->CADDR2); *sysmaps->CMAP2 = 0; @@ -4144,7 +4144,7 @@ pmap_zero_page_area(vm_page_t m, int off panic("pmap_zero_page_area: CMAP2 busy"); sched_pin(); *sysmaps->CMAP2 = PG_V | PG_RW | VM_PAGE_TO_PHYS(m) | PG_A | PG_M | - pmap_cache_bits(m->mdmemattr, 0); + pmap_cache_bits(m->md.pat_mode, 0); invlcaddr(sysmaps->CADDR2); if (off == 0 && size == PAGE_SIZE) pagezero(sysmaps->CADDR2); @@ -4169,7 +4169,7 @@ pmap_zero_page_idle(vm_page_t m) panic("pmap_zero_page_idle: CMAP3 busy"); sched_pin(); *CMAP3 = PG_V | PG_RW | VM_PAGE_TO_PHYS(m) | PG_A | PG_M | - pmap_cache_bits(m->mdmemattr, 0); + pmap_cache_bits(m->md.pat_mode, 0); invlcaddr(CADDR3); pagezero(CADDR3); *CMAP3 = 0; @@ -4197,9 +4197,9 @@ pmap_copy_page(vm_page_t src, vm_page_t invlpg((u_int)sysmaps->CADDR1); invlpg((u_int)sysmaps->CADDR2); *sysmaps->CMAP1 = PG_V | VM_PAGE_TO_PHYS(src) | PG_A | - pmap_cache_bits(src->mdmemattr, 0); + pmap_cache_bits(src->md.pat_mode, 0); *sysmaps->CMAP2 = PG_V | PG_RW | VM_PAGE_TO_PHYS(dst) | PG_A | PG_M | - pmap_cache_bits(dst->mdmemattr, 0); + pmap_cache_bits(dst->md.pat_mode, 0); bcopy(sysmaps->CADDR1, sysmaps->CADDR2, PAGE_SIZE); *sysmaps->CMAP1 = 0; *sysmaps->CMAP2 = 0; @@ -4236,9 +4236,9 @@ pmap_copy_pages(vm_page_t ma[], vm_offse b_pg_offset = b_offset & PAGE_MASK; cnt = min(cnt, PAGE_SIZE - b_pg_offset); *sysmaps->CMAP1 = PG_V | VM_PAGE_TO_PHYS(a_pg) | PG_A | - pmap_cache_bits(b_pg->mdmemattr, 0); + pmap_cache_bits(b_pg->md.pat_mode, 0); *sysmaps->CMAP2 = PG_V | PG_RW | VM_PAGE_TO_PHYS(b_pg) | PG_A | - PG_M | pmap_cache_bits(b_pg->mdmemattr, 0); + PG_M | pmap_cache_bits(b_pg->md.pat_mode, 0); a_cp = sysmaps->CADDR1 + a_pg_offset; b_cp = sysmaps->CADDR2 + b_pg_offset; bcopy(a_cp, b_cp, cnt); @@ -5050,7 +5050,7 @@ void pmap_page_set_memattr(vm_page_t m, vm_memattr_t ma) { - m->mdmemattr = ma; + m->md.pat_mode = ma; if ((m->flags & PG_FICTITIOUS) != 0) return; @@ -5088,7 +5088,7 @@ pmap_flush_page(vm_page_t m) panic("pmap_flush_page: CMAP2 busy"); sched_pin(); *sysmaps->CMAP2 = PG_V | PG_RW | VM_PAGE_TO_PHYS(m) | - PG_A | PG_M | pmap_cache_bits(m->mdmemattr, 0); + PG_A | PG_M | pmap_cache_bits(m->md.pat_mode, 0); invlcaddr(sysmaps->CADDR2); sva = (vm_offset_t)sysmaps->CADDR2; eva = sva + PAGE_SIZE; Modified: user/attilio/vmobj-readlock/sys/i386/i386/vm_machdep.c ============================================================================== --- user/attilio/vmobj-readlock/sys/i386/i386/vm_machdep.c Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/i386/i386/vm_machdep.c Sun Aug 4 17:21:38 2013 (r253932) @@ -864,10 +864,10 @@ sf_buf_alloc(struct vm_page *m, int flag opte = *ptep; #ifdef XEN PT_SET_MA(sf->kva, xpmap_ptom(VM_PAGE_TO_PHYS(m)) | pgeflag - | PG_RW | PG_V | pmap_cache_bits(m->mdmemattr, 0)); + | PG_RW | PG_V | pmap_cache_bits(m->md.pat_mode, 0)); #else *ptep = VM_PAGE_TO_PHYS(m) | pgeflag | PG_RW | PG_V | - pmap_cache_bits(m->mdmemattr, 0); + pmap_cache_bits(m->md.pat_mode, 0); #endif /* Modified: user/attilio/vmobj-readlock/sys/i386/include/pmap.h ============================================================================== --- user/attilio/vmobj-readlock/sys/i386/include/pmap.h Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/i386/include/pmap.h Sun Aug 4 17:21:38 2013 (r253932) @@ -429,6 +429,7 @@ struct pv_chunk; struct md_page { TAILQ_HEAD(,pv_entry) pv_list; + int pat_mode; }; struct pmap { @@ -498,7 +499,7 @@ extern char *ptvmmap; /* poor name! */ extern vm_offset_t virtual_avail; extern vm_offset_t virtual_end; -#define pmap_page_get_memattr(m) ((m)->mdmemattr) +#define pmap_page_get_memattr(m) ((vm_memattr_t)(m)->md.pat_mode) #define pmap_page_is_write_mapped(m) (((m)->aflags & PGA_WRITEABLE) != 0) #define pmap_unmapbios(va, sz) pmap_unmapdev((va), (sz)) Modified: user/attilio/vmobj-readlock/sys/i386/xen/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/i386/xen/pmap.c Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/i386/xen/pmap.c Sun Aug 4 17:21:38 2013 (r253932) @@ -536,7 +536,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = PAT_WRITE_BACK; + m->md.pat_mode = PAT_WRITE_BACK; } /* @@ -3110,7 +3110,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs pd_entry_t *pde; vm_paddr_t pa, ptepa; vm_page_t p; - vm_memattr_t pat_mode; + int pat_mode; VM_OBJECT_ASSERT_WLOCKED(object); KASSERT(object->type == OBJT_DEVICE || object->type == OBJT_SG, @@ -3122,7 +3122,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs p = vm_page_lookup(object, pindex); KASSERT(p->valid == VM_PAGE_BITS_ALL, ("pmap_object_init_pt: invalid page %p", p)); - pat_mode = p->mdmemattr; + pat_mode = p->md.pat_mode; /* * Abort the mapping if the first page is not physically @@ -3143,7 +3143,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs KASSERT(p->valid == VM_PAGE_BITS_ALL, ("pmap_object_init_pt: invalid page %p", p)); if (pa != VM_PAGE_TO_PHYS(p) || - pat_mode != p->mdmemattr) + pat_mode != p->md.pat_mode) return; p = TAILQ_NEXT(p, listq); } @@ -4065,7 +4065,7 @@ void pmap_page_set_memattr(vm_page_t m, vm_memattr_t ma) { - m->mdmemattr = ma; + m->md.pat_mode = ma; if ((m->flags & PG_FICTITIOUS) != 0) return; @@ -4104,7 +4104,7 @@ pmap_flush_page(vm_page_t m) sched_pin(); PT_SET_MA(sysmaps->CADDR2, PG_V | PG_RW | VM_PAGE_TO_MACH(m) | PG_A | PG_M | - pmap_cache_bits(m->mdmemattr, 0)); + pmap_cache_bits(m->md.pat_mode, 0)); invlcaddr(sysmaps->CADDR2); sva = (vm_offset_t)sysmaps->CADDR2; eva = sva + PAGE_SIZE; Modified: user/attilio/vmobj-readlock/sys/ia64/ia64/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/ia64/ia64/pmap.c Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/ia64/ia64/pmap.c Sun Aug 4 17:21:38 2013 (r253932) @@ -473,7 +473,7 @@ pmap_page_to_va(vm_page_t m) vm_offset_t va; pa = VM_PAGE_TO_PHYS(m); - va = (m->mdmemattr == VM_MEMATTR_UNCACHEABLE) ? IA64_PHYS_TO_RR6(pa) : + va = (m->md.memattr == VM_MEMATTR_UNCACHEABLE) ? IA64_PHYS_TO_RR6(pa) : IA64_PHYS_TO_RR7(pa); return (va); } @@ -486,7 +486,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = VM_MEMATTR_DEFAULT; + m->md.memattr = VM_MEMATTR_DEFAULT; } /* @@ -1439,7 +1439,7 @@ pmap_qenter(vm_offset_t va, vm_page_t *m else pmap_enter_vhpt(pte, va); pmap_pte_prot(kernel_pmap, pte, VM_PROT_ALL); - pmap_pte_attr(pte, m[i]->mdmemattr); + pmap_pte_attr(pte, m[i]->md.memattr); pmap_set_pte(pte, va, VM_PAGE_TO_PHYS(m[i]), FALSE, FALSE); va += PAGE_SIZE; } @@ -1768,7 +1768,7 @@ validate: * adds the pte to the VHPT if necessary. */ pmap_pte_prot(pmap, pte, prot); - pmap_pte_attr(pte, m->mdmemattr); + pmap_pte_attr(pte, m->md.memattr); pmap_set_pte(pte, va, pa, wired, managed); /* Invalidate the I-cache when needed. */ @@ -1875,7 +1875,7 @@ pmap_enter_quick_locked(pmap_t pmap, vm_ pmap_enter_vhpt(pte, va); pmap_pte_prot(pmap, pte, prot & (VM_PROT_READ | VM_PROT_EXECUTE)); - pmap_pte_attr(pte, m->mdmemattr); + pmap_pte_attr(pte, m->md.memattr); pmap_set_pte(pte, va, VM_PAGE_TO_PHYS(m), FALSE, managed); if (prot & VM_PROT_EXECUTE) @@ -2417,7 +2417,7 @@ pmap_remove_write(vm_page_t m) } prot &= ~VM_PROT_WRITE; pmap_pte_prot(pmap, pte, prot); - pmap_pte_attr(pte, m->mdmemattr); + pmap_pte_attr(pte, m->md.memattr); pmap_invalidate_page(pv->pv_va); } pmap_switch(oldpmap); @@ -2499,7 +2499,7 @@ pmap_page_set_memattr(vm_page_t m, vm_me void *va; rw_wlock(&pvh_global_lock); - m->mdmemattr = ma; + m->md.memattr = ma; TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); Modified: user/attilio/vmobj-readlock/sys/mips/include/pmap.h ============================================================================== --- user/attilio/vmobj-readlock/sys/mips/include/pmap.h Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/mips/include/pmap.h Sun Aug 4 17:21:38 2013 (r253932) @@ -69,6 +69,7 @@ struct pv_entry; struct pv_chunk; struct md_page { + int pv_flags; TAILQ_HEAD(, pv_entry) pv_list; }; Modified: user/attilio/vmobj-readlock/sys/mips/mips/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/mips/mips/pmap.c Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/mips/mips/pmap.c Sun Aug 4 17:21:38 2013 (r253932) @@ -594,7 +594,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = 0; + m->md.pv_flags = 0; } /* @@ -1435,9 +1435,9 @@ pmap_pv_reclaim(pmap_t locked_pmap) m = PHYS_TO_VM_PAGE(TLBLO_PTE_TO_PA(oldpte)); if (pte_test(&oldpte, PTE_D)) vm_page_dirty(m); - if (m->mdmemattr & PV_TABLE_REF) + if (m->md.pv_flags & PV_TABLE_REF) vm_page_aflag_set(m, PGA_REFERENCED); - m->mdmemattr &= ~PV_TABLE_REF; + m->md.pv_flags &= ~PV_TABLE_REF; TAILQ_REMOVE(&m->md.pv_list, pv, pv_list); if (TAILQ_EMPTY(&m->md.pv_list)) vm_page_aflag_clear(m, PGA_WRITEABLE); @@ -1705,9 +1705,9 @@ pmap_remove_pte(struct pmap *pmap, pt_en __func__, (void *)va, (uintmax_t)oldpte)); vm_page_dirty(m); } - if (m->mdmemattr & PV_TABLE_REF) + if (m->md.pv_flags & PV_TABLE_REF) vm_page_aflag_set(m, PGA_REFERENCED); - m->mdmemattr &= ~PV_TABLE_REF; + m->md.pv_flags &= ~PV_TABLE_REF; pmap_remove_entry(pmap, m, va); } @@ -1846,7 +1846,7 @@ pmap_remove_all(vm_page_t m) ("pmap_remove_all: page %p is not managed", m)); rw_wlock(&pvh_global_lock); - if (m->mdmemattr & PV_TABLE_REF) + if (m->md.pv_flags & PV_TABLE_REF) vm_page_aflag_set(m, PGA_REFERENCED); while ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) { @@ -1893,7 +1893,7 @@ pmap_remove_all(vm_page_t m) } vm_page_aflag_clear(m, PGA_WRITEABLE); - m->mdmemattr &= ~PV_TABLE_REF; + m->md.pv_flags &= ~PV_TABLE_REF; rw_wunlock(&pvh_global_lock); } @@ -2078,7 +2078,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, mpte->wire_count--; if (pte_test(&origpte, PTE_MANAGED)) { - m->mdmemattr |= PV_TABLE_REF; + m->md.pv_flags |= PV_TABLE_REF; om = m; newpte |= PTE_MANAGED; if (!pte_test(&newpte, PTE_RO)) @@ -2114,7 +2114,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, * Enter on the PV list if part of our managed memory. */ if ((m->oflags & VPO_UNMANAGED) == 0) { - m->mdmemattr |= PV_TABLE_REF; + m->md.pv_flags |= PV_TABLE_REF; if (pv == NULL) pv = get_pv_entry(pmap, FALSE); pv->pv_va = va; @@ -2145,9 +2145,9 @@ validate: *pte = newpte; if (pte_test(&origpte, PTE_V)) { if (pte_test(&origpte, PTE_MANAGED) && opa != pa) { - if (om->mdmemattr & PV_TABLE_REF) + if (om->md.pv_flags & PV_TABLE_REF) vm_page_aflag_set(om, PGA_REFERENCED); - om->mdmemattr &= ~PV_TABLE_REF; + om->md.pv_flags &= ~PV_TABLE_REF; } if (pte_test(&origpte, PTE_D)) { KASSERT(!pte_test(&origpte, PTE_RO), @@ -2853,9 +2853,9 @@ pmap_ts_referenced(vm_page_t m) KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_ts_referenced: page %p is not managed", m)); - if (m->mdmemattr & PV_TABLE_REF) { + if (m->md.pv_flags & PV_TABLE_REF) { rw_wlock(&pvh_global_lock); - m->mdmemattr &= ~PV_TABLE_REF; + m->md.pv_flags &= ~PV_TABLE_REF; rw_wunlock(&pvh_global_lock); return (1); } @@ -2965,7 +2965,7 @@ pmap_is_referenced(vm_page_t m) KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_is_referenced: page %p is not managed", m)); - return ((m->mdmemattr & PV_TABLE_REF) != 0); + return ((m->md.pv_flags & PV_TABLE_REF) != 0); } /* @@ -2980,8 +2980,8 @@ pmap_clear_reference(vm_page_t m) KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_clear_reference: page %p is not managed", m)); rw_wlock(&pvh_global_lock); - if (m->mdmemattr & PV_TABLE_REF) { - m->mdmemattr &= ~PV_TABLE_REF; + if (m->md.pv_flags & PV_TABLE_REF) { + m->md.pv_flags &= ~PV_TABLE_REF; } rw_wunlock(&pvh_global_lock); } Modified: user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea.c ============================================================================== --- user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea.c Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea.c Sun Aug 4 17:21:38 2013 (r253932) @@ -1474,7 +1474,7 @@ moea_page_set_memattr(mmu_t mmu, vm_page u_int lo; if ((m->oflags & VPO_UNMANAGED) != 0) { - m->mdmemattr = ma; + m->md.mdpg_cache_attrs = ma; return; } @@ -1497,7 +1497,7 @@ moea_page_set_memattr(mmu_t mmu, vm_page mtx_unlock(&moea_table_mutex); PMAP_UNLOCK(pmap); } - m->mdmemattr = ma; + m->md.mdpg_cache_attrs = ma; rw_wunlock(&pvh_global_lock); } Modified: user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea64.c ============================================================================== --- user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea64.c Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea64.c Sun Aug 4 17:21:38 2013 (r253932) @@ -1657,7 +1657,7 @@ moea64_page_set_memattr(mmu_t mmu, vm_pa uint64_t lo; if ((m->oflags & VPO_UNMANAGED) != 0) { - m->mdmemattr = ma; + m->md.mdpg_cache_attrs = ma; return; } @@ -1679,7 +1679,7 @@ moea64_page_set_memattr(mmu_t mmu, vm_pa PMAP_UNLOCK(pmap); } UNLOCK_TABLE_RD(); - m->mdmemattr = ma; + m->md.mdpg_cache_attrs = ma; } /* Modified: user/attilio/vmobj-readlock/sys/powerpc/include/pmap.h ============================================================================== --- user/attilio/vmobj-readlock/sys/powerpc/include/pmap.h Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/powerpc/include/pmap.h Sun Aug 4 17:21:38 2013 (r253932) @@ -144,10 +144,11 @@ struct pmap { struct md_page { u_int64_t mdpg_attrs; + vm_memattr_t mdpg_cache_attrs; struct pvo_head mdpg_pvoh; }; -#define pmap_page_get_memattr(m) ((m)->mdmemattr) +#define pmap_page_get_memattr(m) ((m)->md.mdpg_cache_attrs) #define pmap_page_is_mapped(m) (!LIST_EMPTY(&(m)->md.mdpg_pvoh)) /* Modified: user/attilio/vmobj-readlock/sys/sparc64/include/pmap.h ============================================================================== --- user/attilio/vmobj-readlock/sys/sparc64/include/pmap.h Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/sparc64/include/pmap.h Sun Aug 4 17:21:38 2013 (r253932) @@ -56,6 +56,7 @@ struct md_page { struct pmap *pmap; uint32_t colors[DCACHE_COLORS]; int32_t color; + uint32_t flags; }; struct pmap { Modified: user/attilio/vmobj-readlock/sys/sparc64/sparc64/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/sparc64/sparc64/pmap.c Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/sparc64/sparc64/pmap.c Sun Aug 4 17:21:38 2013 (r253932) @@ -765,6 +765,7 @@ pmap_page_init(vm_page_t m) TAILQ_INIT(&m->md.tte_list); m->md.color = DCACHE_COLOR(VM_PAGE_TO_PHYS(m)); + m->md.flags = 0; m->md.pmap = NULL; } Modified: user/attilio/vmobj-readlock/sys/vm/vm_page.h ============================================================================== --- user/attilio/vmobj-readlock/sys/vm/vm_page.h Sun Aug 4 17:10:10 2013 (r253931) +++ user/attilio/vmobj-readlock/sys/vm/vm_page.h Sun Aug 4 17:21:38 2013 (r253932) @@ -144,7 +144,7 @@ struct vm_page { uint8_t oflags; /* page VPO_* flags (O) */ uint16_t flags; /* page PG_* flags (P) */ u_char act_count; /* page usage count (P) */ - vm_memattr_t mdmemattr; /* arch specific memory attr (M) */ + u_char __pad0; /* unused padding */ /* NOTE that these must support one bit per DEV_BSIZE in a page!!! */ /* so, on normal X86 kernels, they must be at least 8 bits wide */ vm_page_bits_t valid; /* map of valid DEV_BSIZE chunks (O) */ From owner-svn-src-user@FreeBSD.ORG Sun Aug 4 18:19:47 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 4EFF2160; Sun, 4 Aug 2013 18:19:47 +0000 (UTC) (envelope-from syuu@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2333E2295; Sun, 4 Aug 2013 18:19:47 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r74IJlTc046524; Sun, 4 Aug 2013 18:19:47 GMT (envelope-from syuu@svn.freebsd.org) Received: (from syuu@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r74IJku6046523; Sun, 4 Aug 2013 18:19:46 GMT (envelope-from syuu@svn.freebsd.org) Message-Id: <201308041819.r74IJku6046523@svn.freebsd.org> From: Takuya ASADA Date: Sun, 4 Aug 2013 18:19:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253933 - user/syuu/bhyve_standalone_guest_test1 X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 18:19:47 -0000 Author: syuu Date: Sun Aug 4 18:19:46 2013 New Revision: 253933 URL: http://svnweb.freebsd.org/changeset/base/253933 Log: create repo Added: user/syuu/bhyve_standalone_guest_test1/ From owner-svn-src-user@FreeBSD.ORG Sun Aug 4 18:20:56 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 2A50D287; Sun, 4 Aug 2013 18:20:56 +0000 (UTC) (envelope-from syuu@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 16B9422A1; Sun, 4 Aug 2013 18:20:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r74IKuFk048435; Sun, 4 Aug 2013 18:20:56 GMT (envelope-from syuu@svn.freebsd.org) Received: (from syuu@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r74IKrLv048420; Sun, 4 Aug 2013 18:20:53 GMT (envelope-from syuu@svn.freebsd.org) Message-Id: <201308041820.r74IKrLv048420@svn.freebsd.org> From: Takuya ASADA Date: Sun, 4 Aug 2013 18:20:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253934 - in user/syuu/bhyve_standalone_guest_test1: . kern lib X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 18:20:56 -0000 Author: syuu Date: Sun Aug 4 18:20:53 2013 New Revision: 253934 URL: http://svnweb.freebsd.org/changeset/base/253934 Log: inital import Added: user/syuu/bhyve_standalone_guest_test1/Makefile user/syuu/bhyve_standalone_guest_test1/kern/ user/syuu/bhyve_standalone_guest_test1/kern/boot.S user/syuu/bhyve_standalone_guest_test1/kern/console.c (contents, props changed) user/syuu/bhyve_standalone_guest_test1/kern/console.h user/syuu/bhyve_standalone_guest_test1/kern/multiboot.h user/syuu/bhyve_standalone_guest_test1/kern/test1.c user/syuu/bhyve_standalone_guest_test1/ldscript user/syuu/bhyve_standalone_guest_test1/lib/ user/syuu/bhyve_standalone_guest_test1/lib/console.c user/syuu/bhyve_standalone_guest_test1/lib/console.h user/syuu/bhyve_standalone_guest_test1/lib/string.c user/syuu/bhyve_standalone_guest_test1/lib/string.h user/syuu/bhyve_standalone_guest_test1/lib/types.h Added: user/syuu/bhyve_standalone_guest_test1/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest_test1/Makefile Sun Aug 4 18:20:53 2013 (r253934) @@ -0,0 +1,26 @@ +CFLAGS = -I. -Werror -Wall -Wmissing-prototypes -Wunused -Wshadow -Wpointer-arith -Wundef -fno-builtin -O +CFLAGS += $(shell if $(CC) -fno-stack-protector -S -o /dev/null -xc /dev/null > /dev/null 2>&1; then echo "-fno-stack-protector"; fi) +LDFLAGS = -T ldscript +OBJS = kern/boot.o kern/test1.o kern/console.o lib/console.o lib/string.o + +all: test1.bin + +test1.bin: test1 + objcopy -I elf64-x86-64 -O binary test1 test1.bin + +test1: $(OBJS) + $(LD) -Map test1.map $(LDFLAGS) -o test1 $(OBJS) `$(CC) -print-libgcc-file-name` + +run: + -sudo bhyvectl --vm=test1 --destroy + sudo bhyveload -m 256 -S`pwd`/test1.bin:0x100000 test1 + sudo bhyve -m 256 -e -H -S 31,uart,stdio test1 + +clean: + rm -f $(OBJS) test1 test1.* + +.S.o: + $(CC) -c $(CFLAGS) $< -o $@ + +.c.o: + $(CC) -c $(CFLAGS) $< -o $@ Added: user/syuu/bhyve_standalone_guest_test1/kern/boot.S ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest_test1/kern/boot.S Sun Aug 4 18:20:53 2013 (r253934) @@ -0,0 +1,46 @@ +/* boot.S - bootstrap the kernel */ +/* Copyright (C) 1999, 2001 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +#define ASM 1 +#include + + .text + + .globl start, _start +start: +_start: + /* Initialize the stack pointer. */ + movl $(stack + STACK_SIZE), %esp + + /* Reset EFLAGS. */ + pushl $0 + popf + + call EXT_C(main) + + /* Halt. */ + pushl $halt_message + call EXT_C(printf) + +loop: hlt + jmp loop + +halt_message: + .asciz "Halted.\n" + + /* Our stack area. */ + .comm stack, STACK_SIZE Added: user/syuu/bhyve_standalone_guest_test1/kern/console.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest_test1/kern/console.c Sun Aug 4 18:20:53 2013 (r253934) @@ -0,0 +1,32 @@ +#include + +#define COM1_RBR 0x3f8 +#define COM1_THR 0x3f8 +#define COM1_LSR 0x3fd + +static __inline void +outb(unsigned port, unsigned char data) +{ + __asm __volatile("outb %0, %w1" : : "a" (data), "Nd" (port)); +} + +static __inline unsigned char +inb(unsigned port) +{ + unsigned char data; + + __asm __volatile("inb %w1, %0" : "=a" (data) : "Nd" (port)); + return (data); +} + +void putchar(int c) +{ + while ((inb(COM1_LSR) & 0x20) == 0); + outb(COM1_THR, c); +} + +int getchar(void) +{ + while ((inb(COM1_LSR) & 1) == 0); + return inb(COM1_RBR); +} Added: user/syuu/bhyve_standalone_guest_test1/kern/console.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest_test1/kern/console.h Sun Aug 4 18:20:53 2013 (r253934) @@ -0,0 +1,7 @@ +#ifndef KERN_CONSOLE_H_ +#define KERN_CONSOLE_H_ + +void putchar (int c); +int getchar (void); + +#endif Added: user/syuu/bhyve_standalone_guest_test1/kern/multiboot.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest_test1/kern/multiboot.h Sun Aug 4 18:20:53 2013 (r253934) @@ -0,0 +1,124 @@ +/* multiboot.h - the header for Multiboot */ +/* Copyright (C) 1999, 2001 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +#ifndef I386_MULTIBOOT_H_ +#define I386_MULTIBOOT_H_ +/* Macros. */ + +/* The magic number for the Multiboot header. */ +#define MULTIBOOT_HEADER_MAGIC 0x1BADB002 + +/* The flags for the Multiboot header. */ +#ifdef __ELF__ +# define MULTIBOOT_HEADER_FLAGS 0x00000003 +#else +# define MULTIBOOT_HEADER_FLAGS 0x00010003 +#endif + +/* The magic number passed by a Multiboot-compliant boot loader. */ +#define MULTIBOOT_BOOTLOADER_MAGIC 0x2BADB002 + +/* The size of our stack (16KB). */ +#define STACK_SIZE 0x4000 + +/* C symbol format. HAVE_ASM_USCORE is defined by configure. */ +#ifdef HAVE_ASM_USCORE +# define EXT_C(sym) _ ## sym +#else +# define EXT_C(sym) sym +#endif + +#ifndef ASM +/* Do not include here in boot.S. */ + +/* Types. */ + +/* The Multiboot header. */ +typedef struct multiboot_header +{ + unsigned long magic; + unsigned long flags; + unsigned long checksum; + unsigned long header_addr; + unsigned long load_addr; + unsigned long load_end_addr; + unsigned long bss_end_addr; + unsigned long entry_addr; +} multiboot_header_t; + +/* The symbol table for a.out. */ +typedef struct aout_symbol_table +{ + unsigned long tabsize; + unsigned long strsize; + unsigned long addr; + unsigned long reserved; +} aout_symbol_table_t; + +/* The section header table for ELF. */ +typedef struct elf_section_header_table +{ + unsigned long num; + unsigned long size; + unsigned long addr; + unsigned long shndx; +} elf_section_header_table_t; + +/* The Multiboot information. */ +typedef struct multiboot_info +{ + unsigned long flags; + unsigned long mem_lower; + unsigned long mem_upper; + unsigned long boot_device; + unsigned long cmdline; + unsigned long mods_count; + unsigned long mods_addr; + union + { + aout_symbol_table_t aout_sym; + elf_section_header_table_t elf_sec; + } u; + unsigned long mmap_length; + unsigned long mmap_addr; +} multiboot_info_t; + +/* The module structure. */ +typedef struct module +{ + unsigned long mod_start; + unsigned long mod_end; + unsigned long string; + unsigned long reserved; +} module_t; + +/* The memory map. Be careful that the offset 0 is base_addr_low + but no size. */ +typedef struct memory_map +{ + unsigned long size; + unsigned long base_addr_low; + unsigned long base_addr_high; + unsigned long length_low; + unsigned long length_high; + unsigned long type; +} memory_map_t; + +multiboot_info_t *mbi; +#endif /* ! ASM */ +#endif + Added: user/syuu/bhyve_standalone_guest_test1/kern/test1.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest_test1/kern/test1.c Sun Aug 4 18:20:53 2013 (r253934) @@ -0,0 +1,8 @@ +#include + +int main(void) +{ + while(1) + putchar('*'); + return 0; +} Added: user/syuu/bhyve_standalone_guest_test1/ldscript ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest_test1/ldscript Sun Aug 4 18:20:53 2013 (r253934) @@ -0,0 +1,20 @@ +OUTPUT_ARCH(i386:x86-64) +ENTRY(start) +SECTIONS +{ + . = 0x100000; + .text : { *(.text) } + .rodata : { *(.rodata) } + .data : + { + *(.data) + } + _edata = .; + .bss : + { + *(.dynbss) + *(.bss) + *(.COMMON) + } + _end = . ; +} Added: user/syuu/bhyve_standalone_guest_test1/lib/console.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest_test1/lib/console.c Sun Aug 4 18:20:53 2013 (r253934) @@ -0,0 +1,179 @@ + +#include +#include + +#define OUTD_BUF_SIZE 128 +#define OUTU_BUF_SIZE 128 +#define OUTX_BUF_SIZE 128 + +#define UTOC(u) ('0' + u) +#define XTOC(x) "0123456789ABCDEF"[x] + +void +putd(int num) +{ + char buf[OUTD_BUF_SIZE]; + unsigned short is_minus = 0; + + if (num < 0) + { + is_minus = 1; + num = -num; + } + if (num < 10) + putchar(UTOC(num)); + else + { + char *bp; + + bp = buf + OUTU_BUF_SIZE- 1; + *bp-- = '\0'; + while (num && bp >= buf) + { + *bp-- = UTOC(num % 10); + num /= 10; + } + if (is_minus) + putchar('-'); + puts(++bp); + } +} + +void +putu(unsigned num) +{ + char buf[OUTU_BUF_SIZE]; + + if (num < 10) + putchar(UTOC(num)); + else + { + char *bp; + + bp = buf + OUTU_BUF_SIZE- 1; + *bp-- = '\0'; + while (num && bp >= buf) + { + *bp-- = UTOC(num % 10); + num /= 10; + } + puts(++bp); + } +} + +void +putlu(unsigned long long num) +{ + char buf[OUTU_BUF_SIZE]; + + if (num < 10) + putchar(UTOC(num)); + else + { + char *bp; + + bp = buf + OUTU_BUF_SIZE- 1; + *bp-- = '\0'; + while (num && bp >= buf) + { + *bp-- = UTOC(num % 10); + num /= 10; + } + puts(++bp); + } +} + +void +putx(unsigned num) +{ + char buf[OUTX_BUF_SIZE]; + + puts("0x"); + if (num < 16) + putchar(XTOC(num)); + else + { + char *bp; + + bp = buf + OUTX_BUF_SIZE- 1; + *bp-- = '\0'; + while (num && bp >= buf) + { + *bp-- = XTOC(num % 16); + num /= 16; + } + puts(++bp); + } +} + +void +puts(const char *str) +{ + while (*str) + putchar (*str++); +} + +void +putns(const char *str, int n) +{ + while (n--) + putchar (*str++); +} + +int +getns(char *s, int size) +{ + int i; + for (i = 0; i < size; i++) + { + s[i] = getchar(); + if (s[i] == '\r') + break; + } + return i; +} + +int +printf(const char *format, ...) +{ + int i; + va_list ap; + + va_start(ap, format); + for (i = 0; i < strlen(format); i++) + { + if (format[i] == '%') + { + i++; + if (i >= strlen(format)) + { + putchar('%'); + return 0; + } + else if (format[i] == 's') + puts(va_arg(ap, char *)); + else if (format[i] == 'd') + putd(va_arg(ap, int)); + else if (format[i] == 'u') + putu(va_arg(ap, unsigned)); + else if (format[i] == 'U') + putlu(va_arg(ap, unsigned long long)); + else if (format[i] == 'x' || format[i] == 'p') + putx(va_arg(ap, unsigned)); + else if (format[i] == 'c') + putchar(va_arg(ap, int)); + else if (format[i] == 'b') + puts(va_arg(ap, int) ? "true" : "false"); + else + { + putchar('%'); + putchar(format[i]); + } + continue; + } + else + putchar(format[i]); + } + va_end(ap); + return 0; +} Added: user/syuu/bhyve_standalone_guest_test1/lib/console.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest_test1/lib/console.h Sun Aug 4 18:20:53 2013 (r253934) @@ -0,0 +1,16 @@ +#ifndef LIB_CONSOLE_H_ +#define LIB_CONSOLE_H_ +#include +#include + +#define panic(...) {printf("[panic] "); printf(__VA_ARGS__); while(1);} +int printf(const char *format, ...); +void puts(const char *str); +void putns(const char *str, int n); +void putd(const int num); +void putu(const unsigned num); +void putlu(unsigned long long num); +void putx(const unsigned num); +int getns(char *s, int size); + +#endif /* LIB_CONSOLE_H_*/ Added: user/syuu/bhyve_standalone_guest_test1/lib/string.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest_test1/lib/string.c Sun Aug 4 18:20:53 2013 (r253934) @@ -0,0 +1,75 @@ +#include +#include + +//#define DPRINTF (printf("[%s:%s:%d] ", __FILE__, __FUNCTION__, __LINE__), printf) +#define DPRINTF(...) do{}while(0) + +int +strlen(const char *s) +{ + int i = 0; + while (*s++) + i++; + return i; +} + +void * +memset(void *s, int c, int n) +{ + DPRINTF("s:%x c:%d n:%d\n", s, c, n); + int i; + for (i = 0; i < n; i++) + ((char *)s)[i] = c; + return s; +} + +void * +memcpy(void *dest, const void *src, int n) +{ + DPRINTF("dest:%x src:%x n:%d\n", dest, src, n); + int i; + for (i = 0; i < n; i++) + ((char *)dest)[i] = ((char *)src)[i]; + return dest; +} + +char * +strcpy(char *dest, const char *src) +{ + int i; + for (i = 0; src[i]; i++) + dest[i] = ((char *)src)[i]; + return dest; +} + +char * +strncpy(char *dest, const char *src, size_t n) +{ + DPRINTF("dest:%x src:%x n:%d\n", dest, src, n); + int i; + for (i = 0; i < n && src[i] != '\0'; i++) + dest[i] = src[i]; + for (; i < n; i++) + dest[i] = '\0'; + return dest; +} + +int +strcmp(const char *s1, const char *s2) +{ + int i; + for(i = 0; s1[i] == s2[i]; i++) + if(!s1[i]) + return 0; + return s1[i] - s2[i]; +} + +int +strncmp(const char *s1, const char *s2, size_t n) +{ + int i; + for(i = 0; s1[i] == s2[i] && i < n; i++) + if(!s1[i]) + return 0; + return s1[i] - s2[i]; +} Added: user/syuu/bhyve_standalone_guest_test1/lib/string.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest_test1/lib/string.h Sun Aug 4 18:20:53 2013 (r253934) @@ -0,0 +1,13 @@ +#ifndef LIB_STRING_H_ +#define LIB_STRING_H_ +#include + +void *memset(void *s, int c, int n); +void *memcpy(void *dest, const void *src, int n); +int strlen(const char *s); +char *strcpy(char *dest, const char *src); +char *strncpy(char *dest, const char *src, size_t n); +int strcmp(const char *s1, const char *s2); +int strncmp(const char *s1, const char *s2, size_t n); + +#endif /* LIB_STRING_H_*/ Added: user/syuu/bhyve_standalone_guest_test1/lib/types.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest_test1/lib/types.h Sun Aug 4 18:20:53 2013 (r253934) @@ -0,0 +1,28 @@ +#ifndef LIB_TYPES_H +#define LIB_TYPES_H +#include +#include + +typedef unsigned long long uint64_t; +typedef unsigned uint32_t; +typedef unsigned short uint16_t; +typedef unsigned char uint8_t; + +typedef long long int64_t; +typedef int int32_t; +typedef short int16_t; +typedef char int8_t; + +typedef int ssize_t; +typedef unsigned off_t; +typedef unsigned long int ino_t; +typedef uint32_t dev_t; +typedef uint32_t mode_t; +typedef unsigned int nlink_t; +typedef uint32_t uid_t; +typedef uint32_t gid_t; +typedef long int blksize_t; +typedef long int blkcnt_t; +typedef long int time_t; + +#endif From owner-svn-src-user@FreeBSD.ORG Sun Aug 4 19:17:07 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id AF95822C; Sun, 4 Aug 2013 19:17:07 +0000 (UTC) (envelope-from syuu@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9AF582518; Sun, 4 Aug 2013 19:17:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r74JH7AJ063784; Sun, 4 Aug 2013 19:17:07 GMT (envelope-from syuu@svn.freebsd.org) Received: (from syuu@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r74JH6BZ063779; Sun, 4 Aug 2013 19:17:06 GMT (envelope-from syuu@svn.freebsd.org) Message-Id: <201308041917.r74JH6BZ063779@svn.freebsd.org> From: Takuya ASADA Date: Sun, 4 Aug 2013 19:17:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253935 - user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 19:17:07 -0000 Author: syuu Date: Sun Aug 4 19:17:06 2013 New Revision: 253935 URL: http://svnweb.freebsd.org/changeset/base/253935 Log: support '-S' option for standalone guest program Added: user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/standalone.c Modified: user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/Makefile user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.8 user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.c Modified: user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/Makefile ============================================================================== --- user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/Makefile Sun Aug 4 18:20:53 2013 (r253934) +++ user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/Makefile Sun Aug 4 19:17:06 2013 (r253935) @@ -1,7 +1,7 @@ # $FreeBSD$ PROG= bhyveload -SRCS= bhyveload.c +SRCS= bhyveload.c standalone.c MAN= bhyveload.8 DPADD+= ${LIBVMMAPI} Modified: user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.8 ============================================================================== --- user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.8 Sun Aug 4 18:20:53 2013 (r253934) +++ user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.8 Sun Aug 4 19:17:06 2013 (r253935) @@ -38,6 +38,7 @@ guest inside a bhyve virtual machine .Op Fl m Ar mem-size .Op Fl d Ar disk-path .Op Fl h Ar host-path +.Op Fl S Ar stand-binary:stand-addr .Ar vmname .Sh DESCRIPTION .Nm @@ -75,6 +76,13 @@ is the pathname of the guest's boot disk The .Ar host-path is the directory at the top of the guest's boot filesystem. +.It Fl S Ar stand-binary:stand-addr +The +.Ar stand-binary +is the pathname of the standalone guest program. +The +.Ar stand-addr +is the entrypoint address of the standalone guest program. .El .Sh EXAMPLES To create a virtual machine named Modified: user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.c ============================================================================== --- user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.c Sun Aug 4 18:20:53 2013 (r253934) +++ user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.c Sun Aug 4 19:17:06 2013 (r253935) @@ -60,7 +60,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include @@ -76,8 +75,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include -#include #include @@ -98,6 +95,9 @@ static uint64_t gdtbase, cr3, rsp; static void cb_exit(void *arg, int v); +extern int stand_load(struct loader_callbacks *cb, char *image, + uint64_t addr); + /* * Console i/o callbacks */ @@ -555,152 +555,16 @@ usage(void) fprintf(stderr, "usage: %s [-m mem-size][-d ] [-h ] " + "[-S stand-binary:stand-addr] " "\n", progname); exit(1); } -#define MSR_EFER 0xc0000080 -#define CR4_PAE 0x00000020 -#define CR4_PSE 0x00000010 -#define CR0_PG 0x80000000 -#define CR0_PE 0x00000001 /* Protected mode Enable */ -#define CR0_NE 0x00000020 /* Numeric Error enable (EX16 vs IRQ13) */ - -#define PG_V 0x001 -#define PG_RW 0x002 -#define PG_U 0x004 -#define PG_PS 0x080 - -typedef u_int64_t p4_entry_t; -typedef u_int64_t p3_entry_t; -typedef u_int64_t p2_entry_t; - -#define GUEST_NULL_SEL 0 -#define GUEST_CODE_SEL 1 -#define GUEST_DATA_SEL 2 -#define GUEST_GDTR_LIMIT (3 * 8 - 1) - -static void -setup_stand_gdt(uint64_t *gdtr) -{ - gdtr[GUEST_NULL_SEL] = 0; - gdtr[GUEST_CODE_SEL] = 0x0020980000000000; - gdtr[GUEST_DATA_SEL] = 0x0000900000000000; -} - -static int -stand_load(char *image, uint64_t addr) -{ - int i; - int fd; - struct stat sb; - char *buf; - uint32_t stack[1024]; - p4_entry_t PT4[512]; - p3_entry_t PT3[512]; - p2_entry_t PT2[512]; - uint64_t gdtr[3]; - - if ((fd = open(image, O_RDONLY)) < 0) { - perror("open"); - return (1); - } - if (fstat(fd, &sb)) { - perror("fstat"); - return (1); - } - buf = alloca(sb.st_size); - if (read(fd, buf, sb.st_size) != sb.st_size) { - perror("read"); - return (1); - } - if (close(fd) < 0) { - perror("close"); - return (1); - } - if (cb_copyin(NULL, buf, addr, sb.st_size)) { - perror("copyin"); - return (1); - } - - bzero(PT4, PAGE_SIZE); - bzero(PT3, PAGE_SIZE); - bzero(PT2, PAGE_SIZE); - - /* - * Build a scratch stack at physical 0x1000, page tables: - * PT4 at 0x2000, - * PT3 at 0x3000, - * PT2 at 0x4000, - * gdtr at 0x5000, - */ - - /* - * This is kinda brutal, but every single 1GB VM memory segment - * points to the same first 1GB of physical memory. But it is - * more than adequate. - */ - for (i = 0; i < 512; i++) { - /* Each slot of the level 4 pages points to the same level 3 page */ - PT4[i] = (p4_entry_t) 0x3000; - PT4[i] |= PG_V | PG_RW | PG_U; - - /* Each slot of the level 3 pages points to the same level 2 page */ - PT3[i] = (p3_entry_t) 0x4000; - PT3[i] |= PG_V | PG_RW | PG_U; - - /* The level 2 page slots are mapped with 2MB pages for 1GB. */ - PT2[i] = i * (2 * 1024 * 1024); - PT2[i] |= PG_V | PG_RW | PG_PS | PG_U; - } - -#ifdef DEBUG - printf("Start @ %#llx ...\n", addr); -#endif - - cb_copyin(NULL, stack, 0x1000, sizeof(stack)); - cb_copyin(NULL, PT4, 0x2000, sizeof(PT4)); - cb_copyin(NULL, PT3, 0x3000, sizeof(PT3)); - cb_copyin(NULL, PT2, 0x4000, sizeof(PT2)); - cb_setreg(NULL, 4, 0x1000); - - cb_setmsr(NULL, MSR_EFER, EFER_LMA | EFER_LME); - cb_setcr(NULL, 4, CR4_PAE | CR4_VMXE); - cb_setcr(NULL, 3, 0x2000); - cb_setcr(NULL, 0, CR0_PG | CR0_PE | CR0_NE); - - setup_stand_gdt(gdtr); - cb_copyin(NULL, gdtr, 0x5000, sizeof(gdtr)); - cb_setgdt(NULL, 0x5000, sizeof(gdtr)); - - cb_exec(NULL, addr); - return (0); -} - -static int -freebsd_load(void) -{ - void *h; - void (*func)(struct loader_callbacks *, void *, int, int); - - h = dlopen("/boot/userboot.so", RTLD_LOCAL); - if (!h) { - printf("%s\n", dlerror()); - return (1); - } - func = dlsym(h, "loader_main"); - if (!func) { - printf("%s\n", dlerror()); - return (1); - } - - func(&cb, NULL, USERBOOT_VERSION_3, disk_fd >= 0); - return (0); -} - int main(int argc, char** argv) { + void *h; + void (*func)(struct loader_callbacks *, void *, int, int); uint64_t mem_size; int opt, error; uint64_t stand_addr; @@ -712,7 +576,7 @@ main(int argc, char** argv) mem_size = 256 * MB; disk_image = NULL; - while ((opt = getopt(argc, argv, "d:h:m:S:I:")) != -1) { + while ((opt = getopt(argc, argv, "d:h:m:S:")) != -1) { switch (opt) { case 'd': disk_image = optarg; @@ -744,7 +608,7 @@ main(int argc, char** argv) break; } - + case '?': usage(); } @@ -782,16 +646,24 @@ main(int argc, char** argv) term.c_lflag &= ~(ICANON|ECHO); term.c_iflag &= ~ICRNL; tcsetattr(0, TCSAFLUSH, &term); + if (stand_image) { + if (stand_load(&cb, stand_image, stand_addr)) + exit(1); + exit(0); + } + h = dlopen("/boot/userboot.so", RTLD_LOCAL); + if (!h) { + printf("%s\n", dlerror()); + return (1); + } + func = dlsym(h, "loader_main"); + if (!func) { + printf("%s\n", dlerror()); + return (1); + } if (disk_image) { disk_fd = open(disk_image, O_RDONLY); } - - if (stand_image) { - if (stand_load(stand_image, stand_addr)) - exit(1); - }else{ - if (freebsd_load()) - exit(1); - } + func(&cb, NULL, USERBOOT_VERSION_3, disk_fd >= 0); } Added: user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/standalone.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/standalone.c Sun Aug 4 19:17:06 2013 (r253935) @@ -0,0 +1,192 @@ +/*- + * Copyright (c) 2011 NetApp, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY NETAPP, INC ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL NETAPP, INC OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD: user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.c 253922 2013-08-04 01:22:26Z syuu $ + */ + +/*- + * Copyright (c) 2011 Google, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD: user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.c 253922 2013-08-04 01:22:26Z syuu $ + */ + +#include +__FBSDID("$FreeBSD: user/syuu/bhyve_standalone_guest/usr.sbin/bhyveload/bhyveload.c 253922 2013-08-04 01:22:26Z syuu $"); + +#include +#include + +#include + +#include +#include +#include +#include +#include + +#include "userboot.h" + +#define MSR_EFER 0xc0000080 +#define CR4_PAE 0x00000020 +#define CR4_PSE 0x00000010 +#define CR0_PG 0x80000000 +#define CR0_PE 0x00000001 /* Protected mode Enable */ +#define CR0_NE 0x00000020 /* Numeric Error enable (EX16 vs IRQ13) */ + +#define PG_V 0x001 +#define PG_RW 0x002 +#define PG_U 0x004 +#define PG_PS 0x080 + +typedef u_int64_t p4_entry_t; +typedef u_int64_t p3_entry_t; +typedef u_int64_t p2_entry_t; + +#define GUEST_NULL_SEL 0 +#define GUEST_CODE_SEL 1 +#define GUEST_DATA_SEL 2 +#define GUEST_GDTR_LIMIT (3 * 8 - 1) + +int stand_load(struct loader_callbacks *cb, char *image, uint64_t addr); + +static void +setup_stand_gdt(uint64_t *gdtr) +{ + gdtr[GUEST_NULL_SEL] = 0; + gdtr[GUEST_CODE_SEL] = 0x0020980000000000; + gdtr[GUEST_DATA_SEL] = 0x0000900000000000; +} + +int +stand_load(struct loader_callbacks *cb, char *image, uint64_t addr) +{ + int i; + int fd; + struct stat sb; + char *buf; + uint32_t stack[1024]; + p4_entry_t PT4[512]; + p3_entry_t PT3[512]; + p2_entry_t PT2[512]; + uint64_t gdtr[3]; + + if ((fd = open(image, O_RDONLY)) < 0) { + perror("open"); + return (1); + } + if (fstat(fd, &sb)) { + perror("fstat"); + return (1); + } + buf = alloca(sb.st_size); + if (read(fd, buf, sb.st_size) != sb.st_size) { + perror("read"); + return (1); + } + if (close(fd) < 0) { + perror("close"); + return (1); + } + if (cb->copyin(NULL, buf, addr, sb.st_size)) { + perror("copyin"); + return (1); + } + + bzero(PT4, PAGE_SIZE); + bzero(PT3, PAGE_SIZE); + bzero(PT2, PAGE_SIZE); + + /* + * Build a scratch stack at physical 0x1000, page tables: + * PT4 at 0x2000, + * PT3 at 0x3000, + * PT2 at 0x4000, + * gdtr at 0x5000, + */ + + /* + * This is kinda brutal, but every single 1GB VM memory segment + * points to the same first 1GB of physical memory. But it is + * more than adequate. + */ + for (i = 0; i < 512; i++) { + /* Each slot of the level 4 pages points to the same level 3 page */ + PT4[i] = (p4_entry_t) 0x3000; + PT4[i] |= PG_V | PG_RW | PG_U; + + /* Each slot of the level 3 pages points to the same level 2 page */ + PT3[i] = (p3_entry_t) 0x4000; + PT3[i] |= PG_V | PG_RW | PG_U; + + /* The level 2 page slots are mapped with 2MB pages for 1GB. */ + PT2[i] = i * (2 * 1024 * 1024); + PT2[i] |= PG_V | PG_RW | PG_PS | PG_U; + } + +#ifdef DEBUG + printf("Start @ %#llx ...\n", addr); +#endif + + cb->copyin(NULL, stack, 0x1000, sizeof(stack)); + cb->copyin(NULL, PT4, 0x2000, sizeof(PT4)); + cb->copyin(NULL, PT3, 0x3000, sizeof(PT3)); + cb->copyin(NULL, PT2, 0x4000, sizeof(PT2)); + cb->setreg(NULL, 4, 0x1000); + + cb->setmsr(NULL, MSR_EFER, EFER_LMA | EFER_LME); + cb->setcr(NULL, 4, CR4_PAE | CR4_VMXE); + cb->setcr(NULL, 3, 0x2000); + cb->setcr(NULL, 0, CR0_PG | CR0_PE | CR0_NE); + + setup_stand_gdt(gdtr); + cb->copyin(NULL, gdtr, 0x5000, sizeof(gdtr)); + cb->setgdt(NULL, 0x5000, sizeof(gdtr)); + + cb->exec(NULL, addr); + return (0); +} + From owner-svn-src-user@FreeBSD.ORG Sun Aug 4 21:20:18 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 49EACF9; Sun, 4 Aug 2013 21:20:18 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 356122A39; Sun, 4 Aug 2013 21:20:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r74LKHL7000128; Sun, 4 Aug 2013 21:20:17 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r74LKEuh000104; Sun, 4 Aug 2013 21:20:14 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308042120.r74LKEuh000104@svn.freebsd.org> From: Attilio Rao Date: Sun, 4 Aug 2013 21:20:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253941 - in user/attilio/vmcontention: cddl/contrib/opensolaris/cmd/zfs etc/devd sys/cddl/contrib/opensolaris/uts/common/fs/zfs sys/dev/iwn sys/fs/tmpfs sys/geom/part sys/kern sys/spar... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 21:20:18 -0000 Author: attilio Date: Sun Aug 4 21:20:14 2013 New Revision: 253941 URL: http://svnweb.freebsd.org/changeset/base/253941 Log: MFC Modified: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c user/attilio/vmcontention/etc/devd/usb.conf user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c user/attilio/vmcontention/sys/dev/iwn/if_iwn.c user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c user/attilio/vmcontention/sys/geom/part/g_part.c user/attilio/vmcontention/sys/geom/part/g_part_apm.c user/attilio/vmcontention/sys/kern/imgact_elf.c user/attilio/vmcontention/sys/kern/kern_exec.c user/attilio/vmcontention/sys/kern/sys_process.c user/attilio/vmcontention/sys/sparc64/include/pmap.h user/attilio/vmcontention/sys/sparc64/sparc64/pmap.c user/attilio/vmcontention/sys/vm/vm_extern.h user/attilio/vmcontention/sys/vm/vm_fault.c user/attilio/vmcontention/sys/vm/vm_glue.c user/attilio/vmcontention/sys/vm/vm_map.h Directory Properties: user/attilio/vmcontention/ (props changed) user/attilio/vmcontention/cddl/ (props changed) user/attilio/vmcontention/cddl/contrib/opensolaris/ (props changed) user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/zfs/ (props changed) user/attilio/vmcontention/sys/ (props changed) user/attilio/vmcontention/sys/cddl/contrib/opensolaris/ (props changed) Modified: user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c ============================================================================== --- user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Sun Aug 4 21:20:14 2013 (r253941) @@ -57,6 +57,7 @@ #include #include #include +#include #include #include Modified: user/attilio/vmcontention/etc/devd/usb.conf ============================================================================== --- user/attilio/vmcontention/etc/devd/usb.conf Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/etc/devd/usb.conf Sun Aug 4 21:20:14 2013 (r253941) @@ -777,7 +777,7 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x050d"; - match "product" "(0x8053|0x805c|0x815c|0x825a|0x825b)"; + match "product" "(0x8053|0x805c|0x815c)"; action "kldload -n if_run"; }; @@ -785,6 +785,30 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x050d"; + match "product" "0x815f"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x050d"; + match "product" "(0x825a|0x825b)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x050d"; + match "product" "0x845a"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x050d"; match "product" "0x905b"; action "kldload -n if_rum"; }; @@ -800,6 +824,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x050d"; + match "product" "0x945a"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x0525"; match "product" "(0x1080|0xa4a0)"; action "kldload -n udbp"; @@ -1249,6 +1281,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x06f8"; + match "product" "(0xe031|0xe032)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x06f8"; match "product" "0xe033"; action "kldload -n if_urtwn"; }; @@ -1457,6 +1497,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x07aa"; + match "product" "0x0047"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x07aa"; match "product" "0x0056"; action "kldload -n if_urtwn"; }; @@ -1561,6 +1609,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x07d1"; + match "product" "(0x3300|0x3302|0x3303)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x07d1"; match "product" "0x3a0c"; action "kldload -n if_uath"; }; @@ -1657,7 +1713,23 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x083a"; - match "product" "(0x6618|0x7511|0x7512|0x7522|0x8522|0xa512|0xa618|0xa701|0xa702|0xb522|0xc522|0xd522)"; + match "product" "(0x6618|0x7511|0x7512|0x7522|0x8522|0xa512|0xa618|0xa701|0xa702|0xb522)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x083a"; + match "product" "0xc512"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x083a"; + match "product" "(0xc522|0xd522)"; action "kldload -n if_run"; }; @@ -2137,7 +2209,39 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0b05"; - match "product" "(0x1731|0x1732|0x1742|0x1760|0x1761|0x1784|0x1790|0x179d)"; + match "product" "(0x1731|0x1732|0x1742|0x1760|0x1761|0x1784)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x1786"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x1790"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x1791"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x179d"; action "kldload -n if_run"; }; @@ -2273,7 +2377,23 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0bda"; - match "product" "(0x8170|0x8176|0x8177|0x8178|0x817a|0x817b|0x817c|0x817d|0x817e)"; + match "product" "0x8170"; + action "kldload -n if_urtwn"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0bda"; + match "product" "(0x8171|0x8172|0x8173|0x8174)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0bda"; + match "product" "(0x8176|0x8177|0x8178|0x817a|0x817b|0x817c|0x817d|0x817e)"; action "kldload -n if_urtwn"; }; @@ -2305,6 +2425,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0bda"; + match "product" "(0x8712|0x8712)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0bda"; match "product" "0x8754"; action "kldload -n if_urtwn"; }; @@ -2312,6 +2440,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x0bda"; + match "product" "0xc512"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x0bed"; match "product" "(0x1100|0x1101)"; action "kldload -n uslcom"; @@ -2609,7 +2745,39 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0df6"; - match "product" "(0x002b|0x002c|0x002d|0x0039|0x003b|0x003c|0x003d|0x003e|0x003f|0x0040|0x0041|0x0042|0x0047|0x0048|0x004a|0x004d)"; + match "product" "(0x002b|0x002c|0x002d|0x0039|0x003b|0x003c|0x003d|0x003e|0x003f|0x0040|0x0041|0x0042)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; + match "product" "0x0045"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; + match "product" "(0x0047|0x0048|0x004a)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; + match "product" "0x004b"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; + match "product" "0x004d"; action "kldload -n if_run"; }; @@ -2681,6 +2849,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0e66"; + match "product" "(0x0015|0x0016)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0e66"; match "product" "0x0019"; action "kldload -n if_urtwn"; }; @@ -3401,6 +3577,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x13d3"; + match "product" "(0x3306|0x3309|0x3310|0x3311|0x3325)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x13d3"; match "product" "(0x3357|0x3358|0x3359)"; action "kldload -n if_urtwn"; }; @@ -3553,6 +3737,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x14b2"; + match "product" "(0x3300|0x3301|0x3302)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x14b2"; match "product" "0x3c02"; action "kldload -n if_ural"; }; @@ -3945,6 +4137,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x1740"; + match "product" "(0x9603|0x9605)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x1740"; match "product" "(0x9701|0x9702|0x9703|0x9705|0x9706|0x9707|0x9708|0x9709|0x9801)"; action "kldload -n if_run"; }; @@ -3961,7 +4161,23 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x177f"; - match "product" "(0x0153|0x0302|0x0313)"; + match "product" "0x0153"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x177f"; + match "product" "0x0154"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x177f"; + match "product" "(0x0302|0x0313)"; action "kldload -n if_run"; }; @@ -4353,6 +4569,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x2019"; + match "product" "0xab28"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x2019"; match "product" "(0xab2a|0xab2b|0xab2e)"; action "kldload -n if_urtwn"; }; @@ -4681,6 +4905,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x7392"; + match "product" "(0x7611|0x7612|0x7622)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x7392"; match "product" "(0x7711|0x7717|0x7718)"; action "kldload -n if_run"; }; @@ -4936,5 +5168,5 @@ nomatch 32 { action "kldload -n umass"; }; -# 2477 USB entries processed +# 2515 USB entries processed Modified: user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c ============================================================================== --- user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Sun Aug 4 21:20:14 2013 (r253941) @@ -324,7 +324,8 @@ zfs_ioctl(vnode_t *vp, u_long com, intpt } static vm_page_t -page_busy(vnode_t *vp, int64_t start, int64_t off, int64_t nbytes) +page_busy(vnode_t *vp, int64_t start, int64_t off, int64_t nbytes, + boolean_t alloc) { vm_object_t obj; vm_page_t pp; @@ -346,6 +347,8 @@ page_busy(vnode_t *vp, int64_t start, in continue; } } else if (pp == NULL) { + if (!alloc) + break; pp = vm_page_alloc(obj, OFF_TO_IDX(start), VM_ALLOC_SYSTEM | VM_ALLOC_IFCACHED | VM_ALLOC_NOBUSY); @@ -356,8 +359,10 @@ page_busy(vnode_t *vp, int64_t start, in if (pp != NULL) { ASSERT3U(pp->valid, ==, VM_PAGE_BITS_ALL); - vm_object_pip_add(obj, 1); vm_page_io_start(pp); + if (!alloc) + break; + vm_object_pip_add(obj, 1); pmap_remove_write(pp); vm_page_clear_dirty(pp, off, nbytes); } @@ -367,55 +372,12 @@ page_busy(vnode_t *vp, int64_t start, in } static void -page_unbusy(vm_page_t pp) +page_unbusy(vm_page_t pp, boolean_t unalloc) { vm_page_io_finish(pp); - vm_object_pip_subtract(pp->object, 1); -} - -static vm_page_t -page_hold(vnode_t *vp, int64_t start) -{ - vm_object_t obj; - vm_page_t pp; - - obj = vp->v_object; - zfs_vmobject_assert_wlocked(obj); - - for (;;) { - if ((pp = vm_page_lookup(obj, OFF_TO_IDX(start))) != NULL && - pp->valid) { - if ((pp->oflags & VPO_BUSY) != 0) { - /* - * Reference the page before unlocking and - * sleeping so that the page daemon is less - * likely to reclaim it. - */ - vm_page_reference(pp); - vm_page_sleep(pp, "zfsmwb"); - continue; - } - - ASSERT3U(pp->valid, ==, VM_PAGE_BITS_ALL); - vm_page_lock(pp); - vm_page_hold(pp); - vm_page_unlock(pp); - - } else - pp = NULL; - break; - } - return (pp); -} - -static void -page_unhold(vm_page_t pp) -{ - - vm_page_lock(pp); - vm_page_unhold(pp); - vm_page_unlock(pp); + if (unalloc) + vm_object_pip_subtract(pp->object, 1); } static caddr_t @@ -479,7 +441,8 @@ update_pages(vnode_t *vp, int64_t start, zfs_vmobject_wlock(obj); vm_page_undirty(pp); - } else if ((pp = page_busy(vp, start, off, nbytes)) != NULL) { + } else if ((pp = page_busy(vp, start, off, nbytes, + TRUE)) != NULL) { zfs_vmobject_wunlock(obj); va = zfs_map_page(pp, &sf); @@ -488,7 +451,7 @@ update_pages(vnode_t *vp, int64_t start, zfs_unmap_page(sf); zfs_vmobject_wlock(obj); - page_unbusy(pp); + page_unbusy(pp, TRUE); } len -= nbytes; off = 0; @@ -598,7 +561,7 @@ mappedread(vnode_t *vp, int nbytes, uio_ vm_page_t pp; uint64_t bytes = MIN(PAGESIZE - off, len); - if (pp = page_hold(vp, start)) { + if (pp = page_busy(vp, start, 0, 0, FALSE)) { struct sf_buf *sf; caddr_t va; @@ -607,7 +570,7 @@ mappedread(vnode_t *vp, int nbytes, uio_ error = uiomove(va + off, bytes, UIO_READ, uio); zfs_unmap_page(sf); zfs_vmobject_wlock(obj); - page_unhold(pp); + page_unbusy(pp, FALSE); } else { zfs_vmobject_wunlock(obj); error = dmu_read_uio(os, zp->z_id, uio, bytes); Modified: user/attilio/vmcontention/sys/dev/iwn/if_iwn.c ============================================================================== --- user/attilio/vmcontention/sys/dev/iwn/if_iwn.c Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/dev/iwn/if_iwn.c Sun Aug 4 21:20:14 2013 (r253941) @@ -7489,7 +7489,7 @@ iwn_hw_reset(void *arg0, int pending) #define COUNTOF(array) (sizeof(array) / sizeof(array[0])) /* - * Transate CSR code to string + * Translate CSR code to string */ static char *iwn_get_csr_string(int csr) { Modified: user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c ============================================================================== --- user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c Sun Aug 4 21:20:14 2013 (r253941) @@ -485,13 +485,13 @@ tmpfs_nocacheread(vm_object_t tobj, vm_p vm_page_zero_invalid(m, TRUE); vm_page_wakeup(m); } - vm_page_lock(m); - vm_page_hold(m); - vm_page_unlock(m); + vm_page_io_start(m); VM_OBJECT_WUNLOCK(tobj); error = uiomove_fromphys(&m, offset, tlen, uio); + VM_OBJECT_WLOCK(tobj); + vm_page_io_finish(m); + VM_OBJECT_WUNLOCK(tobj); vm_page_lock(m); - vm_page_unhold(m); if (m->queue == PQ_NONE) { vm_page_deactivate(m); } else { @@ -602,16 +602,14 @@ tmpfs_mappedwrite(vm_object_t tobj, size vm_page_zero_invalid(tpg, TRUE); vm_page_wakeup(tpg); } - vm_page_lock(tpg); - vm_page_hold(tpg); - vm_page_unlock(tpg); + vm_page_io_start(tpg); VM_OBJECT_WUNLOCK(tobj); error = uiomove_fromphys(&tpg, offset, tlen, uio); VM_OBJECT_WLOCK(tobj); + vm_page_io_finish(tpg); if (error == 0) vm_page_dirty(tpg); vm_page_lock(tpg); - vm_page_unhold(tpg); if (tpg->queue == PQ_NONE) { vm_page_deactivate(tpg); } else { Modified: user/attilio/vmcontention/sys/geom/part/g_part.c ============================================================================== --- user/attilio/vmcontention/sys/geom/part/g_part.c Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/geom/part/g_part.c Sun Aug 4 21:20:14 2013 (r253941) @@ -29,7 +29,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include #include Modified: user/attilio/vmcontention/sys/geom/part/g_part_apm.c ============================================================================== --- user/attilio/vmcontention/sys/geom/part/g_part_apm.c Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/geom/part/g_part_apm.c Sun Aug 4 21:20:14 2013 (r253941) @@ -30,7 +30,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include Modified: user/attilio/vmcontention/sys/kern/imgact_elf.c ============================================================================== --- user/attilio/vmcontention/sys/kern/imgact_elf.c Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/kern/imgact_elf.c Sun Aug 4 21:20:14 2013 (r253941) @@ -378,7 +378,7 @@ __elfN(map_partial)(vm_map_t map, vm_obj off = offset - trunc_page(offset); error = copyout((caddr_t)sf_buf_kva(sf) + off, (caddr_t)start, end - start); - vm_imgact_unmap_page(sf); + vm_imgact_unmap_page(object, sf); if (error) { return (KERN_FAILURE); } @@ -433,7 +433,7 @@ __elfN(map_insert)(vm_map_t map, vm_obje sz = PAGE_SIZE - off; error = copyout((caddr_t)sf_buf_kva(sf) + off, (caddr_t)start, sz); - vm_imgact_unmap_page(sf); + vm_imgact_unmap_page(object, sf); if (error) { return (KERN_FAILURE); } @@ -553,7 +553,7 @@ __elfN(load_section)(struct image_params trunc_page(offset + filsz); error = copyout((caddr_t)sf_buf_kva(sf) + off, (caddr_t)map_addr, copy_len); - vm_imgact_unmap_page(sf); + vm_imgact_unmap_page(object, sf); if (error) { return (error); } Modified: user/attilio/vmcontention/sys/kern/kern_exec.c ============================================================================== --- user/attilio/vmcontention/sys/kern/kern_exec.c Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/kern/kern_exec.c Sun Aug 4 21:20:14 2013 (r253941) @@ -973,7 +973,7 @@ exec_map_first_page(imgp) vm_page_wakeup(ma[0]); } vm_page_lock(ma[0]); - vm_page_hold(ma[0]); + vm_page_wire(ma[0]); vm_page_unlock(ma[0]); VM_OBJECT_WUNLOCK(object); @@ -994,7 +994,7 @@ exec_unmap_first_page(imgp) sf_buf_free(imgp->firstpage); imgp->firstpage = NULL; vm_page_lock(m); - vm_page_unhold(m); + vm_page_unwire(m, 0); vm_page_unlock(m); } } Modified: user/attilio/vmcontention/sys/kern/sys_process.c ============================================================================== --- user/attilio/vmcontention/sys/kern/sys_process.c Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/kern/sys_process.c Sun Aug 4 21:20:14 2013 (r253941) @@ -263,6 +263,7 @@ proc_rwmem(struct proc *p, struct uio *u writing = uio->uio_rw == UIO_WRITE; reqprot = writing ? VM_PROT_COPY | VM_PROT_READ : VM_PROT_READ; fault_flags = writing ? VM_FAULT_DIRTY : VM_FAULT_NORMAL; + fault_flags |= VM_FAULT_IOBUSY; /* * Only map in one page at a time. We don't have to, but it @@ -287,9 +288,9 @@ proc_rwmem(struct proc *p, struct uio *u len = min(PAGE_SIZE - page_offset, uio->uio_resid); /* - * Fault and hold the page on behalf of the process. + * Fault and busy the page on behalf of the process. */ - error = vm_fault_hold(map, pageno, reqprot, fault_flags, &m); + error = vm_fault_handle(map, pageno, reqprot, fault_flags, &m); if (error != KERN_SUCCESS) { if (error == KERN_RESOURCE_SHORTAGE) error = ENOMEM; @@ -315,9 +316,9 @@ proc_rwmem(struct proc *p, struct uio *u /* * Release the page. */ - vm_page_lock(m); - vm_page_unhold(m); - vm_page_unlock(m); + VM_OBJECT_WLOCK(m->object); + vm_page_io_finish(m); + VM_OBJECT_WUNLOCK(m->object); } while (error == 0 && uio->uio_resid > 0); Modified: user/attilio/vmcontention/sys/sparc64/include/pmap.h ============================================================================== --- user/attilio/vmcontention/sys/sparc64/include/pmap.h Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/sparc64/include/pmap.h Sun Aug 4 21:20:14 2013 (r253941) @@ -56,7 +56,6 @@ struct md_page { struct pmap *pmap; uint32_t colors[DCACHE_COLORS]; int32_t color; - uint32_t flags; }; struct pmap { Modified: user/attilio/vmcontention/sys/sparc64/sparc64/pmap.c ============================================================================== --- user/attilio/vmcontention/sys/sparc64/sparc64/pmap.c Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/sparc64/sparc64/pmap.c Sun Aug 4 21:20:14 2013 (r253941) @@ -765,7 +765,6 @@ pmap_page_init(vm_page_t m) TAILQ_INIT(&m->md.tte_list); m->md.color = DCACHE_COLOR(VM_PAGE_TO_PHYS(m)); - m->md.flags = 0; m->md.pmap = NULL; } Modified: user/attilio/vmcontention/sys/vm/vm_extern.h ============================================================================== --- user/attilio/vmcontention/sys/vm/vm_extern.h Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/vm/vm_extern.h Sun Aug 4 21:20:14 2013 (r253941) @@ -63,7 +63,7 @@ void vm_fault_copy_entry(vm_map_t, vm_ma vm_ooffset_t *); int vm_fault_disable_pagefaults(void); void vm_fault_enable_pagefaults(int save); -int vm_fault_hold(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, +int vm_fault_handle(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, int fault_flags, vm_page_t *m_hold); int vm_fault_quick_hold_pages(vm_map_t map, vm_offset_t addr, vm_size_t len, vm_prot_t prot, vm_page_t *ma, int max_count); @@ -87,7 +87,7 @@ void vnode_pager_setsize(struct vnode *, int vslock(void *, size_t); void vsunlock(void *, size_t); struct sf_buf *vm_imgact_map_page(vm_object_t object, vm_ooffset_t offset); -void vm_imgact_unmap_page(struct sf_buf *sf); +void vm_imgact_unmap_page(vm_object_t, struct sf_buf *sf); void vm_thread_dispose(struct thread *td); int vm_thread_new(struct thread *td, int pages); int vm_mlock(struct proc *, struct ucred *, const void *, size_t); Modified: user/attilio/vmcontention/sys/vm/vm_fault.c ============================================================================== --- user/attilio/vmcontention/sys/vm/vm_fault.c Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/vm/vm_fault.c Sun Aug 4 21:20:14 2013 (r253941) @@ -221,8 +221,8 @@ vm_fault(vm_map_t map, vm_offset_t vaddr if (map != kernel_map && KTRPOINT(td, KTR_FAULT)) ktrfault(vaddr, fault_type); #endif - result = vm_fault_hold(map, trunc_page(vaddr), fault_type, fault_flags, - NULL); + result = vm_fault_handle(map, trunc_page(vaddr), fault_type, + fault_flags, NULL); #ifdef KTRACE if (map != kernel_map && KTRPOINT(td, KTR_FAULTEND)) ktrfaultend(result); @@ -231,7 +231,7 @@ vm_fault(vm_map_t map, vm_offset_t vaddr } int -vm_fault_hold(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, +vm_fault_handle(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, int fault_flags, vm_page_t *m_hold) { vm_prot_t prot; @@ -943,7 +943,10 @@ vnode_locked: vm_page_activate(fs.m); if (m_hold != NULL) { *m_hold = fs.m; - vm_page_hold(fs.m); + if (fault_flags & VM_FAULT_IOBUSY) + vm_page_io_start(fs.m); + else + vm_page_hold(fs.m); } vm_page_unlock(fs.m); vm_page_wakeup(fs.m); @@ -1145,7 +1148,7 @@ vm_fault_quick_hold_pages(vm_map_t map, * and hold these pages. */ for (mp = ma, va = addr; va < end; mp++, va += PAGE_SIZE) - if (*mp == NULL && vm_fault_hold(map, va, prot, + if (*mp == NULL && vm_fault_handle(map, va, prot, VM_FAULT_NORMAL, mp) != KERN_SUCCESS) goto error; } Modified: user/attilio/vmcontention/sys/vm/vm_glue.c ============================================================================== --- user/attilio/vmcontention/sys/vm/vm_glue.c Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/vm/vm_glue.c Sun Aug 4 21:20:14 2013 (r253941) @@ -223,7 +223,7 @@ vsunlock(void *addr, size_t len) * Return the pinned page if successful; otherwise, return NULL. */ static vm_page_t -vm_imgact_hold_page(vm_object_t object, vm_ooffset_t offset) +vm_imgact_page_iostart(vm_object_t object, vm_ooffset_t offset) { vm_page_t m, ma[1]; vm_pindex_t pindex; @@ -249,9 +249,7 @@ vm_imgact_hold_page(vm_object_t object, } vm_page_wakeup(m); } - vm_page_lock(m); - vm_page_hold(m); - vm_page_unlock(m); + vm_page_io_start(m); out: VM_OBJECT_WUNLOCK(object); return (m); @@ -266,7 +264,7 @@ vm_imgact_map_page(vm_object_t object, v { vm_page_t m; - m = vm_imgact_hold_page(object, offset); + m = vm_imgact_page_iostart(object, offset); if (m == NULL) return (NULL); sched_pin(); @@ -277,16 +275,16 @@ vm_imgact_map_page(vm_object_t object, v * Destroy the given CPU private mapping and unpin the page that it mapped. */ void -vm_imgact_unmap_page(struct sf_buf *sf) +vm_imgact_unmap_page(vm_object_t object, struct sf_buf *sf) { vm_page_t m; m = sf_buf_page(sf); sf_buf_free(sf); sched_unpin(); - vm_page_lock(m); - vm_page_unhold(m); - vm_page_unlock(m); + VM_OBJECT_WLOCK(object); + vm_page_io_finish(m); + VM_OBJECT_WUNLOCK(object); } void Modified: user/attilio/vmcontention/sys/vm/vm_map.h ============================================================================== --- user/attilio/vmcontention/sys/vm/vm_map.h Sun Aug 4 21:17:05 2013 (r253940) +++ user/attilio/vmcontention/sys/vm/vm_map.h Sun Aug 4 21:20:14 2013 (r253941) @@ -329,6 +329,7 @@ long vmspace_resident_count(struct vmspa #define VM_FAULT_NORMAL 0 /* Nothing special */ #define VM_FAULT_CHANGE_WIRING 1 /* Change the wiring as appropriate */ #define VM_FAULT_DIRTY 2 /* Dirty the page; use w/VM_PROT_COPY */ +#define VM_FAULT_IOBUSY 4 /* Busy the faulted page */ /* * Initially, mappings are slightly sequential. The maximum window size must From owner-svn-src-user@FreeBSD.ORG Sun Aug 4 21:24:56 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 1DF34204; Sun, 4 Aug 2013 21:24:56 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id F162A2A5B; Sun, 4 Aug 2013 21:24:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r74LOtTI002378; Sun, 4 Aug 2013 21:24:55 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r74LOsG0002369; Sun, 4 Aug 2013 21:24:54 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308042124.r74LOsG0002369@svn.freebsd.org> From: Attilio Rao Date: Sun, 4 Aug 2013 21:24:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253942 - in user/attilio/vmobj-readlock: cddl/contrib/opensolaris/cmd/zfs etc/devd sys/dev/iwn sys/geom/part sys/sparc64/include sys/sparc64/sparc64 X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 21:24:56 -0000 Author: attilio Date: Sun Aug 4 21:24:54 2013 New Revision: 253942 URL: http://svnweb.freebsd.org/changeset/base/253942 Log: MFC Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c user/attilio/vmobj-readlock/etc/devd/usb.conf user/attilio/vmobj-readlock/sys/dev/iwn/if_iwn.c user/attilio/vmobj-readlock/sys/geom/part/g_part.c user/attilio/vmobj-readlock/sys/geom/part/g_part_apm.c user/attilio/vmobj-readlock/sys/sparc64/include/pmap.h user/attilio/vmobj-readlock/sys/sparc64/sparc64/pmap.c Directory Properties: user/attilio/vmobj-readlock/ (props changed) user/attilio/vmobj-readlock/cddl/ (props changed) user/attilio/vmobj-readlock/cddl/contrib/opensolaris/ (props changed) user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/zfs/ (props changed) user/attilio/vmobj-readlock/sys/ (props changed) user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/ (props changed) Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Sun Aug 4 21:20:14 2013 (r253941) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Sun Aug 4 21:24:54 2013 (r253942) @@ -57,6 +57,7 @@ #include #include #include +#include #include #include Modified: user/attilio/vmobj-readlock/etc/devd/usb.conf ============================================================================== --- user/attilio/vmobj-readlock/etc/devd/usb.conf Sun Aug 4 21:20:14 2013 (r253941) +++ user/attilio/vmobj-readlock/etc/devd/usb.conf Sun Aug 4 21:24:54 2013 (r253942) @@ -777,7 +777,7 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x050d"; - match "product" "(0x8053|0x805c|0x815c|0x825a|0x825b)"; + match "product" "(0x8053|0x805c|0x815c)"; action "kldload -n if_run"; }; @@ -785,6 +785,30 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x050d"; + match "product" "0x815f"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x050d"; + match "product" "(0x825a|0x825b)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x050d"; + match "product" "0x845a"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x050d"; match "product" "0x905b"; action "kldload -n if_rum"; }; @@ -800,6 +824,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x050d"; + match "product" "0x945a"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x0525"; match "product" "(0x1080|0xa4a0)"; action "kldload -n udbp"; @@ -1249,6 +1281,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x06f8"; + match "product" "(0xe031|0xe032)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x06f8"; match "product" "0xe033"; action "kldload -n if_urtwn"; }; @@ -1457,6 +1497,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x07aa"; + match "product" "0x0047"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x07aa"; match "product" "0x0056"; action "kldload -n if_urtwn"; }; @@ -1561,6 +1609,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x07d1"; + match "product" "(0x3300|0x3302|0x3303)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x07d1"; match "product" "0x3a0c"; action "kldload -n if_uath"; }; @@ -1657,7 +1713,23 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x083a"; - match "product" "(0x6618|0x7511|0x7512|0x7522|0x8522|0xa512|0xa618|0xa701|0xa702|0xb522|0xc522|0xd522)"; + match "product" "(0x6618|0x7511|0x7512|0x7522|0x8522|0xa512|0xa618|0xa701|0xa702|0xb522)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x083a"; + match "product" "0xc512"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x083a"; + match "product" "(0xc522|0xd522)"; action "kldload -n if_run"; }; @@ -2137,7 +2209,39 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0b05"; - match "product" "(0x1731|0x1732|0x1742|0x1760|0x1761|0x1784|0x1790|0x179d)"; + match "product" "(0x1731|0x1732|0x1742|0x1760|0x1761|0x1784)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x1786"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x1790"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x1791"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x179d"; action "kldload -n if_run"; }; @@ -2273,7 +2377,23 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0bda"; - match "product" "(0x8170|0x8176|0x8177|0x8178|0x817a|0x817b|0x817c|0x817d|0x817e)"; + match "product" "0x8170"; + action "kldload -n if_urtwn"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0bda"; + match "product" "(0x8171|0x8172|0x8173|0x8174)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0bda"; + match "product" "(0x8176|0x8177|0x8178|0x817a|0x817b|0x817c|0x817d|0x817e)"; action "kldload -n if_urtwn"; }; @@ -2305,6 +2425,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0bda"; + match "product" "(0x8712|0x8712)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0bda"; match "product" "0x8754"; action "kldload -n if_urtwn"; }; @@ -2312,6 +2440,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x0bda"; + match "product" "0xc512"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x0bed"; match "product" "(0x1100|0x1101)"; action "kldload -n uslcom"; @@ -2609,7 +2745,39 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0df6"; - match "product" "(0x002b|0x002c|0x002d|0x0039|0x003b|0x003c|0x003d|0x003e|0x003f|0x0040|0x0041|0x0042|0x0047|0x0048|0x004a|0x004d)"; + match "product" "(0x002b|0x002c|0x002d|0x0039|0x003b|0x003c|0x003d|0x003e|0x003f|0x0040|0x0041|0x0042)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; + match "product" "0x0045"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; + match "product" "(0x0047|0x0048|0x004a)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; + match "product" "0x004b"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; + match "product" "0x004d"; action "kldload -n if_run"; }; @@ -2681,6 +2849,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0e66"; + match "product" "(0x0015|0x0016)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0e66"; match "product" "0x0019"; action "kldload -n if_urtwn"; }; @@ -3401,6 +3577,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x13d3"; + match "product" "(0x3306|0x3309|0x3310|0x3311|0x3325)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x13d3"; match "product" "(0x3357|0x3358|0x3359)"; action "kldload -n if_urtwn"; }; @@ -3553,6 +3737,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x14b2"; + match "product" "(0x3300|0x3301|0x3302)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x14b2"; match "product" "0x3c02"; action "kldload -n if_ural"; }; @@ -3945,6 +4137,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x1740"; + match "product" "(0x9603|0x9605)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x1740"; match "product" "(0x9701|0x9702|0x9703|0x9705|0x9706|0x9707|0x9708|0x9709|0x9801)"; action "kldload -n if_run"; }; @@ -3961,7 +4161,23 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x177f"; - match "product" "(0x0153|0x0302|0x0313)"; + match "product" "0x0153"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x177f"; + match "product" "0x0154"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x177f"; + match "product" "(0x0302|0x0313)"; action "kldload -n if_run"; }; @@ -4353,6 +4569,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x2019"; + match "product" "0xab28"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x2019"; match "product" "(0xab2a|0xab2b|0xab2e)"; action "kldload -n if_urtwn"; }; @@ -4681,6 +4905,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x7392"; + match "product" "(0x7611|0x7612|0x7622)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x7392"; match "product" "(0x7711|0x7717|0x7718)"; action "kldload -n if_run"; }; @@ -4936,5 +5168,5 @@ nomatch 32 { action "kldload -n umass"; }; -# 2477 USB entries processed +# 2515 USB entries processed Modified: user/attilio/vmobj-readlock/sys/dev/iwn/if_iwn.c ============================================================================== --- user/attilio/vmobj-readlock/sys/dev/iwn/if_iwn.c Sun Aug 4 21:20:14 2013 (r253941) +++ user/attilio/vmobj-readlock/sys/dev/iwn/if_iwn.c Sun Aug 4 21:24:54 2013 (r253942) @@ -7489,7 +7489,7 @@ iwn_hw_reset(void *arg0, int pending) #define COUNTOF(array) (sizeof(array) / sizeof(array[0])) /* - * Transate CSR code to string + * Translate CSR code to string */ static char *iwn_get_csr_string(int csr) { Modified: user/attilio/vmobj-readlock/sys/geom/part/g_part.c ============================================================================== --- user/attilio/vmobj-readlock/sys/geom/part/g_part.c Sun Aug 4 21:20:14 2013 (r253941) +++ user/attilio/vmobj-readlock/sys/geom/part/g_part.c Sun Aug 4 21:24:54 2013 (r253942) @@ -29,7 +29,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include #include Modified: user/attilio/vmobj-readlock/sys/geom/part/g_part_apm.c ============================================================================== --- user/attilio/vmobj-readlock/sys/geom/part/g_part_apm.c Sun Aug 4 21:20:14 2013 (r253941) +++ user/attilio/vmobj-readlock/sys/geom/part/g_part_apm.c Sun Aug 4 21:24:54 2013 (r253942) @@ -30,7 +30,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include Modified: user/attilio/vmobj-readlock/sys/sparc64/include/pmap.h ============================================================================== --- user/attilio/vmobj-readlock/sys/sparc64/include/pmap.h Sun Aug 4 21:20:14 2013 (r253941) +++ user/attilio/vmobj-readlock/sys/sparc64/include/pmap.h Sun Aug 4 21:24:54 2013 (r253942) @@ -56,7 +56,6 @@ struct md_page { struct pmap *pmap; uint32_t colors[DCACHE_COLORS]; int32_t color; - uint32_t flags; }; struct pmap { Modified: user/attilio/vmobj-readlock/sys/sparc64/sparc64/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/sparc64/sparc64/pmap.c Sun Aug 4 21:20:14 2013 (r253941) +++ user/attilio/vmobj-readlock/sys/sparc64/sparc64/pmap.c Sun Aug 4 21:24:54 2013 (r253942) @@ -765,7 +765,6 @@ pmap_page_init(vm_page_t m) TAILQ_INIT(&m->md.tte_list); m->md.color = DCACHE_COLOR(VM_PAGE_TO_PHYS(m)); - m->md.flags = 0; m->md.pmap = NULL; } From owner-svn-src-user@FreeBSD.ORG Sun Aug 4 21:27:35 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 415582E9; Sun, 4 Aug 2013 21:27:35 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2C7622A62; Sun, 4 Aug 2013 21:27:35 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r74LRZIS002737; Sun, 4 Aug 2013 21:27:35 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r74LRVaU002712; Sun, 4 Aug 2013 21:27:31 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308042127.r74LRVaU002712@svn.freebsd.org> From: Attilio Rao Date: Sun, 4 Aug 2013 21:27:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253943 - in user/attilio/vmobj-fullread: cddl/contrib/opensolaris/cmd/zfs etc/devd sys/amd64/amd64 sys/amd64/include sys/arm/arm sys/arm/include sys/dev/iwn sys/geom/part sys/i386/i386... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 21:27:35 -0000 Author: attilio Date: Sun Aug 4 21:27:31 2013 New Revision: 253943 URL: http://svnweb.freebsd.org/changeset/base/253943 Log: MFC Modified: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c user/attilio/vmobj-fullread/etc/devd/usb.conf user/attilio/vmobj-fullread/sys/amd64/amd64/pmap.c user/attilio/vmobj-fullread/sys/amd64/include/pmap.h user/attilio/vmobj-fullread/sys/arm/arm/pmap-v6.c user/attilio/vmobj-fullread/sys/arm/arm/pmap.c user/attilio/vmobj-fullread/sys/arm/include/pmap.h user/attilio/vmobj-fullread/sys/dev/iwn/if_iwn.c user/attilio/vmobj-fullread/sys/geom/part/g_part.c user/attilio/vmobj-fullread/sys/geom/part/g_part_apm.c user/attilio/vmobj-fullread/sys/i386/i386/pmap.c user/attilio/vmobj-fullread/sys/i386/i386/vm_machdep.c user/attilio/vmobj-fullread/sys/i386/include/pmap.h user/attilio/vmobj-fullread/sys/i386/xen/pmap.c user/attilio/vmobj-fullread/sys/ia64/ia64/pmap.c user/attilio/vmobj-fullread/sys/mips/include/pmap.h user/attilio/vmobj-fullread/sys/mips/mips/pmap.c user/attilio/vmobj-fullread/sys/powerpc/aim/mmu_oea.c user/attilio/vmobj-fullread/sys/powerpc/aim/mmu_oea64.c user/attilio/vmobj-fullread/sys/powerpc/include/pmap.h user/attilio/vmobj-fullread/sys/vm/vm_page.h Directory Properties: user/attilio/vmobj-fullread/ (props changed) user/attilio/vmobj-fullread/cddl/ (props changed) user/attilio/vmobj-fullread/cddl/contrib/opensolaris/ (props changed) user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/zfs/ (props changed) user/attilio/vmobj-fullread/sys/ (props changed) user/attilio/vmobj-fullread/sys/cddl/contrib/opensolaris/ (props changed) Modified: user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c ============================================================================== --- user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c Sun Aug 4 21:27:31 2013 (r253943) @@ -57,6 +57,7 @@ #include #include #include +#include #include #include Modified: user/attilio/vmobj-fullread/etc/devd/usb.conf ============================================================================== --- user/attilio/vmobj-fullread/etc/devd/usb.conf Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/etc/devd/usb.conf Sun Aug 4 21:27:31 2013 (r253943) @@ -777,7 +777,7 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x050d"; - match "product" "(0x8053|0x805c|0x815c|0x825a|0x825b)"; + match "product" "(0x8053|0x805c|0x815c)"; action "kldload -n if_run"; }; @@ -785,6 +785,30 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x050d"; + match "product" "0x815f"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x050d"; + match "product" "(0x825a|0x825b)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x050d"; + match "product" "0x845a"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x050d"; match "product" "0x905b"; action "kldload -n if_rum"; }; @@ -800,6 +824,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x050d"; + match "product" "0x945a"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x0525"; match "product" "(0x1080|0xa4a0)"; action "kldload -n udbp"; @@ -1249,6 +1281,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x06f8"; + match "product" "(0xe031|0xe032)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x06f8"; match "product" "0xe033"; action "kldload -n if_urtwn"; }; @@ -1457,6 +1497,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x07aa"; + match "product" "0x0047"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x07aa"; match "product" "0x0056"; action "kldload -n if_urtwn"; }; @@ -1561,6 +1609,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x07d1"; + match "product" "(0x3300|0x3302|0x3303)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x07d1"; match "product" "0x3a0c"; action "kldload -n if_uath"; }; @@ -1657,7 +1713,23 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x083a"; - match "product" "(0x6618|0x7511|0x7512|0x7522|0x8522|0xa512|0xa618|0xa701|0xa702|0xb522|0xc522|0xd522)"; + match "product" "(0x6618|0x7511|0x7512|0x7522|0x8522|0xa512|0xa618|0xa701|0xa702|0xb522)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x083a"; + match "product" "0xc512"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x083a"; + match "product" "(0xc522|0xd522)"; action "kldload -n if_run"; }; @@ -2137,7 +2209,39 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0b05"; - match "product" "(0x1731|0x1732|0x1742|0x1760|0x1761|0x1784|0x1790|0x179d)"; + match "product" "(0x1731|0x1732|0x1742|0x1760|0x1761|0x1784)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x1786"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x1790"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x1791"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0b05"; + match "product" "0x179d"; action "kldload -n if_run"; }; @@ -2273,7 +2377,23 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0bda"; - match "product" "(0x8170|0x8176|0x8177|0x8178|0x817a|0x817b|0x817c|0x817d|0x817e)"; + match "product" "0x8170"; + action "kldload -n if_urtwn"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0bda"; + match "product" "(0x8171|0x8172|0x8173|0x8174)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0bda"; + match "product" "(0x8176|0x8177|0x8178|0x817a|0x817b|0x817c|0x817d|0x817e)"; action "kldload -n if_urtwn"; }; @@ -2305,6 +2425,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0bda"; + match "product" "(0x8712|0x8712)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0bda"; match "product" "0x8754"; action "kldload -n if_urtwn"; }; @@ -2312,6 +2440,14 @@ nomatch 32 { nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; + match "vendor" "0x0bda"; + match "product" "0xc512"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; match "vendor" "0x0bed"; match "product" "(0x1100|0x1101)"; action "kldload -n uslcom"; @@ -2609,7 +2745,39 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0df6"; - match "product" "(0x002b|0x002c|0x002d|0x0039|0x003b|0x003c|0x003d|0x003e|0x003f|0x0040|0x0041|0x0042|0x0047|0x0048|0x004a|0x004d)"; + match "product" "(0x002b|0x002c|0x002d|0x0039|0x003b|0x003c|0x003d|0x003e|0x003f|0x0040|0x0041|0x0042)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; + match "product" "0x0045"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; + match "product" "(0x0047|0x0048|0x004a)"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; + match "product" "0x004b"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0df6"; + match "product" "0x004d"; action "kldload -n if_run"; }; @@ -2681,6 +2849,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x0e66"; + match "product" "(0x0015|0x0016)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x0e66"; match "product" "0x0019"; action "kldload -n if_urtwn"; }; @@ -3401,6 +3577,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x13d3"; + match "product" "(0x3306|0x3309|0x3310|0x3311|0x3325)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x13d3"; match "product" "(0x3357|0x3358|0x3359)"; action "kldload -n if_urtwn"; }; @@ -3553,6 +3737,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x14b2"; + match "product" "(0x3300|0x3301|0x3302)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x14b2"; match "product" "0x3c02"; action "kldload -n if_ural"; }; @@ -3945,6 +4137,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x1740"; + match "product" "(0x9603|0x9605)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x1740"; match "product" "(0x9701|0x9702|0x9703|0x9705|0x9706|0x9707|0x9708|0x9709|0x9801)"; action "kldload -n if_run"; }; @@ -3961,7 +4161,23 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x177f"; - match "product" "(0x0153|0x0302|0x0313)"; + match "product" "0x0153"; + action "kldload -n if_run"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x177f"; + match "product" "0x0154"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x177f"; + match "product" "(0x0302|0x0313)"; action "kldload -n if_run"; }; @@ -4353,6 +4569,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x2019"; + match "product" "0xab28"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x2019"; match "product" "(0xab2a|0xab2b|0xab2e)"; action "kldload -n if_urtwn"; }; @@ -4681,6 +4905,14 @@ nomatch 32 { match "bus" "uhub[0-9]+"; match "mode" "host"; match "vendor" "0x7392"; + match "product" "(0x7611|0x7612|0x7622)"; + action "kldload -n if_rsu"; +}; + +nomatch 32 { + match "bus" "uhub[0-9]+"; + match "mode" "host"; + match "vendor" "0x7392"; match "product" "(0x7711|0x7717|0x7718)"; action "kldload -n if_run"; }; @@ -4936,5 +5168,5 @@ nomatch 32 { action "kldload -n umass"; }; -# 2477 USB entries processed +# 2515 USB entries processed Modified: user/attilio/vmobj-fullread/sys/amd64/amd64/pmap.c ============================================================================== --- user/attilio/vmobj-fullread/sys/amd64/amd64/pmap.c Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/amd64/amd64/pmap.c Sun Aug 4 21:27:31 2013 (r253943) @@ -791,7 +791,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = PAT_WRITE_BACK; + m->md.pat_mode = PAT_WRITE_BACK; } /* @@ -1454,7 +1454,7 @@ pmap_qenter(vm_offset_t sva, vm_page_t * endpte = pte + count; while (pte < endpte) { m = *ma++; - pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->mdmemattr, 0); + pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 0); if ((*pte & (PG_FRAME | PG_PTE_CACHE)) != pa) { oldpte |= *pte; pte_store(pte, pa | PG_G | PG_RW | PG_V); @@ -3470,7 +3470,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, newpte |= PG_U; if (pmap == kernel_pmap) newpte |= PG_G; - newpte |= pmap_cache_bits(m->mdmemattr, 0); + newpte |= pmap_cache_bits(m->md.pat_mode, 0); mpte = NULL; @@ -3658,7 +3658,7 @@ pmap_enter_pde(pmap_t pmap, vm_offset_t " in pmap %p", va, pmap); return (FALSE); } - newpde = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->mdmemattr, 1) | + newpde = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 1) | PG_PS | PG_V; if ((m->oflags & VPO_UNMANAGED) == 0) { newpde |= PG_MANAGED; @@ -3860,7 +3860,7 @@ pmap_enter_quick_locked(pmap_t pmap, vm_ */ pmap_resident_count_inc(pmap, 1); - pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->mdmemattr, 0); + pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 0); if ((prot & VM_PROT_EXECUTE) == 0) pa |= pg_nx; @@ -3901,7 +3901,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs pd_entry_t *pde; vm_paddr_t pa, ptepa; vm_page_t p, pdpg; - vm_memattr_t pat_mode; + int pat_mode; VM_OBJECT_ASSERT_WLOCKED(object); KASSERT(object->type == OBJT_DEVICE || object->type == OBJT_SG, @@ -3912,7 +3912,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs p = vm_page_lookup(object, pindex); KASSERT(p->valid == VM_PAGE_BITS_ALL, ("pmap_object_init_pt: invalid page %p", p)); - pat_mode = p->mdmemattr; + pat_mode = p->md.pat_mode; /* * Abort the mapping if the first page is not physically @@ -3933,7 +3933,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs KASSERT(p->valid == VM_PAGE_BITS_ALL, ("pmap_object_init_pt: invalid page %p", p)); if (pa != VM_PAGE_TO_PHYS(p) || - pat_mode != p->mdmemattr) + pat_mode != p->md.pat_mode) return; p = TAILQ_NEXT(p, listq); } @@ -5121,7 +5121,7 @@ void pmap_page_set_memattr(vm_page_t m, vm_memattr_t ma) { - m->mdmemattr = ma; + m->md.pat_mode = ma; /* * If "m" is a normal page, update its direct mapping. This update @@ -5130,7 +5130,7 @@ pmap_page_set_memattr(vm_page_t m, vm_me */ if ((m->flags & PG_FICTITIOUS) == 0 && pmap_change_attr(PHYS_TO_DMAP(VM_PAGE_TO_PHYS(m)), PAGE_SIZE, - m->mdmemattr)) + m->md.pat_mode)) panic("memory attribute change on the direct map failed"); } Modified: user/attilio/vmobj-fullread/sys/amd64/include/pmap.h ============================================================================== --- user/attilio/vmobj-fullread/sys/amd64/include/pmap.h Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/amd64/include/pmap.h Sun Aug 4 21:27:31 2013 (r253943) @@ -233,6 +233,7 @@ struct pv_chunk; struct md_page { TAILQ_HEAD(,pv_entry) pv_list; + int pat_mode; }; /* @@ -299,7 +300,7 @@ extern vm_paddr_t dump_avail[]; extern vm_offset_t virtual_avail; extern vm_offset_t virtual_end; -#define pmap_page_get_memattr(m) ((m)->mdmemattr) +#define pmap_page_get_memattr(m) ((vm_memattr_t)(m)->md.pat_mode) #define pmap_page_is_write_mapped(m) (((m)->aflags & PGA_WRITEABLE) != 0) #define pmap_unmapbios(va, sz) pmap_unmapdev((va), (sz)) Modified: user/attilio/vmobj-fullread/sys/arm/arm/pmap-v6.c ============================================================================== --- user/attilio/vmobj-fullread/sys/arm/arm/pmap-v6.c Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/arm/arm/pmap-v6.c Sun Aug 4 21:27:31 2013 (r253943) @@ -1183,7 +1183,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = VM_MEMATTR_DEFAULT; + m->md.pv_memattr = VM_MEMATTR_DEFAULT; } static vm_offset_t @@ -2823,7 +2823,7 @@ validate: if (!(prot & VM_PROT_EXECUTE)) npte |= L2_XN; - if (m->mdmemattr != VM_MEMATTR_UNCACHEABLE) + if (m->md.pv_memattr != VM_MEMATTR_UNCACHEABLE) npte |= pte_l2_s_cache_mode; } @@ -4379,7 +4379,7 @@ pmap_page_set_memattr(vm_page_t m, vm_me * Remember the memattr in a field that gets used to set the appropriate * bits in the PTEs as mappings are established. */ - m->mdmemattr = ma; + m->md.pv_memattr = ma; /* * It appears that this function can only be called before any mappings Modified: user/attilio/vmobj-fullread/sys/arm/arm/pmap.c ============================================================================== --- user/attilio/vmobj-fullread/sys/arm/arm/pmap.c Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/arm/arm/pmap.c Sun Aug 4 21:27:31 2013 (r253943) @@ -1380,7 +1380,7 @@ pmap_fix_cache(struct vm_page *pg, pmap_ (pv->pv_flags & PVF_NC)) { pv->pv_flags &= ~PVF_NC; - if (pg->mdmemattr != VM_MEMATTR_UNCACHEABLE) + if (pg->md.pv_memattr != VM_MEMATTR_UNCACHEABLE) pmap_set_cache_entry(pv, pm, va, 1); continue; } @@ -1390,7 +1390,7 @@ pmap_fix_cache(struct vm_page *pg, pmap_ !pmwc && (pv->pv_flags & PVF_NC)) { pv->pv_flags &= ~(PVF_NC | PVF_MWC); - if (pg->mdmemattr != VM_MEMATTR_UNCACHEABLE) + if (pg->md.pv_memattr != VM_MEMATTR_UNCACHEABLE) pmap_set_cache_entry(pv, pm, va, 1); } } @@ -1442,7 +1442,8 @@ pmap_clearbit(struct vm_page *pg, u_int if (!(oflags & maskbits)) { if ((maskbits & PVF_WRITE) && (pv->pv_flags & PVF_NC)) { - if (pg->mdmemattr != VM_MEMATTR_UNCACHEABLE) { + if (pg->md.pv_memattr != + VM_MEMATTR_UNCACHEABLE) { PMAP_LOCK(pm); l2b = pmap_get_l2_bucket(pm, va); ptep = &l2b->l2b_kva[l2pte_index(va)]; @@ -1479,7 +1480,7 @@ pmap_clearbit(struct vm_page *pg, u_int * permission. */ if (maskbits & PVF_WRITE) { - if (pg->mdmemattr != + if (pg->md.pv_memattr != VM_MEMATTR_UNCACHEABLE) npte |= pte_l2_s_cache_mode; pv->pv_flags &= ~(PVF_NC | PVF_MWC); @@ -1810,7 +1811,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = VM_MEMATTR_DEFAULT; + m->md.pv_memattr = VM_MEMATTR_DEFAULT; } /* @@ -3411,7 +3412,7 @@ do_l2b_alloc: (m->oflags & VPO_UNMANAGED) == 0) vm_page_aflag_set(m, PGA_WRITEABLE); } - if (m->mdmemattr != VM_MEMATTR_UNCACHEABLE) + if (m->md.pv_memattr != VM_MEMATTR_UNCACHEABLE) npte |= pte_l2_s_cache_mode; if (m && m == opg) { /* @@ -5036,7 +5037,7 @@ pmap_page_set_memattr(vm_page_t m, vm_me * Remember the memattr in a field that gets used to set the appropriate * bits in the PTEs as mappings are established. */ - m->mdmemattr = ma; + m->md.pv_memattr = ma; /* * It appears that this function can only be called before any mappings Modified: user/attilio/vmobj-fullread/sys/arm/include/pmap.h ============================================================================== --- user/attilio/vmobj-fullread/sys/arm/include/pmap.h Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/arm/include/pmap.h Sun Aug 4 21:27:31 2013 (r253943) @@ -96,7 +96,7 @@ enum mem_type { #endif -#define pmap_page_get_memattr(m) ((m)->mdmemattr) +#define pmap_page_get_memattr(m) ((m)->md.pv_memattr) #define pmap_page_is_mapped(m) (!TAILQ_EMPTY(&(m)->md.pv_list)) #define pmap_page_is_write_mapped(m) (((m)->aflags & PGA_WRITEABLE) != 0) void pmap_page_set_memattr(vm_page_t m, vm_memattr_t ma); @@ -120,6 +120,7 @@ struct pv_chunk; struct md_page { int pvh_attrs; + vm_memattr_t pv_memattr; vm_offset_t pv_kva; /* first kernel VA mapping */ TAILQ_HEAD(,pv_entry) pv_list; }; Modified: user/attilio/vmobj-fullread/sys/dev/iwn/if_iwn.c ============================================================================== --- user/attilio/vmobj-fullread/sys/dev/iwn/if_iwn.c Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/dev/iwn/if_iwn.c Sun Aug 4 21:27:31 2013 (r253943) @@ -7489,7 +7489,7 @@ iwn_hw_reset(void *arg0, int pending) #define COUNTOF(array) (sizeof(array) / sizeof(array[0])) /* - * Transate CSR code to string + * Translate CSR code to string */ static char *iwn_get_csr_string(int csr) { Modified: user/attilio/vmobj-fullread/sys/geom/part/g_part.c ============================================================================== --- user/attilio/vmobj-fullread/sys/geom/part/g_part.c Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/geom/part/g_part.c Sun Aug 4 21:27:31 2013 (r253943) @@ -29,7 +29,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include #include Modified: user/attilio/vmobj-fullread/sys/geom/part/g_part_apm.c ============================================================================== --- user/attilio/vmobj-fullread/sys/geom/part/g_part_apm.c Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/geom/part/g_part_apm.c Sun Aug 4 21:27:31 2013 (r253943) @@ -30,7 +30,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include Modified: user/attilio/vmobj-fullread/sys/i386/i386/pmap.c ============================================================================== --- user/attilio/vmobj-fullread/sys/i386/i386/pmap.c Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/i386/i386/pmap.c Sun Aug 4 21:27:31 2013 (r253943) @@ -645,7 +645,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = PAT_WRITE_BACK; + m->md.pat_mode = PAT_WRITE_BACK; } #ifdef PAE @@ -1534,7 +1534,7 @@ pmap_qenter(vm_offset_t sva, vm_page_t * endpte = pte + count; while (pte < endpte) { m = *ma++; - pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->mdmemattr, 0); + pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 0); if ((*pte & (PG_FRAME | PG_PTE_CACHE)) != pa) { oldpte |= *pte; pte_store(pte, pa | pgeflag | PG_RW | PG_V); @@ -3532,7 +3532,7 @@ validate: /* * Now validate mapping with desired protection/wiring. */ - newpte = (pt_entry_t)(pa | pmap_cache_bits(m->mdmemattr, 0) | PG_V); + newpte = (pt_entry_t)(pa | pmap_cache_bits(m->md.pat_mode, 0) | PG_V); if ((prot & VM_PROT_WRITE) != 0) { newpte |= PG_RW; if ((newpte & PG_MANAGED) != 0) @@ -3621,7 +3621,7 @@ pmap_enter_pde(pmap_t pmap, vm_offset_t " in pmap %p", va, pmap); return (FALSE); } - newpde = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->mdmemattr, 1) | + newpde = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 1) | PG_PS | PG_V; if ((m->oflags & VPO_UNMANAGED) == 0) { newpde |= PG_MANAGED; @@ -3812,7 +3812,7 @@ pmap_enter_quick_locked(pmap_t pmap, vm_ */ pmap->pm_stats.resident_count++; - pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->mdmemattr, 0); + pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 0); #ifdef PAE if ((prot & VM_PROT_EXECUTE) == 0) pa |= pg_nx; @@ -3855,7 +3855,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs pd_entry_t *pde; vm_paddr_t pa, ptepa; vm_page_t p; - vm_memattr_t pat_mode; + int pat_mode; VM_OBJECT_ASSERT_WLOCKED(object); KASSERT(object->type == OBJT_DEVICE || object->type == OBJT_SG, @@ -3867,7 +3867,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs p = vm_page_lookup(object, pindex); KASSERT(p->valid == VM_PAGE_BITS_ALL, ("pmap_object_init_pt: invalid page %p", p)); - pat_mode = p->mdmemattr; + pat_mode = p->md.pat_mode; /* * Abort the mapping if the first page is not physically @@ -3888,7 +3888,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs KASSERT(p->valid == VM_PAGE_BITS_ALL, ("pmap_object_init_pt: invalid page %p", p)); if (pa != VM_PAGE_TO_PHYS(p) || - pat_mode != p->mdmemattr) + pat_mode != p->md.pat_mode) return; p = TAILQ_NEXT(p, listq); } @@ -4119,7 +4119,7 @@ pmap_zero_page(vm_page_t m) panic("pmap_zero_page: CMAP2 busy"); sched_pin(); *sysmaps->CMAP2 = PG_V | PG_RW | VM_PAGE_TO_PHYS(m) | PG_A | PG_M | - pmap_cache_bits(m->mdmemattr, 0); + pmap_cache_bits(m->md.pat_mode, 0); invlcaddr(sysmaps->CADDR2); pagezero(sysmaps->CADDR2); *sysmaps->CMAP2 = 0; @@ -4144,7 +4144,7 @@ pmap_zero_page_area(vm_page_t m, int off panic("pmap_zero_page_area: CMAP2 busy"); sched_pin(); *sysmaps->CMAP2 = PG_V | PG_RW | VM_PAGE_TO_PHYS(m) | PG_A | PG_M | - pmap_cache_bits(m->mdmemattr, 0); + pmap_cache_bits(m->md.pat_mode, 0); invlcaddr(sysmaps->CADDR2); if (off == 0 && size == PAGE_SIZE) pagezero(sysmaps->CADDR2); @@ -4169,7 +4169,7 @@ pmap_zero_page_idle(vm_page_t m) panic("pmap_zero_page_idle: CMAP3 busy"); sched_pin(); *CMAP3 = PG_V | PG_RW | VM_PAGE_TO_PHYS(m) | PG_A | PG_M | - pmap_cache_bits(m->mdmemattr, 0); + pmap_cache_bits(m->md.pat_mode, 0); invlcaddr(CADDR3); pagezero(CADDR3); *CMAP3 = 0; @@ -4197,9 +4197,9 @@ pmap_copy_page(vm_page_t src, vm_page_t invlpg((u_int)sysmaps->CADDR1); invlpg((u_int)sysmaps->CADDR2); *sysmaps->CMAP1 = PG_V | VM_PAGE_TO_PHYS(src) | PG_A | - pmap_cache_bits(src->mdmemattr, 0); + pmap_cache_bits(src->md.pat_mode, 0); *sysmaps->CMAP2 = PG_V | PG_RW | VM_PAGE_TO_PHYS(dst) | PG_A | PG_M | - pmap_cache_bits(dst->mdmemattr, 0); + pmap_cache_bits(dst->md.pat_mode, 0); bcopy(sysmaps->CADDR1, sysmaps->CADDR2, PAGE_SIZE); *sysmaps->CMAP1 = 0; *sysmaps->CMAP2 = 0; @@ -4236,9 +4236,9 @@ pmap_copy_pages(vm_page_t ma[], vm_offse b_pg_offset = b_offset & PAGE_MASK; cnt = min(cnt, PAGE_SIZE - b_pg_offset); *sysmaps->CMAP1 = PG_V | VM_PAGE_TO_PHYS(a_pg) | PG_A | - pmap_cache_bits(b_pg->mdmemattr, 0); + pmap_cache_bits(b_pg->md.pat_mode, 0); *sysmaps->CMAP2 = PG_V | PG_RW | VM_PAGE_TO_PHYS(b_pg) | PG_A | - PG_M | pmap_cache_bits(b_pg->mdmemattr, 0); + PG_M | pmap_cache_bits(b_pg->md.pat_mode, 0); a_cp = sysmaps->CADDR1 + a_pg_offset; b_cp = sysmaps->CADDR2 + b_pg_offset; bcopy(a_cp, b_cp, cnt); @@ -5050,7 +5050,7 @@ void pmap_page_set_memattr(vm_page_t m, vm_memattr_t ma) { - m->mdmemattr = ma; + m->md.pat_mode = ma; if ((m->flags & PG_FICTITIOUS) != 0) return; @@ -5088,7 +5088,7 @@ pmap_flush_page(vm_page_t m) panic("pmap_flush_page: CMAP2 busy"); sched_pin(); *sysmaps->CMAP2 = PG_V | PG_RW | VM_PAGE_TO_PHYS(m) | - PG_A | PG_M | pmap_cache_bits(m->mdmemattr, 0); + PG_A | PG_M | pmap_cache_bits(m->md.pat_mode, 0); invlcaddr(sysmaps->CADDR2); sva = (vm_offset_t)sysmaps->CADDR2; eva = sva + PAGE_SIZE; Modified: user/attilio/vmobj-fullread/sys/i386/i386/vm_machdep.c ============================================================================== --- user/attilio/vmobj-fullread/sys/i386/i386/vm_machdep.c Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/i386/i386/vm_machdep.c Sun Aug 4 21:27:31 2013 (r253943) @@ -864,10 +864,10 @@ sf_buf_alloc(struct vm_page *m, int flag opte = *ptep; #ifdef XEN PT_SET_MA(sf->kva, xpmap_ptom(VM_PAGE_TO_PHYS(m)) | pgeflag - | PG_RW | PG_V | pmap_cache_bits(m->mdmemattr, 0)); + | PG_RW | PG_V | pmap_cache_bits(m->md.pat_mode, 0)); #else *ptep = VM_PAGE_TO_PHYS(m) | pgeflag | PG_RW | PG_V | - pmap_cache_bits(m->mdmemattr, 0); + pmap_cache_bits(m->md.pat_mode, 0); #endif /* Modified: user/attilio/vmobj-fullread/sys/i386/include/pmap.h ============================================================================== --- user/attilio/vmobj-fullread/sys/i386/include/pmap.h Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/i386/include/pmap.h Sun Aug 4 21:27:31 2013 (r253943) @@ -429,6 +429,7 @@ struct pv_chunk; struct md_page { TAILQ_HEAD(,pv_entry) pv_list; + int pat_mode; }; struct pmap { @@ -498,7 +499,7 @@ extern char *ptvmmap; /* poor name! */ extern vm_offset_t virtual_avail; extern vm_offset_t virtual_end; -#define pmap_page_get_memattr(m) ((m)->mdmemattr) +#define pmap_page_get_memattr(m) ((vm_memattr_t)(m)->md.pat_mode) #define pmap_page_is_write_mapped(m) (((m)->aflags & PGA_WRITEABLE) != 0) #define pmap_unmapbios(va, sz) pmap_unmapdev((va), (sz)) Modified: user/attilio/vmobj-fullread/sys/i386/xen/pmap.c ============================================================================== --- user/attilio/vmobj-fullread/sys/i386/xen/pmap.c Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/i386/xen/pmap.c Sun Aug 4 21:27:31 2013 (r253943) @@ -536,7 +536,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = PAT_WRITE_BACK; + m->md.pat_mode = PAT_WRITE_BACK; } /* @@ -3110,7 +3110,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs pd_entry_t *pde; vm_paddr_t pa, ptepa; vm_page_t p; - vm_memattr_t pat_mode; + int pat_mode; VM_OBJECT_ASSERT_WLOCKED(object); KASSERT(object->type == OBJT_DEVICE || object->type == OBJT_SG, @@ -3122,7 +3122,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs p = vm_page_lookup(object, pindex); KASSERT(p->valid == VM_PAGE_BITS_ALL, ("pmap_object_init_pt: invalid page %p", p)); - pat_mode = p->mdmemattr; + pat_mode = p->md.pat_mode; /* * Abort the mapping if the first page is not physically @@ -3143,7 +3143,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs KASSERT(p->valid == VM_PAGE_BITS_ALL, ("pmap_object_init_pt: invalid page %p", p)); if (pa != VM_PAGE_TO_PHYS(p) || - pat_mode != p->mdmemattr) + pat_mode != p->md.pat_mode) return; p = TAILQ_NEXT(p, listq); } @@ -4065,7 +4065,7 @@ void pmap_page_set_memattr(vm_page_t m, vm_memattr_t ma) { - m->mdmemattr = ma; + m->md.pat_mode = ma; if ((m->flags & PG_FICTITIOUS) != 0) return; @@ -4104,7 +4104,7 @@ pmap_flush_page(vm_page_t m) sched_pin(); PT_SET_MA(sysmaps->CADDR2, PG_V | PG_RW | VM_PAGE_TO_MACH(m) | PG_A | PG_M | - pmap_cache_bits(m->mdmemattr, 0)); + pmap_cache_bits(m->md.pat_mode, 0)); invlcaddr(sysmaps->CADDR2); sva = (vm_offset_t)sysmaps->CADDR2; eva = sva + PAGE_SIZE; Modified: user/attilio/vmobj-fullread/sys/ia64/ia64/pmap.c ============================================================================== --- user/attilio/vmobj-fullread/sys/ia64/ia64/pmap.c Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/ia64/ia64/pmap.c Sun Aug 4 21:27:31 2013 (r253943) @@ -473,7 +473,7 @@ pmap_page_to_va(vm_page_t m) vm_offset_t va; pa = VM_PAGE_TO_PHYS(m); - va = (m->mdmemattr == VM_MEMATTR_UNCACHEABLE) ? IA64_PHYS_TO_RR6(pa) : + va = (m->md.memattr == VM_MEMATTR_UNCACHEABLE) ? IA64_PHYS_TO_RR6(pa) : IA64_PHYS_TO_RR7(pa); return (va); } @@ -486,7 +486,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = VM_MEMATTR_DEFAULT; + m->md.memattr = VM_MEMATTR_DEFAULT; } /* @@ -1439,7 +1439,7 @@ pmap_qenter(vm_offset_t va, vm_page_t *m else pmap_enter_vhpt(pte, va); pmap_pte_prot(kernel_pmap, pte, VM_PROT_ALL); - pmap_pte_attr(pte, m[i]->mdmemattr); + pmap_pte_attr(pte, m[i]->md.memattr); pmap_set_pte(pte, va, VM_PAGE_TO_PHYS(m[i]), FALSE, FALSE); va += PAGE_SIZE; } @@ -1768,7 +1768,7 @@ validate: * adds the pte to the VHPT if necessary. */ pmap_pte_prot(pmap, pte, prot); - pmap_pte_attr(pte, m->mdmemattr); + pmap_pte_attr(pte, m->md.memattr); pmap_set_pte(pte, va, pa, wired, managed); /* Invalidate the I-cache when needed. */ @@ -1875,7 +1875,7 @@ pmap_enter_quick_locked(pmap_t pmap, vm_ pmap_enter_vhpt(pte, va); pmap_pte_prot(pmap, pte, prot & (VM_PROT_READ | VM_PROT_EXECUTE)); - pmap_pte_attr(pte, m->mdmemattr); + pmap_pte_attr(pte, m->md.memattr); pmap_set_pte(pte, va, VM_PAGE_TO_PHYS(m), FALSE, managed); if (prot & VM_PROT_EXECUTE) @@ -2417,7 +2417,7 @@ pmap_remove_write(vm_page_t m) } prot &= ~VM_PROT_WRITE; pmap_pte_prot(pmap, pte, prot); - pmap_pte_attr(pte, m->mdmemattr); + pmap_pte_attr(pte, m->md.memattr); pmap_invalidate_page(pv->pv_va); } pmap_switch(oldpmap); @@ -2499,7 +2499,7 @@ pmap_page_set_memattr(vm_page_t m, vm_me void *va; rw_wlock(&pvh_global_lock); - m->mdmemattr = ma; + m->md.memattr = ma; TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { pmap = PV_PMAP(pv); PMAP_LOCK(pmap); Modified: user/attilio/vmobj-fullread/sys/mips/include/pmap.h ============================================================================== --- user/attilio/vmobj-fullread/sys/mips/include/pmap.h Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/mips/include/pmap.h Sun Aug 4 21:27:31 2013 (r253943) @@ -69,6 +69,7 @@ struct pv_entry; struct pv_chunk; struct md_page { + int pv_flags; TAILQ_HEAD(, pv_entry) pv_list; }; Modified: user/attilio/vmobj-fullread/sys/mips/mips/pmap.c ============================================================================== --- user/attilio/vmobj-fullread/sys/mips/mips/pmap.c Sun Aug 4 21:24:54 2013 (r253942) +++ user/attilio/vmobj-fullread/sys/mips/mips/pmap.c Sun Aug 4 21:27:31 2013 (r253943) @@ -594,7 +594,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); - m->mdmemattr = 0; + m->md.pv_flags = 0; } /* @@ -1435,9 +1435,9 @@ pmap_pv_reclaim(pmap_t locked_pmap) m = PHYS_TO_VM_PAGE(TLBLO_PTE_TO_PA(oldpte)); if (pte_test(&oldpte, PTE_D)) vm_page_dirty(m); - if (m->mdmemattr & PV_TABLE_REF) + if (m->md.pv_flags & PV_TABLE_REF) vm_page_aflag_set(m, PGA_REFERENCED); - m->mdmemattr &= ~PV_TABLE_REF; + m->md.pv_flags &= ~PV_TABLE_REF; TAILQ_REMOVE(&m->md.pv_list, pv, pv_list); if (TAILQ_EMPTY(&m->md.pv_list)) vm_page_aflag_clear(m, PGA_WRITEABLE); @@ -1705,9 +1705,9 @@ pmap_remove_pte(struct pmap *pmap, pt_en __func__, (void *)va, (uintmax_t)oldpte)); vm_page_dirty(m); } - if (m->mdmemattr & PV_TABLE_REF) + if (m->md.pv_flags & PV_TABLE_REF) vm_page_aflag_set(m, PGA_REFERENCED); - m->mdmemattr &= ~PV_TABLE_REF; + m->md.pv_flags &= ~PV_TABLE_REF; pmap_remove_entry(pmap, m, va); } @@ -1846,7 +1846,7 @@ pmap_remove_all(vm_page_t m) ("pmap_remove_all: page %p is not managed", m)); rw_wlock(&pvh_global_lock); - if (m->mdmemattr & PV_TABLE_REF) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-user@FreeBSD.ORG Mon Aug 5 08:27:41 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id F18506A2; Mon, 5 Aug 2013 08:27:40 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id DA9C22EC2; Mon, 5 Aug 2013 08:27:40 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r758ReFT002754; Mon, 5 Aug 2013 08:27:40 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r758RZwE002721; Mon, 5 Aug 2013 08:27:35 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308050827.r758RZwE002721@svn.freebsd.org> From: Attilio Rao Date: Mon, 5 Aug 2013 08:27:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253952 - in user/attilio/vmobj-readlock/sys: amd64/amd64 arm/arm cddl/contrib/opensolaris/uts/common/fs/zfs dev/agp dev/drm2/i915 dev/drm2/ttm dev/md fs/tmpfs i386/i386 i386/xen ia64/i... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Aug 2013 08:27:41 -0000 Author: attilio Date: Mon Aug 5 08:27:35 2013 New Revision: 253952 URL: http://svnweb.freebsd.org/changeset/base/253952 Log: Rename the busy interface into a shared/exclusive mechanism and shorten the names. This makes the interface clearer on the purpose it serves. Sponsored by: EMC / Isilon storage division Requested by: jeff Modified: user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c user/attilio/vmobj-readlock/sys/arm/arm/pmap-v6.c user/attilio/vmobj-readlock/sys/arm/arm/pmap.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c user/attilio/vmobj-readlock/sys/dev/agp/agp.c user/attilio/vmobj-readlock/sys/dev/drm2/i915/i915_gem.c user/attilio/vmobj-readlock/sys/dev/drm2/ttm/ttm_bo_vm.c user/attilio/vmobj-readlock/sys/dev/drm2/ttm/ttm_tt.c user/attilio/vmobj-readlock/sys/dev/md/md.c user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_subr.c user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_vnops.c user/attilio/vmobj-readlock/sys/i386/i386/pmap.c user/attilio/vmobj-readlock/sys/i386/xen/pmap.c user/attilio/vmobj-readlock/sys/ia64/ia64/pmap.c user/attilio/vmobj-readlock/sys/kern/kern_exec.c user/attilio/vmobj-readlock/sys/kern/sys_process.c user/attilio/vmobj-readlock/sys/kern/uipc_shm.c user/attilio/vmobj-readlock/sys/kern/uipc_syscalls.c user/attilio/vmobj-readlock/sys/kern/vfs_bio.c user/attilio/vmobj-readlock/sys/kern/vfs_cluster.c user/attilio/vmobj-readlock/sys/mips/mips/pmap.c user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea.c user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea64.c user/attilio/vmobj-readlock/sys/powerpc/booke/pmap.c user/attilio/vmobj-readlock/sys/sparc64/sparc64/pmap.c user/attilio/vmobj-readlock/sys/vm/phys_pager.c user/attilio/vmobj-readlock/sys/vm/swap_pager.c user/attilio/vmobj-readlock/sys/vm/vm_fault.c user/attilio/vmobj-readlock/sys/vm/vm_glue.c user/attilio/vmobj-readlock/sys/vm/vm_kern.c user/attilio/vmobj-readlock/sys/vm/vm_map.h user/attilio/vmobj-readlock/sys/vm/vm_object.c user/attilio/vmobj-readlock/sys/vm/vm_page.c user/attilio/vmobj-readlock/sys/vm/vm_page.h user/attilio/vmobj-readlock/sys/vm/vm_pageout.c user/attilio/vmobj-readlock/sys/vm/vm_phys.c user/attilio/vmobj-readlock/sys/vm/vnode_pager.c Modified: user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c Mon Aug 5 08:27:35 2013 (r253952) @@ -3452,7 +3452,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, KASSERT((m->oflags & VPO_UNMANAGED) != 0 || va < kmi.clean_sva || va >= kmi.clean_eva, ("pmap_enter: managed mapping within the clean submap")); - if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_busy_wlocked(m)) + if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_xbusied(m)) VM_OBJECT_ASSERT_WLOCKED(m->object); pa = VM_PAGE_TO_PHYS(m); newpte = (pt_entry_t)(pa | PG_A | PG_V); @@ -4560,12 +4560,12 @@ pmap_is_modified(vm_page_t m) ("pmap_is_modified: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be * concurrently set while the object is locked. Thus, if PGA_WRITEABLE * is clear, no PTEs can have PG_M set. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return (FALSE); rw_wlock(&pvh_global_lock); rv = pmap_is_modified_pvh(&m->md) || @@ -4690,12 +4690,12 @@ pmap_remove_write(vm_page_t m) ("pmap_remove_write: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be set by - * another thread while the object is locked. Thus, if PGA_WRITEABLE - * is clear, no page table entries need updating. + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be + * set by another thread while the object is locked. Thus, + * if PGA_WRITEABLE is clear, no page table entries need updating. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return; rw_wlock(&pvh_global_lock); if ((m->flags & PG_FICTITIOUS) != 0) @@ -4838,13 +4838,13 @@ pmap_clear_modify(vm_page_t m) KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_clear_modify: page %p is not managed", m)); VM_OBJECT_ASSERT_WLOCKED(m->object); - KASSERT(!vm_page_busy_wlocked(m), - ("pmap_clear_modify: page %p is write locked", m)); + KASSERT(!vm_page_xbusied(m), + ("pmap_clear_modify: page %p is exclusive busied", m)); /* * If the page is not PGA_WRITEABLE, then no PTEs can have PG_M set. * If the object containing the page is locked and the page is not - * write busied, then PGA_WRITEABLE cannot be concurrently set. + * exclusive busied, then PGA_WRITEABLE cannot be concurrently set. */ if ((m->aflags & PGA_WRITEABLE) == 0) return; Modified: user/attilio/vmobj-readlock/sys/arm/arm/pmap-v6.c ============================================================================== --- user/attilio/vmobj-readlock/sys/arm/arm/pmap-v6.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/arm/arm/pmap-v6.c Mon Aug 5 08:27:35 2013 (r253952) @@ -2672,7 +2672,7 @@ pmap_enter_locked(pmap_t pmap, vm_offset m = NULL; } else { KASSERT((m->oflags & VPO_UNMANAGED) != 0 || - vm_page_busy_wlocked(m) || (flags & M_NOWAIT) != 0, + vm_page_xbusied(m) || (flags & M_NOWAIT) != 0, ("pmap_enter_locked: page %p is not busy", m)); pa = VM_PAGE_TO_PHYS(m); } @@ -3935,12 +3935,12 @@ pmap_is_modified(vm_page_t m) ("pmap_is_modified: page %p is not managed", m)); rv = FALSE; /* - * If the page is not write busied, then PGA_WRITEABLE cannot be + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be * concurrently set while the object is locked. Thus, if PGA_WRITEABLE * is clear, no PTEs can have PG_M set. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return (rv); rw_wlock(&pvh_global_lock); TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { @@ -3968,13 +3968,13 @@ pmap_clear_modify(vm_page_t m) KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_clear_modify: page %p is not managed", m)); VM_OBJECT_ASSERT_WLOCKED(m->object); - KASSERT(!vm_page_busy_wlocked(m), - ("pmap_clear_modify: page %p is write locked", m)); + KASSERT(!vm_page_xbusied(m), + ("pmap_clear_modify: page %p is exclusive busied", m)); /* * If the page is not PGA_WRITEABLE, then no mappings can be modified. * If the object containing the page is locked and the page is not - * write busied, then PGA_WRITEABLE cannot be concurrently set. + * exclusive busied, then PGA_WRITEABLE cannot be concurrently set. */ if ((m->aflags & PGA_WRITEABLE) == 0) return; @@ -4009,12 +4009,12 @@ pmap_remove_write(vm_page_t m) ("pmap_remove_write: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be set by - * another thread while the object is locked. Thus, if PGA_WRITEABLE - * is clear, no page table entries need updating. + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be + * set by another thread while the object is locked. Thus, + * if PGA_WRITEABLE is clear, no page table entries need updating. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (vm_page_busy_wlocked(m) || (m->aflags & PGA_WRITEABLE) != 0) + if (vm_page_xbusied(m) || (m->aflags & PGA_WRITEABLE) != 0) pmap_clearbit(m, PVF_WRITE); } Modified: user/attilio/vmobj-readlock/sys/arm/arm/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/arm/arm/pmap.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/arm/arm/pmap.c Mon Aug 5 08:27:35 2013 (r253952) @@ -3320,7 +3320,7 @@ pmap_enter_locked(pmap_t pmap, vm_offset m = NULL; } else { KASSERT((m->oflags & VPO_UNMANAGED) != 0 || - vm_page_busy_wlocked(m) || (flags & M_NOWAIT) != 0, + vm_page_xbusied(m) || (flags & M_NOWAIT) != 0, ("pmap_enter_locked: page %p is not busy", m)); pa = VM_PAGE_TO_PHYS(m); } @@ -4555,13 +4555,13 @@ pmap_clear_modify(vm_page_t m) KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_clear_modify: page %p is not managed", m)); VM_OBJECT_ASSERT_WLOCKED(m->object); - KASSERT(!vm_page_busy_wlocked(m), - ("pmap_clear_modify: page %p is write locked", m)); + KASSERT(!vm_page_xbusied(m), + ("pmap_clear_modify: page %p is exclusive busied", m)); /* * If the page is not PGA_WRITEABLE, then no mappings can be modified. * If the object containing the page is locked and the page is not - * write busied, then PGA_WRITEABLE cannot be concurrently set. + * exclusive busied, then PGA_WRITEABLE cannot be concurrently set. */ if ((m->aflags & PGA_WRITEABLE) == 0) return; @@ -4612,12 +4612,12 @@ pmap_remove_write(vm_page_t m) ("pmap_remove_write: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be set by - * another thread while the object is locked. Thus, if PGA_WRITEABLE - * is clear, no page table entries need updating. + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be + * set by another thread while the object is locked. Thus, + * if PGA_WRITEABLE is clear, no page table entries need updating. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (vm_page_busy_wlocked(m) || (m->aflags & PGA_WRITEABLE) != 0) + if (vm_page_xbusied(m) || (m->aflags & PGA_WRITEABLE) != 0) pmap_clearbit(m, PVF_WRITE); } Modified: user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c ============================================================================== --- user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Mon Aug 5 08:27:35 2013 (r253952) @@ -336,7 +336,7 @@ page_busy(vnode_t *vp, int64_t start, in for (;;) { if ((pp = vm_page_lookup(obj, OFF_TO_IDX(start))) != NULL && pp->valid) { - if (vm_page_busy_wlocked(pp)) { + if (vm_page_xbusied(pp)) { /* * Reference the page before unlocking and * sleeping so that the page daemon is less @@ -349,13 +349,13 @@ page_busy(vnode_t *vp, int64_t start, in zfs_vmobject_wlock(obj); continue; } - vm_page_busy_rlock(pp); + vm_page_sbusy(pp); } else if (pp == NULL) { if (!alloc) break; pp = vm_page_alloc(obj, OFF_TO_IDX(start), VM_ALLOC_SYSTEM | VM_ALLOC_IFCACHED | - VM_ALLOC_RBUSY); + VM_ALLOC_SBUSY); } else { ASSERT(pp != NULL && !pp->valid); pp = NULL; @@ -378,7 +378,7 @@ static void page_unbusy(vm_page_t pp, boolean_t unalloc) { - vm_page_busy_runlock(pp); + vm_page_sunbusy(pp); if (unalloc) vm_object_pip_subtract(pp->object, 1); } @@ -432,7 +432,7 @@ update_pages(vnode_t *vp, int64_t start, ("zfs update_pages: unaligned data in putpages case")); KASSERT(pp->valid == VM_PAGE_BITS_ALL, ("zfs update_pages: invalid page in putpages case")); - KASSERT(vm_page_busy_rlocked(pp), + KASSERT(vm_page_sbusied(pp), ("zfs update_pages: unbusy page in putpages case")); KASSERT(!pmap_page_is_write_mapped(pp), ("zfs update_pages: writable page in putpages case")); @@ -469,7 +469,7 @@ update_pages(vnode_t *vp, int64_t start, * ZFS to populate a range of page cache pages with data. * * NOTE: this function could be optimized to pre-allocate - * all pages in advance, drain write busy on all of them, + * all pages in advance, drain exclusive busy on all of them, * map them into contiguous KVA region and populate them * in one single dmu_read() call. */ @@ -497,8 +497,8 @@ mappedread_sf(vnode_t *vp, int nbytes, u for (start = uio->uio_loffset; len > 0; start += PAGESIZE) { int bytes = MIN(PAGESIZE, len); - pp = vm_page_grab(obj, OFF_TO_IDX(start), VM_ALLOC_RBUSY | - VM_ALLOC_NORMAL | VM_ALLOC_RETRY | VM_ALLOC_IGN_RBUSY); + pp = vm_page_grab(obj, OFF_TO_IDX(start), VM_ALLOC_SBUSY | + VM_ALLOC_NORMAL | VM_ALLOC_RETRY | VM_ALLOC_IGN_SBUSY); if (pp->valid == 0) { zfs_vmobject_wunlock(obj); va = zfs_map_page(pp, &sf); @@ -508,11 +508,11 @@ mappedread_sf(vnode_t *vp, int nbytes, u bzero(va + bytes, PAGESIZE - bytes); zfs_unmap_page(sf); zfs_vmobject_wlock(obj); - vm_page_busy_runlock(pp); + vm_page_sunbusy(pp); vm_page_lock(pp); if (error) { if (pp->wire_count == 0 && pp->valid == 0 && - !vm_page_busy_locked(pp)) + !vm_page_busied(pp)) vm_page_free(pp); } else { pp->valid = VM_PAGE_BITS_ALL; @@ -520,7 +520,7 @@ mappedread_sf(vnode_t *vp, int nbytes, u } vm_page_unlock(pp); } else - vm_page_busy_runlock(pp); + vm_page_sunbusy(pp); if (error) break; uio->uio_resid -= bytes; Modified: user/attilio/vmobj-readlock/sys/dev/agp/agp.c ============================================================================== --- user/attilio/vmobj-readlock/sys/dev/agp/agp.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/dev/agp/agp.c Mon Aug 5 08:27:35 2013 (r253952) @@ -600,7 +600,7 @@ agp_generic_bind_memory(device_t dev, st goto bad; } } - vm_page_busy_wunlock(m); + vm_page_xunbusy(m); } VM_OBJECT_WUNLOCK(mem->am_obj); @@ -627,7 +627,7 @@ bad: for (k = 0; k < mem->am_size; k += PAGE_SIZE) { m = vm_page_lookup(mem->am_obj, OFF_TO_IDX(k)); if (k >= i) - vm_page_busy_wunlock(m); + vm_page_xunbusy(m); vm_page_lock(m); vm_page_unwire(m, 0); vm_page_unlock(m); Modified: user/attilio/vmobj-readlock/sys/dev/drm2/i915/i915_gem.c ============================================================================== --- user/attilio/vmobj-readlock/sys/dev/drm2/i915/i915_gem.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/dev/drm2/i915/i915_gem.c Mon Aug 5 08:27:35 2013 (r253952) @@ -1378,7 +1378,7 @@ retry: VM_OBJECT_WLOCK(vm_obj); m = vm_page_lookup(vm_obj, OFF_TO_IDX(offset)); if (m != NULL) { - if (vm_page_busy_locked(m)) { + if (vm_page_busied(m)) { DRM_UNLOCK(dev); vm_page_lock(m); VM_OBJECT_WUNLOCK(vm_obj); @@ -1436,7 +1436,7 @@ retry: ("not fictitious %p", m)); KASSERT(m->wire_count == 1, ("wire_count not 1 %p", m)); - if (vm_page_busy_locked(m)) { + if (vm_page_busied(m)) { DRM_UNLOCK(dev); vm_page_lock(m); VM_OBJECT_WUNLOCK(vm_obj); @@ -1447,7 +1447,7 @@ retry: vm_page_insert(m, vm_obj, OFF_TO_IDX(offset)); have_page: *mres = m; - vm_page_busy_wlock(m); + vm_page_xbusy(m); CTR4(KTR_DRM, "fault %p %jx %x phys %x", gem_obj, offset, prot, m->phys_addr); @@ -2529,7 +2529,7 @@ i915_gem_wire_page(vm_object_t object, v vm_page_lock(m); vm_page_wire(m); vm_page_unlock(m); - vm_page_busy_wunlock(m); + vm_page_xunbusy(m); atomic_add_long(&i915_gem_wired_pages_cnt, 1); return (m); } Modified: user/attilio/vmobj-readlock/sys/dev/drm2/ttm/ttm_bo_vm.c ============================================================================== --- user/attilio/vmobj-readlock/sys/dev/drm2/ttm/ttm_bo_vm.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/dev/drm2/ttm/ttm_bo_vm.c Mon Aug 5 08:27:35 2013 (r253952) @@ -212,7 +212,7 @@ reserve: } VM_OBJECT_WLOCK(vm_obj); - if (vm_page_busy_locked(m)) { + if (vm_page_busied(m)) { vm_page_lock(m); VM_OBJECT_WUNLOCK(vm_obj); vm_page_busy_sleep(m, "ttmpbs"); @@ -231,7 +231,7 @@ reserve: ("inconsistent insert bo %p m %p m1 %p offset %jx", bo, m, m1, (uintmax_t)offset)); } - vm_page_busy_wlock(m); + vm_page_xbusy(m); if (oldm != NULL) { vm_page_lock(oldm); Modified: user/attilio/vmobj-readlock/sys/dev/drm2/ttm/ttm_tt.c ============================================================================== --- user/attilio/vmobj-readlock/sys/dev/drm2/ttm/ttm_tt.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/dev/drm2/ttm/ttm_tt.c Mon Aug 5 08:27:35 2013 (r253952) @@ -302,7 +302,7 @@ int ttm_tt_swapin(struct ttm_tt *ttm) } else vm_page_zero_invalid(from_page, TRUE); } - vm_page_busy_wunlock(from_page); + vm_page_xunbusy(from_page); to_page = ttm->pages[i]; if (unlikely(to_page == NULL)) { ret = -ENOMEM; @@ -355,7 +355,7 @@ int ttm_tt_swapout(struct ttm_tt *ttm, v pmap_copy_page(from_page, to_page); vm_page_dirty(to_page); to_page->valid = VM_PAGE_BITS_ALL; - vm_page_busy_wunlock(to_page); + vm_page_xunbusy(to_page); } vm_object_pip_wakeup(obj); VM_OBJECT_WUNLOCK(obj); Modified: user/attilio/vmobj-readlock/sys/dev/md/md.c ============================================================================== --- user/attilio/vmobj-readlock/sys/dev/md/md.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/dev/md/md.c Mon Aug 5 08:27:35 2013 (r253952) @@ -834,7 +834,7 @@ mdstart_swap(struct md_s *sc, struct bio else rv = vm_pager_get_pages(sc->object, &m, 1, 0); if (rv == VM_PAGER_ERROR) { - vm_page_busy_wunlock(m); + vm_page_xunbusy(m); break; } else if (rv == VM_PAGER_FAIL) { /* @@ -859,7 +859,7 @@ mdstart_swap(struct md_s *sc, struct bio else rv = VM_PAGER_OK; if (rv == VM_PAGER_ERROR) { - vm_page_busy_wunlock(m); + vm_page_xunbusy(m); break; } if ((bp->bio_flags & BIO_UNMAPPED) != 0) { @@ -875,7 +875,7 @@ mdstart_swap(struct md_s *sc, struct bio else rv = VM_PAGER_OK; if (rv == VM_PAGER_ERROR) { - vm_page_busy_wunlock(m); + vm_page_xunbusy(m); break; } if (len != PAGE_SIZE) { @@ -885,7 +885,7 @@ mdstart_swap(struct md_s *sc, struct bio } else vm_pager_page_unswapped(m); } - vm_page_busy_wunlock(m); + vm_page_xunbusy(m); vm_page_lock(m); if (bp->bio_cmd == BIO_DELETE && len == PAGE_SIZE) vm_page_free(m); Modified: user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_subr.c ============================================================================== --- user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_subr.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_subr.c Mon Aug 5 08:27:35 2013 (r253952) @@ -1352,7 +1352,7 @@ retry: if (rv == VM_PAGER_OK) { vm_page_deactivate(m); vm_page_unlock(m); - vm_page_busy_wunlock(m); + vm_page_xunbusy(m); } else { vm_page_free(m); vm_page_unlock(m); Modified: user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_vnops.c ============================================================================== --- user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_vnops.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_vnops.c Mon Aug 5 08:27:35 2013 (r253952) @@ -449,7 +449,7 @@ tmpfs_nocacheread(vm_object_t tobj, vm_p /* * Parallel reads of the page content from disk are prevented - * by write busy. + * by exclusive busy. * * Although the tmpfs vnode lock is held here, it is * nonetheless safe to sleep waiting for a free page. The @@ -486,7 +486,7 @@ tmpfs_nocacheread(vm_object_t tobj, vm_p VM_OBJECT_WUNLOCK(tobj); error = uiomove_fromphys(&m, offset, tlen, uio); VM_OBJECT_WLOCK(tobj); - vm_page_busy_runlock(m); + vm_page_sunbusy(m); VM_OBJECT_WUNLOCK(tobj); vm_page_lock(m); if (m->queue == PQ_NONE) { @@ -600,7 +600,7 @@ tmpfs_mappedwrite(vm_object_t tobj, size VM_OBJECT_WUNLOCK(tobj); error = uiomove_fromphys(&tpg, offset, tlen, uio); VM_OBJECT_WLOCK(tobj); - vm_page_busy_runlock(tpg); + vm_page_sunbusy(tpg); if (error == 0) vm_page_dirty(tpg); vm_page_lock(tpg); Modified: user/attilio/vmobj-readlock/sys/i386/i386/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/i386/i386/pmap.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/i386/i386/pmap.c Mon Aug 5 08:27:35 2013 (r253952) @@ -3423,7 +3423,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, KASSERT(va < UPT_MIN_ADDRESS || va >= UPT_MAX_ADDRESS, ("pmap_enter: invalid to pmap_enter page table pages (va: 0x%x)", va)); - if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_busy_wlocked(m)) + if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_xbusied(m)) VM_OBJECT_ASSERT_WLOCKED(m->object); mpte = NULL; @@ -4517,12 +4517,12 @@ pmap_is_modified(vm_page_t m) ("pmap_is_modified: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be * concurrently set while the object is locked. Thus, if PGA_WRITEABLE * is clear, no PTEs can have PG_M set. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return (FALSE); rw_wlock(&pvh_global_lock); rv = pmap_is_modified_pvh(&m->md) || @@ -4651,12 +4651,12 @@ pmap_remove_write(vm_page_t m) ("pmap_remove_write: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be set by - * another thread while the object is locked. Thus, if PGA_WRITEABLE - * is clear, no page table entries need updating. + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be + * set by another thread while the object is locked. Thus, + * if PGA_WRITEABLE is clear, no page table entries need updating. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return; rw_wlock(&pvh_global_lock); sched_pin(); @@ -4807,13 +4807,13 @@ pmap_clear_modify(vm_page_t m) KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_clear_modify: page %p is not managed", m)); VM_OBJECT_ASSERT_WLOCKED(m->object); - KASSERT(!vm_page_busy_wlocked(m), - ("pmap_clear_modify: page %p is write locked", m)); + KASSERT(!vm_page_xbusied(m), + ("pmap_clear_modify: page %p is exclusive busied", m)); /* * If the page is not PGA_WRITEABLE, then no PTEs can have PG_M set. * If the object containing the page is locked and the page is not - * write busied, then PGA_WRITEABLE cannot be concurrently set. + * exclusive busied, then PGA_WRITEABLE cannot be concurrently set. */ if ((m->aflags & PGA_WRITEABLE) == 0) return; Modified: user/attilio/vmobj-readlock/sys/i386/xen/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/i386/xen/pmap.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/i386/xen/pmap.c Mon Aug 5 08:27:35 2013 (r253952) @@ -2667,7 +2667,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, KASSERT(va < UPT_MIN_ADDRESS || va >= UPT_MAX_ADDRESS, ("pmap_enter: invalid to pmap_enter page table pages (va: 0x%x)", va)); - if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_busy_wlocked(m)) + if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_xbusied(m)) VM_OBJECT_ASSERT_WLOCKED(m->object); mpte = NULL; @@ -3696,12 +3696,12 @@ pmap_is_modified(vm_page_t m) rv = FALSE; /* - * If the page is not write busied, then PGA_WRITEABLE cannot be + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be * concurrently set while the object is locked. Thus, if PGA_WRITEABLE * is clear, no PTEs can have PG_M set. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return (rv); rw_wlock(&pvh_global_lock); sched_pin(); @@ -3826,12 +3826,12 @@ pmap_remove_write(vm_page_t m) ("pmap_remove_write: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be set by - * another thread while the object is locked. Thus, if PGA_WRITEABLE - * is clear, no page table entries need updating. + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be + * set by another thread while the object is locked. Thus, + * if PGA_WRITEABLE is clear, no page table entries need updating. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return; rw_wlock(&pvh_global_lock); sched_pin(); @@ -3931,13 +3931,13 @@ pmap_clear_modify(vm_page_t m) KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_clear_modify: page %p is not managed", m)); VM_OBJECT_ASSERT_WLOCKED(m->object); - KASSERT(!vm_page_busy_wlocked(m), - ("pmap_clear_modify: page %p is write locked", m)); + KASSERT(!vm_page_xbusied(m), + ("pmap_clear_modify: page %p is exclusive busied", m)); /* * If the page is not PGA_WRITEABLE, then no PTEs can have PG_M set. * If the object containing the page is locked and the page is not - * write busied, then PGA_WRITEABLE cannot be concurrently set. + * exclusive busied, then PGA_WRITEABLE cannot be concurrently set. */ if ((m->aflags & PGA_WRITEABLE) == 0) return; Modified: user/attilio/vmobj-readlock/sys/ia64/ia64/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/ia64/ia64/pmap.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/ia64/ia64/pmap.c Mon Aug 5 08:27:35 2013 (r253952) @@ -1677,7 +1677,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, va &= ~PAGE_MASK; KASSERT(va <= VM_MAX_KERNEL_ADDRESS, ("pmap_enter: toobig")); - KASSERT((m->oflags & VPO_UNMANAGED) != 0 || vm_page_busy_wlocked(m), + KASSERT((m->oflags & VPO_UNMANAGED) != 0 || vm_page_xbusied(m), ("pmap_enter: page %p is not busy", m)); /* @@ -2234,12 +2234,12 @@ pmap_is_modified(vm_page_t m) rv = FALSE; /* - * If the page is not write busied, then PGA_WRITEABLE cannot be + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be * concurrently set while the object is locked. Thus, if PGA_WRITEABLE * is clear, no PTEs can be dirty. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return (rv); rw_wlock(&pvh_global_lock); TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { @@ -2322,13 +2322,13 @@ pmap_clear_modify(vm_page_t m) KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_clear_modify: page %p is not managed", m)); VM_OBJECT_ASSERT_WLOCKED(m->object); - KASSERT(!vm_page_busy_wlocked(m), - ("pmap_clear_modify: page %p is write locked", m)); + KASSERT(!vm_page_xbusied(m), + ("pmap_clear_modify: page %p is exclusive busied", m)); /* * If the page is not PGA_WRITEABLE, then no PTEs can be modified. * If the object containing the page is locked and the page is not - * write busied, then PGA_WRITEABLE cannot be concurrently set. + * exclusive busied, then PGA_WRITEABLE cannot be concurrently set. */ if ((m->aflags & PGA_WRITEABLE) == 0) return; @@ -2395,12 +2395,12 @@ pmap_remove_write(vm_page_t m) ("pmap_remove_write: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be set by - * another thread while the object is locked. Thus, if PGA_WRITEABLE - * is clear, no page table entries need updating. + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be + * set by another thread while the object is locked. Thus, + * if PGA_WRITEABLE is clear, no page table entries need updating. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return; rw_wlock(&pvh_global_lock); TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { Modified: user/attilio/vmobj-readlock/sys/kern/kern_exec.c ============================================================================== --- user/attilio/vmobj-readlock/sys/kern/kern_exec.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/kern/kern_exec.c Mon Aug 5 08:27:35 2013 (r253952) @@ -946,7 +946,7 @@ exec_map_first_page(imgp) if ((ma[i] = vm_page_next(ma[i - 1])) != NULL) { if (ma[i]->valid) break; - if (vm_page_busy_trywlock(ma[i])) + if (vm_page_tryxbusy(ma[i])) break; } else { ma[i] = vm_page_alloc(object, i, @@ -968,7 +968,7 @@ exec_map_first_page(imgp) return (EIO); } } - vm_page_busy_wunlock(ma[0]); + vm_page_xunbusy(ma[0]); vm_page_lock(ma[0]); vm_page_wire(ma[0]); vm_page_unlock(ma[0]); Modified: user/attilio/vmobj-readlock/sys/kern/sys_process.c ============================================================================== --- user/attilio/vmobj-readlock/sys/kern/sys_process.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/kern/sys_process.c Mon Aug 5 08:27:35 2013 (r253952) @@ -263,7 +263,7 @@ proc_rwmem(struct proc *p, struct uio *u writing = uio->uio_rw == UIO_WRITE; reqprot = writing ? VM_PROT_COPY | VM_PROT_READ : VM_PROT_READ; fault_flags = writing ? VM_FAULT_DIRTY : VM_FAULT_NORMAL; - fault_flags |= VM_FAULT_RBUSY; + fault_flags |= VM_FAULT_SBUSY; /* * Only map in one page at a time. We don't have to, but it @@ -317,7 +317,7 @@ proc_rwmem(struct proc *p, struct uio *u * Release the page. */ VM_OBJECT_WLOCK(m->object); - vm_page_busy_runlock(m); + vm_page_sunbusy(m); VM_OBJECT_WUNLOCK(m->object); } while (error == 0 && uio->uio_resid > 0); Modified: user/attilio/vmobj-readlock/sys/kern/uipc_shm.c ============================================================================== --- user/attilio/vmobj-readlock/sys/kern/uipc_shm.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/kern/uipc_shm.c Mon Aug 5 08:27:35 2013 (r253952) @@ -302,7 +302,7 @@ retry: if (rv == VM_PAGER_OK) { vm_page_deactivate(m); vm_page_unlock(m); - vm_page_busy_wunlock(m); + vm_page_xunbusy(m); } else { vm_page_free(m); vm_page_unlock(m); Modified: user/attilio/vmobj-readlock/sys/kern/uipc_syscalls.c ============================================================================== --- user/attilio/vmobj-readlock/sys/kern/uipc_syscalls.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/kern/uipc_syscalls.c Mon Aug 5 08:27:35 2013 (r253952) @@ -2272,7 +2272,7 @@ retry_space: * then free it. */ if (pg->wire_count == 0 && pg->valid == 0 && - !vm_page_busy_locked(pg)) + !vm_page_busied(pg)) vm_page_free(pg); vm_page_unlock(pg); VM_OBJECT_WUNLOCK(obj); Modified: user/attilio/vmobj-readlock/sys/kern/vfs_bio.c ============================================================================== --- user/attilio/vmobj-readlock/sys/kern/vfs_bio.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/kern/vfs_bio.c Mon Aug 5 08:27:35 2013 (r253952) @@ -1859,7 +1859,7 @@ vfs_vmio_release(struct buf *bp) * buffer was used for direct I/O */ if ((bp->b_flags & B_ASYNC) == 0 && !m->valid) { - if (m->wire_count == 0 && !vm_page_busy_locked(m)) + if (m->wire_count == 0 && !vm_page_busied(m)) vm_page_free(m); } else if (bp->b_flags & B_DIRECT) vm_page_try_to_free(m); @@ -3482,15 +3482,15 @@ allocbuf(struct buf *bp, int size) * here could interfere with paging I/O, no * matter which process we are. * - * We can only test write busy here. - * Blocking on read busy might lead to + * Only exclusive busy can be tested here. + * Blocking on shared busy might lead to * deadlocks once allocbuf() is called after * pages are vfs_busy_pages(). */ m = vm_page_grab(obj, OFF_TO_IDX(bp->b_offset) + bp->b_npages, VM_ALLOC_NOBUSY | VM_ALLOC_SYSTEM | VM_ALLOC_WIRED | - VM_ALLOC_RETRY | VM_ALLOC_IGN_RBUSY | + VM_ALLOC_RETRY | VM_ALLOC_IGN_SBUSY | VM_ALLOC_COUNT(desiredpages - bp->b_npages)); if (m->valid == 0) bp->b_flags &= ~B_CACHE; @@ -3845,7 +3845,7 @@ bufdone_finish(struct buf *bp) vfs_page_set_valid(bp, foff, m); } - vm_page_busy_runlock(m); + vm_page_sunbusy(m); vm_object_pip_subtract(obj, 1); foff = (foff + PAGE_SIZE) & ~(off_t)PAGE_MASK; iosize -= resid; @@ -3907,7 +3907,7 @@ vfs_unbusy_pages(struct buf *bp) BUF_CHECK_UNMAPPED(bp); } vm_object_pip_subtract(obj, 1); - vm_page_busy_runlock(m); + vm_page_sunbusy(m); } vm_object_pip_wakeupn(obj, 0); VM_OBJECT_WUNLOCK(obj); @@ -3980,8 +3980,8 @@ vfs_page_set_validclean(struct buf *bp, } /* - * Ensure that all buffer pages are not write busied. If any page is write - * busy, drain it. + * Ensure that all buffer pages are not exclusive busied. If any page is + * exclusive busy, drain it. */ static void vfs_drain_busy_pages(struct buf *bp) @@ -3993,10 +3993,10 @@ vfs_drain_busy_pages(struct buf *bp) last_busied = 0; for (i = 0; i < bp->b_npages; i++) { m = bp->b_pages[i]; - if (vm_page_busy_wlocked(m)) { + if (vm_page_xbusied(m)) { for (; last_busied < i; last_busied++) - vm_page_busy_wlock(bp->b_pages[last_busied]); - while (vm_page_busy_wlocked(m)) { + vm_page_xbusy(bp->b_pages[last_busied]); + while (vm_page_xbusied(m)) { vm_page_lock(m); VM_OBJECT_WUNLOCK(bp->b_bufobj->bo_object); vm_page_busy_sleep(m, "vbpage"); @@ -4005,14 +4005,14 @@ vfs_drain_busy_pages(struct buf *bp) } } for (i = 0; i < last_busied; i++) - vm_page_busy_wunlock(bp->b_pages[i]); + vm_page_xunbusy(bp->b_pages[i]); } /* * This routine is called before a device strategy routine. * It is used to tell the VM system that paging I/O is in * progress, and treat the pages associated with the buffer - * almost as being write busy. Also the object paging_in_progress + * almost as being exclusive busy. Also the object paging_in_progress * flag is handled to make sure that the object doesn't become * inconsistant. * @@ -4045,7 +4045,7 @@ vfs_busy_pages(struct buf *bp, int clear if ((bp->b_flags & B_CLUSTER) == 0) { vm_object_pip_add(obj, 1); - vm_page_busy_rlock(m); + vm_page_sbusy(m); } /* * When readying a buffer for a read ( i.e @@ -4265,7 +4265,7 @@ vm_hold_free_pages(struct buf *bp, int n for (index = newnpages; index < bp->b_npages; index++) { p = bp->b_pages[index]; bp->b_pages[index] = NULL; - if (vm_page_busy_rlocked(p)) + if (vm_page_sbusied(p)) printf("vm_hold_free_pages: blkno: %jd, lblkno: %jd\n", (intmax_t)bp->b_blkno, (intmax_t)bp->b_lblkno); p->wire_count--; Modified: user/attilio/vmobj-readlock/sys/kern/vfs_cluster.c ============================================================================== --- user/attilio/vmobj-readlock/sys/kern/vfs_cluster.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/kern/vfs_cluster.c Mon Aug 5 08:27:35 2013 (r253952) @@ -466,7 +466,7 @@ cluster_rbuild(struct vnode *vp, u_quad_ for (j = 0; j < tbp->b_npages; j += 1) { vm_page_t m; m = tbp->b_pages[j]; - vm_page_busy_rlock(m); + vm_page_sbusy(m); vm_object_pip_add(m->object, 1); if ((bp->b_npages == 0) || (bp->b_pages[bp->b_npages-1] != m)) { @@ -947,7 +947,7 @@ cluster_wbuild(struct vnode *vp, long si if (i != 0) { /* if not first buffer */ for (j = 0; j < tbp->b_npages; j += 1) { m = tbp->b_pages[j]; - if (vm_page_busy_wlocked(m)) { + if (vm_page_xbusied(m)) { VM_OBJECT_WUNLOCK( tbp->b_object); bqrelse(tbp); @@ -957,7 +957,7 @@ cluster_wbuild(struct vnode *vp, long si } for (j = 0; j < tbp->b_npages; j += 1) { m = tbp->b_pages[j]; - vm_page_busy_rlock(m); + vm_page_sbusy(m); vm_object_pip_add(m->object, 1); if ((bp->b_npages == 0) || (bp->b_pages[bp->b_npages - 1] != m)) { Modified: user/attilio/vmobj-readlock/sys/mips/mips/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/mips/mips/pmap.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/mips/mips/pmap.c Mon Aug 5 08:27:35 2013 (r253952) @@ -2014,7 +2014,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, KASSERT((m->oflags & VPO_UNMANAGED) != 0 || va < kmi.clean_sva || va >= kmi.clean_eva, ("pmap_enter: managed mapping within the clean submap")); - KASSERT((m->oflags & VPO_UNMANAGED) != 0 || vm_page_busy_wlocked(m), + KASSERT((m->oflags & VPO_UNMANAGED) != 0 || vm_page_xbusied(m), ("pmap_enter: page %p is not busy", m)); pa = VM_PAGE_TO_PHYS(m); newpte = TLBLO_PA_TO_PFN(pa) | init_pte_prot(m, access, prot); @@ -2812,12 +2812,12 @@ pmap_remove_write(vm_page_t m) ("pmap_remove_write: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be set by - * another thread while the object is locked. Thus, if PGA_WRITEABLE - * is clear, no page table entries need updating. + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be + * set by another thread while the object is locked. Thus, + * if PGA_WRITEABLE is clear, no page table entries need updating. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return; rw_wlock(&pvh_global_lock); TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) { @@ -2877,12 +2877,12 @@ pmap_is_modified(vm_page_t m) ("pmap_is_modified: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be * concurrently set while the object is locked. Thus, if PGA_WRITEABLE * is clear, no PTEs can have PTE_D set. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return (FALSE); rw_wlock(&pvh_global_lock); rv = pmap_testbit(m, PTE_D); @@ -2929,8 +2929,8 @@ pmap_clear_modify(vm_page_t m) KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("pmap_clear_modify: page %p is not managed", m)); VM_OBJECT_ASSERT_WLOCKED(m->object); - KASSERT(!vm_page_busy_wlocked(m), - ("pmap_clear_modify: page %p is write locked", m)); + KASSERT(!vm_page_xbusied(m), + ("pmap_clear_modify: page %p is exclusive busied", m)); /* * If the page is not PGA_WRITEABLE, then no PTEs can have PTE_D set. Modified: user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea.c ============================================================================== --- user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea.c Mon Aug 5 08:27:35 2013 (r253952) @@ -1158,7 +1158,7 @@ moea_enter_locked(pmap_t pmap, vm_offset if (pmap_bootstrapped) rw_assert(&pvh_global_lock, RA_WLOCKED); PMAP_LOCK_ASSERT(pmap, MA_OWNED); - if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_busy_wlocked(m)) + if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_xbusied(m)) VM_OBJECT_ASSERT_LOCKED(m->object); /* XXX change the pvo head for fake pages */ @@ -1326,12 +1326,12 @@ moea_is_modified(mmu_t mmu, vm_page_t m) ("moea_is_modified: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be * concurrently set while the object is locked. Thus, if PGA_WRITEABLE * is clear, no PTEs can have PTE_CHG set. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return (FALSE); rw_wlock(&pvh_global_lock); rv = moea_query_bit(m, PTE_CHG); @@ -1370,13 +1370,13 @@ moea_clear_modify(mmu_t mmu, vm_page_t m KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("moea_clear_modify: page %p is not managed", m)); VM_OBJECT_ASSERT_WLOCKED(m->object); - KASSERT(!vm_page_busy_wlocked(m), - ("moea_clear_modify: page %p is write locked", m)); + KASSERT(!vm_page_xbusied(m), + ("moea_clear_modify: page %p is exclusive busy", m)); /* * If the page is not PGA_WRITEABLE, then no PTEs can have PTE_CHG * set. If the object containing the page is locked and the page is - * not write busied, then PGA_WRITEABLE cannot be concurrently set. + * not exclusive busied, then PGA_WRITEABLE cannot be concurrently set. */ if ((m->aflags & PGA_WRITEABLE) == 0) return; @@ -1400,12 +1400,12 @@ moea_remove_write(mmu_t mmu, vm_page_t m ("moea_remove_write: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be set by - * another thread while the object is locked. Thus, if PGA_WRITEABLE - * is clear, no page table entries need updating. + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be + * set by another thread while the object is locked. Thus, + * if PGA_WRITEABLE is clear, no page table entries need updating. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return; rw_wlock(&pvh_global_lock); lo = moea_attr_fetch(m); Modified: user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea64.c ============================================================================== --- user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea64.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/powerpc/aim/mmu_oea64.c Mon Aug 5 08:27:35 2013 (r253952) @@ -1260,7 +1260,7 @@ moea64_enter(mmu_t mmu, pmap_t pmap, vm_ pvo_flags = PVO_MANAGED; } - if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_busy_wlocked(m)) + if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_xbusied(m)) VM_OBJECT_ASSERT_LOCKED(m->object); /* XXX change the pvo head for fake pages */ @@ -1522,12 +1522,12 @@ moea64_is_modified(mmu_t mmu, vm_page_t ("moea64_is_modified: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be * concurrently set while the object is locked. Thus, if PGA_WRITEABLE * is clear, no PTEs can have LPTE_CHG set. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return (FALSE); return (moea64_query_bit(mmu, m, LPTE_CHG)); } @@ -1561,13 +1561,13 @@ moea64_clear_modify(mmu_t mmu, vm_page_t KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("moea64_clear_modify: page %p is not managed", m)); VM_OBJECT_ASSERT_WLOCKED(m->object); - KASSERT(!vm_page_busy_wlocked(m), - ("moea64_clear_modify: page %p is write locked", m)); + KASSERT(!vm_page_xbusied(m), + ("moea64_clear_modify: page %p is exclusive busied", m)); /* * If the page is not PGA_WRITEABLE, then no PTEs can have LPTE_CHG * set. If the object containing the page is locked and the page is - * not write busied, then PGA_WRITEABLE cannot be concurrently set. + * not exclusive busied, then PGA_WRITEABLE cannot be concurrently set. */ if ((m->aflags & PGA_WRITEABLE) == 0) return; @@ -1589,12 +1589,12 @@ moea64_remove_write(mmu_t mmu, vm_page_t ("moea64_remove_write: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be set by - * another thread while the object is locked. Thus, if PGA_WRITEABLE - * is clear, no page table entries need updating. + * If the page is not exclusive busied, then PGA_WRITEABLE cannot be + * set by another thread while the object is locked. Thus, + * if PGA_WRITEABLE is clear, no page table entries need updating. */ VM_OBJECT_ASSERT_WLOCKED(m->object); - if (!vm_page_busy_wlocked(m) && (m->aflags & PGA_WRITEABLE) == 0) + if (!vm_page_xbusied(m) && (m->aflags & PGA_WRITEABLE) == 0) return; powerpc_sync(); LOCK_TABLE_RD(); Modified: user/attilio/vmobj-readlock/sys/powerpc/booke/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/powerpc/booke/pmap.c Mon Aug 5 07:10:57 2013 (r253951) +++ user/attilio/vmobj-readlock/sys/powerpc/booke/pmap.c Mon Aug 5 08:27:35 2013 (r253952) @@ -1563,7 +1563,7 @@ mmu_booke_enter_locked(mmu_t mmu, pmap_t KASSERT((va <= VM_MAXUSER_ADDRESS), ("mmu_booke_enter_locked: user pmap, non user va")); } - if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_busy_wlocked(m)) + if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_xbusied(m)) VM_OBJECT_ASSERT_LOCKED(m->object); PMAP_LOCK_ASSERT(pmap, MA_OWNED); @@ -1959,12 +1959,12 @@ mmu_booke_remove_write(mmu_t mmu, vm_pag ("mmu_booke_remove_write: page %p is not managed", m)); /* - * If the page is not write busied, then PGA_WRITEABLE cannot be set by - * another thread while the object is locked. Thus, if PGA_WRITEABLE - * is clear, no page table entries need updating. *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-user@FreeBSD.ORG Mon Aug 5 09:37:21 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id C4B5BC1A; Mon, 5 Aug 2013 09:37:21 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A3E3021FA; Mon, 5 Aug 2013 09:37:21 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r759bLPW023661; Mon, 5 Aug 2013 09:37:21 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r759bJPX023642; Mon, 5 Aug 2013 09:37:19 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308050937.r759bJPX023642@svn.freebsd.org> From: Attilio Rao Date: Mon, 5 Aug 2013 09:37:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253954 - in user/attilio/vmcontention/sys: amd64/amd64 cddl/contrib/opensolaris/uts/common/fs/zfs fs/tmpfs i386/i386 kern netinet6 vm X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Aug 2013 09:37:21 -0000 Author: attilio Date: Mon Aug 5 09:37:18 2013 New Revision: 253954 URL: http://svnweb.freebsd.org/changeset/base/253954 Log: MFC Modified: user/attilio/vmcontention/sys/amd64/amd64/pmap.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c user/attilio/vmcontention/sys/i386/i386/pmap.c user/attilio/vmcontention/sys/kern/imgact_elf.c user/attilio/vmcontention/sys/kern/kern_exec.c user/attilio/vmcontention/sys/kern/sys_process.c user/attilio/vmcontention/sys/netinet6/in6_ifattach.c user/attilio/vmcontention/sys/vm/vm_extern.h user/attilio/vmcontention/sys/vm/vm_fault.c user/attilio/vmcontention/sys/vm/vm_glue.c user/attilio/vmcontention/sys/vm/vm_map.h Directory Properties: user/attilio/vmcontention/ (props changed) user/attilio/vmcontention/sys/ (props changed) user/attilio/vmcontention/sys/cddl/contrib/opensolaris/ (props changed) Modified: user/attilio/vmcontention/sys/amd64/amd64/pmap.c ============================================================================== --- user/attilio/vmcontention/sys/amd64/amd64/pmap.c Mon Aug 5 08:55:35 2013 (r253953) +++ user/attilio/vmcontention/sys/amd64/amd64/pmap.c Mon Aug 5 09:37:18 2013 (r253954) @@ -2795,6 +2795,44 @@ pmap_demote_pde_locked(pmap_t pmap, pd_e } /* + * pmap_remove_kernel_pde: Remove a kernel superpage mapping. + */ +static void +pmap_remove_kernel_pde(pmap_t pmap, pd_entry_t *pde, vm_offset_t va) +{ + pd_entry_t newpde; + vm_paddr_t mptepa; + vm_page_t mpte; + + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + mpte = pmap_lookup_pt_page(pmap, va); + if (mpte == NULL) + panic("pmap_remove_kernel_pde: Missing pt page."); + + pmap_remove_pt_page(pmap, mpte); + mptepa = VM_PAGE_TO_PHYS(mpte); + newpde = mptepa | PG_M | PG_A | PG_RW | PG_V; + + /* + * Initialize the page table page. + */ + pagezero((void *)PHYS_TO_DMAP(mptepa)); + + /* + * Demote the mapping. + */ + if (workaround_erratum383) + pmap_update_pde(pmap, va, pde, newpde); + else + pde_store(pde, newpde); + + /* + * Invalidate a stale recursive mapping of the page table page. + */ + pmap_invalidate_page(pmap, (vm_offset_t)vtopte(va)); +} + +/* * pmap_remove_pde: do the things to unmap a superpage in a process */ static int @@ -2837,8 +2875,7 @@ pmap_remove_pde(pmap_t pmap, pd_entry_t } } if (pmap == kernel_pmap) { - if (!pmap_demote_pde_locked(pmap, pdq, sva, lockp)) - panic("pmap_remove_pde: failed demotion"); + pmap_remove_kernel_pde(pmap, pdq, sva); } else { mpte = pmap_lookup_pt_page(pmap, sva); if (mpte != NULL) { Modified: user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c ============================================================================== --- user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Mon Aug 5 08:55:35 2013 (r253953) +++ user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Mon Aug 5 09:37:18 2013 (r253954) @@ -324,8 +324,7 @@ zfs_ioctl(vnode_t *vp, u_long com, intpt } static vm_page_t -page_busy(vnode_t *vp, int64_t start, int64_t off, int64_t nbytes, - boolean_t alloc) +page_busy(vnode_t *vp, int64_t start, int64_t off, int64_t nbytes) { vm_object_t obj; vm_page_t pp; @@ -347,8 +346,6 @@ page_busy(vnode_t *vp, int64_t start, in continue; } } else if (pp == NULL) { - if (!alloc) - break; pp = vm_page_alloc(obj, OFF_TO_IDX(start), VM_ALLOC_SYSTEM | VM_ALLOC_IFCACHED | VM_ALLOC_NOBUSY); @@ -359,10 +356,8 @@ page_busy(vnode_t *vp, int64_t start, in if (pp != NULL) { ASSERT3U(pp->valid, ==, VM_PAGE_BITS_ALL); - vm_page_io_start(pp); - if (!alloc) - break; vm_object_pip_add(obj, 1); + vm_page_io_start(pp); pmap_remove_write(pp); vm_page_clear_dirty(pp, off, nbytes); } @@ -372,12 +367,55 @@ page_busy(vnode_t *vp, int64_t start, in } static void -page_unbusy(vm_page_t pp, boolean_t unalloc) +page_unbusy(vm_page_t pp) { vm_page_io_finish(pp); - if (unalloc) - vm_object_pip_subtract(pp->object, 1); + vm_object_pip_subtract(pp->object, 1); +} + +static vm_page_t +page_hold(vnode_t *vp, int64_t start) +{ + vm_object_t obj; + vm_page_t pp; + + obj = vp->v_object; + zfs_vmobject_assert_wlocked(obj); + + for (;;) { + if ((pp = vm_page_lookup(obj, OFF_TO_IDX(start))) != NULL && + pp->valid) { + if ((pp->oflags & VPO_BUSY) != 0) { + /* + * Reference the page before unlocking and + * sleeping so that the page daemon is less + * likely to reclaim it. + */ + vm_page_reference(pp); + vm_page_sleep(pp, "zfsmwb"); + continue; + } + + ASSERT3U(pp->valid, ==, VM_PAGE_BITS_ALL); + vm_page_lock(pp); + vm_page_hold(pp); + vm_page_unlock(pp); + + } else + pp = NULL; + break; + } + return (pp); +} + +static void +page_unhold(vm_page_t pp) +{ + + vm_page_lock(pp); + vm_page_unhold(pp); + vm_page_unlock(pp); } static caddr_t @@ -441,8 +479,7 @@ update_pages(vnode_t *vp, int64_t start, zfs_vmobject_wlock(obj); vm_page_undirty(pp); - } else if ((pp = page_busy(vp, start, off, nbytes, - TRUE)) != NULL) { + } else if ((pp = page_busy(vp, start, off, nbytes)) != NULL) { zfs_vmobject_wunlock(obj); va = zfs_map_page(pp, &sf); @@ -451,7 +488,7 @@ update_pages(vnode_t *vp, int64_t start, zfs_unmap_page(sf); zfs_vmobject_wlock(obj); - page_unbusy(pp, TRUE); + page_unbusy(pp); } len -= nbytes; off = 0; @@ -561,7 +598,7 @@ mappedread(vnode_t *vp, int nbytes, uio_ vm_page_t pp; uint64_t bytes = MIN(PAGESIZE - off, len); - if (pp = page_busy(vp, start, 0, 0, FALSE)) { + if (pp = page_hold(vp, start)) { struct sf_buf *sf; caddr_t va; @@ -570,7 +607,7 @@ mappedread(vnode_t *vp, int nbytes, uio_ error = uiomove(va + off, bytes, UIO_READ, uio); zfs_unmap_page(sf); zfs_vmobject_wlock(obj); - page_unbusy(pp, FALSE); + page_unhold(pp); } else { zfs_vmobject_wunlock(obj); error = dmu_read_uio(os, zp->z_id, uio, bytes); Modified: user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c ============================================================================== --- user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c Mon Aug 5 08:55:35 2013 (r253953) +++ user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c Mon Aug 5 09:37:18 2013 (r253954) @@ -485,13 +485,13 @@ tmpfs_nocacheread(vm_object_t tobj, vm_p vm_page_zero_invalid(m, TRUE); vm_page_wakeup(m); } - vm_page_io_start(m); + vm_page_lock(m); + vm_page_hold(m); + vm_page_unlock(m); VM_OBJECT_WUNLOCK(tobj); error = uiomove_fromphys(&m, offset, tlen, uio); - VM_OBJECT_WLOCK(tobj); - vm_page_io_finish(m); - VM_OBJECT_WUNLOCK(tobj); vm_page_lock(m); + vm_page_unhold(m); if (m->queue == PQ_NONE) { vm_page_deactivate(m); } else { @@ -602,14 +602,16 @@ tmpfs_mappedwrite(vm_object_t tobj, size vm_page_zero_invalid(tpg, TRUE); vm_page_wakeup(tpg); } - vm_page_io_start(tpg); + vm_page_lock(tpg); + vm_page_hold(tpg); + vm_page_unlock(tpg); VM_OBJECT_WUNLOCK(tobj); error = uiomove_fromphys(&tpg, offset, tlen, uio); VM_OBJECT_WLOCK(tobj); - vm_page_io_finish(tpg); if (error == 0) vm_page_dirty(tpg); vm_page_lock(tpg); + vm_page_unhold(tpg); if (tpg->queue == PQ_NONE) { vm_page_deactivate(tpg); } else { Modified: user/attilio/vmcontention/sys/i386/i386/pmap.c ============================================================================== --- user/attilio/vmcontention/sys/i386/i386/pmap.c Mon Aug 5 08:55:35 2013 (r253953) +++ user/attilio/vmcontention/sys/i386/i386/pmap.c Mon Aug 5 09:37:18 2013 (r253954) @@ -2773,6 +2773,44 @@ pmap_demote_pde(pmap_t pmap, pd_entry_t } /* + * Removes a 2- or 4MB page mapping from the kernel pmap. + */ +static void +pmap_remove_kernel_pde(pmap_t pmap, pd_entry_t *pde, vm_offset_t va) +{ + pd_entry_t newpde; + vm_paddr_t mptepa; + vm_page_t mpte; + + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + mpte = pmap_lookup_pt_page(pmap, va); + if (mpte == NULL) + panic("pmap_remove_kernel_pde: Missing pt page."); + + pmap_remove_pt_page(pmap, mpte); + mptepa = VM_PAGE_TO_PHYS(mpte); + newpde = mptepa | PG_M | PG_A | PG_RW | PG_V; + + /* + * Initialize the page table page. + */ + pagezero((void *)&KPTmap[i386_btop(trunc_4mpage(va))]); + + /* + * Remove the mapping. + */ + if (workaround_erratum383) + pmap_update_pde(pmap, va, pde, newpde); + else + pmap_kenter_pde(va, newpde); + + /* + * Invalidate the recursive mapping of the page table page. + */ + pmap_invalidate_page(pmap, (vm_offset_t)vtopte(va)); +} + +/* * pmap_remove_pde: do the things to unmap a superpage in a process */ static void @@ -2814,8 +2852,7 @@ pmap_remove_pde(pmap_t pmap, pd_entry_t } } if (pmap == kernel_pmap) { - if (!pmap_demote_pde(pmap, pdq, sva)) - panic("pmap_remove_pde: failed demotion"); + pmap_remove_kernel_pde(pmap, pdq, sva); } else { mpte = pmap_lookup_pt_page(pmap, sva); if (mpte != NULL) { Modified: user/attilio/vmcontention/sys/kern/imgact_elf.c ============================================================================== --- user/attilio/vmcontention/sys/kern/imgact_elf.c Mon Aug 5 08:55:35 2013 (r253953) +++ user/attilio/vmcontention/sys/kern/imgact_elf.c Mon Aug 5 09:37:18 2013 (r253954) @@ -378,7 +378,7 @@ __elfN(map_partial)(vm_map_t map, vm_obj off = offset - trunc_page(offset); error = copyout((caddr_t)sf_buf_kva(sf) + off, (caddr_t)start, end - start); - vm_imgact_unmap_page(object, sf); + vm_imgact_unmap_page(sf); if (error) { return (KERN_FAILURE); } @@ -433,7 +433,7 @@ __elfN(map_insert)(vm_map_t map, vm_obje sz = PAGE_SIZE - off; error = copyout((caddr_t)sf_buf_kva(sf) + off, (caddr_t)start, sz); - vm_imgact_unmap_page(object, sf); + vm_imgact_unmap_page(sf); if (error) { return (KERN_FAILURE); } @@ -553,7 +553,7 @@ __elfN(load_section)(struct image_params trunc_page(offset + filsz); error = copyout((caddr_t)sf_buf_kva(sf) + off, (caddr_t)map_addr, copy_len); - vm_imgact_unmap_page(object, sf); + vm_imgact_unmap_page(sf); if (error) { return (error); } Modified: user/attilio/vmcontention/sys/kern/kern_exec.c ============================================================================== --- user/attilio/vmcontention/sys/kern/kern_exec.c Mon Aug 5 08:55:35 2013 (r253953) +++ user/attilio/vmcontention/sys/kern/kern_exec.c Mon Aug 5 09:37:18 2013 (r253954) @@ -973,7 +973,7 @@ exec_map_first_page(imgp) vm_page_wakeup(ma[0]); } vm_page_lock(ma[0]); - vm_page_wire(ma[0]); + vm_page_hold(ma[0]); vm_page_unlock(ma[0]); VM_OBJECT_WUNLOCK(object); @@ -994,7 +994,7 @@ exec_unmap_first_page(imgp) sf_buf_free(imgp->firstpage); imgp->firstpage = NULL; vm_page_lock(m); - vm_page_unwire(m, 0); + vm_page_unhold(m); vm_page_unlock(m); } } Modified: user/attilio/vmcontention/sys/kern/sys_process.c ============================================================================== --- user/attilio/vmcontention/sys/kern/sys_process.c Mon Aug 5 08:55:35 2013 (r253953) +++ user/attilio/vmcontention/sys/kern/sys_process.c Mon Aug 5 09:37:18 2013 (r253954) @@ -263,7 +263,6 @@ proc_rwmem(struct proc *p, struct uio *u writing = uio->uio_rw == UIO_WRITE; reqprot = writing ? VM_PROT_COPY | VM_PROT_READ : VM_PROT_READ; fault_flags = writing ? VM_FAULT_DIRTY : VM_FAULT_NORMAL; - fault_flags |= VM_FAULT_IOBUSY; /* * Only map in one page at a time. We don't have to, but it @@ -288,9 +287,9 @@ proc_rwmem(struct proc *p, struct uio *u len = min(PAGE_SIZE - page_offset, uio->uio_resid); /* - * Fault and busy the page on behalf of the process. + * Fault and hold the page on behalf of the process. */ - error = vm_fault_handle(map, pageno, reqprot, fault_flags, &m); + error = vm_fault_hold(map, pageno, reqprot, fault_flags, &m); if (error != KERN_SUCCESS) { if (error == KERN_RESOURCE_SHORTAGE) error = ENOMEM; @@ -316,9 +315,9 @@ proc_rwmem(struct proc *p, struct uio *u /* * Release the page. */ - VM_OBJECT_WLOCK(m->object); - vm_page_io_finish(m); - VM_OBJECT_WUNLOCK(m->object); + vm_page_lock(m); + vm_page_unhold(m); + vm_page_unlock(m); } while (error == 0 && uio->uio_resid > 0); Modified: user/attilio/vmcontention/sys/netinet6/in6_ifattach.c ============================================================================== --- user/attilio/vmcontention/sys/netinet6/in6_ifattach.c Mon Aug 5 08:55:35 2013 (r253953) +++ user/attilio/vmcontention/sys/netinet6/in6_ifattach.c Mon Aug 5 09:37:18 2013 (r253954) @@ -932,6 +932,8 @@ in6_tmpaddrtimer(void *arg) bzero(nullbuf, sizeof(nullbuf)); TAILQ_FOREACH(ifp, &V_ifnet, if_list) { + if (ifp->if_afdata[AF_INET6] == NULL) + continue; ndi = ND_IFINFO(ifp); if (bcmp(ndi->randomid, nullbuf, sizeof(nullbuf)) != 0) { /* Modified: user/attilio/vmcontention/sys/vm/vm_extern.h ============================================================================== --- user/attilio/vmcontention/sys/vm/vm_extern.h Mon Aug 5 08:55:35 2013 (r253953) +++ user/attilio/vmcontention/sys/vm/vm_extern.h Mon Aug 5 09:37:18 2013 (r253954) @@ -63,7 +63,7 @@ void vm_fault_copy_entry(vm_map_t, vm_ma vm_ooffset_t *); int vm_fault_disable_pagefaults(void); void vm_fault_enable_pagefaults(int save); -int vm_fault_handle(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, +int vm_fault_hold(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, int fault_flags, vm_page_t *m_hold); int vm_fault_quick_hold_pages(vm_map_t map, vm_offset_t addr, vm_size_t len, vm_prot_t prot, vm_page_t *ma, int max_count); @@ -87,7 +87,7 @@ void vnode_pager_setsize(struct vnode *, int vslock(void *, size_t); void vsunlock(void *, size_t); struct sf_buf *vm_imgact_map_page(vm_object_t object, vm_ooffset_t offset); -void vm_imgact_unmap_page(vm_object_t, struct sf_buf *sf); +void vm_imgact_unmap_page(struct sf_buf *sf); void vm_thread_dispose(struct thread *td); int vm_thread_new(struct thread *td, int pages); int vm_mlock(struct proc *, struct ucred *, const void *, size_t); Modified: user/attilio/vmcontention/sys/vm/vm_fault.c ============================================================================== --- user/attilio/vmcontention/sys/vm/vm_fault.c Mon Aug 5 08:55:35 2013 (r253953) +++ user/attilio/vmcontention/sys/vm/vm_fault.c Mon Aug 5 09:37:18 2013 (r253954) @@ -221,8 +221,8 @@ vm_fault(vm_map_t map, vm_offset_t vaddr if (map != kernel_map && KTRPOINT(td, KTR_FAULT)) ktrfault(vaddr, fault_type); #endif - result = vm_fault_handle(map, trunc_page(vaddr), fault_type, - fault_flags, NULL); + result = vm_fault_hold(map, trunc_page(vaddr), fault_type, fault_flags, + NULL); #ifdef KTRACE if (map != kernel_map && KTRPOINT(td, KTR_FAULTEND)) ktrfaultend(result); @@ -231,7 +231,7 @@ vm_fault(vm_map_t map, vm_offset_t vaddr } int -vm_fault_handle(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, +vm_fault_hold(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, int fault_flags, vm_page_t *m_hold) { vm_prot_t prot; @@ -943,10 +943,7 @@ vnode_locked: vm_page_activate(fs.m); if (m_hold != NULL) { *m_hold = fs.m; - if (fault_flags & VM_FAULT_IOBUSY) - vm_page_io_start(fs.m); - else - vm_page_hold(fs.m); + vm_page_hold(fs.m); } vm_page_unlock(fs.m); vm_page_wakeup(fs.m); @@ -1148,7 +1145,7 @@ vm_fault_quick_hold_pages(vm_map_t map, * and hold these pages. */ for (mp = ma, va = addr; va < end; mp++, va += PAGE_SIZE) - if (*mp == NULL && vm_fault_handle(map, va, prot, + if (*mp == NULL && vm_fault_hold(map, va, prot, VM_FAULT_NORMAL, mp) != KERN_SUCCESS) goto error; } Modified: user/attilio/vmcontention/sys/vm/vm_glue.c ============================================================================== --- user/attilio/vmcontention/sys/vm/vm_glue.c Mon Aug 5 08:55:35 2013 (r253953) +++ user/attilio/vmcontention/sys/vm/vm_glue.c Mon Aug 5 09:37:18 2013 (r253954) @@ -223,7 +223,7 @@ vsunlock(void *addr, size_t len) * Return the pinned page if successful; otherwise, return NULL. */ static vm_page_t -vm_imgact_page_iostart(vm_object_t object, vm_ooffset_t offset) +vm_imgact_hold_page(vm_object_t object, vm_ooffset_t offset) { vm_page_t m, ma[1]; vm_pindex_t pindex; @@ -249,7 +249,9 @@ vm_imgact_page_iostart(vm_object_t objec } vm_page_wakeup(m); } - vm_page_io_start(m); + vm_page_lock(m); + vm_page_hold(m); + vm_page_unlock(m); out: VM_OBJECT_WUNLOCK(object); return (m); @@ -264,7 +266,7 @@ vm_imgact_map_page(vm_object_t object, v { vm_page_t m; - m = vm_imgact_page_iostart(object, offset); + m = vm_imgact_hold_page(object, offset); if (m == NULL) return (NULL); sched_pin(); @@ -275,16 +277,16 @@ vm_imgact_map_page(vm_object_t object, v * Destroy the given CPU private mapping and unpin the page that it mapped. */ void -vm_imgact_unmap_page(vm_object_t object, struct sf_buf *sf) +vm_imgact_unmap_page(struct sf_buf *sf) { vm_page_t m; m = sf_buf_page(sf); sf_buf_free(sf); sched_unpin(); - VM_OBJECT_WLOCK(object); - vm_page_io_finish(m); - VM_OBJECT_WUNLOCK(object); + vm_page_lock(m); + vm_page_unhold(m); + vm_page_unlock(m); } void Modified: user/attilio/vmcontention/sys/vm/vm_map.h ============================================================================== --- user/attilio/vmcontention/sys/vm/vm_map.h Mon Aug 5 08:55:35 2013 (r253953) +++ user/attilio/vmcontention/sys/vm/vm_map.h Mon Aug 5 09:37:18 2013 (r253954) @@ -329,7 +329,6 @@ long vmspace_resident_count(struct vmspa #define VM_FAULT_NORMAL 0 /* Nothing special */ #define VM_FAULT_CHANGE_WIRING 1 /* Change the wiring as appropriate */ #define VM_FAULT_DIRTY 2 /* Dirty the page; use w/VM_PROT_COPY */ -#define VM_FAULT_IOBUSY 4 /* Busy the faulted page */ /* * Initially, mappings are slightly sequential. The maximum window size must From owner-svn-src-user@FreeBSD.ORG Mon Aug 5 09:53:51 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id B671EE72; Mon, 5 Aug 2013 09:53:51 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 949EE2291; Mon, 5 Aug 2013 09:53:51 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r759rpVe028925; Mon, 5 Aug 2013 09:53:51 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r759rnWO028912; Mon, 5 Aug 2013 09:53:49 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308050953.r759rnWO028912@svn.freebsd.org> From: Attilio Rao Date: Mon, 5 Aug 2013 09:53:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253955 - in user/attilio/vmobj-readlock/sys: amd64/amd64 cddl/contrib/opensolaris/uts/common/fs/zfs fs/tmpfs i386/i386 kern netinet6 vm X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Aug 2013 09:53:51 -0000 Author: attilio Date: Mon Aug 5 09:53:48 2013 New Revision: 253955 URL: http://svnweb.freebsd.org/changeset/base/253955 Log: MFC Modified: user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_vnops.c user/attilio/vmobj-readlock/sys/i386/i386/pmap.c user/attilio/vmobj-readlock/sys/kern/imgact_elf.c user/attilio/vmobj-readlock/sys/kern/kern_exec.c user/attilio/vmobj-readlock/sys/kern/sys_process.c user/attilio/vmobj-readlock/sys/netinet6/in6_ifattach.c user/attilio/vmobj-readlock/sys/vm/vm_extern.h user/attilio/vmobj-readlock/sys/vm/vm_fault.c user/attilio/vmobj-readlock/sys/vm/vm_glue.c user/attilio/vmobj-readlock/sys/vm/vm_map.h Directory Properties: user/attilio/vmobj-readlock/sys/ (props changed) user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/ (props changed) Modified: user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c Mon Aug 5 09:37:18 2013 (r253954) +++ user/attilio/vmobj-readlock/sys/amd64/amd64/pmap.c Mon Aug 5 09:53:48 2013 (r253955) @@ -2795,6 +2795,44 @@ pmap_demote_pde_locked(pmap_t pmap, pd_e } /* + * pmap_remove_kernel_pde: Remove a kernel superpage mapping. + */ +static void +pmap_remove_kernel_pde(pmap_t pmap, pd_entry_t *pde, vm_offset_t va) +{ + pd_entry_t newpde; + vm_paddr_t mptepa; + vm_page_t mpte; + + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + mpte = pmap_lookup_pt_page(pmap, va); + if (mpte == NULL) + panic("pmap_remove_kernel_pde: Missing pt page."); + + pmap_remove_pt_page(pmap, mpte); + mptepa = VM_PAGE_TO_PHYS(mpte); + newpde = mptepa | PG_M | PG_A | PG_RW | PG_V; + + /* + * Initialize the page table page. + */ + pagezero((void *)PHYS_TO_DMAP(mptepa)); + + /* + * Demote the mapping. + */ + if (workaround_erratum383) + pmap_update_pde(pmap, va, pde, newpde); + else + pde_store(pde, newpde); + + /* + * Invalidate a stale recursive mapping of the page table page. + */ + pmap_invalidate_page(pmap, (vm_offset_t)vtopte(va)); +} + +/* * pmap_remove_pde: do the things to unmap a superpage in a process */ static int @@ -2837,8 +2875,7 @@ pmap_remove_pde(pmap_t pmap, pd_entry_t } } if (pmap == kernel_pmap) { - if (!pmap_demote_pde_locked(pmap, pdq, sva, lockp)) - panic("pmap_remove_pde: failed demotion"); + pmap_remove_kernel_pde(pmap, pdq, sva); } else { mpte = pmap_lookup_pt_page(pmap, sva); if (mpte != NULL) { Modified: user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c ============================================================================== --- user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Mon Aug 5 09:37:18 2013 (r253954) +++ user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Mon Aug 5 09:53:48 2013 (r253955) @@ -324,8 +324,7 @@ zfs_ioctl(vnode_t *vp, u_long com, intpt } static vm_page_t -page_busy(vnode_t *vp, int64_t start, int64_t off, int64_t nbytes, - boolean_t alloc) +page_busy(vnode_t *vp, int64_t start, int64_t off, int64_t nbytes) { vm_object_t obj; vm_page_t pp; @@ -351,8 +350,6 @@ page_busy(vnode_t *vp, int64_t start, in } vm_page_sbusy(pp); } else if (pp == NULL) { - if (!alloc) - break; pp = vm_page_alloc(obj, OFF_TO_IDX(start), VM_ALLOC_SYSTEM | VM_ALLOC_IFCACHED | VM_ALLOC_SBUSY); @@ -363,9 +360,6 @@ page_busy(vnode_t *vp, int64_t start, in if (pp != NULL) { ASSERT3U(pp->valid, ==, VM_PAGE_BITS_ALL); - if (!alloc) - break; - vm_object_pip_add(obj, 1); pmap_remove_write(pp); vm_page_clear_dirty(pp, off, nbytes); } @@ -375,12 +369,58 @@ page_busy(vnode_t *vp, int64_t start, in } static void -page_unbusy(vm_page_t pp, boolean_t unalloc) +page_unbusy(vm_page_t pp) { vm_page_sunbusy(pp); - if (unalloc) - vm_object_pip_subtract(pp->object, 1); + vm_object_pip_subtract(pp->object, 1); +} + +static vm_page_t +page_hold(vnode_t *vp, int64_t start) +{ + vm_object_t obj; + vm_page_t pp; + + obj = vp->v_object; + zfs_vmobject_assert_wlocked(obj); + + for (;;) { + if ((pp = vm_page_lookup(obj, OFF_TO_IDX(start))) != NULL && + pp->valid) { + if (vm_page_xbusied(pp)) { + /* + * Reference the page before unlocking and + * sleeping so that the page daemon is less + * likely to reclaim it. + */ + vm_page_reference(pp); + vm_page_lock(pp); + zfs_vmobject_wunlock(obj); + vm_page_busy_sleep(pp, "zfsmwb"); + zfs_vmobject_wlock(obj); + continue; + } + + ASSERT3U(pp->valid, ==, VM_PAGE_BITS_ALL); + vm_page_lock(pp); + vm_page_hold(pp); + vm_page_unlock(pp); + + } else + pp = NULL; + break; + } + return (pp); +} + +static void +page_unhold(vm_page_t pp) +{ + + vm_page_lock(pp); + vm_page_unhold(pp); + vm_page_unlock(pp); } static caddr_t @@ -444,8 +484,7 @@ update_pages(vnode_t *vp, int64_t start, zfs_vmobject_wlock(obj); vm_page_undirty(pp); - } else if ((pp = page_busy(vp, start, off, nbytes, - TRUE)) != NULL) { + } else if ((pp = page_busy(vp, start, off, nbytes)) != NULL) { zfs_vmobject_wunlock(obj); va = zfs_map_page(pp, &sf); @@ -454,7 +493,7 @@ update_pages(vnode_t *vp, int64_t start, zfs_unmap_page(sf); zfs_vmobject_wlock(obj); - page_unbusy(pp, TRUE); + page_unbusy(pp); } len -= nbytes; off = 0; @@ -564,7 +603,7 @@ mappedread(vnode_t *vp, int nbytes, uio_ vm_page_t pp; uint64_t bytes = MIN(PAGESIZE - off, len); - if (pp = page_busy(vp, start, 0, 0, FALSE)) { + if (pp = page_hold(vp, start)) { struct sf_buf *sf; caddr_t va; @@ -573,7 +612,7 @@ mappedread(vnode_t *vp, int nbytes, uio_ error = uiomove(va + off, bytes, UIO_READ, uio); zfs_unmap_page(sf); zfs_vmobject_wlock(obj); - page_unbusy(pp, FALSE); + page_unhold(pp); } else { zfs_vmobject_wunlock(obj); error = dmu_read_uio(os, zp->z_id, uio, bytes); Modified: user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_vnops.c ============================================================================== --- user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_vnops.c Mon Aug 5 09:37:18 2013 (r253954) +++ user/attilio/vmobj-readlock/sys/fs/tmpfs/tmpfs_vnops.c Mon Aug 5 09:53:48 2013 (r253955) @@ -482,13 +482,14 @@ tmpfs_nocacheread(vm_object_t tobj, vm_p } else vm_page_zero_invalid(m, TRUE); } - vm_page_busy_downgrade(m); + vm_page_xunbusy(m); + vm_page_lock(m); + vm_page_hold(m); + vm_page_unlock(m); VM_OBJECT_WUNLOCK(tobj); error = uiomove_fromphys(&m, offset, tlen, uio); - VM_OBJECT_WLOCK(tobj); - vm_page_sunbusy(m); - VM_OBJECT_WUNLOCK(tobj); vm_page_lock(m); + vm_page_unhold(m); if (m->queue == PQ_NONE) { vm_page_deactivate(m); } else { @@ -596,14 +597,17 @@ tmpfs_mappedwrite(vm_object_t tobj, size } else vm_page_zero_invalid(tpg, TRUE); } - vm_page_busy_downgrade(tpg); + vm_page_xunbusy(tpg); + vm_page_lock(tpg); + vm_page_hold(tpg); + vm_page_unlock(tpg); VM_OBJECT_WUNLOCK(tobj); error = uiomove_fromphys(&tpg, offset, tlen, uio); VM_OBJECT_WLOCK(tobj); - vm_page_sunbusy(tpg); if (error == 0) vm_page_dirty(tpg); vm_page_lock(tpg); + vm_page_unhold(tpg); if (tpg->queue == PQ_NONE) { vm_page_deactivate(tpg); } else { Modified: user/attilio/vmobj-readlock/sys/i386/i386/pmap.c ============================================================================== --- user/attilio/vmobj-readlock/sys/i386/i386/pmap.c Mon Aug 5 09:37:18 2013 (r253954) +++ user/attilio/vmobj-readlock/sys/i386/i386/pmap.c Mon Aug 5 09:53:48 2013 (r253955) @@ -2773,6 +2773,44 @@ pmap_demote_pde(pmap_t pmap, pd_entry_t } /* + * Removes a 2- or 4MB page mapping from the kernel pmap. + */ +static void +pmap_remove_kernel_pde(pmap_t pmap, pd_entry_t *pde, vm_offset_t va) +{ + pd_entry_t newpde; + vm_paddr_t mptepa; + vm_page_t mpte; + + PMAP_LOCK_ASSERT(pmap, MA_OWNED); + mpte = pmap_lookup_pt_page(pmap, va); + if (mpte == NULL) + panic("pmap_remove_kernel_pde: Missing pt page."); + + pmap_remove_pt_page(pmap, mpte); + mptepa = VM_PAGE_TO_PHYS(mpte); + newpde = mptepa | PG_M | PG_A | PG_RW | PG_V; + + /* + * Initialize the page table page. + */ + pagezero((void *)&KPTmap[i386_btop(trunc_4mpage(va))]); + + /* + * Remove the mapping. + */ + if (workaround_erratum383) + pmap_update_pde(pmap, va, pde, newpde); + else + pmap_kenter_pde(va, newpde); + + /* + * Invalidate the recursive mapping of the page table page. + */ + pmap_invalidate_page(pmap, (vm_offset_t)vtopte(va)); +} + +/* * pmap_remove_pde: do the things to unmap a superpage in a process */ static void @@ -2814,8 +2852,7 @@ pmap_remove_pde(pmap_t pmap, pd_entry_t } } if (pmap == kernel_pmap) { - if (!pmap_demote_pde(pmap, pdq, sva)) - panic("pmap_remove_pde: failed demotion"); + pmap_remove_kernel_pde(pmap, pdq, sva); } else { mpte = pmap_lookup_pt_page(pmap, sva); if (mpte != NULL) { Modified: user/attilio/vmobj-readlock/sys/kern/imgact_elf.c ============================================================================== --- user/attilio/vmobj-readlock/sys/kern/imgact_elf.c Mon Aug 5 09:37:18 2013 (r253954) +++ user/attilio/vmobj-readlock/sys/kern/imgact_elf.c Mon Aug 5 09:53:48 2013 (r253955) @@ -378,7 +378,7 @@ __elfN(map_partial)(vm_map_t map, vm_obj off = offset - trunc_page(offset); error = copyout((caddr_t)sf_buf_kva(sf) + off, (caddr_t)start, end - start); - vm_imgact_unmap_page(object, sf); + vm_imgact_unmap_page(sf); if (error) { return (KERN_FAILURE); } @@ -433,7 +433,7 @@ __elfN(map_insert)(vm_map_t map, vm_obje sz = PAGE_SIZE - off; error = copyout((caddr_t)sf_buf_kva(sf) + off, (caddr_t)start, sz); - vm_imgact_unmap_page(object, sf); + vm_imgact_unmap_page(sf); if (error) { return (KERN_FAILURE); } @@ -553,7 +553,7 @@ __elfN(load_section)(struct image_params trunc_page(offset + filsz); error = copyout((caddr_t)sf_buf_kva(sf) + off, (caddr_t)map_addr, copy_len); - vm_imgact_unmap_page(object, sf); + vm_imgact_unmap_page(sf); if (error) { return (error); } Modified: user/attilio/vmobj-readlock/sys/kern/kern_exec.c ============================================================================== --- user/attilio/vmobj-readlock/sys/kern/kern_exec.c Mon Aug 5 09:37:18 2013 (r253954) +++ user/attilio/vmobj-readlock/sys/kern/kern_exec.c Mon Aug 5 09:53:48 2013 (r253955) @@ -970,7 +970,7 @@ exec_map_first_page(imgp) } vm_page_xunbusy(ma[0]); vm_page_lock(ma[0]); - vm_page_wire(ma[0]); + vm_page_hold(ma[0]); vm_page_unlock(ma[0]); VM_OBJECT_WUNLOCK(object); @@ -991,7 +991,7 @@ exec_unmap_first_page(imgp) sf_buf_free(imgp->firstpage); imgp->firstpage = NULL; vm_page_lock(m); - vm_page_unwire(m, 0); + vm_page_unhold(m); vm_page_unlock(m); } } Modified: user/attilio/vmobj-readlock/sys/kern/sys_process.c ============================================================================== --- user/attilio/vmobj-readlock/sys/kern/sys_process.c Mon Aug 5 09:37:18 2013 (r253954) +++ user/attilio/vmobj-readlock/sys/kern/sys_process.c Mon Aug 5 09:53:48 2013 (r253955) @@ -263,7 +263,6 @@ proc_rwmem(struct proc *p, struct uio *u writing = uio->uio_rw == UIO_WRITE; reqprot = writing ? VM_PROT_COPY | VM_PROT_READ : VM_PROT_READ; fault_flags = writing ? VM_FAULT_DIRTY : VM_FAULT_NORMAL; - fault_flags |= VM_FAULT_SBUSY; /* * Only map in one page at a time. We don't have to, but it @@ -288,9 +287,9 @@ proc_rwmem(struct proc *p, struct uio *u len = min(PAGE_SIZE - page_offset, uio->uio_resid); /* - * Fault and busy the page on behalf of the process. + * Fault and hold the page on behalf of the process. */ - error = vm_fault_handle(map, pageno, reqprot, fault_flags, &m); + error = vm_fault_hold(map, pageno, reqprot, fault_flags, &m); if (error != KERN_SUCCESS) { if (error == KERN_RESOURCE_SHORTAGE) error = ENOMEM; @@ -316,9 +315,9 @@ proc_rwmem(struct proc *p, struct uio *u /* * Release the page. */ - VM_OBJECT_WLOCK(m->object); - vm_page_sunbusy(m); - VM_OBJECT_WUNLOCK(m->object); + vm_page_lock(m); + vm_page_unhold(m); + vm_page_unlock(m); } while (error == 0 && uio->uio_resid > 0); Modified: user/attilio/vmobj-readlock/sys/netinet6/in6_ifattach.c ============================================================================== --- user/attilio/vmobj-readlock/sys/netinet6/in6_ifattach.c Mon Aug 5 09:37:18 2013 (r253954) +++ user/attilio/vmobj-readlock/sys/netinet6/in6_ifattach.c Mon Aug 5 09:53:48 2013 (r253955) @@ -932,6 +932,8 @@ in6_tmpaddrtimer(void *arg) bzero(nullbuf, sizeof(nullbuf)); TAILQ_FOREACH(ifp, &V_ifnet, if_list) { + if (ifp->if_afdata[AF_INET6] == NULL) + continue; ndi = ND_IFINFO(ifp); if (bcmp(ndi->randomid, nullbuf, sizeof(nullbuf)) != 0) { /* Modified: user/attilio/vmobj-readlock/sys/vm/vm_extern.h ============================================================================== --- user/attilio/vmobj-readlock/sys/vm/vm_extern.h Mon Aug 5 09:37:18 2013 (r253954) +++ user/attilio/vmobj-readlock/sys/vm/vm_extern.h Mon Aug 5 09:53:48 2013 (r253955) @@ -63,7 +63,7 @@ void vm_fault_copy_entry(vm_map_t, vm_ma vm_ooffset_t *); int vm_fault_disable_pagefaults(void); void vm_fault_enable_pagefaults(int save); -int vm_fault_handle(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, +int vm_fault_hold(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, int fault_flags, vm_page_t *m_hold); int vm_fault_quick_hold_pages(vm_map_t map, vm_offset_t addr, vm_size_t len, vm_prot_t prot, vm_page_t *ma, int max_count); @@ -87,7 +87,7 @@ void vnode_pager_setsize(struct vnode *, int vslock(void *, size_t); void vsunlock(void *, size_t); struct sf_buf *vm_imgact_map_page(vm_object_t object, vm_ooffset_t offset); -void vm_imgact_unmap_page(vm_object_t, struct sf_buf *sf); +void vm_imgact_unmap_page(struct sf_buf *sf); void vm_thread_dispose(struct thread *td); int vm_thread_new(struct thread *td, int pages); int vm_mlock(struct proc *, struct ucred *, const void *, size_t); Modified: user/attilio/vmobj-readlock/sys/vm/vm_fault.c ============================================================================== --- user/attilio/vmobj-readlock/sys/vm/vm_fault.c Mon Aug 5 09:37:18 2013 (r253954) +++ user/attilio/vmobj-readlock/sys/vm/vm_fault.c Mon Aug 5 09:53:48 2013 (r253955) @@ -221,8 +221,8 @@ vm_fault(vm_map_t map, vm_offset_t vaddr if (map != kernel_map && KTRPOINT(td, KTR_FAULT)) ktrfault(vaddr, fault_type); #endif - result = vm_fault_handle(map, trunc_page(vaddr), fault_type, - fault_flags, NULL); + result = vm_fault_hold(map, trunc_page(vaddr), fault_type, fault_flags, + NULL); #ifdef KTRACE if (map != kernel_map && KTRPOINT(td, KTR_FAULTEND)) ktrfaultend(result); @@ -231,7 +231,7 @@ vm_fault(vm_map_t map, vm_offset_t vaddr } int -vm_fault_handle(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, +vm_fault_hold(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, int fault_flags, vm_page_t *m_hold) { vm_prot_t prot; @@ -938,10 +938,7 @@ vnode_locked: vm_page_activate(fs.m); if (m_hold != NULL) { *m_hold = fs.m; - if (fault_flags & VM_FAULT_SBUSY) - vm_page_busy_downgrade(fs.m); - else - vm_page_hold(fs.m); + vm_page_hold(fs.m); } vm_page_unlock(fs.m); if (m_hold == NULL || (fault_flags & VM_FAULT_SBUSY) == 0) @@ -1143,7 +1140,7 @@ vm_fault_quick_hold_pages(vm_map_t map, * and hold these pages. */ for (mp = ma, va = addr; va < end; mp++, va += PAGE_SIZE) - if (*mp == NULL && vm_fault_handle(map, va, prot, + if (*mp == NULL && vm_fault_hold(map, va, prot, VM_FAULT_NORMAL, mp) != KERN_SUCCESS) goto error; } Modified: user/attilio/vmobj-readlock/sys/vm/vm_glue.c ============================================================================== --- user/attilio/vmobj-readlock/sys/vm/vm_glue.c Mon Aug 5 09:37:18 2013 (r253954) +++ user/attilio/vmobj-readlock/sys/vm/vm_glue.c Mon Aug 5 09:53:48 2013 (r253955) @@ -223,7 +223,7 @@ vsunlock(void *addr, size_t len) * Return the pinned page if successful; otherwise, return NULL. */ static vm_page_t -vm_imgact_page_iostart(vm_object_t object, vm_ooffset_t offset) +vm_imgact_hold_page(vm_object_t object, vm_ooffset_t offset) { vm_page_t m, ma[1]; vm_pindex_t pindex; @@ -246,7 +246,10 @@ vm_imgact_page_iostart(vm_object_t objec goto out; } } - vm_page_busy_downgrade(m); + vm_page_xunbusy(m); + vm_page_lock(m); + vm_page_hold(m); + vm_page_unlock(m); out: VM_OBJECT_WUNLOCK(object); return (m); @@ -261,7 +264,7 @@ vm_imgact_map_page(vm_object_t object, v { vm_page_t m; - m = vm_imgact_page_iostart(object, offset); + m = vm_imgact_hold_page(object, offset); if (m == NULL) return (NULL); sched_pin(); @@ -272,16 +275,16 @@ vm_imgact_map_page(vm_object_t object, v * Destroy the given CPU private mapping and unpin the page that it mapped. */ void -vm_imgact_unmap_page(vm_object_t object, struct sf_buf *sf) +vm_imgact_unmap_page(struct sf_buf *sf) { vm_page_t m; m = sf_buf_page(sf); sf_buf_free(sf); sched_unpin(); - VM_OBJECT_WLOCK(object); - vm_page_sunbusy(m); - VM_OBJECT_WUNLOCK(object); + vm_page_lock(m); + vm_page_unhold(m); + vm_page_unlock(m); } void Modified: user/attilio/vmobj-readlock/sys/vm/vm_map.h ============================================================================== --- user/attilio/vmobj-readlock/sys/vm/vm_map.h Mon Aug 5 09:37:18 2013 (r253954) +++ user/attilio/vmobj-readlock/sys/vm/vm_map.h Mon Aug 5 09:53:48 2013 (r253955) @@ -329,7 +329,6 @@ long vmspace_resident_count(struct vmspa #define VM_FAULT_NORMAL 0 /* Nothing special */ #define VM_FAULT_CHANGE_WIRING 1 /* Change the wiring as appropriate */ #define VM_FAULT_DIRTY 2 /* Dirty the page; use w/VM_PROT_COPY */ -#define VM_FAULT_SBUSY 4 /* Shared busy the page */ /* * Initially, mappings are slightly sequential. The maximum window size must From owner-svn-src-user@FreeBSD.ORG Mon Aug 5 12:51:20 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id CBF37A2E; Mon, 5 Aug 2013 12:51:20 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id B7EB92BD3; Mon, 5 Aug 2013 12:51:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r75CpKDm081922; Mon, 5 Aug 2013 12:51:20 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r75CpKWw081921; Mon, 5 Aug 2013 12:51:20 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308051251.r75CpKWw081921@svn.freebsd.org> From: Attilio Rao Date: Mon, 5 Aug 2013 12:51:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253962 - user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Aug 2013 12:51:20 -0000 Author: attilio Date: Mon Aug 5 12:51:20 2013 New Revision: 253962 URL: http://svnweb.freebsd.org/changeset/base/253962 Log: Fix mis-merge. Sponsored by: EMC / Isilon storage division Modified: user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Modified: user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c ============================================================================== --- user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Mon Aug 5 12:18:35 2013 (r253961) +++ user/attilio/vmobj-readlock/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Mon Aug 5 12:51:20 2013 (r253962) @@ -360,6 +360,7 @@ page_busy(vnode_t *vp, int64_t start, in if (pp != NULL) { ASSERT3U(pp->valid, ==, VM_PAGE_BITS_ALL); + vm_object_pip_add(obj, 1); pmap_remove_write(pp); vm_page_clear_dirty(pp, off, nbytes); } From owner-svn-src-user@FreeBSD.ORG Mon Aug 5 12:52:38 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 13E34B20; Mon, 5 Aug 2013 12:52:38 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 009172BE1; Mon, 5 Aug 2013 12:52:38 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r75CqbUl082085; Mon, 5 Aug 2013 12:52:37 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r75Cqbdq082084; Mon, 5 Aug 2013 12:52:37 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308051252.r75Cqbdq082084@svn.freebsd.org> From: Attilio Rao Date: Mon, 5 Aug 2013 12:52:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253963 - user/attilio/vmobj-readlock/sys/vm X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Aug 2013 12:52:38 -0000 Author: attilio Date: Mon Aug 5 12:52:37 2013 New Revision: 253963 URL: http://svnweb.freebsd.org/changeset/base/253963 Log: Fix mismerge. Sponsored by: EMC / Isilon storage division Modified: user/attilio/vmobj-readlock/sys/vm/vm_fault.c Modified: user/attilio/vmobj-readlock/sys/vm/vm_fault.c ============================================================================== --- user/attilio/vmobj-readlock/sys/vm/vm_fault.c Mon Aug 5 12:51:20 2013 (r253962) +++ user/attilio/vmobj-readlock/sys/vm/vm_fault.c Mon Aug 5 12:52:37 2013 (r253963) @@ -941,8 +941,7 @@ vnode_locked: vm_page_hold(fs.m); } vm_page_unlock(fs.m); - if (m_hold == NULL || (fault_flags & VM_FAULT_SBUSY) == 0) - vm_page_xunbusy(fs.m); + vm_page_xunbusy(fs.m); /* * Unlock everything, and return From owner-svn-src-user@FreeBSD.ORG Mon Aug 5 12:55:23 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 8C09EC31; Mon, 5 Aug 2013 12:55:23 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 79E142BFC; Mon, 5 Aug 2013 12:55:23 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r75CtN68082456; Mon, 5 Aug 2013 12:55:23 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r75CtN5v082454; Mon, 5 Aug 2013 12:55:23 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308051255.r75CtN5v082454@svn.freebsd.org> From: Attilio Rao Date: Mon, 5 Aug 2013 12:55:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253964 - user/attilio/vmobj-readlock/sys/vm X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Aug 2013 12:55:23 -0000 Author: attilio Date: Mon Aug 5 12:55:23 2013 New Revision: 253964 URL: http://svnweb.freebsd.org/changeset/base/253964 Log: Reduce diffs against head. Sponsored by: EMC / Isilon storage division Modified: user/attilio/vmobj-readlock/sys/vm/vm_fault.c Modified: user/attilio/vmobj-readlock/sys/vm/vm_fault.c ============================================================================== --- user/attilio/vmobj-readlock/sys/vm/vm_fault.c Mon Aug 5 12:52:37 2013 (r253963) +++ user/attilio/vmobj-readlock/sys/vm/vm_fault.c Mon Aug 5 12:55:23 2013 (r253964) @@ -1367,13 +1367,12 @@ vm_fault_copy_entry(vm_map_t dst_map, vm vm_page_lock(dst_m); vm_page_wire(dst_m); vm_page_unlock(dst_m); - vm_page_xunbusy(dst_m); } else { vm_page_lock(dst_m); vm_page_activate(dst_m); vm_page_unlock(dst_m); - vm_page_xunbusy(dst_m); } + vm_page_xunbusy(dst_m); } VM_OBJECT_WUNLOCK(dst_object); if (upgrade) { From owner-svn-src-user@FreeBSD.ORG Mon Aug 5 18:11:02 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id B6FB1646; Mon, 5 Aug 2013 18:11:02 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A4F682D34; Mon, 5 Aug 2013 18:11:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r75IB257079271; Mon, 5 Aug 2013 18:11:02 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r75IB2KN079270; Mon, 5 Aug 2013 18:11:02 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308051811.r75IB2KN079270@svn.freebsd.org> From: Attilio Rao Date: Mon, 5 Aug 2013 18:11:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253966 - user/attilio/vmobj-readlock/sys/vm X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Aug 2013 18:11:02 -0000 Author: attilio Date: Mon Aug 5 18:11:02 2013 New Revision: 253966 URL: http://svnweb.freebsd.org/changeset/base/253966 Log: Reuse a stronger check to match original code. Sponsored by: EMC / Isilon storage division Reported by: alc Modified: user/attilio/vmobj-readlock/sys/vm/vm_page.h Modified: user/attilio/vmobj-readlock/sys/vm/vm_page.h ============================================================================== --- user/attilio/vmobj-readlock/sys/vm/vm_page.h Mon Aug 5 16:16:50 2013 (r253965) +++ user/attilio/vmobj-readlock/sys/vm/vm_page.h Mon Aug 5 18:11:02 2013 (r253966) @@ -557,7 +557,7 @@ vm_page_aflag_set(vm_page_t m, uint8_t b * exclusive busied. Currently, this flag is only set by pmap_enter(). */ KASSERT((bits & PGA_WRITEABLE) == 0 || - (m->oflags & VPO_UNMANAGED) == 0 || vm_page_xbusied(m), + ((m->oflags & VPO_UNMANAGED) == 0 && vm_page_xbusied(m)), ("vm_page_aflag_set: PGA_WRITEABLE and not exclusive busy")); /* From owner-svn-src-user@FreeBSD.ORG Tue Aug 6 06:04:56 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 73201BF8; Tue, 6 Aug 2013 06:04:56 +0000 (UTC) (envelope-from pho@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5F68129EE; Tue, 6 Aug 2013 06:04:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r7664th9072073; Tue, 6 Aug 2013 06:04:55 GMT (envelope-from pho@svn.freebsd.org) Received: (from pho@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r7664t2q072071; Tue, 6 Aug 2013 06:04:55 GMT (envelope-from pho@svn.freebsd.org) Message-Id: <201308060604.r7664t2q072071@svn.freebsd.org> From: Peter Holm Date: Tue, 6 Aug 2013 06:04:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r253982 - user/pho/stress2/misc X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Aug 2013 06:04:56 -0000 Author: pho Date: Tue Aug 6 06:04:55 2013 New Revision: 253982 URL: http://svnweb.freebsd.org/changeset/base/253982 Log: tmpfs(5) regression test added. Sponsored by: EMC / Isilon storage division Added: user/pho/stress2/misc/tmpfs10.sh (contents, props changed) Added: user/pho/stress2/misc/tmpfs10.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/pho/stress2/misc/tmpfs10.sh Tue Aug 6 06:04:55 2013 (r253982) @@ -0,0 +1,157 @@ +#!/bin/sh + +# +# Copyright (c) 2013 EMC Corp. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# $FreeBSD$ +# + +# tmpfs(5) name lookup problem seen: + +# $ ./tmpfs10.sh +# tmpfs10: unlink(p01193.14729) at loop #2: No such file or directory +# unlink(p01193.14729) succeeded at call #2. +# tmpfs10: unlink(p01186.14409) at loop #2: No such file or directory +# unlink(p01186.14409) succeeded at call #2. +# FAIL +# $ + +# Fixed in r253967. + +[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 + +. ../default.cfg + +odir=`pwd` +cd /tmp +sed '1,/^EOF/d' < $odir/$0 > tmpfs10.c +cc -o tmpfs10 -Wall -Wextra -O2 -g tmpfs10.c || exit 1 +rm -f tmpfs10.c +cd $odir + +mount | grep -q "on $mntpoint " && umount $mntpoint +mount -t tmpfs tmpfs $mntpoint +cd $mntpoint +/tmp/tmpfs10 || +{ find $mntpoint ! -type d | xargs ls -il; echo FAIL; } +cd $odir +umount $mntpoint +rm -f /tmp/tmpfs10 +exit 0 +EOF +#include +#include +#include +#include +#include +#include +#include +#include +#include + +static int loop; +int error; + +#define PARALLEL 20 +#define SIZE 16000 + +void +test2(void) +{ + int i, j, k; + pid_t pid; + char file[128], dir[128]; + + loop++; + pid = getpid(); + sprintf(dir,"%s.%05d", getprogname(), pid); + if (mkdir(dir, 0770) < 0) + err(1, "mkdir(%s), %s:%d", dir, __FILE__, __LINE__); + + if (chdir(dir) == -1) + err(1, "chdir(%s), %s:%d", dir, __FILE__, __LINE__); + + for (j = 0; j < SIZE; j++) { + sprintf(file,"p%05d.%05d", pid, j); + if (symlink("/tmp/not/there", file) == -1) { + if (errno != EINTR) { + warn("symlink(%s). %s.%d", file, __FILE__, __LINE__); + break; + } + } + } + + for (i = --j; i >= 0; i--) { + sprintf(file,"p%05d.%05d", pid, i); + if (unlink(file) == -1) { + warn("unlink(%s) at loop #%d", file, loop); + error++; + for (k = 0; k < 10; k++) { + usleep(10000); + if (unlink(file) == 0) { + fprintf(stderr, + "unlink(%s) succeeded at call #%d.\n", + file, k + 2); + break; + } + } + } + } + + (void)chdir(".."); + if (rmdir(dir) == -1) + warn("rmdir(%s), %s:%d", dir, __FILE__, __LINE__); + +} + +void +test(void) +{ + sleep(arc4random() % 3 + 1); + + test2(); + if (error == 0) + test2(); + + _exit(error); +} + +int +main(void) +{ + int e, i, status; + + for (i = 0; i < PARALLEL; i++) + if (fork() == 0) + test(); + + e = 0; + for (i = 0; i < PARALLEL; i++) { + wait(&status); + e += WEXITSTATUS(status); + } + + return (e); +} From owner-svn-src-user@FreeBSD.ORG Wed Aug 7 12:03:34 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id D7907B76; Wed, 7 Aug 2013 12:03:34 +0000 (UTC) (envelope-from pho@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id B5B47266C; Wed, 7 Aug 2013 12:03:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r77C3Yn3088592; Wed, 7 Aug 2013 12:03:34 GMT (envelope-from pho@svn.freebsd.org) Received: (from pho@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r77C3YHW088591; Wed, 7 Aug 2013 12:03:34 GMT (envelope-from pho@svn.freebsd.org) Message-Id: <201308071203.r77C3YHW088591@svn.freebsd.org> From: Peter Holm Date: Wed, 7 Aug 2013 12:03:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r254060 - user/pho/stress2/misc X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Aug 2013 12:03:34 -0000 Author: pho Date: Wed Aug 7 12:03:34 2013 New Revision: 254060 URL: http://svnweb.freebsd.org/changeset/base/254060 Log: Added regression test for rename(2) problem. Sponsored by: EMC / Isilon storage division Added: user/pho/stress2/misc/rename10.sh (contents, props changed) Added: user/pho/stress2/misc/rename10.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/pho/stress2/misc/rename10.sh Wed Aug 7 12:03:34 2013 (r254060) @@ -0,0 +1,184 @@ +#!/bin/sh + +# +# Copyright (c) 2013 EMC Corp. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# $FreeBSD$ +# + +[ `id -u ` -ne 0 ] && echo "Must be root!" && exit 1 + +# Regression test for rename(2) problem with missing reference release of +# a busy "to" vnode, resulting in a leak. +# Fixed in r253998l + +. ../default.cfg + +here=`pwd` +cd /tmp +sed '1,/^EOF/d' < $here/$0 > rename10.c +cc -o rename10 -Wall -Wextra -g -O2 rename10.c || exit 1 +rm -f rename10.c +cd $here + +mount | grep $mntpoint | grep -q tmpfs && umount -f $mntpoint +mount -t tmpfs tmpfs $mntpoint + +mount | grep "on $mntpoint " | grep -q /dev/md && umount -f $mntpoint +mdconfig -l | grep -q md$mdstart && mdconfig -d -u $mdstart + +mdconfig -a -t swap -s 4g -u $mdstart || exit 1 +bsdlabel -w md$mdstart auto +newfs -U md${mdstart}$part > /dev/null +mount /dev/md${mdstart}$part $mntpoint +avail=`df -k $mntpoint | tail -1 | awk '{print $4}'` + +(cd $mntpoint; /tmp/rename10) + +for i in `jot 3`; do + sync + sleep 2 +done + +if [ `df -k $mntpoint | tail -1 | awk '{print $4}'` -lt $avail ]; then + echo FAIL + ls -ial $mntpoint + df -i $mntpoint +fi + +n=0 +while mount | grep "on $mntpoint " | grep -q /dev/md; do + umount $mntpoint || sleep 1 + n=$((n + 1)) + [ $n -gt 5 ] && { umount -f $mntpoint; break; } +done + +checkfs /dev/md${mdstart}$part +mdconfig -d -u $mdstart +exit 0 +EOF +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define PARALLEL 4 +#define SIZE (1 * 1024 * 1024) + +static char *logfile = "logfile"; +static char *oldfiles[] = { + "logfile.0", "logfile.1", "logfile.2", "logfile.3", "logfile.4" +}; + +void * +logger(void) +{ + int fd; + char * cp; + + setproctitle("logger"); + cp = calloc(1, SIZE); + for(;;) { + if ((fd = open(logfile, O_RDWR | O_APPEND)) != -1) { + if (write(fd, cp, SIZE) != SIZE) + err(1, "write()"); + close(fd); + } + usleep(1); + } + + _exit(0); +} + +void * +spin(void) +{ + int fd, i; + + setproctitle("spin"); + for(;;) { + for (i = 0; i < 5; i++) { + if ((fd = open(oldfiles[i], O_RDWR | O_APPEND)) != -1) + close(fd); + } + usleep(1); + } + _exit(0); +} + +void +renamer() +{ + int fd, i; + time_t start; + + setproctitle("renamer"); + start = time(NULL); + i = 0; + while (time(NULL) - start < 60) { + if ((fd = open(logfile, O_RDWR | O_CREAT | O_EXCL, 0644)) == -1) + err(1, "creat(%s)", logfile); + close(fd); + if (rename(logfile, oldfiles[i]) == -1) + err(1, "rename(%s, %s)", logfile, oldfiles[i]); + i = (i + 1) % 5; + } + for (i = 0; i < 5; i++) { + unlink(oldfiles[i]); + } + unlink(logfile); + +} + +int +main() { + pid_t pids[PARALLEL], spids[PARALLEL]; + int i; + + for (i = 0; i < PARALLEL; i++) { + if ((pids[i] = fork()) == 0) + logger(); + if ((spids[i] = fork()) == 0) + spin(); + } + + renamer(); + + for (i = 0; i < PARALLEL; i++) { + kill(pids[i], SIGINT); + kill(spids[i], SIGINT); + } + for (i = 0; i < PARALLEL * 2; i++) + wait(NULL); + wait(NULL); + + return (0); +} From owner-svn-src-user@FreeBSD.ORG Wed Aug 7 18:24:20 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id E53F4D1E; Wed, 7 Aug 2013 18:24:20 +0000 (UTC) (envelope-from attilio@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CEA502E99; Wed, 7 Aug 2013 18:24:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r77IOKZt034391; Wed, 7 Aug 2013 18:24:20 GMT (envelope-from attilio@svn.freebsd.org) Received: (from attilio@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r77IOHnX034367; Wed, 7 Aug 2013 18:24:17 GMT (envelope-from attilio@svn.freebsd.org) Message-Id: <201308071824.r77IOHnX034367@svn.freebsd.org> From: Attilio Rao Date: Wed, 7 Aug 2013 18:24:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r254067 - in user/attilio/vmcontention: . contrib/bind9 contrib/bind9/bin contrib/bind9/bin/check contrib/bind9/bin/confgen contrib/bind9/bin/dig contrib/bind9/bin/dig/include/dig contr... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Aug 2013 18:24:21 -0000 Author: attilio Date: Wed Aug 7 18:24:16 2013 New Revision: 254067 URL: http://svnweb.freebsd.org/changeset/base/254067 Log: MFC Added: user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/eui48_108.c - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/eui48_108.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/eui48_108.h - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/eui48_108.h user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/eui64_109.c - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/eui64_109.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/eui64_109.h - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/eui64_109.h user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/l32_105.c - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/l32_105.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/l32_105.h - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/l32_105.h user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/l64_106.c - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/l64_106.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/l64_106.h - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/l64_106.h user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/lp_107.c - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/lp_107.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/lp_107.h - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/lp_107.h user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/nid_104.c - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/nid_104.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/nid_104.h - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/nid_104.h user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/uri_256.c - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/uri_256.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/uri_256.h - copied unchanged from r254066, head/contrib/bind9/lib/dns/rdata/generic/uri_256.h user/attilio/vmcontention/contrib/bind9/lib/isc/include/isc/regex.h - copied unchanged from r254066, head/contrib/bind9/lib/isc/include/isc/regex.h user/attilio/vmcontention/contrib/bind9/lib/isc/regex.c - copied unchanged from r254066, head/contrib/bind9/lib/isc/regex.c user/attilio/vmcontention/sys/arm/allwinner/a20/ - copied from r254066, head/sys/arm/allwinner/a20/ user/attilio/vmcontention/sys/arm/conf/CUBIEBOARD2 - copied unchanged from r254066, head/sys/arm/conf/CUBIEBOARD2 user/attilio/vmcontention/sys/boot/fdt/dts/cubieboard2.dts - copied unchanged from r254066, head/sys/boot/fdt/dts/cubieboard2.dts user/attilio/vmcontention/sys/cddl/compat/opensolaris/sys/debug_compat.h - copied unchanged from r254066, head/sys/cddl/compat/opensolaris/sys/debug_compat.h Replaced: user/attilio/vmcontention/contrib/bind9/libtool.m4/ - copied from r254066, head/contrib/bind9/libtool.m4/ Modified: user/attilio/vmcontention/UPDATING user/attilio/vmcontention/contrib/bind9/CHANGES user/attilio/vmcontention/contrib/bind9/COPYRIGHT user/attilio/vmcontention/contrib/bind9/FAQ user/attilio/vmcontention/contrib/bind9/FAQ.xml user/attilio/vmcontention/contrib/bind9/Makefile.in user/attilio/vmcontention/contrib/bind9/README user/attilio/vmcontention/contrib/bind9/aclocal.m4 user/attilio/vmcontention/contrib/bind9/bin/Makefile.in user/attilio/vmcontention/contrib/bind9/bin/check/check-tool.c user/attilio/vmcontention/contrib/bind9/bin/check/named-checkconf.c user/attilio/vmcontention/contrib/bind9/bin/check/named-checkzone.8 user/attilio/vmcontention/contrib/bind9/bin/check/named-checkzone.c user/attilio/vmcontention/contrib/bind9/bin/check/named-checkzone.docbook user/attilio/vmcontention/contrib/bind9/bin/check/named-checkzone.html user/attilio/vmcontention/contrib/bind9/bin/confgen/keygen.c user/attilio/vmcontention/contrib/bind9/bin/confgen/rndc-confgen.c user/attilio/vmcontention/contrib/bind9/bin/dig/dig.1 user/attilio/vmcontention/contrib/bind9/bin/dig/dig.c user/attilio/vmcontention/contrib/bind9/bin/dig/dig.docbook user/attilio/vmcontention/contrib/bind9/bin/dig/dig.html user/attilio/vmcontention/contrib/bind9/bin/dig/dighost.c user/attilio/vmcontention/contrib/bind9/bin/dig/host.c user/attilio/vmcontention/contrib/bind9/bin/dig/include/dig/dig.h user/attilio/vmcontention/contrib/bind9/bin/dnssec/dnssec-keyfromlabel.c user/attilio/vmcontention/contrib/bind9/bin/dnssec/dnssec-keygen.c user/attilio/vmcontention/contrib/bind9/bin/dnssec/dnssec-revoke.c user/attilio/vmcontention/contrib/bind9/bin/dnssec/dnssec-settime.c user/attilio/vmcontention/contrib/bind9/bin/dnssec/dnssec-signzone.c user/attilio/vmcontention/contrib/bind9/bin/named/Makefile.in user/attilio/vmcontention/contrib/bind9/bin/named/client.c user/attilio/vmcontention/contrib/bind9/bin/named/config.c user/attilio/vmcontention/contrib/bind9/bin/named/control.c user/attilio/vmcontention/contrib/bind9/bin/named/controlconf.c user/attilio/vmcontention/contrib/bind9/bin/named/include/named/client.h user/attilio/vmcontention/contrib/bind9/bin/named/include/named/globals.h user/attilio/vmcontention/contrib/bind9/bin/named/include/named/server.h user/attilio/vmcontention/contrib/bind9/bin/named/interfacemgr.c user/attilio/vmcontention/contrib/bind9/bin/named/log.c user/attilio/vmcontention/contrib/bind9/bin/named/logconf.c user/attilio/vmcontention/contrib/bind9/bin/named/lwresd.c user/attilio/vmcontention/contrib/bind9/bin/named/main.c user/attilio/vmcontention/contrib/bind9/bin/named/named.conf.5 user/attilio/vmcontention/contrib/bind9/bin/named/named.conf.docbook user/attilio/vmcontention/contrib/bind9/bin/named/named.conf.html user/attilio/vmcontention/contrib/bind9/bin/named/query.c user/attilio/vmcontention/contrib/bind9/bin/named/server.c user/attilio/vmcontention/contrib/bind9/bin/named/statschannel.c user/attilio/vmcontention/contrib/bind9/bin/named/tkeyconf.c user/attilio/vmcontention/contrib/bind9/bin/named/tsigconf.c user/attilio/vmcontention/contrib/bind9/bin/named/unix/dlz_dlopen_driver.c user/attilio/vmcontention/contrib/bind9/bin/named/update.c user/attilio/vmcontention/contrib/bind9/bin/named/xfrout.c user/attilio/vmcontention/contrib/bind9/bin/named/zoneconf.c user/attilio/vmcontention/contrib/bind9/bin/nsupdate/nsupdate.c user/attilio/vmcontention/contrib/bind9/bin/rndc/rndc.c user/attilio/vmcontention/contrib/bind9/bin/tools/genrandom.c user/attilio/vmcontention/contrib/bind9/bin/tools/isc-hmac-fixup.8 user/attilio/vmcontention/contrib/bind9/bin/tools/isc-hmac-fixup.docbook user/attilio/vmcontention/contrib/bind9/bin/tools/isc-hmac-fixup.html user/attilio/vmcontention/contrib/bind9/config.h.in user/attilio/vmcontention/contrib/bind9/config.threads.in user/attilio/vmcontention/contrib/bind9/configure.in user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM-book.xml user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM.ch01.html user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM.ch02.html user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM.ch03.html user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM.ch04.html user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM.ch05.html user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM.ch06.html user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM.ch07.html user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM.ch08.html user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM.ch09.html user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM.ch10.html user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM.html user/attilio/vmcontention/contrib/bind9/doc/arm/Bv9ARM.pdf user/attilio/vmcontention/contrib/bind9/doc/arm/man.arpaname.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.ddns-confgen.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.dig.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.dnssec-dsfromkey.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.dnssec-keyfromlabel.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.dnssec-keygen.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.dnssec-revoke.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.dnssec-settime.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.dnssec-signzone.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.genrandom.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.host.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.isc-hmac-fixup.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.named-checkconf.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.named-checkzone.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.named-journalprint.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.named.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.nsec3hash.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.nsupdate.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.rndc-confgen.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.rndc.conf.html user/attilio/vmcontention/contrib/bind9/doc/arm/man.rndc.html user/attilio/vmcontention/contrib/bind9/doc/arm/pkcs11.xml user/attilio/vmcontention/contrib/bind9/doc/misc/options user/attilio/vmcontention/contrib/bind9/isc-config.sh.in user/attilio/vmcontention/contrib/bind9/lib/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/bind9/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/bind9/api user/attilio/vmcontention/contrib/bind9/lib/bind9/check.c user/attilio/vmcontention/contrib/bind9/lib/dns/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/dns/acache.c user/attilio/vmcontention/contrib/bind9/lib/dns/adb.c user/attilio/vmcontention/contrib/bind9/lib/dns/api user/attilio/vmcontention/contrib/bind9/lib/dns/cache.c user/attilio/vmcontention/contrib/bind9/lib/dns/client.c user/attilio/vmcontention/contrib/bind9/lib/dns/db.c user/attilio/vmcontention/contrib/bind9/lib/dns/dispatch.c user/attilio/vmcontention/contrib/bind9/lib/dns/dlz.c user/attilio/vmcontention/contrib/bind9/lib/dns/dnssec.c user/attilio/vmcontention/contrib/bind9/lib/dns/dst_api.c user/attilio/vmcontention/contrib/bind9/lib/dns/dst_internal.h user/attilio/vmcontention/contrib/bind9/lib/dns/dst_openssl.h user/attilio/vmcontention/contrib/bind9/lib/dns/ecdb.c user/attilio/vmcontention/contrib/bind9/lib/dns/gen.c user/attilio/vmcontention/contrib/bind9/lib/dns/gssapictx.c user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/acache.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/db.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/message.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/name.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/ncache.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/nsec.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/nsec3.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/rdata.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/result.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/rpz.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/types.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/validator.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/view.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dns/zone.h user/attilio/vmcontention/contrib/bind9/lib/dns/include/dst/dst.h user/attilio/vmcontention/contrib/bind9/lib/dns/master.c user/attilio/vmcontention/contrib/bind9/lib/dns/message.c user/attilio/vmcontention/contrib/bind9/lib/dns/name.c user/attilio/vmcontention/contrib/bind9/lib/dns/ncache.c user/attilio/vmcontention/contrib/bind9/lib/dns/nsec.c user/attilio/vmcontention/contrib/bind9/lib/dns/nsec3.c user/attilio/vmcontention/contrib/bind9/lib/dns/openssl_link.c user/attilio/vmcontention/contrib/bind9/lib/dns/openssldsa_link.c user/attilio/vmcontention/contrib/bind9/lib/dns/opensslecdsa_link.c user/attilio/vmcontention/contrib/bind9/lib/dns/opensslgost_link.c user/attilio/vmcontention/contrib/bind9/lib/dns/opensslrsa_link.c user/attilio/vmcontention/contrib/bind9/lib/dns/peer.c user/attilio/vmcontention/contrib/bind9/lib/dns/rbt.c user/attilio/vmcontention/contrib/bind9/lib/dns/rbtdb.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/any_255/tsig_250.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/dlv_32769.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/mx_15.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/sshfp_44.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/generic/txt_16.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/in_1/naptr_35.c user/attilio/vmcontention/contrib/bind9/lib/dns/rdata/in_1/nsap_22.c user/attilio/vmcontention/contrib/bind9/lib/dns/request.c user/attilio/vmcontention/contrib/bind9/lib/dns/resolver.c user/attilio/vmcontention/contrib/bind9/lib/dns/result.c user/attilio/vmcontention/contrib/bind9/lib/dns/rootns.c user/attilio/vmcontention/contrib/bind9/lib/dns/rpz.c user/attilio/vmcontention/contrib/bind9/lib/dns/sdb.c user/attilio/vmcontention/contrib/bind9/lib/dns/sdlz.c user/attilio/vmcontention/contrib/bind9/lib/dns/spnego.c user/attilio/vmcontention/contrib/bind9/lib/dns/spnego_asn1.c user/attilio/vmcontention/contrib/bind9/lib/dns/ssu.c user/attilio/vmcontention/contrib/bind9/lib/dns/ssu_external.c user/attilio/vmcontention/contrib/bind9/lib/dns/tkey.c user/attilio/vmcontention/contrib/bind9/lib/dns/tsig.c user/attilio/vmcontention/contrib/bind9/lib/dns/validator.c user/attilio/vmcontention/contrib/bind9/lib/dns/view.c user/attilio/vmcontention/contrib/bind9/lib/dns/xfrin.c user/attilio/vmcontention/contrib/bind9/lib/dns/zone.c user/attilio/vmcontention/contrib/bind9/lib/export/dns/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/export/irs/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/export/isc/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/export/isc/include/isc/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/export/isc/nls/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/export/isc/nothreads/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/export/isc/pthreads/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/export/isc/unix/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/export/isccfg/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/export/samples/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/export/samples/nsprobe.c user/attilio/vmcontention/contrib/bind9/lib/export/samples/sample-async.c user/attilio/vmcontention/contrib/bind9/lib/export/samples/sample-gai.c user/attilio/vmcontention/contrib/bind9/lib/export/samples/sample-request.c user/attilio/vmcontention/contrib/bind9/lib/export/samples/sample-update.c user/attilio/vmcontention/contrib/bind9/lib/export/samples/sample.c user/attilio/vmcontention/contrib/bind9/lib/irs/api user/attilio/vmcontention/contrib/bind9/lib/irs/dnsconf.c user/attilio/vmcontention/contrib/bind9/lib/irs/getaddrinfo.c user/attilio/vmcontention/contrib/bind9/lib/irs/getnameinfo.c user/attilio/vmcontention/contrib/bind9/lib/irs/resconf.c user/attilio/vmcontention/contrib/bind9/lib/isc/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/isc/api user/attilio/vmcontention/contrib/bind9/lib/isc/buffer.c user/attilio/vmcontention/contrib/bind9/lib/isc/include/isc/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/isc/include/isc/buffer.h user/attilio/vmcontention/contrib/bind9/lib/isc/include/isc/file.h user/attilio/vmcontention/contrib/bind9/lib/isc/include/isc/list.h user/attilio/vmcontention/contrib/bind9/lib/isc/include/isc/mem.h user/attilio/vmcontention/contrib/bind9/lib/isc/include/isc/namespace.h user/attilio/vmcontention/contrib/bind9/lib/isc/include/isc/region.h user/attilio/vmcontention/contrib/bind9/lib/isc/include/isc/sockaddr.h user/attilio/vmcontention/contrib/bind9/lib/isc/include/isc/socket.h user/attilio/vmcontention/contrib/bind9/lib/isc/include/isc/task.h user/attilio/vmcontention/contrib/bind9/lib/isc/include/isc/timer.h user/attilio/vmcontention/contrib/bind9/lib/isc/inet_aton.c user/attilio/vmcontention/contrib/bind9/lib/isc/mem.c user/attilio/vmcontention/contrib/bind9/lib/isc/nothreads/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/isc/parseint.c user/attilio/vmcontention/contrib/bind9/lib/isc/pthreads/thread.c user/attilio/vmcontention/contrib/bind9/lib/isc/ratelimiter.c user/attilio/vmcontention/contrib/bind9/lib/isc/sockaddr.c user/attilio/vmcontention/contrib/bind9/lib/isc/sparc64/include/isc/atomic.h user/attilio/vmcontention/contrib/bind9/lib/isc/symtab.c user/attilio/vmcontention/contrib/bind9/lib/isc/task.c user/attilio/vmcontention/contrib/bind9/lib/isc/taskpool.c user/attilio/vmcontention/contrib/bind9/lib/isc/timer.c user/attilio/vmcontention/contrib/bind9/lib/isc/timer_api.c user/attilio/vmcontention/contrib/bind9/lib/isc/unix/entropy.c user/attilio/vmcontention/contrib/bind9/lib/isc/unix/file.c user/attilio/vmcontention/contrib/bind9/lib/isc/unix/include/isc/time.h user/attilio/vmcontention/contrib/bind9/lib/isc/unix/net.c user/attilio/vmcontention/contrib/bind9/lib/isc/unix/socket.c user/attilio/vmcontention/contrib/bind9/lib/isc/unix/time.c user/attilio/vmcontention/contrib/bind9/lib/isccc/api user/attilio/vmcontention/contrib/bind9/lib/isccc/cc.c user/attilio/vmcontention/contrib/bind9/lib/isccfg/Makefile.in user/attilio/vmcontention/contrib/bind9/lib/isccfg/aclconf.c user/attilio/vmcontention/contrib/bind9/lib/isccfg/api user/attilio/vmcontention/contrib/bind9/lib/isccfg/include/isccfg/cfg.h user/attilio/vmcontention/contrib/bind9/lib/isccfg/namedconf.c user/attilio/vmcontention/contrib/bind9/lib/isccfg/parser.c user/attilio/vmcontention/contrib/bind9/lib/lwres/api user/attilio/vmcontention/contrib/bind9/lib/lwres/context.c user/attilio/vmcontention/contrib/bind9/lib/lwres/getaddrinfo.c user/attilio/vmcontention/contrib/bind9/lib/lwres/getipnode.c user/attilio/vmcontention/contrib/bind9/lib/lwres/getnameinfo.c user/attilio/vmcontention/contrib/bind9/lib/lwres/getrrset.c user/attilio/vmcontention/contrib/bind9/lib/lwres/lwinetaton.c user/attilio/vmcontention/contrib/bind9/lib/lwres/print.c user/attilio/vmcontention/contrib/bind9/ltmain.sh user/attilio/vmcontention/contrib/bind9/make/rules.in user/attilio/vmcontention/contrib/bind9/version user/attilio/vmcontention/contrib/libcxxrt/unwind-itanium.h user/attilio/vmcontention/contrib/wpa/src/drivers/driver_wired.c user/attilio/vmcontention/lib/bind/config.h user/attilio/vmcontention/lib/bind/dns/code.h user/attilio/vmcontention/lib/bind/dns/dns/enumtype.h user/attilio/vmcontention/lib/bind/dns/dns/rdatastruct.h user/attilio/vmcontention/lib/bind/isc/Makefile user/attilio/vmcontention/sbin/fdisk_pc98/fdisk.c user/attilio/vmcontention/sbin/geom/class/eli/geli.8 user/attilio/vmcontention/share/man/man4/ciss.4 user/attilio/vmcontention/share/man/man4/usb_quirk.4 user/attilio/vmcontention/sys/amd64/amd64/minidump_machdep.c user/attilio/vmcontention/sys/amd64/amd64/mp_machdep.c user/attilio/vmcontention/sys/amd64/amd64/pmap.c user/attilio/vmcontention/sys/amd64/amd64/sys_machdep.c user/attilio/vmcontention/sys/amd64/amd64/vm_machdep.c user/attilio/vmcontention/sys/amd64/conf/GENERIC user/attilio/vmcontention/sys/amd64/include/pmap.h user/attilio/vmcontention/sys/arm/allwinner/common.c user/attilio/vmcontention/sys/arm/allwinner/files.a10 user/attilio/vmcontention/sys/arm/allwinner/timer.c user/attilio/vmcontention/sys/arm/arm/bus_space_generic.c user/attilio/vmcontention/sys/arm/arm/busdma_machdep-v6.c user/attilio/vmcontention/sys/arm/arm/busdma_machdep.c user/attilio/vmcontention/sys/arm/arm/exception.S user/attilio/vmcontention/sys/arm/arm/mp_machdep.c user/attilio/vmcontention/sys/arm/arm/mpcore_timer.c user/attilio/vmcontention/sys/arm/arm/pmap-v6.c user/attilio/vmcontention/sys/arm/arm/pmap.c user/attilio/vmcontention/sys/arm/arm/vm_machdep.c user/attilio/vmcontention/sys/arm/at91/at91.c user/attilio/vmcontention/sys/arm/include/asmacros.h user/attilio/vmcontention/sys/arm/include/frame.h user/attilio/vmcontention/sys/arm/mv/armadaxp/armadaxp_mp.c user/attilio/vmcontention/sys/arm/s3c2xx0/s3c2xx0_space.c user/attilio/vmcontention/sys/arm/ti/omap4/omap4_prcm_clks.c user/attilio/vmcontention/sys/arm/xscale/i80321/i80321_space.c user/attilio/vmcontention/sys/arm/xscale/i8134x/i81342_space.c user/attilio/vmcontention/sys/arm/xscale/ixp425/ixp425_pci_space.c user/attilio/vmcontention/sys/boot/fdt/dts/pandaboard.dts user/attilio/vmcontention/sys/boot/pc98/boot2/boot2.c user/attilio/vmcontention/sys/boot/pc98/libpc98/biosdisk.c user/attilio/vmcontention/sys/cam/cam.h user/attilio/vmcontention/sys/cam/cam_periph.c user/attilio/vmcontention/sys/cam/cam_queue.c user/attilio/vmcontention/sys/cam/cam_queue.h user/attilio/vmcontention/sys/cam/cam_xpt.c user/attilio/vmcontention/sys/cam/cam_xpt_internal.h user/attilio/vmcontention/sys/cam/cam_xpt_periph.h user/attilio/vmcontention/sys/cam/ctl/ctl.c user/attilio/vmcontention/sys/cam/ctl/ctl_frontend_internal.c user/attilio/vmcontention/sys/cam/scsi/scsi_da.c user/attilio/vmcontention/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c user/attilio/vmcontention/sys/cddl/compat/opensolaris/sys/kmem.h user/attilio/vmcontention/sys/cddl/compat/opensolaris/sys/mutex.h user/attilio/vmcontention/sys/cddl/compat/opensolaris/sys/rwlock.h user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_impl.h user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_impl.h user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_disk.c user/attilio/vmcontention/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c user/attilio/vmcontention/sys/cddl/dev/dtrace/dtrace_load.c user/attilio/vmcontention/sys/cddl/dev/dtrace/dtrace_unload.c user/attilio/vmcontention/sys/compat/linux/linux_misc.c user/attilio/vmcontention/sys/compat/ndis/subr_ntoskrnl.c user/attilio/vmcontention/sys/conf/kern.pre.mk user/attilio/vmcontention/sys/conf/newvers.sh user/attilio/vmcontention/sys/conf/options user/attilio/vmcontention/sys/dev/aac/aac_pci.c user/attilio/vmcontention/sys/dev/aac/aacvar.h user/attilio/vmcontention/sys/dev/bktr/bktr_core.c user/attilio/vmcontention/sys/dev/ciss/ciss.c user/attilio/vmcontention/sys/dev/drm/drm_scatter.c user/attilio/vmcontention/sys/dev/drm2/drm_scatter.c user/attilio/vmcontention/sys/dev/drm2/i915/intel_ringbuffer.c user/attilio/vmcontention/sys/dev/drm2/ttm/ttm_bo_util.c user/attilio/vmcontention/sys/dev/e1000/if_em.c user/attilio/vmcontention/sys/dev/e1000/if_igb.c user/attilio/vmcontention/sys/dev/filemon/filemon.c user/attilio/vmcontention/sys/dev/filemon/filemon_wrapper.c user/attilio/vmcontention/sys/dev/ixgbe/ixgbe.c user/attilio/vmcontention/sys/dev/ixgbe/ixv.c user/attilio/vmcontention/sys/dev/xen/blkback/blkback.c user/attilio/vmcontention/sys/dev/xen/netback/netback.c user/attilio/vmcontention/sys/dev/xen/xenpci/xenpci.c user/attilio/vmcontention/sys/fs/tmpfs/tmpfs.h user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_subr.c user/attilio/vmcontention/sys/geom/geom_pc98.c user/attilio/vmcontention/sys/geom/part/g_part_pc98.c user/attilio/vmcontention/sys/i386/conf/GENERIC user/attilio/vmcontention/sys/i386/i386/machdep.c user/attilio/vmcontention/sys/i386/i386/mp_machdep.c user/attilio/vmcontention/sys/i386/i386/pmap.c user/attilio/vmcontention/sys/i386/i386/sys_machdep.c user/attilio/vmcontention/sys/i386/i386/vm_machdep.c user/attilio/vmcontention/sys/i386/ibcs2/imgact_coff.c user/attilio/vmcontention/sys/i386/pci/pci_cfgreg.c user/attilio/vmcontention/sys/i386/xen/mp_machdep.c user/attilio/vmcontention/sys/i386/xen/pmap.c user/attilio/vmcontention/sys/ia64/conf/GENERIC user/attilio/vmcontention/sys/ia64/ia64/mp_machdep.c user/attilio/vmcontention/sys/kern/imgact_gzip.c user/attilio/vmcontention/sys/kern/init_main.c user/attilio/vmcontention/sys/kern/kern_exec.c user/attilio/vmcontention/sys/kern/kern_malloc.c user/attilio/vmcontention/sys/kern/kern_mbuf.c user/attilio/vmcontention/sys/kern/kern_poll.c user/attilio/vmcontention/sys/kern/kern_sharedpage.c user/attilio/vmcontention/sys/kern/subr_busdma_bufalloc.c user/attilio/vmcontention/sys/kern/subr_vmem.c user/attilio/vmcontention/sys/kern/vfs_bio.c user/attilio/vmcontention/sys/kern/vfs_lookup.c user/attilio/vmcontention/sys/mips/mips/mp_machdep.c user/attilio/vmcontention/sys/mips/mips/pmap.c user/attilio/vmcontention/sys/mips/mips/vm_machdep.c user/attilio/vmcontention/sys/mips/sibyte/sb_zbpci.c user/attilio/vmcontention/sys/modules/cyclic/Makefile user/attilio/vmcontention/sys/modules/dtrace/dtio/Makefile user/attilio/vmcontention/sys/modules/dtrace/dtmalloc/Makefile user/attilio/vmcontention/sys/modules/dtrace/dtnfscl/Makefile user/attilio/vmcontention/sys/modules/dtrace/dtnfsclient/Makefile user/attilio/vmcontention/sys/modules/dtrace/dtrace/Makefile user/attilio/vmcontention/sys/modules/dtrace/dtrace_test/Makefile user/attilio/vmcontention/sys/modules/dtrace/dtraceall/Makefile user/attilio/vmcontention/sys/modules/dtrace/fasttrap/Makefile user/attilio/vmcontention/sys/modules/dtrace/fbt/Makefile user/attilio/vmcontention/sys/modules/dtrace/lockstat/Makefile user/attilio/vmcontention/sys/modules/dtrace/profile/Makefile user/attilio/vmcontention/sys/modules/dtrace/prototype/Makefile user/attilio/vmcontention/sys/modules/dtrace/sdt/Makefile user/attilio/vmcontention/sys/modules/dtrace/systrace/Makefile user/attilio/vmcontention/sys/modules/dtrace/systrace_freebsd32/Makefile user/attilio/vmcontention/sys/modules/dtrace/systrace_linux32/Makefile user/attilio/vmcontention/sys/modules/opensolaris/Makefile user/attilio/vmcontention/sys/modules/zfs/Makefile user/attilio/vmcontention/sys/net/if_tun.c user/attilio/vmcontention/sys/netinet6/icmp6.c user/attilio/vmcontention/sys/netinet6/in6.c user/attilio/vmcontention/sys/netinet6/in6.h user/attilio/vmcontention/sys/netinet6/ip6_forward.c user/attilio/vmcontention/sys/netinet6/ip6_id.c user/attilio/vmcontention/sys/netinet6/ip6_mroute.c user/attilio/vmcontention/sys/netinet6/nd6.c user/attilio/vmcontention/sys/netinet6/nd6_rtr.c user/attilio/vmcontention/sys/ofed/include/linux/dma-mapping.h user/attilio/vmcontention/sys/ofed/include/linux/gfp.h user/attilio/vmcontention/sys/ofed/include/linux/linux_compat.c user/attilio/vmcontention/sys/ofed/include/linux/page.h user/attilio/vmcontention/sys/pc98/pc98/machdep.c user/attilio/vmcontention/sys/powerpc/aim/mmu_oea.c user/attilio/vmcontention/sys/powerpc/aim/mmu_oea64.c user/attilio/vmcontention/sys/powerpc/aim/vm_machdep.c user/attilio/vmcontention/sys/powerpc/booke/pmap.c user/attilio/vmcontention/sys/powerpc/booke/vm_machdep.c user/attilio/vmcontention/sys/powerpc/conf/GENERIC user/attilio/vmcontention/sys/powerpc/ofw/ofw_syscons.c user/attilio/vmcontention/sys/powerpc/powerpc/busdma_machdep.c user/attilio/vmcontention/sys/powerpc/powerpc/mp_machdep.c user/attilio/vmcontention/sys/sparc64/conf/GENERIC user/attilio/vmcontention/sys/sparc64/include/atomic.h user/attilio/vmcontention/sys/sparc64/sparc64/bus_machdep.c user/attilio/vmcontention/sys/sparc64/sparc64/genassym.c user/attilio/vmcontention/sys/sparc64/sparc64/mem.c user/attilio/vmcontention/sys/sparc64/sparc64/mp_machdep.c user/attilio/vmcontention/sys/sparc64/sparc64/pmap.c user/attilio/vmcontention/sys/sparc64/sparc64/vm_machdep.c user/attilio/vmcontention/sys/sys/diskpc98.h user/attilio/vmcontention/sys/sys/param.h user/attilio/vmcontention/sys/ufs/ffs/ffs_softdep.c user/attilio/vmcontention/sys/ufs/ufs/ufs_vnops.c user/attilio/vmcontention/sys/vm/memguard.c user/attilio/vmcontention/sys/vm/memguard.h user/attilio/vmcontention/sys/vm/pmap.h user/attilio/vmcontention/sys/vm/uma_core.c user/attilio/vmcontention/sys/vm/vm_extern.h user/attilio/vmcontention/sys/vm/vm_glue.c user/attilio/vmcontention/sys/vm/vm_init.c user/attilio/vmcontention/sys/vm/vm_kern.c user/attilio/vmcontention/sys/vm/vm_kern.h user/attilio/vmcontention/sys/vm/vm_map.c user/attilio/vmcontention/sys/vm/vm_map.h user/attilio/vmcontention/sys/vm/vm_object.c user/attilio/vmcontention/sys/vm/vm_page.c user/attilio/vmcontention/sys/vm/vm_page.h user/attilio/vmcontention/sys/vm/vm_pageout.c user/attilio/vmcontention/sys/vm/vm_phys.c user/attilio/vmcontention/sys/vm/vm_phys.h user/attilio/vmcontention/sys/vm/vm_zeroidle.c user/attilio/vmcontention/sys/x86/acpica/srat.c user/attilio/vmcontention/sys/x86/x86/busdma_machdep.c user/attilio/vmcontention/sys/xen/gnttab.c user/attilio/vmcontention/tools/build/mk/OptionalObsoleteFiles.inc user/attilio/vmcontention/tools/tools/bootparttest/bootparttest.c user/attilio/vmcontention/usr.bin/ldd/ldd.c user/attilio/vmcontention/usr.sbin/boot98cfg/boot98cfg.c user/attilio/vmcontention/usr.sbin/named/Makefile user/attilio/vmcontention/usr.sbin/ndp/ndp.c user/attilio/vmcontention/usr.sbin/rtadvctl/rtadvctl.c user/attilio/vmcontention/usr.sbin/rtadvd/config.c user/attilio/vmcontention/usr.sbin/rtadvd/rrenum.c user/attilio/vmcontention/usr.sbin/rtadvd/rtadvd.c user/attilio/vmcontention/usr.sbin/rtadvd/rtadvd.h user/attilio/vmcontention/usr.sbin/rtadvd/timer.c user/attilio/vmcontention/usr.sbin/rtadvd/timer.h user/attilio/vmcontention/usr.sbin/rtadvd/timer_subr.c user/attilio/vmcontention/usr.sbin/rtadvd/timer_subr.h user/attilio/vmcontention/usr.sbin/rtsold/dump.c user/attilio/vmcontention/usr.sbin/rtsold/rtsol.c user/attilio/vmcontention/usr.sbin/rtsold/rtsold.c user/attilio/vmcontention/usr.sbin/rtsold/rtsold.h Directory Properties: user/attilio/vmcontention/ (props changed) user/attilio/vmcontention/contrib/bind9/ (props changed) user/attilio/vmcontention/contrib/libcxxrt/ (props changed) user/attilio/vmcontention/contrib/wpa/ (props changed) user/attilio/vmcontention/sbin/ (props changed) user/attilio/vmcontention/share/man/man4/ (props changed) user/attilio/vmcontention/sys/ (props changed) user/attilio/vmcontention/sys/boot/ (props changed) user/attilio/vmcontention/sys/cddl/contrib/opensolaris/ (props changed) user/attilio/vmcontention/sys/conf/ (props changed) user/attilio/vmcontention/usr.sbin/rtadvctl/ (props changed) user/attilio/vmcontention/usr.sbin/rtadvd/ (props changed) user/attilio/vmcontention/usr.sbin/rtsold/ (props changed) Modified: user/attilio/vmcontention/UPDATING ============================================================================== --- user/attilio/vmcontention/UPDATING Wed Aug 7 17:07:42 2013 (r254066) +++ user/attilio/vmcontention/UPDATING Wed Aug 7 18:24:16 2013 (r254067) @@ -31,6 +31,24 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20130806: + INVARIANTS option now enables DEBUG for code with OpenSolaris and + Illumos origin, including ZFS. If you have INVARIANTS in your + kernel configuration, then there is no need to set DEBUG or ZFS_DEBUG + explicitly. + DEBUG used to enable witness(9) tracking of OpenSolaris (mostly ZFS) + locks if WITNESS option was set. Because that generated a lot of + witness(9) reports and all of them were believed to be false + positives, this is no longer done. New option OPENSOLARIS_WITNESS + can be used to achieve the previous behavior. + +20130806: + Timer values in IPv6 data structures now use time_uptime instead + of time_second. Although this is not a user-visible functional + change, userland utilities which directly use them---ndp(8), + rtadvd(8), and rtsold(8) in the base system---need to be updated + to r253970 or later. + 20130802: find -delete can now delete the pathnames given as arguments, instead of only files found below them or if the pathname did Modified: user/attilio/vmcontention/contrib/bind9/CHANGES ============================================================================== --- user/attilio/vmcontention/contrib/bind9/CHANGES Wed Aug 7 17:07:42 2013 (r254066) +++ user/attilio/vmcontention/contrib/bind9/CHANGES Wed Aug 7 18:24:16 2013 (r254067) @@ -1,20 +1,392 @@ - --- 9.8.4-P2 released --- + --- 9.8.5-P2 released --- -3516. [security] Removed the check for regex.h in configure in order - to disable regex syntax checking, as it exposes - BIND to a critical flaw in libregex on some - platforms. [RT #32688] +3621. [security] Incorrect bounds checking on private type 'keydata' + can lead to a remotely triggerable REQUIRE failure + (CVE-2013-4854). [RT #34238] - --- 9.8.4-P1 released --- + --- 9.8.5-P1 released --- -3407. [security] Named could die on specific queries with dns64 enabled. - [Addressed in change #3388 for BIND 9.8.5 and 9.9.3.] +3584. [security] Caching data from an incompletely signed zone could + trigger an assertion failure in resolver.c [RT #33690] - --- 9.8.4 released --- + --- 9.8.5 released --- + +3568. [cleanup] Add a product description line to the version file, + to be reported by named -v/-V. [RT #33366] + +3567. [bug] Silence clang static analyzer warnings. [RT #33365] + +3563. [contrib] zone2sqlite failed with some table names. [RT #33375] + +3561. [bug] dig: issue a warning if an EDNS query returns FORMERR + or NOTIMP. Adjust usage message. [RT #33363] + + --- 9.8.5rc1 released --- + +3560. [bug] isc-config.sh did not honor includedir and libdir + when set via configure. [RT #33345] + +3559. [func] Check that both forms of Sender Policy Framework + records exist or do not exist. [RT #33355] + +3558. [bug] IXFR of a DLZ stored zone was broken. [RT #33331] + +3556. [maint] Added AAAA for D.ROOT-SERVERS.NET. + +3555. [bug] Address theoretical race conditions in acache.c + (change #3553 was incomplete). [RT #33252] + +3553. [bug] Address suspected double free in acache. [RT #33252] + +3552. [bug] Wrong getopt option string for 'nsupdate -r'. + [RT #33280] + +3549. [doc] Documentation for "request-nsid" was missing. + [RT #33153] + +3548. [bug] The NSID request code in resolver.c was broken + resulting in invalid EDNS options being sent. + [RT #33153] + +3547. [bug] Some malformed unknown rdata records were not properly + detected and rejected. [RT #33129] + +3056. [func] Added support for URI resource record. [RT #23386] + + --- 9.8.5rc1 released --- + +3546. [func] Add EUI48 and EUI64 types. [RT #33082] + +3544. [contrib] check5011.pl: Script to report the status of + managed keys as recorded in managed-keys.bind. + Contributed by Tony Finch + +3543. [bug] Update socket structure before attaching to socket + manager after accept. [RT #33084] + +3542. [bug] masterformat system test was broken. [RT #33086] + +3541. [bug] Parts of libdns were not properly initialized when + built in libexport mode. [RT #33028] + +3540. [test] libt_api: t_info and t_assert were not thread safe. + +3539. [port] win32: timestamp format didn't match other platforms. + +3538. [test] Running "make test" now requires loopback interfaces + to be set up. [RT #32452] + +3537. [tuning] Slave zones, when updated, now send NOTIFY messages + to peers before being dumped to disk rather than + after. [RT #27242] + +3535. [bug] Minor win32 cleanups. [RT #32962] + +3534. [bug] Extra text after an embedded NULL was ignored when + parsing zone files. [RT #32699] + +3533. [contrib] query-loc-0.4.0: memory leaks. [RT #32960] + +3532. [contrib] zkt: fixed buffer overrun, resource leaks. [RT #32960] + +3531. [bug] win32: A uninitialized value could be returned on out + of memory. [RT #32960] + +3530. [contrib] Better RTT tracking in queryperf. [RT #30128] + +3526. [cleanup] Set up dependencies for unit tests correctly during + build. [RT #32803] + +3521. [bug] Address memory leak in opensslecdsa_link.c. [RT #32249] + +3520. [bug] 'mctx' was not being referenced counted in some places + where it should have been. [RT #32794] + + --- 9.8.5b2 released --- + +3517. [bug] Reorder destruction to avoid shutdown race. [RT #32777] + +3515. [port] '%T' is not portable in strftime(). [RT #32763] + +3514. [bug] The ranges for valid key sizes in ddns-confgen and + rndc-confgen were too constrained. Keys up to 512 + bits are now allowed for most algorithms, and up + to 1024 bits for hmac-sha384 and hmac-sha512. + [RT #32753] + +3509. [cleanup] Added a product line to version file to allow for + easy naming of different products (BIND + vs BIND ESV, for example). [RT #32755] + +3508. [contrib] queryperf was incorrectly rejecting the -T option. + [RT #32338] + +3503. [doc] Clarify size_spec syntax. [RT #32449] + +3500. [security] Support NAPTR regular expression validation on + all platforms without using libregex, which + can be vulnerable to memory exhaustion attack + (CVE-2013-2266). [RT #32688] + +3499. [doc] Corrected ARM documentation of built-in zones. + [RT #32694] + +3498. [bug] zone statistics for zones which matched a potential + empty zone could have their zone-statistics setting + overridden. + +3496. [func] Improvements to RPZ performance. The "response-policy" + syntax now includes a "min-ns-dots" clause, with + default 1, to exclude top-level domains from + NSIP and NSDNAME checking. --enable-rpz-nsip and + --enable-rpz-nsdname are now the default. [RT #32251] + +3489. [bug] --enable-developer now turns on ISC_LIST_CHECKINIT. + When cloning a rdataset do not copy the link contents. + [RT #32651] + +3488. [bug] Use after free error with DH generated keys. [RT #32649] + +3487. [bug] Change 3444 was not complete. There was a additional + place where the NOQNAME proof needed to be saved. + [RT #32629] + +3486. [bug] named could crash when using TKEY-negotiated keys + that had been deleted and then recreated. [RT #32506] + +3485. [cleanup] Only compile openssl_gostlink.c if we support GOST. + +3481. [cleanup] Removed use of const const in atf. + +3479. [bug] Address potential memory leaks in gssapi support + code. [RT #32405] + +3478. [port] Fix a build failure in strict C99 environments + [RT #32475] + +3474. [bug] nsupdate could assert when the local and remote + address families didn't match. [RT #22897] + +3470. [bug] Slave zones could fail to dump when successfully + refreshing after an initial failure. [RT #31276] + + --- 9.8.5b1 released --- + +3468. [security] RPZ rules to generate A records (but not AAAA records) + could trigger an assertion failure when used in + conjunction with DNS64 (CVE-2012-5689). [RT #32141] + +3467. [bug] Added checks in dnssec-keygen and dnssec-settime + to check for delete date < inactive date. [RT #31719] + +3465. [bug] Handle isolated reserved ports. [RT #31778] + +3464. [maint] Updates to PKCS#11 openssl patches, supporting + versions 0.9.8x, 1.0.0j, 1.0.1c [RT #29749] + +3463. [doc] Clarify managed-keys syntax in ARM. [RT #32232] + +3462. [doc] Clarify server selection behavior of dig when using + -4 or -6 options. [RT #32181] + +3461. [bug] Negative responses could incorrectly have AD=1 + set. [RT #32237] + +3458. [bug] Return FORMERR when presented with a overly long + domain named in a request. [RT #29682] + +3457. [protocol] Add ILNP records (NID, LP, L32, L64). [RT #31836] + +3456. [port] g++47: ATF failed to compile. [RT #32012] + +3455. [contrib] queryperf: fix getopt option list. [RT #32338] + +3454. [port] sparc64: improve atomic support. [RT #25182] + +3452. [bug] Accept duplicate singleton records. [RT #32329] + +3451. [port] Increase per thread stack size from 64K to 1M. + [RT #32230] + +3450. [bug] Stop logfileconfig system test spam system logs. + [RT #32315] + +3449. [bug] gen.c: use the pre-processor to construct format + strings so that compiler can perform sanity checks; + check the snprintf results. [RT #17576] + +3448. [bug] The allow-query-on ACL was not processed correctly. + [RT #29486] + +3447. [port] Add support for libxml2-2.9.x [RT #32231] + +3446. [port] win32: Add source ID (see change #3400) to build. + [RT #31683] + +3445. [bug] Warn about zone files with blank owner names + immediately after $ORIGIN directives. [RT #31848] + +3444. [bug] The NOQNAME proof was not being returned from cached + insecure responses. [RT #21409] + +3443. [bug] ddns-confgen: Some TSIG algorithms were incorrectly + rejected when generating keys. [RT #31927] + +3442. [port] Net::DNS 0.69 introduced a non backwards compatible + change. [RT #32216] + +3441. [maint] D.ROOT-SERVERS.NET is now 199.7.91.13. + +3440. [bug] Reorder get_key_struct to not trigger a assertion when + cleaning up due to out of memory error. [RT #32131] + +3439. [bug] contrib/dlz error checking fixes. [RT #32102] + +3438. [bug] Don't accept unknown data escape in quotes. [RT #32031] + +3437. [bug] isc_buffer_init -> isc_buffer_constinit to initialize + buffers with constant data. [RT #32064] + +3436. [bug] Check malloc/calloc return values. [RT #32088] + +3435. [bug] Cross compilation support in configure was broken. + [RT #32078] + +3431. [bug] ddns-confgen: Some valid key algorithms were + not accepted. [RT #31927] + +3430. [bug] win32: isc_time_formatISO8601 was missing the + 'T' between the date and time. [RT #32044] + +3429. [bug] dns_zone_getserial2 could a return success without + returning a valid serial. [RT #32007] + +3428. [cleanup] dig: Add timezone to date output. [RT #2269] + +3427. [bug] dig +trace incorrectly displayed name server + addresses instead of names. [RT #31641] + +3425. [bug] "acacheentry" reference counting was broken resulting + in use after free. [RT #31908] + +3422. [bug] Added a clear error message for when the SOA does not + match the referral. [RT #31281] + +3421. [bug] Named loops when re-signing if all keys are offline. + [RT #31916] + +3420. [bug] Address VPATH compilation issues. [RT #31879] + +3419. [bug] Memory leak on validation cancel. [RT #31869] + +3415. [bug] named could die with a REQUIRE failure if a validation + was canceled. [RT #31804] + +3412. [bug] Copy timeval structure from control message data. + [RT #31548] + +3411. [tuning] Use IPV6_USE_MIN_MTU or equivalent with TCP in addition + to UDP. [RT #31690] + +3410. [bug] Addressed Coverity warnings. [RT #31626] + +3409. [contrib] contrib/dane/mkdane.sh: Tool to generate TLSA RR's + from X.509 certificates, for use with DANE + (DNS-based Authentication of Named Entities). + [RT #30513] + +3406. [bug] mem.c: Fix compilation errors when building with + ISC_MEM_TRACKLINES or ISC_MEMPOOL_NAMES disabled. + Also, ISC_MEM_DEBUG is no longer optional. [RT #31559] + +3405. [bug] Handle time going backwards in acache. [RT #31253] + +3404. [bug] dnssec-signzone: When re-signing a zone, remove + RRSIG and NSEC records from nodes that used to be + in-zone but are now below a zone cut. [RT #31556] + +3403. [bug] Silence noisy OpenSSL logging. [RT #31497] + +3402. [test] The IPv6 interface numbers used for system + tests were incorrect on some platforms. [RT #25085] + +3401. [bug] Addressed Coverity warnings. [RT #31484] + +3400. [cleanup] "named -V" can now report a source ID string, defined + in the "srcid" file in the build tree and normally set + to the most recent git hash. [RT #31494] + +3397. [bug] dig crashed when using +nssearch with +tcp. [RT #25298] + +3396. [bug] OPT records were incorrectly removed from signed, + truncated responses. [RT #31439] + +3395. [protocol] Add RFC 6598 reverse zones to built in empty zones + list, 64.100.IN-ADDR.ARPA ... 127.100.IN-ADDR.ARPA. + [RT #31336] + +3394. [bug] Adjust 'successfully validated after lower casing + signer' log level and category. [RT #31414] + +3393. [bug] 'host -C' could core dump if REFUSED was received. + [RT #31381] + +3391. [bug] A DNSKEY lookup that encountered a CNAME failed. + [RT #31262] + +3390. [bug] Silence clang compiler warnings. [RT #30417] + +3389. [bug] Always return NOERROR (not 0) in TSIG. [RT #31275] + +3388. [bug] Fixed several Coverity warnings. + Note: This change includes a fix for a bug that + was subsequently determined to be an exploitable + security vulnerability, CVE-2012-5688: named could + die on specific queries with dns64 enabled. + [RT #30996] + +3386. [bug] Address locking violation when generating new NSEC / + NSEC3 chains. [RT #31224] + +3384. [bug] Improved logging of crypto errors. [RT #30963] 3383. [security] A certain combination of records in the RBT could - cause named to hang while populating the additional - section of a response. [RT #31090] + cause named to hang while populating the additional + section of a response. [RT #31090] + +3382. [bug] SOA query from slave used use-v6-udp-ports range, + if set, regardless of the address family in use. + [RT #24173] + +3381. [contrib] Update queryperf to support more RR types. + [RT #30762] + +3380. [bug] named could die if a nonexistent master list was + referenced in a also-notify. [RT #31004] + +3379. [bug] isc_interval_zero and isc_time_epoch should be + "const (type)* const". [RT #31069] + +3378. [bug] Handle missing 'managed-keys-directory' better. + [RT #30625] + +3376. [bug] Lack of EDNS support was being recorded without a + successful response. [RT #30811] + +3375. [func] Check that 'rndc dumpdb' works on a empty cache. + [RT #30808] + +3374. [bug] isc_parse_uint32 failed to return a range error on + systems with 64 bit longs. [RT #30232] + +3372. [bug] Silence spurious "deleted from unreachable cache" + messages. [RT #30501] + +3371. [bug] AD=1 should behave like DO=1 when deciding whether to + add NS RRsets to the additional section or not. + [RT #30479] + + --- 9.8.4 released --- 3373. [bug] win32: open raw files in binary mode. [RT #30944] @@ -135,11 +507,11 @@ --- 9.8.3 released --- 3318. [tuning] Reduce the amount of work performed while holding a - bucket lock when finshed with a fetch context. + bucket lock when finished with a fetch context. [RT #29239] -3314. [bug] The masters list could be updated while refesh_callback - and stub_callback were using it. [RT #26732] +3314. [bug] The masters list could be updated while stub_callback + or refresh_callback were using it. [RT #26732] 3313. [protocol] Add TLSA record type. [RT #28989] @@ -151,7 +523,7 @@ 3310. [test] Increase table size for mutex profiling. [RT #28809] -3309. [bug] resolver.c:fctx_finddone() was not threadsafe. +3309. [bug] resolver.c:fctx_finddone() was not thread safe. [RT #27995] 3307. [bug] Add missing ISC_LANG_BEGINDECLS and ISC_LANG_ENDDECLS. @@ -328,7 +700,7 @@ 3234. [bug] 'make depend' produced invalid makefiles. [RT #26830] -3231. [bug] named could fail to send a uncompressable zone. +3231. [bug] named could fail to send a incompressible zone. [RT #26796] 3230. [bug] 'dig axfr' failed to properly handle a multi-message @@ -345,7 +717,7 @@ 3226. [bug] Address minor resource leakages. [RT #26624] -3221. [bug] Fixed a potential coredump on shutdown due to +3221. [bug] Fixed a potential core dump on shutdown due to referencing fetch context after it's been freed. [RT #26720] @@ -369,7 +741,7 @@ 3209. [func] Add "dnssec-lookaside 'no'". [RT #24858] -3208. [bug] 'dig -y' handle unknown tsig alorithm better. +3208. [bug] 'dig -y' handle unknown tsig algorithm better. [RT #25522] 3207. [contrib] Fixed build error in Berkeley DB DLZ module. [RT #26444] @@ -672,7 +1044,7 @@ 3077. [bug] zone.c:zone_refreshkeys() incorrectly called dns_zone_attach(), use zone->irefs instead. [RT #23303] -3075. [bug] dns_dnssec_findzonekeys{2} used a inconsistant +3075. [bug] dns_dnssec_findzonekeys{2} used a inconsistent timestamp when determining which keys are active. [RT #23642] @@ -686,7 +1058,7 @@ 3072. [bug] dns_dns64_aaaaok() potential NULL pointer dereference. [RT #20256] -3071. [bug] has_nsec could be used unintialised in +3071. [bug] has_nsec could be used uninitialized in update.c:next_active. [RT #20256] 3070. [bug] dnssec-signzone potential NULL pointer dereference. @@ -732,7 +1104,7 @@ 3052. [test] Fixed last autosign test report. [RT #23256] -3051. [bug] NS records obsure DNAME records at the bottom of the +3051. [bug] NS records obscure DNAME records at the bottom of the zone if both are present. [RT #23035] 3050. [bug] The autosign system test was timing dependent. @@ -742,7 +1114,7 @@ 3049. [bug] Save and restore the gid when creating creating named.pid at startup. [RT #23290] -3048. [bug] Fully separate view key mangement. [RT #23419] +3048. [bug] Fully separate view key management. [RT #23419] 3047. [bug] DNSKEY NODATA responses not cached fixed in validator.c. Tests added to dnssec system test. @@ -1079,7 +1451,7 @@ no data response. [RT #21744] 2952. [port] win32: named-checkzone and named-checkconf failed - to initialise winsock. [RT #21932] + to initialize winsock. [RT #21932] 2951. [bug] named failed to generate a correct signed response in a optout, delegation only zone with no secure @@ -1125,7 +1497,7 @@ in use. [RT# 21868] 2938. [bug] When generating signed responses, from a signed zone - that uses NSEC3, named would use a uninitialised + that uses NSEC3, named would use a uninitialized pointer if it needed to skip a NSEC3 record because it didn't match the selected NSEC3PARAM record for zone. [RT# 21868] @@ -1179,7 +1551,7 @@ revisit the issue and complete the fix later. [RT #21710] -2930. [experimental] New "rndc addzone" and "rndc delzone" commads +2930. [experimental] New "rndc addzone" and "rndc delzone" commands allow dynamic addition and deletion of zones. To enable this feature, specify a "new-zone-file" option at the view or options level in named.conf. @@ -1355,7 +1727,7 @@ successfully responds to the query using plain DNS. [RT #20930] -2873. [bug] Cancelling a dynamic update via the dns/client module +2873. [bug] Canceling a dynamic update via the dns/client module could trigger an assertion failure. [RT #21133] 2872. [bug] Modify dns/client.c:dns_client_createx() to only @@ -1397,7 +1769,7 @@ 2860. [bug] named-checkconf's usage was out of date. [RT #21039] -2859. [bug] When cancelling validation it was possible to leak +2859. [bug] When canceling validation it was possible to leak memory. [RT #20800] 2858. [bug] RTT estimates were not being adjusted on ICMP errors. @@ -1950,7 +2322,7 @@ 2695. [func] DHCP/DDNS - update fdwatch code for use by DHCP. Modify the api to isc_sockfdwatch_t (the - callback functon for isc_socket_fdwatchcreate) + callback function for isc_socket_fdwatchcreate) to include information about the direction (read or write) and add isc_socket_fdwatchpoke. [RT #20253] @@ -2015,7 +2387,7 @@ sets the time when a key is no longer used for signing but is still published. - The "unpublished" date (-U) is deprecated in - favour of "deleted" (-D). + favor of "deleted" (-D). [RT #20247] 2676. [bug] --with-export-installdir should have been @@ -2461,7 +2833,7 @@ 2553. [bug] Reference leak on DNSSEC validation errors. [RT #19291] -2552. [bug] zero-no-soa-ttl-cache was not being honoured. +2552. [bug] zero-no-soa-ttl-cache was not being honored. [RT #19340] 2551. [bug] Potential Reference leak on return. [RT #19341] @@ -2514,7 +2886,7 @@ 2534. [func] Check NAPTR records regular expressions and replacement strings to ensure they are syntactically - valid and consistant. [RT #18168] + valid and consistent. [RT #18168] 2533. [doc] ARM: document @ (at-sign). [RT #17144] Modified: user/attilio/vmcontention/contrib/bind9/COPYRIGHT ============================================================================== --- user/attilio/vmcontention/contrib/bind9/COPYRIGHT Wed Aug 7 17:07:42 2013 (r254066) +++ user/attilio/vmcontention/contrib/bind9/COPYRIGHT Wed Aug 7 18:24:16 2013 (r254067) @@ -1,4 +1,4 @@ -Copyright (C) 2004-2012 Internet Systems Consortium, Inc. ("ISC") +Copyright (C) 2004-2013 Internet Systems Consortium, Inc. ("ISC") Copyright (C) 1996-2003 Internet Software Consortium. Permission to use, copy, modify, and/or distribute this software for any Modified: user/attilio/vmcontention/contrib/bind9/FAQ ============================================================================== --- user/attilio/vmcontention/contrib/bind9/FAQ Wed Aug 7 17:07:42 2013 (r254066) +++ user/attilio/vmcontention/contrib/bind9/FAQ Wed Aug 7 18:24:16 2013 (r254067) @@ -1,6 +1,6 @@ Frequently Asked Questions about BIND 9 -Copyright © 2004-2010 Internet Systems Consortium, Inc. ("ISC") +Copyright © 2004-2010, 2013 Internet Systems Consortium, Inc. ("ISC") Copyright © 2000-2003 Internet Software Consortium. @@ -869,7 +869,7 @@ A: If you run Tiger(Mac OS 10.4) or late Copy the key statement from /etc/rndc.conf into /etc/rndc.key, e.g.: key "rndc-key" { - algorithm hmac-md5; + algorithm hmac-sha256; secret "uvceheVuqf17ZwIcTydddw=="; }; Modified: user/attilio/vmcontention/contrib/bind9/FAQ.xml ============================================================================== --- user/attilio/vmcontention/contrib/bind9/FAQ.xml Wed Aug 7 17:07:42 2013 (r254066) +++ user/attilio/vmcontention/contrib/bind9/FAQ.xml Wed Aug 7 18:24:16 2013 (r254067) @@ -1,7 +1,7 @@