svn commit: r303748 - in user/alc/PQ_LAUNDRY: bin/uuidgen contrib/elftoolchain/readelf contrib/libpcap crypto/openssh etc/rc.d include lib/libc/gen lib/libc/sys lib/libproc sbin/geom/class/eli sbin...
Alan Cox
alc at FreeBSD.org
Thu Aug 4 16:36:04 UTC 2016
Author: alc
Date: Thu Aug 4 16:36:00 2016
New Revision: 303748
URL: https://svnweb.freebsd.org/changeset/base/303748
Log:
MFH r303747
Note: A conflict in one of vm_pageout_cluster()'s comments had to be
resolved because of functional differences between HEAD and this branch.
Added:
user/alc/PQ_LAUNDRY/sys/mips/conf/std.AR933X
- copied unchanged from r303747, head/sys/mips/conf/std.AR933X
user/alc/PQ_LAUNDRY/sys/mips/conf/std.AR934X
- copied unchanged from r303747, head/sys/mips/conf/std.AR934X
user/alc/PQ_LAUNDRY/sys/x86/x86/mp_watchdog.c
- copied unchanged from r303747, head/sys/x86/x86/mp_watchdog.c
Deleted:
user/alc/PQ_LAUNDRY/sys/amd64/amd64/mp_watchdog.c
user/alc/PQ_LAUNDRY/sys/i386/i386/mp_watchdog.c
user/alc/PQ_LAUNDRY/sys/mips/conf/AR933X_BASE
user/alc/PQ_LAUNDRY/sys/mips/conf/AR934X_BASE
Modified:
user/alc/PQ_LAUNDRY/bin/uuidgen/uuidgen.c
user/alc/PQ_LAUNDRY/contrib/elftoolchain/readelf/readelf.c
user/alc/PQ_LAUNDRY/contrib/libpcap/pcap-bpf.c
user/alc/PQ_LAUNDRY/crypto/openssh/FREEBSD-upgrade
user/alc/PQ_LAUNDRY/crypto/openssh/config.h
user/alc/PQ_LAUNDRY/crypto/openssh/configure.ac
user/alc/PQ_LAUNDRY/crypto/openssh/myproposal.h
user/alc/PQ_LAUNDRY/crypto/openssh/servconf.c
user/alc/PQ_LAUNDRY/crypto/openssh/ssh_config.5
user/alc/PQ_LAUNDRY/crypto/openssh/sshd_config.5
user/alc/PQ_LAUNDRY/etc/rc.d/sshd
user/alc/PQ_LAUNDRY/include/stdio.h
user/alc/PQ_LAUNDRY/lib/libc/gen/Makefile.inc
user/alc/PQ_LAUNDRY/lib/libc/gen/clock_getcpuclockid.3
user/alc/PQ_LAUNDRY/lib/libc/gen/glob.c
user/alc/PQ_LAUNDRY/lib/libc/sys/mprotect.2
user/alc/PQ_LAUNDRY/lib/libproc/proc_create.c
user/alc/PQ_LAUNDRY/sbin/geom/class/eli/geli.8
user/alc/PQ_LAUNDRY/sbin/pfctl/pfctl.c
user/alc/PQ_LAUNDRY/sbin/pfctl/pfctl_parser.c
user/alc/PQ_LAUNDRY/sbin/pfctl/pfctl_radix.c
user/alc/PQ_LAUNDRY/share/man/man3/pthread_getcpuclockid.3
user/alc/PQ_LAUNDRY/share/man/man9/Makefile
user/alc/PQ_LAUNDRY/share/man/man9/pci.9
user/alc/PQ_LAUNDRY/share/misc/bsd-family-tree
user/alc/PQ_LAUNDRY/sys/amd64/vmm/vmm.c
user/alc/PQ_LAUNDRY/sys/arm/allwinner/axp209.c
user/alc/PQ_LAUNDRY/sys/arm/include/elf.h
user/alc/PQ_LAUNDRY/sys/arm64/arm64/pmap.c
user/alc/PQ_LAUNDRY/sys/boot/efi/boot1/boot1.c
user/alc/PQ_LAUNDRY/sys/boot/efi/boot1/ufs_module.c
user/alc/PQ_LAUNDRY/sys/boot/efi/boot1/zfs_module.c
user/alc/PQ_LAUNDRY/sys/boot/fdt/dts/arm/zynq-7000.dtsi
user/alc/PQ_LAUNDRY/sys/boot/i386/libi386/biosdisk.c
user/alc/PQ_LAUNDRY/sys/compat/freebsd32/freebsd32_proto.h
user/alc/PQ_LAUNDRY/sys/compat/freebsd32/freebsd32_syscall.h
user/alc/PQ_LAUNDRY/sys/compat/freebsd32/freebsd32_syscalls.c
user/alc/PQ_LAUNDRY/sys/compat/freebsd32/freebsd32_sysent.c
user/alc/PQ_LAUNDRY/sys/compat/freebsd32/freebsd32_systrace_args.c
user/alc/PQ_LAUNDRY/sys/compat/freebsd32/syscalls.master
user/alc/PQ_LAUNDRY/sys/conf/files.amd64
user/alc/PQ_LAUNDRY/sys/conf/files.i386
user/alc/PQ_LAUNDRY/sys/conf/files.pc98
user/alc/PQ_LAUNDRY/sys/conf/files.powerpc
user/alc/PQ_LAUNDRY/sys/conf/options.powerpc
user/alc/PQ_LAUNDRY/sys/dev/cxgbe/t4_if.m
user/alc/PQ_LAUNDRY/sys/dev/cxgbe/t4_iov.c
user/alc/PQ_LAUNDRY/sys/dev/cxgbe/t4_main.c
user/alc/PQ_LAUNDRY/sys/dev/cxgbe/tom/t4_ddp.c
user/alc/PQ_LAUNDRY/sys/dev/cxgbe/tom/t4_tom.h
user/alc/PQ_LAUNDRY/sys/dev/hwpmc/hwpmc_core.c
user/alc/PQ_LAUNDRY/sys/dev/hyperv/storvsc/hv_storvsc_drv_freebsd.c
user/alc/PQ_LAUNDRY/sys/dev/pci/pci_if.m
user/alc/PQ_LAUNDRY/sys/dev/pci/pci_iov.c
user/alc/PQ_LAUNDRY/sys/dev/pci/pci_iov.h
user/alc/PQ_LAUNDRY/sys/dev/pci/pci_private.h
user/alc/PQ_LAUNDRY/sys/fs/nfsclient/nfs_clbio.c
user/alc/PQ_LAUNDRY/sys/fs/nfsclient/nfs_clsubs.c
user/alc/PQ_LAUNDRY/sys/fs/nfsclient/nfs_clvnops.c
user/alc/PQ_LAUNDRY/sys/fs/nfsclient/nfsnode.h
user/alc/PQ_LAUNDRY/sys/fs/pseudofs/pseudofs.c
user/alc/PQ_LAUNDRY/sys/fs/pseudofs/pseudofs.h
user/alc/PQ_LAUNDRY/sys/fs/pseudofs/pseudofs_fileno.c
user/alc/PQ_LAUNDRY/sys/fs/pseudofs/pseudofs_vncache.c
user/alc/PQ_LAUNDRY/sys/kern/init_sysent.c
user/alc/PQ_LAUNDRY/sys/kern/kern_fork.c
user/alc/PQ_LAUNDRY/sys/kern/kern_sx.c
user/alc/PQ_LAUNDRY/sys/kern/syscalls.c
user/alc/PQ_LAUNDRY/sys/kern/syscalls.master
user/alc/PQ_LAUNDRY/sys/kern/systrace_args.c
user/alc/PQ_LAUNDRY/sys/kern/vfs_subr.c
user/alc/PQ_LAUNDRY/sys/kern/vnode_if.src
user/alc/PQ_LAUNDRY/sys/mips/conf/ALFA_HORNET_UB
user/alc/PQ_LAUNDRY/sys/mips/conf/AP121
user/alc/PQ_LAUNDRY/sys/mips/conf/CARAMBOLA2
user/alc/PQ_LAUNDRY/sys/mips/conf/DB120
user/alc/PQ_LAUNDRY/sys/mips/conf/DIR-825C1
user/alc/PQ_LAUNDRY/sys/mips/conf/ONIONOMEGA
user/alc/PQ_LAUNDRY/sys/mips/conf/TL-WDR4300
user/alc/PQ_LAUNDRY/sys/mips/conf/TL-WR740Nv4
user/alc/PQ_LAUNDRY/sys/mips/conf/TP-MR3020
user/alc/PQ_LAUNDRY/sys/powerpc/conf/MPC85XX
user/alc/PQ_LAUNDRY/sys/powerpc/conf/dpaa/DPAA
user/alc/PQ_LAUNDRY/sys/powerpc/mpc85xx/mpc85xx.c
user/alc/PQ_LAUNDRY/sys/powerpc/mpc85xx/mpc85xx.h
user/alc/PQ_LAUNDRY/sys/powerpc/mpc85xx/pci_mpc85xx.c
user/alc/PQ_LAUNDRY/sys/powerpc/mpc85xx/platform_mpc85xx.c
user/alc/PQ_LAUNDRY/sys/sys/elf_common.h
user/alc/PQ_LAUNDRY/sys/sys/mman.h
user/alc/PQ_LAUNDRY/sys/sys/pmc.h
user/alc/PQ_LAUNDRY/sys/sys/syscall.h
user/alc/PQ_LAUNDRY/sys/sys/syscall.mk
user/alc/PQ_LAUNDRY/sys/sys/sysproto.h
user/alc/PQ_LAUNDRY/sys/sys/vnode.h
user/alc/PQ_LAUNDRY/sys/vm/swap_pager.c
user/alc/PQ_LAUNDRY/sys/vm/vm_pageout.c
user/alc/PQ_LAUNDRY/usr.bin/grep/regex/tre-fastmatch.c
user/alc/PQ_LAUNDRY/usr.bin/indent/args.c
user/alc/PQ_LAUNDRY/usr.bin/indent/indent.1
user/alc/PQ_LAUNDRY/usr.bin/indent/indent.c
user/alc/PQ_LAUNDRY/usr.bin/indent/indent.h
user/alc/PQ_LAUNDRY/usr.bin/indent/indent_globs.h
user/alc/PQ_LAUNDRY/usr.bin/indent/lexi.c
user/alc/PQ_LAUNDRY/usr.bin/truss/setup.c
user/alc/PQ_LAUNDRY/usr.sbin/kgzip/kgzip.8
Directory Properties:
user/alc/PQ_LAUNDRY/ (props changed)
user/alc/PQ_LAUNDRY/contrib/elftoolchain/ (props changed)
user/alc/PQ_LAUNDRY/contrib/libpcap/ (props changed)
user/alc/PQ_LAUNDRY/crypto/openssh/ (props changed)
Modified: user/alc/PQ_LAUNDRY/bin/uuidgen/uuidgen.c
==============================================================================
--- user/alc/PQ_LAUNDRY/bin/uuidgen/uuidgen.c Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/bin/uuidgen/uuidgen.c Thu Aug 4 16:36:00 2016 (r303748)
@@ -47,7 +47,7 @@ main(int argc, char *argv[])
FILE *fp;
uuid_t *store, *uuid;
char *p;
- int ch, count, i, iterate;
+ int ch, count, i, iterate, status;
count = -1; /* no count yet */
fp = stdout; /* default output file */
@@ -101,7 +101,9 @@ main(int argc, char *argv[])
uuid = store;
while (count--) {
- uuid_to_string(uuid++, &p, NULL);
+ uuid_to_string(uuid++, &p, &status);
+ if (status != uuid_s_ok)
+ err(1, "cannot stringify a UUID");
fprintf(fp, "%s\n", p);
free(p);
}
Modified: user/alc/PQ_LAUNDRY/contrib/elftoolchain/readelf/readelf.c
==============================================================================
--- user/alc/PQ_LAUNDRY/contrib/elftoolchain/readelf/readelf.c Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/contrib/elftoolchain/readelf/readelf.c Thu Aug 4 16:36:00 2016 (r303748)
@@ -343,7 +343,7 @@ static const char *note_type_openbsd(uns
static const char *note_type_unknown(unsigned int nt);
static const char *note_type_xen(unsigned int nt);
static const char *option_kind(uint8_t kind);
-static const char *phdr_type(unsigned int ptype);
+static const char *phdr_type(unsigned int mach, unsigned int ptype);
static const char *ppc_abi_fp(uint64_t fp);
static const char *ppc_abi_vector(uint64_t vec);
static void readelf_usage(int status);
@@ -622,10 +622,24 @@ elf_ver(unsigned int ver)
}
static const char *
-phdr_type(unsigned int ptype)
+phdr_type(unsigned int mach, unsigned int ptype)
{
static char s_ptype[32];
+ if (ptype >= PT_LOPROC && ptype <= PT_HIPROC) {
+ switch (mach) {
+ case EM_ARM:
+ switch (ptype) {
+ case PT_ARM_ARCHEXT: return "ARM_ARCHEXT";
+ case PT_ARM_EXIDX: return "ARM_EXIDX";
+ }
+ break;
+ }
+ snprintf(s_ptype, sizeof(s_ptype), "LOPROC+%#x",
+ ptype - PT_LOPROC);
+ return (s_ptype);
+ }
+
switch (ptype) {
case PT_NULL: return "NULL";
case PT_LOAD: return "LOAD";
@@ -639,10 +653,7 @@ phdr_type(unsigned int ptype)
case PT_GNU_STACK: return "GNU_STACK";
case PT_GNU_RELRO: return "GNU_RELRO";
default:
- if (ptype >= PT_LOPROC && ptype <= PT_HIPROC)
- snprintf(s_ptype, sizeof(s_ptype), "LOPROC+%#x",
- ptype - PT_LOPROC);
- else if (ptype >= PT_LOOS && ptype <= PT_HIOS)
+ if (ptype >= PT_LOOS && ptype <= PT_HIOS)
snprintf(s_ptype, sizeof(s_ptype), "LOOS+%#x",
ptype - PT_LOOS);
else
@@ -659,6 +670,15 @@ section_type(unsigned int mach, unsigned
if (stype >= SHT_LOPROC && stype <= SHT_HIPROC) {
switch (mach) {
+ case EM_ARM:
+ switch (stype) {
+ case SHT_ARM_EXIDX: return "ARM_EXIDX";
+ case SHT_ARM_PREEMPTMAP: return "ARM_PREEMPTMAP";
+ case SHT_ARM_ATTRIBUTES: return "ARM_ATTRIBUTES";
+ case SHT_ARM_DEBUGOVERLAY: return "ARM_DEBUGOVERLAY";
+ case SHT_ARM_OVERLAYSECTION: return "ARM_OVERLAYSECTION";
+ }
+ break;
case EM_X86_64:
switch (stype) {
case SHT_X86_64_UNWIND: return "X86_64_UNWIND";
@@ -2273,9 +2293,10 @@ dump_phdr(struct readelf *re)
#define PH_HDR "Type", "Offset", "VirtAddr", "PhysAddr", "FileSiz", \
"MemSiz", "Flg", "Align"
-#define PH_CT phdr_type(phdr.p_type), (uintmax_t)phdr.p_offset, \
- (uintmax_t)phdr.p_vaddr, (uintmax_t)phdr.p_paddr, \
- (uintmax_t)phdr.p_filesz, (uintmax_t)phdr.p_memsz, \
+#define PH_CT phdr_type(re->ehdr.e_machine, phdr.p_type), \
+ (uintmax_t)phdr.p_offset, (uintmax_t)phdr.p_vaddr, \
+ (uintmax_t)phdr.p_paddr, (uintmax_t)phdr.p_filesz, \
+ (uintmax_t)phdr.p_memsz, \
phdr.p_flags & PF_R ? 'R' : ' ', \
phdr.p_flags & PF_W ? 'W' : ' ', \
phdr.p_flags & PF_X ? 'E' : ' ', \
Modified: user/alc/PQ_LAUNDRY/contrib/libpcap/pcap-bpf.c
==============================================================================
--- user/alc/PQ_LAUNDRY/contrib/libpcap/pcap-bpf.c Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/contrib/libpcap/pcap-bpf.c Thu Aug 4 16:36:00 2016 (r303748)
@@ -431,6 +431,22 @@ pcap_create_interface(const char *device
p->activate_op = pcap_activate_bpf;
p->can_set_rfmon_op = pcap_can_set_rfmon_bpf;
+#ifdef BIOCSTSTAMP
+ /*
+ * We claim that we support microsecond and nanosecond time
+ * stamps.
+ */
+ p->tstamp_precision_count = 2;
+ p->tstamp_precision_list = malloc(2 * sizeof(u_int));
+ if (p->tstamp_precision_list == NULL) {
+ snprintf(ebuf, PCAP_ERRBUF_SIZE, "malloc: %s",
+ pcap_strerror(errno));
+ free(p);
+ return (NULL);
+ }
+ p->tstamp_precision_list[0] = PCAP_TSTAMP_PRECISION_MICRO;
+ p->tstamp_precision_list[1] = PCAP_TSTAMP_PRECISION_NANO;
+#endif /* BIOCSTSTAMP */
return (p);
}
@@ -946,7 +962,11 @@ pcap_read_bpf(pcap_t *p, int cnt, pcap_h
/*
* Loop through each packet.
*/
+#ifdef BIOCSTSTAMP
+#define bhp ((struct bpf_xhdr *)bp)
+#else
#define bhp ((struct bpf_hdr *)bp)
+#endif
ep = bp + cc;
#ifdef PCAP_FDDIPAD
pad = p->fddipad;
@@ -1008,7 +1028,25 @@ pcap_read_bpf(pcap_t *p, int cnt, pcap_h
if (pb->filtering_in_kernel ||
bpf_filter(p->fcode.bf_insns, datap, bhp->bh_datalen, caplen)) {
struct pcap_pkthdr pkthdr;
+#ifdef BIOCSTSTAMP
+ struct bintime bt;
+
+ bt.sec = bhp->bh_tstamp.bt_sec;
+ bt.frac = bhp->bh_tstamp.bt_frac;
+ if (p->opt.tstamp_precision == PCAP_TSTAMP_PRECISION_NANO) {
+ struct timespec ts;
+
+ bintime2timespec(&bt, &ts);
+ pkthdr.ts.tv_sec = ts.tv_sec;
+ pkthdr.ts.tv_usec = ts.tv_nsec;
+ } else {
+ struct timeval tv;
+ bintime2timeval(&bt, &tv);
+ pkthdr.ts.tv_sec = tv.tv_sec;
+ pkthdr.ts.tv_usec = tv.tv_usec;
+ }
+#else
pkthdr.ts.tv_sec = bhp->bh_tstamp.tv_sec;
#ifdef _AIX
/*
@@ -1019,6 +1057,7 @@ pcap_read_bpf(pcap_t *p, int cnt, pcap_h
#else
pkthdr.ts.tv_usec = bhp->bh_tstamp.tv_usec;
#endif
+#endif /* BIOCSTSTAMP */
#ifdef PCAP_FDDIPAD
if (caplen > pad)
pkthdr.caplen = caplen - pad;
@@ -2192,6 +2231,16 @@ pcap_activate_bpf(pcap_t *p)
}
}
+#ifdef BIOCSTSTAMP
+ v = BPF_T_BINTIME;
+ if (ioctl(p->fd, BIOCSTSTAMP, &v) < 0) {
+ snprintf(p->errbuf, PCAP_ERRBUF_SIZE, "BIOCSTSTAMP: %s",
+ pcap_strerror(errno));
+ status = PCAP_ERROR;
+ goto bad;
+ }
+#endif /* BIOCSTSTAMP */
+
if (ioctl(fd, BIOCGBLEN, (caddr_t)&v) < 0) {
snprintf(p->errbuf, PCAP_ERRBUF_SIZE, "BIOCGBLEN: %s",
pcap_strerror(errno));
Modified: user/alc/PQ_LAUNDRY/crypto/openssh/FREEBSD-upgrade
==============================================================================
--- user/alc/PQ_LAUNDRY/crypto/openssh/FREEBSD-upgrade Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/crypto/openssh/FREEBSD-upgrade Thu Aug 4 16:36:00 2016 (r303748)
@@ -142,30 +142,25 @@
Support for TCP wrappers was removed in upstream 6.7p1. We've
added it back by porting the 6.6p1 code forward.
-6) DSA keys
-
- DSA keys were disabled by default in upstream 6.9p1. We've added
- them back.
-
-7) Agent client reference counting
+6) Agent client reference counting
We've added code to ssh-agent.c to implement client reference
counting; the agent will automatically exit when the last client
disconnects.
-8) Class-based login restrictions
+7) Class-based login restrictions
We've added code to auth2.c to enforce the host.allow, host.deny,
times.allow and times.deny login class capabilities.
-9) HPN
+8) HPN
We no longer have the HPN patches (adaptive buffer size for
increased throughput on high-BxD links), but we recognize and
ignore HPN-related configuration options to avoid breaking existing
configurations.
-A) AES-CBC
+9) AES-CBC
The AES-CBC ciphers were removed from the server-side proposal list
in 6.7p1 due to theoretical weaknesses and the availability of
Modified: user/alc/PQ_LAUNDRY/crypto/openssh/config.h
==============================================================================
--- user/alc/PQ_LAUNDRY/crypto/openssh/config.h Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/crypto/openssh/config.h Thu Aug 4 16:36:00 2016 (r303748)
@@ -1701,7 +1701,7 @@
/* #undef WITH_SELINUX */
/* include SSH protocol version 1 support */
-#define WITH_SSH1 1
+/* #undef WITH_SSH1 */
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
significant byte first (like Motorola and SPARC, unlike Intel). */
Modified: user/alc/PQ_LAUNDRY/crypto/openssh/configure.ac
==============================================================================
--- user/alc/PQ_LAUNDRY/crypto/openssh/configure.ac Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/crypto/openssh/configure.ac Thu Aug 4 16:36:00 2016 (r303748)
@@ -123,7 +123,7 @@ AC_CHECK_DECL([PR_SET_NO_NEW_PRIVS], [ha
])
openssl=yes
-ssh1=yes
+ssh1=no
AC_ARG_WITH([openssl],
[ --without-openssl Disable use of OpenSSL; use only limited internal crypto **EXPERIMENTAL** ],
[ if test "x$withval" = "xno" ; then
Modified: user/alc/PQ_LAUNDRY/crypto/openssh/myproposal.h
==============================================================================
--- user/alc/PQ_LAUNDRY/crypto/openssh/myproposal.h Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/crypto/openssh/myproposal.h Thu Aug 4 16:36:00 2016 (r303748)
@@ -100,13 +100,11 @@
HOSTKEY_ECDSA_CERT_METHODS \
"ssh-ed25519-cert-v01 at openssh.com," \
"ssh-rsa-cert-v01 at openssh.com," \
- "ssh-dss-cert-v01 at openssh.com," \
HOSTKEY_ECDSA_METHODS \
"ssh-ed25519," \
"rsa-sha2-512," \
"rsa-sha2-256," \
- "ssh-rsa," \
- "ssh-dss"
+ "ssh-rsa"
/* the actual algorithms */
Modified: user/alc/PQ_LAUNDRY/crypto/openssh/servconf.c
==============================================================================
--- user/alc/PQ_LAUNDRY/crypto/openssh/servconf.c Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/crypto/openssh/servconf.c Thu Aug 4 16:36:00 2016 (r303748)
@@ -206,8 +206,6 @@ fill_default_server_options(ServerOption
/* Standard Options */
if (options->protocol == SSH_PROTO_UNKNOWN)
options->protocol = SSH_PROTO_2;
- if (options->protocol & SSH_PROTO_1)
- error("WARNING: SSH protocol version 1 enabled");
if (options->num_host_key_files == 0) {
/* fill default hostkeys for protocols */
if (options->protocol & SSH_PROTO_1)
Modified: user/alc/PQ_LAUNDRY/crypto/openssh/ssh_config.5
==============================================================================
--- user/alc/PQ_LAUNDRY/crypto/openssh/ssh_config.5 Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/crypto/openssh/ssh_config.5 Thu Aug 4 16:36:00 2016 (r303748)
@@ -871,10 +871,8 @@ ecdsa-sha2-nistp384-cert-v01 at openssh.com
ecdsa-sha2-nistp521-cert-v01 at openssh.com,
ssh-ed25519-cert-v01 at openssh.com,
ssh-rsa-cert-v01 at openssh.com,
-ssh-dss-cert-v01 at openssh.com,
-ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,
-ecdsa-sha2-nistp521,ssh-ed25519,
-ssh-rsa,ssh-dss
+ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
+ssh-ed25519,ssh-rsa
.Ed
.Pp
The
@@ -896,10 +894,8 @@ ecdsa-sha2-nistp384-cert-v01 at openssh.com
ecdsa-sha2-nistp521-cert-v01 at openssh.com,
ssh-ed25519-cert-v01 at openssh.com,
ssh-rsa-cert-v01 at openssh.com,
-ssh-dss-cert-v01 at openssh.com,
-ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,
-ecdsa-sha2-nistp521,ssh-ed25519,
-ssh-rsa,ssh-dss
+ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
+ssh-ed25519,ssh-rsa
.Ed
.Pp
If hostkeys are known for the destination host then this default is modified
@@ -1336,10 +1332,8 @@ ecdsa-sha2-nistp384-cert-v01 at openssh.com
ecdsa-sha2-nistp521-cert-v01 at openssh.com,
ssh-ed25519-cert-v01 at openssh.com,
ssh-rsa-cert-v01 at openssh.com,
-ssh-dss-cert-v01 at openssh.com,
-ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,
-ecdsa-sha2-nistp521,ssh-ed25519,
-ssh-rsa,ssh-dss
+ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
+ssh-ed25519,ssh-rsa
.Ed
.Pp
The
Modified: user/alc/PQ_LAUNDRY/crypto/openssh/sshd_config.5
==============================================================================
--- user/alc/PQ_LAUNDRY/crypto/openssh/sshd_config.5 Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/crypto/openssh/sshd_config.5 Thu Aug 4 16:36:00 2016 (r303748)
@@ -659,10 +659,8 @@ ecdsa-sha2-nistp384-cert-v01 at openssh.com
ecdsa-sha2-nistp521-cert-v01 at openssh.com,
ssh-ed25519-cert-v01 at openssh.com,
ssh-rsa-cert-v01 at openssh.com,
-ssh-dss-cert-v01 at openssh.com,
-ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,
-ecdsa-sha2-nistp521,ssh-ed25519,
-ssh-rsa,ssh-dss
+ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
+ssh-ed25519,ssh-rsa
.Ed
.Pp
The
@@ -753,10 +751,8 @@ ecdsa-sha2-nistp384-cert-v01 at openssh.com
ecdsa-sha2-nistp521-cert-v01 at openssh.com,
ssh-ed25519-cert-v01 at openssh.com,
ssh-rsa-cert-v01 at openssh.com,
-ssh-dss-cert-v01 at openssh.com,
-ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,
-ecdsa-sha2-nistp521,ssh-ed25519,
-ssh-rsa,ssh-dss
+ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
+ssh-ed25519,ssh-rsa
.Ed
.Pp
The list of available key types may also be obtained using the
@@ -1372,10 +1368,8 @@ ecdsa-sha2-nistp384-cert-v01 at openssh.com
ecdsa-sha2-nistp521-cert-v01 at openssh.com,
ssh-ed25519-cert-v01 at openssh.com,
ssh-rsa-cert-v01 at openssh.com,
-ssh-dss-cert-v01 at openssh.com,
-ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,
-ecdsa-sha2-nistp521,ssh-ed25519,
-ssh-rsa,ssh-dss
+ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,
+ssh-ed25519,ssh-rsa
.Ed
.Pp
The
Modified: user/alc/PQ_LAUNDRY/etc/rc.d/sshd
==============================================================================
--- user/alc/PQ_LAUNDRY/etc/rc.d/sshd Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/etc/rc.d/sshd Thu Aug 4 16:36:00 2016 (r303748)
@@ -23,7 +23,7 @@ extra_commands="configtest keygen reload
: ${sshd_rsa1_enable:="no"}
: ${sshd_rsa_enable:="yes"}
-: ${sshd_dsa_enable:="yes"}
+: ${sshd_dsa_enable:="no"}
: ${sshd_ecdsa_enable:="yes"}
: ${sshd_ed25519_enable:="yes"}
Modified: user/alc/PQ_LAUNDRY/include/stdio.h
==============================================================================
--- user/alc/PQ_LAUNDRY/include/stdio.h Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/include/stdio.h Thu Aug 4 16:36:00 2016 (r303748)
@@ -357,6 +357,7 @@ ssize_t getdelim(char ** __restrict, si
FILE *open_memstream(char **, size_t *);
int renameat(int, const char *, int, const char *);
int vdprintf(int, const char * __restrict, __va_list);
+/* _WITH_GETLINE to allow pre 11 sources to build on 11+ systems */
ssize_t getline(char ** __restrict, size_t * __restrict, FILE * __restrict);
int dprintf(int, const char * __restrict, ...);
#endif /* __POSIX_VISIBLE >= 200809 */
Modified: user/alc/PQ_LAUNDRY/lib/libc/gen/Makefile.inc
==============================================================================
--- user/alc/PQ_LAUNDRY/lib/libc/gen/Makefile.inc Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/lib/libc/gen/Makefile.inc Thu Aug 4 16:36:00 2016 (r303748)
@@ -390,6 +390,7 @@ MLINKS+=getgrent.3 endgrent.3 \
getgrent.3 getgrgid_r.3
MLINKS+=gethostname.3 sethostname.3
MLINKS+=getnetgrent.3 endnetgrent.3 \
+ getnetgrent.3 getnetgrent_r.3 \
getnetgrent.3 innetgr.3 \
getnetgrent.3 setnetgrent.3
MLINKS+=getprogname.3 setprogname.3
Modified: user/alc/PQ_LAUNDRY/lib/libc/gen/clock_getcpuclockid.3
==============================================================================
--- user/alc/PQ_LAUNDRY/lib/libc/gen/clock_getcpuclockid.3 Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/lib/libc/gen/clock_getcpuclockid.3 Thu Aug 4 16:36:00 2016 (r303748)
@@ -70,7 +70,9 @@ Upon successful completion,
returns zero; otherwise, an error number is returned to indicate the
error.
.Sh ERRORS
-The clock_getcpuclockid() function will fail if:
+The
+.Fn clock_getcpuclockid
+function will fail if:
.Bl -tag -width Er
.It Bq Er EPERM
The requesting process does not have permission to access the CPU-time
@@ -84,7 +86,7 @@ No process can be found corresponding to
.Sh STANDARDS
The
.Fn clock_getcpuclockid
-function conform to
+function conforms to
.St -p1003.1-2001 .
.Sh HISTORY
The
Modified: user/alc/PQ_LAUNDRY/lib/libc/gen/glob.c
==============================================================================
--- user/alc/PQ_LAUNDRY/lib/libc/gen/glob.c Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/lib/libc/gen/glob.c Thu Aug 4 16:36:00 2016 (r303748)
@@ -177,6 +177,8 @@ static int globexp2(const Char *, const
static int globfinal(glob_t *, struct glob_limit *, size_t,
const char *);
static int match(Char *, Char *, Char *);
+static int err_nomatch(glob_t *, struct glob_limit *, const char *);
+static int err_aborted(glob_t *, int, char *);
#ifdef DEBUG
static void qprintf(const char *, Char *);
#endif
@@ -217,8 +219,7 @@ glob(const char * __restrict pattern, in
while (bufnext <= bufend) {
clen = mbrtowc(&wc, patnext, MB_LEN_MAX, &mbs);
if (clen == (size_t)-1 || clen == (size_t)-2)
- return (globfinal(pglob, &limit,
- pglob->gl_pathc, pattern));
+ return (err_nomatch(pglob, &limit, pattern));
else if (clen == 0) {
too_long = 0;
break;
@@ -240,8 +241,7 @@ glob(const char * __restrict pattern, in
prot = 0;
clen = mbrtowc(&wc, patnext, MB_LEN_MAX, &mbs);
if (clen == (size_t)-1 || clen == (size_t)-2)
- return (globfinal(pglob, &limit,
- pglob->gl_pathc, pattern));
+ return (err_nomatch(pglob, &limit, pattern));
else if (clen == 0) {
too_long = 0;
break;
@@ -251,7 +251,7 @@ glob(const char * __restrict pattern, in
}
}
if (too_long)
- return (globfinal(pglob, &limit, pglob->gl_pathc, pattern));
+ return (err_nomatch(pglob, &limit, pattern));
*bufnext = EOS;
if (flags & GLOB_BRACE)
@@ -608,20 +608,9 @@ glob0(const Char *pattern, glob_t *pglob
static int
globfinal(glob_t *pglob, struct glob_limit *limit, size_t oldpathc,
const char *origpat) {
- /*
- * If there was no match we are going to append the origpat
- * if GLOB_NOCHECK was specified or if GLOB_NOMAGIC was specified
- * and the origpat did not contain any magic characters
- * GLOB_NOMAGIC is there just for compatibility with csh.
- */
- if (pglob->gl_pathc == oldpathc) {
- if ((pglob->gl_flags & GLOB_NOCHECK) ||
- ((pglob->gl_flags & GLOB_NOMAGIC) &&
- !(pglob->gl_flags & GLOB_MAGCHAR)))
- return (globextend(NULL, pglob, limit, origpat));
- else
- return (GLOB_NOMATCH);
- }
+ if (pglob->gl_pathc == oldpathc)
+ return (err_nomatch(pglob, limit, origpat));
+
if (!(pglob->gl_flags & GLOB_NOSORT))
qsort(pglob->gl_pathv + pglob->gl_offs + oldpathc,
pglob->gl_pathc - oldpathc, sizeof(char *), compare);
@@ -750,16 +739,10 @@ glob3(Char *pathbuf, Char *pathend, Char
if ((dirp = g_opendir(pathbuf, pglob)) == NULL) {
if (errno == ENOENT || errno == ENOTDIR)
return (0);
- if ((pglob->gl_errfunc != NULL &&
- pglob->gl_errfunc(buf, errno)) ||
- (pglob->gl_flags & GLOB_ERR)) {
- if (errno == 0)
- errno = saverrno;
- return (GLOB_ABORTED);
- }
+ err = err_aborted(pglob, errno, buf);
if (errno == 0)
errno = saverrno;
- return (0);
+ return (err);
}
err = 0;
@@ -809,11 +792,9 @@ glob3(Char *pathbuf, Char *pathend, Char
}
sc += clen;
}
- if (too_long && ((pglob->gl_errfunc != NULL &&
- pglob->gl_errfunc(buf, ENAMETOOLONG)) ||
- (pglob->gl_flags & GLOB_ERR))) {
+ if (too_long && (err = err_aborted(pglob, ENAMETOOLONG,
+ buf))) {
errno = ENAMETOOLONG;
- err = GLOB_ABORTED;
break;
}
if (too_long || !match(pathend, pattern, restpattern)) {
@@ -840,9 +821,9 @@ glob3(Char *pathbuf, Char *pathend, Char
if (err)
return (err);
- if (dp == NULL && errno != 0 && ((pglob->gl_errfunc != NULL &&
- pglob->gl_errfunc(buf, errno)) || (pglob->gl_flags & GLOB_ERR)))
- return (GLOB_ABORTED);
+ if (dp == NULL && errno != 0 &&
+ (err = err_aborted(pglob, errno, buf)))
+ return (err);
if (errno == 0)
errno = saverrno;
@@ -1079,6 +1060,29 @@ g_Ctoc(const Char *str, char *buf, size_
return (1);
}
+static int
+err_nomatch(glob_t *pglob, struct glob_limit *limit, const char *origpat) {
+ /*
+ * If there was no match we are going to append the origpat
+ * if GLOB_NOCHECK was specified or if GLOB_NOMAGIC was specified
+ * and the origpat did not contain any magic characters
+ * GLOB_NOMAGIC is there just for compatibility with csh.
+ */
+ if ((pglob->gl_flags & GLOB_NOCHECK) ||
+ ((pglob->gl_flags & GLOB_NOMAGIC) &&
+ !(pglob->gl_flags & GLOB_MAGCHAR)))
+ return (globextend(NULL, pglob, limit, origpat));
+ return (GLOB_NOMATCH);
+}
+
+static int
+err_aborted(glob_t *pglob, int err, char *buf) {
+ if ((pglob->gl_errfunc != NULL && pglob->gl_errfunc(buf, err)) ||
+ (pglob->gl_flags & GLOB_ERR))
+ return (GLOB_ABORTED);
+ return (0);
+}
+
#ifdef DEBUG
static void
qprintf(const char *str, Char *s)
Modified: user/alc/PQ_LAUNDRY/lib/libc/sys/mprotect.2
==============================================================================
--- user/alc/PQ_LAUNDRY/lib/libc/sys/mprotect.2 Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/lib/libc/sys/mprotect.2 Thu Aug 4 16:36:00 2016 (r303748)
@@ -28,7 +28,7 @@
.\" @(#)mprotect.2 8.1 (Berkeley) 6/9/93
.\" $FreeBSD$
.\"
-.Dd June 9, 1993
+.Dd August 3, 2016
.Dt MPROTECT 2
.Os
.Sh NAME
@@ -39,7 +39,7 @@
.Sh SYNOPSIS
.In sys/mman.h
.Ft int
-.Fn mprotect "const void *addr" "size_t len" "int prot"
+.Fn mprotect "void *addr" "size_t len" "int prot"
.Sh DESCRIPTION
The
.Fn mprotect
Modified: user/alc/PQ_LAUNDRY/lib/libproc/proc_create.c
==============================================================================
--- user/alc/PQ_LAUNDRY/lib/libproc/proc_create.c Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/lib/libproc/proc_create.c Thu Aug 4 16:36:00 2016 (r303748)
@@ -73,9 +73,9 @@ proc_init(pid_t pid, int flags, int stat
struct proc_handle *phdl;
int error, class, count, fd;
- *pphdl = NULL;
+ error = ENOMEM;
if ((phdl = malloc(sizeof(*phdl))) == NULL)
- return (ENOMEM);
+ goto out;
memset(phdl, 0, sizeof(*phdl));
phdl->pid = pid;
@@ -83,17 +83,17 @@ proc_init(pid_t pid, int flags, int stat
phdl->status = status;
phdl->procstat = procstat_open_sysctl();
if (phdl->procstat == NULL)
- return (ENOMEM);
+ goto out;
/* Obtain a path to the executable. */
if ((kp = procstat_getprocs(phdl->procstat, KERN_PROC_PID, pid,
&count)) == NULL)
- return (ENOMEM);
+ goto out;
error = procstat_getpathname(phdl->procstat, kp, phdl->execpath,
sizeof(phdl->execpath));
procstat_freeprocs(phdl->procstat, kp);
if (error != 0)
- return (error);
+ goto out;
/* Use it to determine the data model for the process. */
if ((fd = open(phdl->execpath, O_RDONLY)) < 0) {
Modified: user/alc/PQ_LAUNDRY/sbin/geom/class/eli/geli.8
==============================================================================
--- user/alc/PQ_LAUNDRY/sbin/geom/class/eli/geli.8 Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/sbin/geom/class/eli/geli.8 Thu Aug 4 16:36:00 2016 (r303748)
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd July 10, 2015
+.Dd August 3, 2016
.Dt GELI 8
.Os
.Sh NAME
@@ -266,7 +266,7 @@ If the option is not given, there will b
The recommended algorithm is
.Nm HMAC/SHA256 .
.It Fl b
-Ask for the passphrase on boot, before the root partition is mounted.
+Try to decrypt this partition during boot, before the root partition is mounted.
This makes it possible to use an encrypted root partition.
One will still need bootable unencrypted storage with a
.Pa /boot/
Modified: user/alc/PQ_LAUNDRY/sbin/pfctl/pfctl.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sbin/pfctl/pfctl.c Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/sbin/pfctl/pfctl.c Thu Aug 4 16:36:00 2016 (r303748)
@@ -82,7 +82,7 @@ int pfctl_load_limit(struct pfctl *, un
int pfctl_load_timeout(struct pfctl *, unsigned int, unsigned int);
int pfctl_load_debug(struct pfctl *, unsigned int);
int pfctl_load_logif(struct pfctl *, char *);
-int pfctl_load_hostid(struct pfctl *, unsigned int);
+int pfctl_load_hostid(struct pfctl *, u_int32_t);
int pfctl_get_pool(int, struct pf_pool *, u_int32_t, u_int32_t, int,
char *);
void pfctl_print_rule_counters(struct pf_rule *, int);
@@ -100,7 +100,7 @@ int pfctl_ruleset_trans(struct pfctl *,
int pfctl_load_ruleset(struct pfctl *, char *,
struct pf_ruleset *, int, int);
int pfctl_load_rule(struct pfctl *, char *, struct pf_rule *, int);
-const char *pfctl_lookup_option(char *, const char **);
+const char *pfctl_lookup_option(char *, const char * const *);
struct pf_anchor_global pf_anchors;
struct pf_anchor pf_main_anchor;
@@ -111,7 +111,7 @@ const char *showopt;
const char *debugopt;
char *anchoropt;
const char *optiopt = NULL;
-char *pf_device = "/dev/pf";
+const char *pf_device = "/dev/pf";
char *ifaceopt;
char *tableopt;
const char *tblcmdopt;
@@ -203,27 +203,27 @@ static const struct {
{ NULL, NULL }
};
-static const char *clearopt_list[] = {
+static const char * const clearopt_list[] = {
"nat", "queue", "rules", "Sources",
"states", "info", "Tables", "osfp", "all", NULL
};
-static const char *showopt_list[] = {
+static const char * const showopt_list[] = {
"nat", "queue", "rules", "Anchors", "Sources", "states", "info",
"Interfaces", "labels", "timeouts", "memory", "Tables", "osfp",
"all", NULL
};
-static const char *tblcmdopt_list[] = {
+static const char * const tblcmdopt_list[] = {
"kill", "flush", "add", "delete", "load", "replace", "show",
"test", "zero", "expire", NULL
};
-static const char *debugopt_list[] = {
+static const char * const debugopt_list[] = {
"none", "urgent", "misc", "loud", NULL
};
-static const char *optiopt_list[] = {
+static const char * const optiopt_list[] = {
"none", "basic", "profile", NULL
};
@@ -1975,7 +1975,7 @@ pfctl_show_anchors(int dev, int opts, ch
}
const char *
-pfctl_lookup_option(char *cmd, const char **list)
+pfctl_lookup_option(char *cmd, const char * const *list)
{
if (cmd != NULL && *cmd)
for (; *list; list++)
Modified: user/alc/PQ_LAUNDRY/sbin/pfctl/pfctl_parser.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sbin/pfctl/pfctl_parser.c Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/sbin/pfctl/pfctl_parser.c Thu Aug 4 16:36:00 2016 (r303748)
@@ -76,7 +76,7 @@ struct node_host *host_v4(const char *,
struct node_host *host_v6(const char *, int);
struct node_host *host_dns(const char *, int, int);
-const char *tcpflags = "FSRPAUEW";
+const char * const tcpflags = "FSRPAUEW";
static const struct icmptypeent icmp_type[] = {
{ "echoreq", ICMP_ECHO },
@@ -473,10 +473,10 @@ print_pool(struct pf_pool *pool, u_int16
printf(" static-port");
}
-const char *pf_reasons[PFRES_MAX+1] = PFRES_NAMES;
-const char *pf_lcounters[LCNT_MAX+1] = LCNT_NAMES;
-const char *pf_fcounters[FCNT_MAX+1] = FCNT_NAMES;
-const char *pf_scounters[FCNT_MAX+1] = FCNT_NAMES;
+const char * const pf_reasons[PFRES_MAX+1] = PFRES_NAMES;
+const char * const pf_lcounters[LCNT_MAX+1] = LCNT_NAMES;
+const char * const pf_fcounters[FCNT_MAX+1] = FCNT_NAMES;
+const char * const pf_scounters[FCNT_MAX+1] = FCNT_NAMES;
void
print_status(struct pf_status *s, int opts)
Modified: user/alc/PQ_LAUNDRY/sbin/pfctl/pfctl_radix.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sbin/pfctl/pfctl_radix.c Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/sbin/pfctl/pfctl_radix.c Thu Aug 4 16:36:00 2016 (r303748)
@@ -401,7 +401,7 @@ pfi_get_ifaces(const char *filter, struc
/* buffer management code */
-size_t buf_esize[PFRB_MAX] = { 0,
+const size_t buf_esize[PFRB_MAX] = { 0,
sizeof(struct pfr_table), sizeof(struct pfr_tstats),
sizeof(struct pfr_addr), sizeof(struct pfr_astats),
sizeof(struct pfi_kif), sizeof(struct pfioc_trans_e)
Modified: user/alc/PQ_LAUNDRY/share/man/man3/pthread_getcpuclockid.3
==============================================================================
--- user/alc/PQ_LAUNDRY/share/man/man3/pthread_getcpuclockid.3 Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/share/man/man3/pthread_getcpuclockid.3 Thu Aug 4 16:36:00 2016 (r303748)
@@ -51,8 +51,8 @@
The
.Fn pthread_getcpuclockid
returns the clock ID of the CPU-time clock of the thread specified by
-.Fa thread_id .
-If the thread described by
+.Fa thread_id ,
+if the thread described by
.Fa thread_id
exists.
.Sh RETURN VALUES
@@ -61,7 +61,9 @@ Upon successful completion,
returns zero; otherwise, an error number is returned to indicate the
error.
.Sh ERRORS
-The pthread_getcpuclockid() function will fail if:
+The
+.Fn pthread_getcpuclockid
+function will fail if:
.Bl -tag -width Er
.It Bq Er ESRCH
The value specified by
Modified: user/alc/PQ_LAUNDRY/share/man/man9/Makefile
==============================================================================
--- user/alc/PQ_LAUNDRY/share/man/man9/Makefile Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/share/man/man9/Makefile Thu Aug 4 16:36:00 2016 (r303748)
@@ -1303,6 +1303,7 @@ MLINKS+=pci.9 pci_alloc_msi.9 \
pci.9 pci_get_vpd_ident.9 \
pci.9 pci_get_vpd_readonly.9 \
pci.9 pci_iov_attach.9 \
+ pci.9 pci_iov_attach_name.9 \
pci.9 pci_iov_detach.9 \
pci.9 pci_msi_count.9 \
pci.9 pci_msix_count.9 \
Modified: user/alc/PQ_LAUNDRY/share/man/man9/pci.9
==============================================================================
--- user/alc/PQ_LAUNDRY/share/man/man9/pci.9 Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/share/man/man9/pci.9 Thu Aug 4 16:36:00 2016 (r303748)
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd June 24, 2016
+.Dd August 3, 2016
.Dt PCI 9
.Os
.Sh NAME
@@ -50,6 +50,7 @@
.Nm pci_get_vpd_ident ,
.Nm pci_get_vpd_readonly ,
.Nm pci_iov_attach ,
+.Nm pci_iov_attach_name ,
.Nm pci_iov_detach ,
.Nm pci_msi_count ,
.Nm pci_msix_count ,
@@ -152,6 +153,14 @@
.Ft int
.Fn pci_iov_attach "device_t dev" "nvlist_t *pf_schema" "nvlist_t *vf_schema"
.Ft int
+.Fo pci_iov_attach_name
+.Fa "device_t dev"
+.Fa "nvlist_t *pf_schema"
+.Fa "nvlist_t *vf_schema"
+.Fa "const char *fmt"
+.Fa "..."
+.Fc
+.Ft int
.Fn pci_iov_detach "device_t dev"
.Sh DESCRIPTION
The
@@ -595,6 +604,20 @@ and is responsible for freeing them.
The driver must never free the schemas itself.
.Pp
The
+.Fn pci_iov_attach_name
+function is a variant of
+.Fn pci_iov_attach
+that allows the name of the associated character device in
+.Pa /dev/iov
+to be specified by
+.Fa fmt .
+The
+.Fn pci_iov_attach
+function uses the name of
+.Fa dev
+as the device name.
+.Pp
+The
.Fn pci_iov_detach
function is used to advise the SR-IOV infrastructure that the driver for the
given device is attempting to detach and that all SR-IOV resources for the
Modified: user/alc/PQ_LAUNDRY/share/misc/bsd-family-tree
==============================================================================
--- user/alc/PQ_LAUNDRY/share/misc/bsd-family-tree Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/share/misc/bsd-family-tree Thu Aug 4 16:36:00 2016 (r303748)
@@ -338,7 +338,7 @@ FreeBSD 5.2 | |
| | | | | DragonFly 4.4.1
| FreeBSD | | OpenBSD 5.9 |
| 10.3 | | | |
- | | | | |
+ | | | | DragonFly 4.6.0
*--FreeBSD | | | |
| 11.0 | | | |
| | | | |
@@ -691,6 +691,7 @@ OpenBSD 5.8 2015-10-18 [OBD]
DragonFly 4.4.1 2015-12-07 [DFB]
OpenBSD 5.9 2016-03-29 [OBD]
FreeBSD 10.3 2016-04-04 [FBD]
+DragonFly 4.6.0 2016-08-02 [DFB]
Bibliography
------------------------
Modified: user/alc/PQ_LAUNDRY/sys/amd64/vmm/vmm.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/amd64/vmm/vmm.c Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/sys/amd64/vmm/vmm.c Thu Aug 4 16:36:00 2016 (r303748)
@@ -914,7 +914,7 @@ vm_gpa_hold(struct vm *vm, int vcpuid, v
* guaranteed if at least one vcpu is in the VCPU_FROZEN state.
*/
int state;
- KASSERT(vcpuid >= -1 || vcpuid < VM_MAXCPU, ("%s: invalid vcpuid %d",
+ KASSERT(vcpuid >= -1 && vcpuid < VM_MAXCPU, ("%s: invalid vcpuid %d",
__func__, vcpuid));
for (i = 0; i < VM_MAXCPU; i++) {
if (vcpuid != -1 && vcpuid != i)
Modified: user/alc/PQ_LAUNDRY/sys/arm/allwinner/axp209.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/arm/allwinner/axp209.c Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/sys/arm/allwinner/axp209.c Thu Aug 4 16:36:00 2016 (r303748)
@@ -707,10 +707,10 @@ extern devclass_t ofwgpiobus_devclass, g
extern driver_t ofw_gpiobus_driver, gpioc_driver;
EARLY_DRIVER_MODULE(axp209, iicbus, axp209_driver, axp209_devclass,
- 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
+ 0, 0, BUS_PASS_INTERRUPT + BUS_PASS_ORDER_LATE);
EARLY_DRIVER_MODULE(ofw_gpiobus, axp209_pmu, ofw_gpiobus_driver,
- ofwgpiobus_devclass, 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
-EARLY_DRIVER_MODULE(gpioc, axp209_pmu, gpioc_driver, gpioc_devclass,
- 0, 0, BUS_PASS_RESOURCE + BUS_PASS_ORDER_MIDDLE);
+ ofwgpiobus_devclass, 0, 0, BUS_PASS_INTERRUPT + BUS_PASS_ORDER_LATE);
+DRIVER_MODULE(gpioc, axp209_pmu, gpioc_driver, gpioc_devclass,
+ 0, 0);
MODULE_VERSION(axp209, 1);
MODULE_DEPEND(axp209, iicbus, 1, 1, 1);
Modified: user/alc/PQ_LAUNDRY/sys/arm/include/elf.h
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/arm/include/elf.h Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/sys/arm/include/elf.h Thu Aug 4 16:36:00 2016 (r303748)
@@ -55,9 +55,6 @@ __ElfType(Auxinfo);
#define ELF_MACHINE_OK(x) ((x) == EM_ARM)
-/* Unwind info section type */
-#define PT_ARM_EXIDX (PT_LOPROC + 1)
-
/*
* Relocation types.
*/
Modified: user/alc/PQ_LAUNDRY/sys/arm64/arm64/pmap.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/arm64/arm64/pmap.c Thu Aug 4 16:20:12 2016 (r303747)
+++ user/alc/PQ_LAUNDRY/sys/arm64/arm64/pmap.c Thu Aug 4 16:36:00 2016 (r303748)
@@ -218,8 +218,6 @@ vm_offset_t kernel_vm_end = 0;
struct msgbuf *msgbufp = NULL;
-static struct rwlock_padalign pvh_global_lock;
-
vm_paddr_t dmap_phys_base; /* The start of the dmap region */
vm_paddr_t dmap_phys_max; /* The limit of the dmap region */
vm_offset_t dmap_max_addr; /* The virtual address limit of the dmap */
@@ -671,11 +669,6 @@ pmap_bootstrap(vm_offset_t l0pt, vm_offs
kernel_pmap_store.pm_l0 = (pd_entry_t *)l0pt;
PMAP_LOCK_INIT(kernel_pmap);
- /*
- * Initialize the global pv list lock.
- */
- rw_init(&pvh_global_lock, "pmap pv global");
-
/* Assume the address we were loaded to is a valid physical address */
min_pa = max_pa = KERNBASE - kern_delta;
@@ -1404,9 +1397,7 @@ _pmap_alloc_l3(pmap_t pmap, vm_pindex_t
if (lockp != NULL) {
RELEASE_PV_LIST_LOCK(lockp);
PMAP_UNLOCK(pmap);
- rw_runlock(&pvh_global_lock);
VM_WAIT;
- rw_rlock(&pvh_global_lock);
PMAP_LOCK(pmap);
}
@@ -1748,7 +1739,6 @@ free_pv_entry(pmap_t pmap, pv_entry_t pv
struct pv_chunk *pc;
int idx, field, bit;
- rw_assert(&pvh_global_lock, RA_LOCKED);
PMAP_LOCK_ASSERT(pmap, MA_OWNED);
PV_STAT(atomic_add_long(&pv_entry_frees, 1));
PV_STAT(atomic_add_int(&pv_entry_spare, 1));
@@ -1805,7 +1795,6 @@ get_pv_entry(pmap_t pmap, struct rwlock
struct pv_chunk *pc;
vm_page_t m;
- rw_assert(&pvh_global_lock, RA_LOCKED);
PMAP_LOCK_ASSERT(pmap, MA_OWNED);
PV_STAT(atomic_add_long(&pv_entry_allocs, 1));
retry:
@@ -1873,7 +1862,6 @@ pmap_pvh_remove(struct md_page *pvh, pma
{
pv_entry_t pv;
- rw_assert(&pvh_global_lock, RA_LOCKED);
TAILQ_FOREACH(pv, &pvh->pv_list, pv_next) {
if (pmap == PV_PMAP(pv) && va == pv->pv_va) {
TAILQ_REMOVE(&pvh->pv_list, pv, pv_next);
@@ -1909,7 +1897,6 @@ pmap_try_insert_pv_entry(pmap_t pmap, vm
{
pv_entry_t pv;
- rw_assert(&pvh_global_lock, RA_LOCKED);
PMAP_LOCK_ASSERT(pmap, MA_OWNED);
/* Pass NULL instead of the lock pointer to disable reclamation. */
if ((pv = get_pv_entry(pmap, NULL)) != NULL) {
@@ -1978,7 +1965,6 @@ pmap_remove(pmap_t pmap, vm_offset_t sva
anyvalid = 0;
SLIST_INIT(&free);
- rw_rlock(&pvh_global_lock);
PMAP_LOCK(pmap);
lock = NULL;
@@ -2057,7 +2043,6 @@ pmap_remove(pmap_t pmap, vm_offset_t sva
rw_wunlock(lock);
if (anyvalid)
pmap_invalidate_all(pmap);
- rw_runlock(&pvh_global_lock);
PMAP_UNLOCK(pmap);
pmap_free_zero_pages(&free);
}
@@ -2080,18 +2065,31 @@ pmap_remove_all(vm_page_t m)
{
pv_entry_t pv;
pmap_t pmap;
+ struct rwlock *lock;
pd_entry_t *pde, tpde;
pt_entry_t *pte, tpte;
struct spglist free;
- int lvl;
+ int lvl, md_gen;
KASSERT((m->oflags & VPO_UNMANAGED) == 0,
("pmap_remove_all: page %p is not managed", m));
SLIST_INIT(&free);
- rw_wlock(&pvh_global_lock);
+ lock = VM_PAGE_TO_PV_LIST_LOCK(m);
+retry:
+ rw_wlock(lock);
while ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) {
pmap = PV_PMAP(pv);
- PMAP_LOCK(pmap);
+ if (!PMAP_TRYLOCK(pmap)) {
+ md_gen = m->md.pv_gen;
+ rw_wunlock(lock);
+ PMAP_LOCK(pmap);
+ rw_wlock(lock);
+ if (md_gen != m->md.pv_gen) {
+ rw_wunlock(lock);
+ PMAP_UNLOCK(pmap);
+ goto retry;
+ }
+ }
pmap_resident_count_dec(pmap, 1);
pde = pmap_pde(pmap, pv->pv_va, &lvl);
@@ -2126,7 +2124,7 @@ pmap_remove_all(vm_page_t m)
PMAP_UNLOCK(pmap);
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-user
mailing list