Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 11 Oct 2015 08:21:49 +0000 (UTC)
From:      Garrett Cooper <ngie@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r289133 - in user/ngie/more-tests2: . contrib/dma contrib/dma/debian lib/libarchive/tests lib/libc/sys libexec/dma libexec/dma/dmagent sbin/geom/class/nop sbin/mdconfig share/man/man4 s...
Message-ID:  <201510110821.t9B8Lngn043446@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ngie
Date: Sun Oct 11 08:21:49 2015
New Revision: 289133
URL: https://svnweb.freebsd.org/changeset/base/289133

Log:
  MFhead @ r289132

Deleted:
  user/ngie/more-tests2/contrib/dma/BSDmakefile
  user/ngie/more-tests2/contrib/dma/debian/
  user/ngie/more-tests2/lib/libarchive/tests/
  user/ngie/more-tests2/usr.bin/cpio/tests/
  user/ngie/more-tests2/usr.bin/tar/tests/
Modified:
  user/ngie/more-tests2/Makefile.inc1
  user/ngie/more-tests2/contrib/dma/LICENSE
  user/ngie/more-tests2/contrib/dma/README.markdown
  user/ngie/more-tests2/contrib/dma/TODO
  user/ngie/more-tests2/contrib/dma/VERSION
  user/ngie/more-tests2/contrib/dma/aliases_parse.y
  user/ngie/more-tests2/contrib/dma/aliases_scan.l
  user/ngie/more-tests2/contrib/dma/conf.c
  user/ngie/more-tests2/contrib/dma/dma-mbox-create.c
  user/ngie/more-tests2/contrib/dma/dma.8
  user/ngie/more-tests2/contrib/dma/dma.c
  user/ngie/more-tests2/contrib/dma/dma.h
  user/ngie/more-tests2/contrib/dma/dns.c
  user/ngie/more-tests2/contrib/dma/get-version.sh
  user/ngie/more-tests2/contrib/dma/local.c
  user/ngie/more-tests2/contrib/dma/mail.c
  user/ngie/more-tests2/contrib/dma/net.c
  user/ngie/more-tests2/contrib/dma/spool.c
  user/ngie/more-tests2/contrib/dma/util.c
  user/ngie/more-tests2/lib/libc/sys/shmctl.2
  user/ngie/more-tests2/libexec/dma/Makefile.inc
  user/ngie/more-tests2/libexec/dma/dmagent/Makefile
  user/ngie/more-tests2/sbin/geom/class/nop/gnop.8
  user/ngie/more-tests2/sbin/mdconfig/mdconfig.8
  user/ngie/more-tests2/sbin/mdconfig/mdconfig.c
  user/ngie/more-tests2/share/man/man4/vtnet.4
  user/ngie/more-tests2/share/mk/Makefile
  user/ngie/more-tests2/share/mk/bsd.confs.mk
  user/ngie/more-tests2/share/mk/bsd.own.mk
  user/ngie/more-tests2/sys/dev/cxgbe/iw_cxgbe/cm.c
  user/ngie/more-tests2/sys/dev/drm2/i915/i915_gem.c
  user/ngie/more-tests2/sys/dev/iicbus/icee.c
  user/ngie/more-tests2/sys/dev/iicbus/iiconf.h
  user/ngie/more-tests2/sys/dev/wpi/if_wpi.c
  user/ngie/more-tests2/sys/dev/wpi/if_wpireg.h
  user/ngie/more-tests2/sys/dev/wpi/if_wpivar.h
  user/ngie/more-tests2/sys/geom/nop/g_nop.c
  user/ngie/more-tests2/sys/geom/nop/g_nop.h
  user/ngie/more-tests2/sys/kern/kern_module.c
  user/ngie/more-tests2/sys/kern/sysv_shm.c
  user/ngie/more-tests2/sys/mips/conf/AP135.hints
  user/ngie/more-tests2/sys/mips/conf/TP-MR3020
  user/ngie/more-tests2/sys/mips/conf/TP-MR3020.hints
  user/ngie/more-tests2/usr.sbin/ppp/Makefile
Directory Properties:
  user/ngie/more-tests2/   (props changed)
  user/ngie/more-tests2/contrib/dma/   (props changed)
  user/ngie/more-tests2/lib/libc/   (props changed)
  user/ngie/more-tests2/sbin/   (props changed)
  user/ngie/more-tests2/share/   (props changed)
  user/ngie/more-tests2/share/man/man4/   (props changed)
  user/ngie/more-tests2/sys/   (props changed)

Modified: user/ngie/more-tests2/Makefile.inc1
==============================================================================
--- user/ngie/more-tests2/Makefile.inc1	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/Makefile.inc1	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1003,7 +1003,9 @@ distrib-dirs: .MAKE
 distribution: .MAKE
 	cd ${.CURDIR}/etc; ${CROSSENV} PATH=${TMPPATH} ${MAKE} \
 	    ${IMAKE_INSTALL} ${IMAKE_MTREE} METALOG=${METALOG} ${.TARGET}
-	${_+_}cd ${.CURDIR}; ${MAKE} -f Makefile.inc1 installconfig
+	${_+_}cd ${.CURDIR}; ${CROSSENV} PATH=${TMPPATH} \
+		${MAKE} -f Makefile.inc1 ${IMAKE_INSTALL} \
+		METALOG=${METALOG} installconfig
 
 #
 # buildkernel and installkernel

Modified: user/ngie/more-tests2/contrib/dma/LICENSE
==============================================================================
--- user/ngie/more-tests2/contrib/dma/LICENSE	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/LICENSE	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,5 +1,5 @@
+Copyright (c) 2008-2014, Simon Schubert <2@0x2c.org>.
 Copyright (c) 2008 The DragonFly Project.
-Copyright (c) 2008-2011, Simon Schubert <2@0x2c.org>.
 All rights reserved.
 
 This code is derived from software contributed to The DragonFly Project
@@ -37,7 +37,7 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADV
 SUCH DAMAGE.
 
 
-Copyright (c) 1995-2001 Kungliga Tekniska Högskolan
+Copyright (c) 1995-2001 Kungliga Tekniska Högskolan
 (Royal Institute of Technology, Stockholm, Sweden).
 All rights reserved.
 

Modified: user/ngie/more-tests2/contrib/dma/README.markdown
==============================================================================
--- user/ngie/more-tests2/contrib/dma/README.markdown	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/README.markdown	Sun Oct 11 08:21:49 2015	(r289133)
@@ -15,8 +15,13 @@ incoming connections.
 Building
 --------
 
+In Linux:
+
 	make
 
+In BSD:
+
+	cd bsd && make
 
 Installation
 ------------

Modified: user/ngie/more-tests2/contrib/dma/TODO
==============================================================================
--- user/ngie/more-tests2/contrib/dma/TODO	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/TODO	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,5 +1,4 @@
 - unquote/handle quoted local recipients
-- use proper sysexit codes
 - handle/use ESMTP extensions
 - .forward support
 - suggest way to run a queue flush on boot

Modified: user/ngie/more-tests2/contrib/dma/VERSION
==============================================================================
--- user/ngie/more-tests2/contrib/dma/VERSION	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/VERSION	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1 +1 @@
-v0.9
+v0.10

Modified: user/ngie/more-tests2/contrib/dma/aliases_parse.y
==============================================================================
--- user/ngie/more-tests2/contrib/dma/aliases_parse.y	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/aliases_parse.y	Sun Oct 11 08:21:49 2015	(r289133)
@@ -7,8 +7,6 @@
 
 extern int yylineno;
 static void yyerror(const char *);
-int yywrap(void);
-int yylex(void);
 
 static void
 yyerror(const char *msg)

Modified: user/ngie/more-tests2/contrib/dma/aliases_scan.l
==============================================================================
--- user/ngie/more-tests2/contrib/dma/aliases_scan.l	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/aliases_scan.l	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,11 +1,11 @@
 %{
 
 #include <string.h>
+#include "dma.h"
 #include "aliases_parse.h"
 
 #define YY_NO_INPUT
 
-int yylex(void);
 %}
 
 %option yylineno

Modified: user/ngie/more-tests2/contrib/dma/conf.c
==============================================================================
--- user/ngie/more-tests2/contrib/dma/conf.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/conf.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -64,7 +64,7 @@ trim_line(char *line)
 	if (line[0] == '.') {
 		if ((linelen + 2) > 1000) {
 			syslog(LOG_CRIT, "Cannot escape leading dot.  Buffer overflow");
-			exit(1);
+			exit(EX_DATAERR);
 		}
 		memmove((line + 1), line, (linelen + 1));
 		line[0] = '.';
@@ -101,7 +101,7 @@ parse_authfile(const char *path)
 
 	a = fopen(path, "r");
 	if (a == NULL) {
-		errlog(1, "can not open auth file `%s'", path);
+		errlog(EX_NOINPUT, "can not open auth file `%s'", path);
 		/* NOTREACHED */
 	}
 
@@ -121,7 +121,7 @@ parse_authfile(const char *path)
 
 		au = calloc(1, sizeof(*au));
 		if (au == NULL)
-			errlog(1, "calloc failed");
+			errlog(EX_OSERR, NULL);
 
 		data = strdup(line);
 		au->login = strsep(&data, "|");
@@ -131,8 +131,7 @@ parse_authfile(const char *path)
 		if (au->login == NULL ||
 		    au->host == NULL ||
 		    au->password == NULL) {
-			errlogx(1, "syntax error in authfile %s:%d",
-				path, lineno);
+			errlogx(EX_CONFIG, "syntax error in authfile %s:%d", path, lineno);
 			/* NOTREACHED */
 		}
 
@@ -160,7 +159,7 @@ parse_conf(const char *config_path)
 		/* Don't treat a non-existing config file as error */
 		if (errno == ENOENT)
 			return;
-		errlog(1, "can not open config `%s'", config_path);
+		errlog(EX_NOINPUT, "can not open config `%s'", config_path);
 		/* NOTREACHED */
 	}
 
@@ -211,7 +210,7 @@ parse_conf(const char *config_path)
 			} else {
 				host = data;
 			}
- 			if (host && *host == 0)
+			if (host && *host == 0)
 				host = NULL;
                         if (user && *user == 0)
                                 user = NULL;
@@ -232,13 +231,13 @@ parse_conf(const char *config_path)
 		else if (strcmp(word, "NULLCLIENT") == 0 && data == NULL)
 			config.features |= NULLCLIENT;
 		else {
-			errlogx(1, "syntax error in %s:%d", config_path, lineno);
+			errlogx(EX_CONFIG, "syntax error in %s:%d", config_path, lineno);
 			/* NOTREACHED */
 		}
 	}
 
 	if ((config.features & NULLCLIENT) && config.smarthost == NULL) {
-		errlogx(1, "%s: NULLCLIENT requires SMARTHOST", config_path);
+		errlogx(EX_CONFIG, "%s: NULLCLIENT requires SMARTHOST", config_path);
 		/* NOTREACHED */
 	}
 

Modified: user/ngie/more-tests2/contrib/dma/dma-mbox-create.c
==============================================================================
--- user/ngie/more-tests2/contrib/dma/dma-mbox-create.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/dma-mbox-create.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,9 +1,9 @@
 /*
- * Copyright (c) 2010 Simon Schubert <2@0x2c.org>
+ * Copyright (c) 2010-2014, Simon Schubert <2@0x2c.org>.
  * Copyright (c) 2008 The DragonFly Project.  All rights reserved.
  *
  * This code is derived from software contributed to The DragonFly Project
- * by Simon 'corecode' Schubert <corecode@fs.ei.tum.de>.
+ * by Simon Schubert <2@0x2c.org>.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -54,7 +54,7 @@
 
 
 static void
-logfail(const char *fmt, ...)
+logfail(int exitcode, const char *fmt, ...)
 {
 	int oerrno = errno;
 	va_list ap;
@@ -73,7 +73,7 @@ logfail(const char *fmt, ...)
 	else
 		syslog(LOG_ERR, errno ? "%m" : "unknown error");
 
-	exit(1);
+	exit(exitcode);
 }
 
 /*
@@ -98,21 +98,21 @@ main(int argc, char **argv)
 	errno = 0;
 	gr = getgrnam(DMA_GROUP);
 	if (!gr)
-		logfail("cannot find dma group `%s'", DMA_GROUP);
+		logfail(EX_CONFIG, "cannot find dma group `%s'", DMA_GROUP);
 
 	mail_gid = gr->gr_gid;
 
 	if (setgid(mail_gid) != 0)
-		logfail("cannot set gid to %d (%s)", mail_gid, DMA_GROUP);
+		logfail(EX_NOPERM, "cannot set gid to %d (%s)", mail_gid, DMA_GROUP);
 	if (getegid() != mail_gid)
-		logfail("cannot set gid to %d (%s), still at %d", mail_gid, DMA_GROUP, getegid());
+		logfail(EX_NOPERM, "cannot set gid to %d (%s), still at %d", mail_gid, DMA_GROUP, getegid());
 
 	/*
 	 * We take exactly one argument: the username.
 	 */
 	if (argc != 2) {
 		errno = 0;
-		logfail("no arguments");
+		logfail(EX_USAGE, "no arguments");
 	}
 	user = argv[1];
 
@@ -121,7 +121,7 @@ main(int argc, char **argv)
 	/* the username may not contain a pathname separator */
 	if (strchr(user, '/')) {
 		errno = 0;
-		logfail("path separator in username `%s'", user);
+		logfail(EX_DATAERR, "path separator in username `%s'", user);
 		exit(1);
 	}
 
@@ -129,7 +129,7 @@ main(int argc, char **argv)
 	errno = 0;
 	pw = getpwnam(user);
 	if (!pw)
-		logfail("cannot find user `%s'", user);
+		logfail(EX_NOUSER, "cannot find user `%s'", user);
 
 	user_uid = pw->pw_uid;
 
@@ -137,20 +137,20 @@ main(int argc, char **argv)
 	if (error < 0 || (size_t)error >= sizeof(fn)) {
 		if (error >= 0) {
 			errno = 0;
-			logfail("mbox path too long");
+			logfail(EX_USAGE, "mbox path too long");
 		}
-		logfail("cannot build mbox path for `%s/%s'", _PATH_MAILDIR, user);
+		logfail(EX_CANTCREAT, "cannot build mbox path for `%s/%s'", _PATH_MAILDIR, user);
 	}
 
 	f = open(fn, O_RDONLY|O_CREAT, 0600);
 	if (f < 0)
-		logfail("cannot open mbox `%s'", fn);
+		logfail(EX_NOINPUT, "cannt open mbox `%s'", fn);
 
 	if (fchown(f, user_uid, mail_gid))
-		logfail("cannot change owner of mbox `%s'", fn);
+		logfail(EX_OSERR, "cannot change owner of mbox `%s'", fn);
 
 	if (fchmod(f, 0620))
-		logfail("cannot change permissions of mbox `%s'", fn);
+		logfail(EX_OSERR, "cannot change permissions of mbox `%s'", fn);
 
 	/* file should be present with the right owner and permissions */
 

Modified: user/ngie/more-tests2/contrib/dma/dma.8
==============================================================================
--- user/ngie/more-tests2/contrib/dma/dma.8	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/dma.8	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,4 +1,5 @@
 .\"
+.\" Copyright (c) 2008-2014, Simon Schubert <2@0x2c.org>.
 .\" Copyright (c) 2008
 .\"	The DragonFly Project.  All rights reserved.
 .\"

Modified: user/ngie/more-tests2/contrib/dma/dma.c
==============================================================================
--- user/ngie/more-tests2/contrib/dma/dma.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/dma.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,8 +1,9 @@
 /*
+ * Copyright (c) 2008-2014, Simon Schubert <2@0x2c.org>.
  * Copyright (c) 2008 The DragonFly Project.  All rights reserved.
  *
  * This code is derived from software contributed to The DragonFly Project
- * by Simon 'corecode' Schubert <corecode@fs.ei.tum.de>.
+ * by Simon Schubert <2@0x2c.org>.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -247,7 +248,7 @@ go_background(struct queue *queue)
 
 	if (daemonize && daemon(0, 0) != 0) {
 		syslog(LOG_ERR, "can not daemonize: %m");
-		exit(1);
+		exit(EX_OSERR);
 	}
 	daemonize = 0;
 
@@ -264,7 +265,7 @@ go_background(struct queue *queue)
 		switch (pid) {
 		case -1:
 			syslog(LOG_ERR, "can not fork: %m");
-			exit(1);
+			exit(EX_OSERR);
 			break;
 
 		case 0:
@@ -286,11 +287,11 @@ retit:
 				break;
 			case 1:
 				if (doqueue)
-					exit(0);
+					exit(EX_OK);
 				syslog(LOG_WARNING, "could not lock queue file");
-				exit(1);
+				exit(EX_SOFTWARE);
 			default:
-				exit(1);
+				exit(EX_SOFTWARE);
 			}
 			dropspool(queue, it);
 			return (it);
@@ -306,7 +307,7 @@ retit:
 	}
 
 	syslog(LOG_CRIT, "reached dead code");
-	exit(1);
+	exit(EX_SOFTWARE);
 }
 
 static void
@@ -331,12 +332,12 @@ retry:
 	case 0:
 		delqueue(it);
 		syslog(LOG_INFO, "delivery successful");
-		exit(0);
+		exit(EX_OK);
 
 	case 1:
 		if (stat(it->queuefn, &st) != 0) {
 			syslog(LOG_ERR, "lost queue file `%s'", it->queuefn);
-			exit(1);
+			exit(EX_SOFTWARE);
 		}
 		if (gettimeofday(&now, NULL) == 0 &&
 		    (now.tv_sec - st.st_mtim.tv_sec > MAX_TIMEOUT)) {
@@ -438,16 +439,16 @@ main(int argc, char **argv)
 		pw = getpwnam(DMA_ROOT_USER);
 		if (pw == NULL) {
 			if (errno == 0)
-				errx(1, "user '%s' not found", DMA_ROOT_USER);
+				errx(EX_CONFIG, "user '%s' not found", DMA_ROOT_USER);
 			else
-				err(1, "cannot drop root privileges");
+				err(EX_OSERR, "cannot drop root privileges");
 		}
 
 		if (setuid(pw->pw_uid) != 0)
-			err(1, "cannot drop root privileges");
+			err(EX_OSERR, "cannot drop root privileges");
 
 		if (geteuid() == 0 || getuid() == 0)
-			errx(1, "cannot drop root privileges");
+			errx(EX_OSERR, "cannot drop root privileges");
 	}
 
 	atexit(deltmp);
@@ -460,15 +461,15 @@ main(int argc, char **argv)
 		argv++; argc--;
 		showq = 1;
 		if (argc != 0)
-			errx(1, "invalid arguments");
+			errx(EX_USAGE, "invalid arguments");
 		goto skipopts;
 	} else if (strcmp(argv[0], "newaliases") == 0) {
 		logident_base = "dma";
 		setlogident("%s", logident_base);
 
 		if (read_aliases() != 0)
-			errx(1, "could not parse aliases file `%s'", config.aliases);
-		exit(0);
+			errx(EX_SOFTWARE, "could not parse aliases file `%s'", config.aliases);
+		exit(EX_OK);
 	}
 
 	opterr = 0;
@@ -547,7 +548,7 @@ main(int argc, char **argv)
 
 		default:
 			fprintf(stderr, "invalid argument: `-%c'\n", optopt);
-			exit(1);
+			exit(EX_USAGE);
 		}
 	}
 	argc -= optind;
@@ -555,10 +556,10 @@ main(int argc, char **argv)
 	opterr = 1;
 
 	if (argc != 0 && (showq || doqueue))
-		errx(1, "sending mail and queue operations are mutually exclusive");
+		errx(EX_USAGE, "sending mail and queue operations are mutually exclusive");
 
 	if (showq + doqueue > 1)
-		errx(1, "conflicting queue operations");
+		errx(EX_USAGE, "conflicting queue operations");
 
 skipopts:
 	if (logident_base == NULL)
@@ -578,7 +579,7 @@ skipopts:
 
 	if (showq) {
 		if (load_queue(&queue) < 0)
-			errlog(1, "can not load queue");
+			errlog(EX_NOINPUT, "can not load queue");
 		show_queue(&queue);
 		return (0);
 	}
@@ -586,38 +587,38 @@ skipopts:
 	if (doqueue) {
 		flushqueue_signal();
 		if (load_queue(&queue) < 0)
-			errlog(1, "can not load queue");
+			errlog(EX_NOINPUT, "can not load queue");
 		run_queue(&queue);
 		return (0);
 	}
 
 	if (read_aliases() != 0)
-		errlog(1, "could not parse aliases file `%s'", config.aliases);
+		errlog(EX_SOFTWARE, "could not parse aliases file `%s'", config.aliases);
 
 	if ((sender = set_from(&queue, sender)) == NULL)
-		errlog(1, "set_from failed");
+		errlog(EX_SOFTWARE, NULL);
 
 	if (newspoolf(&queue) != 0)
-		errlog(1, "can not create temp file in `%s'", config.spooldir);
+		errlog(EX_CANTCREAT, "can not create temp file in `%s'", config.spooldir);
 
 	setlogident("%s", queue.id);
 
 	for (i = 0; i < argc; i++) {
 		if (add_recp(&queue, argv[i], EXPAND_WILDCARD) != 0)
-			errlogx(1, "invalid recipient `%s'", argv[i]);
+			errlogx(EX_DATAERR, "invalid recipient `%s'", argv[i]);
 	}
 
 	if (LIST_EMPTY(&queue.queue) && !recp_from_header)
-		errlogx(1, "no recipients");
+		errlogx(EX_NOINPUT, "no recipients");
 
 	if (readmail(&queue, nodot, recp_from_header) != 0)
-		errlog(1, "can not read mail");
+		errlog(EX_NOINPUT, "can not read mail");
 
 	if (LIST_EMPTY(&queue.queue))
-		errlogx(1, "no recipients");
+		errlogx(EX_NOINPUT, "no recipients");
 
 	if (linkspool(&queue) != 0)
-		errlog(1, "can not create spools");
+		errlog(EX_CANTCREAT, "can not create spools");
 
 	/* From here on the mail is safe. */
 

Modified: user/ngie/more-tests2/contrib/dma/dma.h
==============================================================================
--- user/ngie/more-tests2/contrib/dma/dma.h	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/dma.h	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,8 +1,9 @@
 /*
+ * Copyright (c) 2008-2014, Simon Schubert <2@0x2c.org>.
  * Copyright (c) 2008 The DragonFly Project.  All rights reserved.
  *
  * This code is derived from software contributed to The DragonFly Project
- * by Simon 'corecode' Schubert <corecode@fs.ei.tum.de> and
+ * by Simon Schubert <2@0x2c.org> and
  * Matthias Schmidt <matthias@dragonflybsd.org>.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -43,6 +44,7 @@
 #include <arpa/inet.h>
 #include <openssl/ssl.h>
 #include <netdb.h>
+#include <sysexits.h>
 
 #define VERSION	"DragonFly Mail Agent " DMA_VERSION
 
@@ -173,6 +175,8 @@ extern char errmsg[ERRMSG_SIZE];
 
 /* aliases_parse.y */
 int yyparse(void);
+int yywrap(void);
+int yylex(void);
 extern FILE *yyin;
 
 /* conf.c */

Modified: user/ngie/more-tests2/contrib/dma/dns.c
==============================================================================
--- user/ngie/more-tests2/contrib/dma/dns.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/dns.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,8 +1,9 @@
 /*
+ * Copyright (c) 2008-2014, Simon Schubert <2@0x2c.org>.
  * Copyright (c) 2008 The DragonFly Project.  All rights reserved.
  *
  * This code is derived from software contributed to The DragonFly Project
- * by Simon 'corecode' Schubert <corecode@fs.ei.tum.de>
+ * by Simon Schubert <2@0x2c.org>.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -67,7 +68,6 @@ add_host(int pref, const char *host, int
 	char servname[10];
 	struct mx_hostentry *p;
 	const int count_inc = 10;
-	int err;
 
 	memset(&hints, 0, sizeof(hints));
 	hints.ai_family = PF_UNSPEC;
@@ -75,9 +75,26 @@ add_host(int pref, const char *host, int
 	hints.ai_protocol = IPPROTO_TCP;
 
 	snprintf(servname, sizeof(servname), "%d", port);
-	err = getaddrinfo(host, servname, &hints, &res0);
-	if (err)
-		return (err == EAI_AGAIN ? 1 : -1);
+	switch (getaddrinfo(host, servname, &hints, &res0)) {
+	case 0:
+		break;
+	case EAI_AGAIN:
+	case EAI_NONAME:
+		/*
+		 * EAI_NONAME gets returned for:
+		 * SMARTHOST set but DNS server not reachable -> defer
+		 * SMARTHOST set but DNS server returns "host does not exist"
+		 *           -> buggy configuration
+		 *           -> either defer or bounce would be ok -> defer
+		 * MX entry was returned by DNS server but name doesn't resolve
+		 *           -> hopefully transient situation -> defer
+		 * all other DNS problems should have been caught earlier
+		 * in dns_get_mx_list().
+		 */
+		goto out;
+	default:
+		return(-1);
+	}
 
 	for (res = res0; res != NULL; res = res->ai_next) {
 		if (*ps + 1 >= roundup(*ps, count_inc)) {

Modified: user/ngie/more-tests2/contrib/dma/get-version.sh
==============================================================================
--- user/ngie/more-tests2/contrib/dma/get-version.sh	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/get-version.sh	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,7 +1,9 @@
 #!/bin/sh
 
+tmp=$1
+file=${tmp:=VERSION}
 gitver=$(git describe 2>/dev/null | tr - .)
-filever=$(cat VERSION)
+filever=$(cat ${file} 2>/dev/null)
 
 version=${gitver}
 : ${version:=$filever}

Modified: user/ngie/more-tests2/contrib/dma/local.c
==============================================================================
--- user/ngie/more-tests2/contrib/dma/local.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/local.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,8 +1,9 @@
 /*
+ * Copyright (c) 2008-2014, Simon Schubert <2@0x2c.org>.
  * Copyright (c) 2008 The DragonFly Project.  All rights reserved.
  *
  * This code is derived from software contributed to The DragonFly Project
- * by Simon 'corecode' Schubert <corecode@fs.ei.tum.de>.
+ * by Simon Schubert <2@0x2c.org>.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -81,7 +82,7 @@ create_mbox(const char *name)
 
 		execl(LIBEXEC_PATH "/dma-mbox-create", "dma-mbox-create", name, NULL);
 		syslog(LOG_ERR, "cannot execute "LIBEXEC_PATH"/dma-mbox-create: %m");
-		exit(1);
+		exit(EX_SOFTWARE);
 
 	default:
 		/* parent */

Modified: user/ngie/more-tests2/contrib/dma/mail.c
==============================================================================
--- user/ngie/more-tests2/contrib/dma/mail.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/mail.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,8 +1,9 @@
 /*
+ * Copyright (c) 2008-2014, Simon Schubert <2@0x2c.org>.
  * Copyright (c) 2008 The DragonFly Project.  All rights reserved.
  *
  * This code is derived from software contributed to The DragonFly Project
- * by Simon 'corecode' Schubert <corecode@fs.ei.tum.de>.
+ * by Simon Schubert <2@0x2c.org>.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -51,7 +52,7 @@ bounce(struct qitem *it, const char *rea
 	/* Don't bounce bounced mails */
 	if (it->sender[0] == 0) {
 		syslog(LOG_INFO, "can not bounce a bounce message, discarding");
-		exit(1);
+		exit(EX_SOFTWARE);
 	}
 
 	bzero(&bounceq, sizeof(bounceq));
@@ -132,7 +133,7 @@ bounce(struct qitem *it, const char *rea
 fail:
 	syslog(LOG_CRIT, "error creating bounce: %m");
 	delqueue(it);
-	exit(1);
+	exit(EX_IOERR);
 }
 
 struct parse_state {
@@ -332,10 +333,10 @@ newaddr:
 	ps->pos = 0;
 	addr = strdup(ps->addr);
 	if (addr == NULL)
-		errlog(1, "strdup failed");
+		errlog(EX_SOFTWARE, NULL);
 
 	if (add_recp(queue, addr, EXPAND_WILDCARD) != 0)
-		errlogx(1, "invalid recipient `%s'", addr);
+		errlogx(EX_DATAERR, "invalid recipient `%s'", addr);
 
 	goto again;
 }
@@ -374,7 +375,9 @@ readmail(struct queue *queue, int nodot,
 		if (fgets(line, sizeof(line) - 1, stdin) == NULL)
 			break;
 		if (had_last_line)
-			errlogx(1, "bad mail input format");
+			errlogx(EX_DATAERR, "bad mail input format:"
+				" from %s (uid %d) (envelope-from %s)",
+				username, useruid, queue->sender);
 		linelen = strlen(line);
 		if (linelen == 0 || line[linelen - 1] != '\n') {
 			/*
@@ -405,7 +408,7 @@ readmail(struct queue *queue, int nodot,
 
 			if (parse_state.state != NONE) {
 				if (parse_addrs(&parse_state, line, queue) < 0) {
-					errlogx(1, "invalid address in header\n");
+					errlogx(EX_DATAERR, "invalid address in header\n");
 					/* NOTREACHED */
 				}
 			}
@@ -416,7 +419,7 @@ readmail(struct queue *queue, int nodot,
 					strprefixcmp(line, "Bcc:") == 0)) {
 				parse_state.state = START;
 				if (parse_addrs(&parse_state, line, queue) < 0) {
-					errlogx(1, "invalid address in header\n");
+					errlogx(EX_DATAERR, "invalid address in header\n");
 					/* NOTREACHED */
 				}
 			}

Modified: user/ngie/more-tests2/contrib/dma/net.c
==============================================================================
--- user/ngie/more-tests2/contrib/dma/net.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/net.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,4 +1,5 @@
 /*
+ * Copyright (c) 2008-2014, Simon Schubert <2@0x2c.org>.
  * Copyright (c) 2008 The DragonFly Project.  All rights reserved.
  *
  * This code is derived from software contributed to The DragonFly Project

Modified: user/ngie/more-tests2/contrib/dma/spool.c
==============================================================================
--- user/ngie/more-tests2/contrib/dma/spool.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/spool.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,8 +1,9 @@
 /*
+ * Copyright (c) 2008-2014, Simon Schubert <2@0x2c.org>.
  * Copyright (c) 2008 The DragonFly Project.  All rights reserved.
  *
  * This code is derived from software contributed to The DragonFly Project
- * by Simon 'corecode' Schubert <corecode@fs.ei.tum.de>.
+ * by Simon Schubert <2@0x2c.org>.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -289,7 +290,7 @@ load_queue(struct queue *queue)
 
 	spooldir = opendir(config.spooldir);
 	if (spooldir == NULL)
-		err(1, "reading queue");
+		err(EX_NOINPUT, "reading queue");
 
 	while ((de = readdir(spooldir)) != NULL) {
 		queuefn = NULL;

Modified: user/ngie/more-tests2/contrib/dma/util.c
==============================================================================
--- user/ngie/more-tests2/contrib/dma/util.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/contrib/dma/util.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -1,8 +1,9 @@
 /*
+ * Copyright (c) 2008-2014, Simon Schubert <2@0x2c.org>.
  * Copyright (c) 2008 The DragonFly Project.  All rights reserved.
  *
  * This code is derived from software contributed to The DragonFly Project
- * by Simon 'corecode' Schubert <corecode@fs.ei.tum.de>.
+ * by Simon Schubert <2@0x2c.org>.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: user/ngie/more-tests2/lib/libc/sys/shmctl.2
==============================================================================
--- user/ngie/more-tests2/lib/libc/sys/shmctl.2	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/lib/libc/sys/shmctl.2	Sun Oct 11 08:21:49 2015	(r289133)
@@ -25,7 +25,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd July 17, 1995
+.Dd October 10, 2015
 .Dt SHMCTL 2
 .Os
 .Sh NAME
@@ -72,15 +72,18 @@ or it must have superuser privileges.
 .It Dv IPC_RMID
 Removes the segment from the system.
 The removal will not take
-effect until all processes having attached the segment have exited;
-however, once the IPC_RMID operation has taken place, no further
-processes will be allowed to attach the segment.
+effect until all processes having attached the segment have exited.
 For the operation
 to succeed, the calling process's effective uid must match
 .Fa shm_perm.uid
 or
 .Fa shm_perm.cuid ,
 or the process must have superuser privileges.
+If the
+.Va kern.ipc.shm_allow_removed
+.Xr sysctl 3
+variable is set to 0, once the IPC_RMID operation has taken place,
+no further processes will be allowed to attach the segment.
 .\" .It Dv SHM_LOCK
 .\" Locks the segment in memory.  The calling process must have
 .\" superuser privileges. Not implemented in FreeBSD.

Modified: user/ngie/more-tests2/libexec/dma/Makefile.inc
==============================================================================
--- user/ngie/more-tests2/libexec/dma/Makefile.inc	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/libexec/dma/Makefile.inc	Sun Oct 11 08:21:49 2015	(r289133)
@@ -7,7 +7,7 @@ DMA_SOURCES=	${.CURDIR}/../../../contrib
 CFLAGS=	-I${DMA_SOURCES} \
 	-DHAVE_REALLOCF -DHAVE_STRLCPY -DHAVE_GETPROGNAME \
 	-DCONF_PATH='"/etc/dma"' \
-	-DLIBEXEC_PATH='"/usr/libexec"' -DDMA_VERSION='"v0.9+"' \
+	-DLIBEXEC_PATH='"/usr/libexec"' -DDMA_VERSION='"v0.10"' \
 	-DDMA_ROOT_USER='"mailnull"' \
 	-DDMA_GROUP='"mail"'
 BINGRP=	mail

Modified: user/ngie/more-tests2/libexec/dma/dmagent/Makefile
==============================================================================
--- user/ngie/more-tests2/libexec/dma/dmagent/Makefile	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/libexec/dma/dmagent/Makefile	Sun Oct 11 08:21:49 2015	(r289133)
@@ -17,7 +17,7 @@ SRCS=	aliases_parse.y \
 	util.c
 MAN8=	dma.8
 CONFS=	dma.conf
-CONFSDIR=	${ETCDIR}/dma
+CONFSDIR=	${CONFIGDIR}/dma
 YFLAGS+=	-i
 CLEANFILES=	aliases_parse.i
 FILES=	mailer.conf

Modified: user/ngie/more-tests2/sbin/geom/class/nop/gnop.8
==============================================================================
--- user/ngie/more-tests2/sbin/geom/class/nop/gnop.8	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/sbin/geom/class/nop/gnop.8	Sun Oct 11 08:21:49 2015	(r289133)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd September 15, 2015
+.Dd October 10, 2015
 .Dt GNOP 8
 .Os
 .Sh NAME
@@ -72,9 +72,10 @@ The
 utility is used for setting up transparent providers on existing ones.
 Its main purpose is testing other GEOM classes, as it allows forced provider
 removal and I/O error simulation with a given probability.
-It also gathers the following statistics: number of read requests, number of
-write requests, number of bytes read and number of bytes written.
-In addition, it can be used as a good starting point for implementing new GEOM
+It also gathers statistics on the number of read, write, delete,
+getattr, flush, and other requests, and the number of bytes read and written.
+.Nm
+can also be used as a good starting point for implementing new GEOM
 classes.
 .Pp
 The first argument to

Modified: user/ngie/more-tests2/sbin/mdconfig/mdconfig.8
==============================================================================
--- user/ngie/more-tests2/sbin/mdconfig/mdconfig.8	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/sbin/mdconfig/mdconfig.8	Sun Oct 11 08:21:49 2015	(r289133)
@@ -37,7 +37,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd August 6, 2015
+.Dd October 10, 2015
 .Dt MDCONFIG 8
 .Os
 .Sh NAME
@@ -159,11 +159,11 @@ prefix.
 Size of the memory disk.
 .Ar Size
 is the number of 512 byte sectors unless suffixed with a
-.Cm b , k , m , g ,
+.Cm b , k , m , g , t ,
 or
-.Cm t
+.Cm p
 which
-denotes byte, kilobyte, megabyte, gigabyte and terabyte respectively.
+denotes byte, kilobyte, megabyte, gigabyte, terabyte and petabyte respectively.
 When used without the
 .Fl r
 option, the

Modified: user/ngie/more-tests2/sbin/mdconfig/mdconfig.c
==============================================================================
--- user/ngie/more-tests2/sbin/mdconfig/mdconfig.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/sbin/mdconfig/mdconfig.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -88,8 +88,8 @@ usage(void)
 	fprintf(stderr, "\t\ttype = {malloc, vnode, swap}\n");
 	fprintf(stderr, "\t\toption = {cluster, compress, reserve}\n");
 	fprintf(stderr, "\t\tsize = %%d (512 byte blocks), %%db (B),\n");
-	fprintf(stderr, "\t\t       %%dk (kB), %%dm (MB), %%dg (GB) or\n");
-	fprintf(stderr, "\t\t       %%dt (TB)\n");
+	fprintf(stderr, "\t\t       %%dk (kB), %%dm (MB), %%dg (GB), \n");
+	fprintf(stderr, "\t\t       %%dt (TB), or %%dp (PB)\n");
 	exit(1);
 }
 
@@ -217,6 +217,9 @@ main(int argc, char **argv)
 			else if (*p == 't' || *p == 'T') {
 				mdio.md_mediasize <<= 30;
 				mdio.md_mediasize <<= 10;
+			} else if (*p == 'p' || *p == 'P') {
+				mdio.md_mediasize <<= 30;
+				mdio.md_mediasize <<= 20;
 			} else
 				errx(1, "unknown suffix on -s argument");
 			break;

Modified: user/ngie/more-tests2/share/man/man4/vtnet.4
==============================================================================
--- user/ngie/more-tests2/share/man/man4/vtnet.4	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/share/man/man4/vtnet.4	Sun Oct 11 08:21:49 2015	(r289133)
@@ -52,9 +52,9 @@ device driver provides support for VirtI
 If the hypervisor advertises the appreciate features, the
 .Nm
 driver supports TCP/UDP checksum offload for both transmit and receive,
-TCP segmentation offload (TSO), TCP large receive offload (LRO), and
-hardware VLAN tag stripping/insertion features, as well as a multicast
-hash filter, as well as Jumbo Frames (up to 9216 bytes), which can be
+TCP segmentation offload (TSO), TCP large receive offload (LRO),
+hardware VLAN tag stripping/insertion features, a multicast hash filter,
+as well as Jumbo Frames (up to 9216 bytes), which can be
 configured via the interface MTU setting.
 Selecting an MTU larger than 1500 bytes with the
 .Xr ifconfig 8

Modified: user/ngie/more-tests2/share/mk/Makefile
==============================================================================
--- user/ngie/more-tests2/share/mk/Makefile	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/share/mk/Makefile	Sun Oct 11 08:21:49 2015	(r289133)
@@ -13,6 +13,7 @@ FILES=	\
 	bsd.README \
 	bsd.arch.inc.mk \
 	bsd.compiler.mk \
+	bsd.confs.mk \
 	bsd.cpu.mk \
 	bsd.crunchgen.mk \
 	bsd.dep.mk \

Modified: user/ngie/more-tests2/share/mk/bsd.confs.mk
==============================================================================
--- user/ngie/more-tests2/share/mk/bsd.confs.mk	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/share/mk/bsd.confs.mk	Sun Oct 11 08:21:49 2015	(r289133)
@@ -22,7 +22,7 @@ all: buildconfig
 ${group}OWN?=	${SHAREOWN}
 ${group}GRP?=	${SHAREGRP}
 ${group}MODE?=	${CONFMODE}
-${group}DIR?=	${ETCDIR}/
+${group}DIR?=	${CONFIGDIR}/
 STAGE_SETS+=	${group}
 STAGE_DIR.${group}= ${STAGE_OBJTOP}${${group}DIR}
 STAGE_SYMLINKS_DIR.${group}= ${STAGE_OBJTOP}

Modified: user/ngie/more-tests2/share/mk/bsd.own.mk
==============================================================================
--- user/ngie/more-tests2/share/mk/bsd.own.mk	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/share/mk/bsd.own.mk	Sun Oct 11 08:21:49 2015	(r289133)
@@ -213,7 +213,7 @@ NLSGRP?=	${SHAREGRP}
 NLSMODE?=	${NOBINMODE}
 
 INCLUDEDIR?=	/usr/include
-ETCDIR?=	/etc
+CONFIGDIR?=	/etc
 
 #
 # install(1) parameters.

Modified: user/ngie/more-tests2/sys/dev/cxgbe/iw_cxgbe/cm.c
==============================================================================
--- user/ngie/more-tests2/sys/dev/cxgbe/iw_cxgbe/cm.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/sys/dev/cxgbe/iw_cxgbe/cm.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -99,7 +99,7 @@ static int abort_connection(struct c4iw_
 static void peer_close_upcall(struct c4iw_ep *ep);
 static void peer_abort_upcall(struct c4iw_ep *ep);
 static void connect_reply_upcall(struct c4iw_ep *ep, int status);
-static void connect_request_upcall(struct c4iw_ep *ep);
+static int connect_request_upcall(struct c4iw_ep *ep);
 static void established_upcall(struct c4iw_ep *ep);
 static void process_mpa_reply(struct c4iw_ep *ep);
 static void process_mpa_request(struct c4iw_ep *ep);
@@ -1216,7 +1216,6 @@ static int abort_connection(struct c4iw_
 	int err;
 
 	CTR2(KTR_IW_CXGBE, "%s:abB %p", __func__, ep);
-	close_complete_upcall(ep, -ECONNRESET);
 	state_set(&ep->com, ABORTING);
 	abort_socket(ep);
 	err = close_socket(&ep->com, 0);
@@ -1319,9 +1318,10 @@ static void connect_reply_upcall(struct 
 	CTR2(KTR_IW_CXGBE, "%s:cruE %p", __func__, ep);
 }
 
-static void connect_request_upcall(struct c4iw_ep *ep)
+static int connect_request_upcall(struct c4iw_ep *ep)
 {
 	struct iw_cm_event event;
+	int ret;
 
 	CTR3(KTR_IW_CXGBE, "%s: ep %p, mpa_v1 %d", __func__, ep,
 	    ep->tried_with_mpa_v1);
@@ -1355,10 +1355,14 @@ static void connect_request_upcall(struc
 	}
 
 	c4iw_get_ep(&ep->com);
-	ep->parent_ep->com.cm_id->event_handler(ep->parent_ep->com.cm_id,
+	ret = ep->parent_ep->com.cm_id->event_handler(ep->parent_ep->com.cm_id,
 	    &event);
+	if(ret)
+		c4iw_put_ep(&ep->com);
+
 	set_bit(CONNREQ_UPCALL, &ep->com.history);
 	c4iw_put_ep(&ep->parent_ep->com);
+	return ret;
 }
 
 static void established_upcall(struct c4iw_ep *ep)
@@ -1835,9 +1839,11 @@ abort:
 
 	/* drive upcall */
 	mutex_lock(&ep->parent_ep->com.mutex);
-	if (ep->parent_ep->com.state != DEAD)
-		connect_request_upcall(ep);
-	else
+	if (ep->parent_ep->com.state != DEAD) {
+		if(connect_request_upcall(ep)) {
+			abort_connection(ep);
+		}
+	}else
 		abort_connection(ep);
 	mutex_unlock(&ep->parent_ep->com.mutex);
 }
@@ -2213,7 +2219,7 @@ int c4iw_ep_disconnect(struct c4iw_ep *e
 
 		CTR2(KTR_IW_CXGBE, "%s:ced1 %p", __func__, ep);
 		fatal = 1;
-		close_complete_upcall(ep, -EIO);
+		close_complete_upcall(ep, -ECONNRESET);
 		ep->com.state = DEAD;
 	}
 	CTR3(KTR_IW_CXGBE, "%s:ced2 %p %s", __func__, ep,

Modified: user/ngie/more-tests2/sys/dev/drm2/i915/i915_gem.c
==============================================================================
--- user/ngie/more-tests2/sys/dev/drm2/i915/i915_gem.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/sys/dev/drm2/i915/i915_gem.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -2527,10 +2527,8 @@ i915_gem_object_unbind(struct drm_i915_g
 	if (obj->gtt_space == NULL)
 		return 0;
 
-	if (obj->pin_count) {
-		DRM_ERROR("Attempting to unbind pinned buffer\n");
+	if (obj->pin_count)
 		return -EINVAL;
-	}
 
 	ret = i915_gem_object_finish_gpu(obj);
 	if (ret == -ERESTARTSYS || ret == -EINTR)

Modified: user/ngie/more-tests2/sys/dev/iicbus/icee.c
==============================================================================
--- user/ngie/more-tests2/sys/dev/iicbus/icee.c	Sun Oct 11 08:19:58 2015	(r289132)
+++ user/ngie/more-tests2/sys/dev/iicbus/icee.c	Sun Oct 11 08:21:49 2015	(r289133)
@@ -48,7 +48,7 @@ __FBSDID("$FreeBSD$");
 
 struct icee_softc {
 	device_t	sc_dev;		/* Myself */
-	struct sx	sc_lock;	/* basically a perimeter lock */
+	device_t	sc_busdev;	/* Parent bus */
 	struct cdev	*cdev;		/* user interface */
 	int		addr;
 	int		size;		/* How big am I? */
@@ -57,12 +57,6 @@ struct icee_softc {
 	int		wr_sz;		/* What's the write page size */
 };
 
-#define ICEE_LOCK(_sc)		sx_xlock(&(_sc)->sc_lock)
-#define	ICEE_UNLOCK(_sc)	sx_xunlock(&(_sc)->sc_lock)
-#define ICEE_LOCK_INIT(_sc)	sx_init(&_sc->sc_lock, "icee")
-#define ICEE_LOCK_DESTROY(_sc)	sx_destroy(&_sc->sc_lock);
-#define ICEE_ASSERT_LOCKED(_sc)	sx_assert(&_sc->sc_lock, SA_XLOCKED);
-#define ICEE_ASSERT_UNLOCKED(_sc) sx_assert(&_sc->sc_lock, SA_UNLOCKED);
 #define CDEV2SOFTC(dev)		((dev)->si_drv1)
 
 /* cdev routines */
@@ -97,6 +91,7 @@ icee_attach(device_t dev)
 	int dunit, err;
 
 	sc->sc_dev = dev;
+	sc->sc_busdev = device_get_parent(sc->sc_dev);
 	sc->addr = iicbus_get_addr(dev);
 	err = 0;
 	dname = device_get_name(dev);
@@ -117,7 +112,6 @@ icee_attach(device_t dev)
 		goto out;
 	}
 	sc->cdev->si_drv1 = sc;
-	ICEE_LOCK_INIT(sc);
 out:
 	return (err);
 }
@@ -155,7 +149,9 @@ icee_read(struct cdev *dev, struct uio *
 		return (EIO);
 	if (sc->type != 8 && sc->type != 16)
 		return (EINVAL);
-	ICEE_LOCK(sc);
+	error = iicbus_request_bus(sc->sc_busdev, sc->sc_dev, IIC_INTRWAIT);
+	if (error!= 0)
+		return (iic2errno(error));
 	slave = error = 0;

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201510110821.t9B8Lngn043446>