summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorgjb <gjb@FreeBSD.org>2016-02-22 12:28:23 +0000
committergjb <gjb@FreeBSD.org>2016-02-22 12:28:23 +0000
commit8bfb527a82b3844c875182139d053826902f90d6 (patch)
tree8a0600337b49dbed7acd411e862bbcfba916c0bc /lib
parentadbdbd2fff21519f0d418a20255dfd18a2381dbc (diff)
parent6a7ac9da7c8a3a5b9c0a21830670b06935f58332 (diff)
downloadFreeBSD-src-8bfb527a82b3844c875182139d053826902f90d6.zip
FreeBSD-src-8bfb527a82b3844c875182139d053826902f90d6.tar.gz
MFH
Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'lib')
-rw-r--r--lib/libc/gen/directory.33
-rw-r--r--lib/libc/sys/lseek.218
-rw-r--r--lib/libc/tests/gen/posix_spawn/Makefile2
-rw-r--r--lib/libc/tests/sys/Makefile2
-rw-r--r--lib/libkvm/kvm_arm.c2
-rw-r--r--lib/libkvm/kvm_arm.h13
-rw-r--r--lib/libvmmapi/vmmapi.c1
7 files changed, 23 insertions, 18 deletions
diff --git a/lib/libc/gen/directory.3 b/lib/libc/gen/directory.3
index f0d0f4b..3919805 100644
--- a/lib/libc/gen/directory.3
+++ b/lib/libc/gen/directory.3
@@ -28,7 +28,7 @@
.\" @(#)directory.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd May 6, 2015
+.Dd February 19, 2016
.Dt DIRECTORY 3
.Os
.Sh NAME
@@ -46,7 +46,6 @@
.Sh LIBRARY
.Lb libc
.Sh SYNOPSIS
-.In sys/types.h
.In dirent.h
.Ft DIR *
.Fn opendir "const char *filename"
diff --git a/lib/libc/sys/lseek.2 b/lib/libc/sys/lseek.2
index 349940a..017dc54 100644
--- a/lib/libc/sys/lseek.2
+++ b/lib/libc/sys/lseek.2
@@ -28,7 +28,7 @@
.\" @(#)lseek.2 8.3 (Berkeley) 4/19/94
.\" $FreeBSD$
.\"
-.Dd May 26, 2012
+.Dd February 18, 2016
.Dt LSEEK 2
.Os
.Sh NAME
@@ -131,8 +131,14 @@ Applications can use
.Dv SEEK_HOLE
to optimise their behavior for ranges of zeros, but must not depend on it to
find all such ranges in a file.
+Each file is presented as having a zero-size virtual hole at the very
+end of the file.
The existence of a hole at the end of every data region allows for easy
-programming and implies that a virtual hole exists at the end of the file.
+programming and also provides compatibility to the original implementation
+in Solaris.
+It also causes the current file size (i.e., end-of-file offset) to be returned
+to indicate that there are no more holes past the supplied
+.Fa offset .
Applications should use
.Fn fpathconf _PC_MIN_HOLE_SIZE
or
@@ -176,9 +182,11 @@ be negative for a non-character special file.
For
.Dv SEEK_DATA ,
there are no more data regions past the supplied offset.
-For
-.Dv SEEK_HOLE ,
-there are no more holes past the supplied offset.
+Due to existence of the hole at the end of the file, for
+.Dv SEEK_HOLE
+this error is only returned when the
+.Fa offset
+already points to the end-of-file position.
.It Bq Er EOVERFLOW
The resulting file offset would be a value which cannot be represented
correctly in an object of type
diff --git a/lib/libc/tests/gen/posix_spawn/Makefile b/lib/libc/tests/gen/posix_spawn/Makefile
index a3e88af..659f73b 100644
--- a/lib/libc/tests/gen/posix_spawn/Makefile
+++ b/lib/libc/tests/gen/posix_spawn/Makefile
@@ -24,7 +24,7 @@ CLEANFILES+= h_nonexec
.include "../../Makefile.netbsd-tests"
h_zero:
- dd if=/dev/zero of=h_zero bs=1k count=2
+ dd if=/dev/zero of=h_zero bs=1k count=2 status=none
chmod a+x h_zero
CLEANFILES+= h_zero
diff --git a/lib/libc/tests/sys/Makefile b/lib/libc/tests/sys/Makefile
index 786e292..e79204a 100644
--- a/lib/libc/tests/sys/Makefile
+++ b/lib/libc/tests/sys/Makefile
@@ -84,6 +84,6 @@ FILESPACKAGE= ${PACKAGE}
CLEANFILES= truncate_test.root_owned
truncate_test.root_owned:
- dd if=/dev/null bs=1 count=1 of=${.TARGET}
+ dd if=/dev/null bs=1 count=1 of=${.TARGET} status=none
.include <bsd.test.mk>
diff --git a/lib/libkvm/kvm_arm.c b/lib/libkvm/kvm_arm.c
index bbead35..ae5fb5b 100644
--- a/lib/libkvm/kvm_arm.c
+++ b/lib/libkvm/kvm_arm.c
@@ -183,7 +183,7 @@ _arm_initvtop(kvm_t *kd)
#define l1pte_section_p(pde) (((pde) & ARM_L1_TYPE_MASK) == ARM_L1_TYPE_S)
#define l1pte_valid(pde) ((pde) != 0)
#define l2pte_valid(pte) ((pte) != 0)
-#define l2pte_index(v) (((v) & ARM_L2_ADDR_BITS) >> ARM_L2_S_SHIFT)
+#define l2pte_index(v) (((v) & ARM_L1_S_OFFSET) >> ARM_L2_S_SHIFT)
static int
diff --git a/lib/libkvm/kvm_arm.h b/lib/libkvm/kvm_arm.h
index 096a6b1..38d05cd 100644
--- a/lib/libkvm/kvm_arm.h
+++ b/lib/libkvm/kvm_arm.h
@@ -29,10 +29,6 @@
#ifndef __KVM_ARM_H__
#define __KVM_ARM_H__
-#ifdef __arm__
-#include <machine/pte.h>
-#endif
-
typedef uint32_t arm_physaddr_t;
typedef uint32_t arm_pd_entry_t;
typedef uint32_t arm_pt_entry_t;
@@ -72,11 +68,15 @@ typedef uint32_t arm_pt_entry_t;
#define ARM_L2_TYPE_T 0x03 /* Tiny Page - 1k - not used */
#define ARM_L2_TYPE_MASK 0x03
-#define ARM_L2_ADDR_BITS 0x000ff000 /* L2 PTE address bits */
-
#ifdef __arm__
#include <machine/acle-compat.h>
+#if __ARM_ARCH >= 6
+#include <machine/pte-v6.h>
+#else
+#include <machine/pte-v4.h>
+#endif
+
_Static_assert(PAGE_SHIFT == ARM_PAGE_SHIFT, "PAGE_SHIFT mismatch");
_Static_assert(PAGE_SIZE == ARM_PAGE_SIZE, "PAGE_SIZE mismatch");
_Static_assert(PAGE_MASK == ARM_PAGE_MASK, "PAGE_MASK mismatch");
@@ -106,7 +106,6 @@ _Static_assert(L2_TYPE_S == ARM_L2_TYPE_S, "L2_TYPE_S mismatch");
_Static_assert(L2_TYPE_T == ARM_L2_TYPE_T, "L2_TYPE_T mismatch");
#endif
_Static_assert(L2_TYPE_MASK == ARM_L2_TYPE_MASK, "L2_TYPE_MASK mismatch");
-_Static_assert(L2_ADDR_BITS == ARM_L2_ADDR_BITS, "L2_ADDR_BITS mismatch");
#endif
int _arm_native(kvm_t *);
diff --git a/lib/libvmmapi/vmmapi.c b/lib/libvmmapi/vmmapi.c
index fb8eb78..3a6f210 100644
--- a/lib/libvmmapi/vmmapi.c
+++ b/lib/libvmmapi/vmmapi.c
@@ -38,7 +38,6 @@ __FBSDID("$FreeBSD$");
#include <x86/segments.h>
#include <machine/specialreg.h>
-#include <machine/param.h>
#include <errno.h>
#include <stdio.h>
OpenPOWER on IntegriCloud