NetBSD/external/cddl/osnet/sys/sys
riastradh fe26b32950 Use callout_halt, not callout_stop, for FreeBSD callout_drain shim.
Callers expect callout_drain will wait for it to complete if it has
fired.
2018-11-15 05:43:57 +00:00
..
acl.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
atomic.h
bitmap.h
byteorder.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
callb.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
cdefs.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
cmn_err.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
cpupart.h
cpuvar_defs.h
cpuvar.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
cred.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
ctype.h
cyclic_impl.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
cyclic.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
debug.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
dirent.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
dkio.h
dnlc.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
elf.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
errno.h prevent re-defines 2016-02-01 02:09:54 +00:00
extdirent.h
feature_tests.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
int_limits.h
int_types.h
isa_defs.h Define _LP64 or _ILP32 for all architectures. 2018-11-14 17:09:08 +00:00
kcondvar.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
kernel.h
kidmap.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
kmem.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
kobj.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
kstat.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
linker.h
misc.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
mkdev.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
mman.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
mntent.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
mnttab.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
modctl.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
mount.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
mutex_impl.h
mutex.h The native mutex.h has a userland visible portion. make it so and fix the 2018-06-03 14:56:52 +00:00
nvnamespace.h Avoid conflicts with "our" (the FreeBSD) nvpair/nvlist implementation by 2018-10-23 22:26:14 +00:00
objfs.h
open.h
opentypes.h remove duplicate typedef (it is in sunddi.h) 2018-09-06 00:44:43 +00:00
param.h don't include <sys/proc.h> 2018-06-02 15:47:22 +00:00
pathname.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
pcpu.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
policy.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
priv_names.h
proc.h Omit unused definition with broken cpp conditional. 2018-11-15 04:55:26 +00:00
procset.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
racct.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
random.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
README Add a blurb of a general approach how to maintain these files. 2018-06-03 20:59:49 +00:00
refstr.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
rwlock_impl.h
rwlock.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
sdt.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
sema.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
sha2.h
sid.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
sig.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
stat.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
string.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
sunddi.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
sunldi.h
sysmacros.h tweak the osnet compat headers to allow building on MacOS and Linux hosts. 2018-06-03 05:55:08 +00:00
systm.h - Remove more extraneous includes to avoid circular dependencies with the 2018-06-02 18:46:34 +00:00
thread.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
time.h tweak the osnet compat headers to allow building on MacOS and Linux hosts. 2018-06-03 05:55:08 +00:00
types32.h
types.h tweak the osnet compat headers to allow building on MacOS and Linux hosts. 2018-06-03 05:55:08 +00:00
uio.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
va_list.h
varargs.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
vfs.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
vm.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
vnode.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00
zfs_context.h Use callout_halt, not callout_stop, for FreeBSD callout_drain shim. 2018-11-15 05:43:57 +00:00
zfs_prop.h
zone.h merge a new version of the CDDL dtrace and ZFS code. 2018-05-28 21:04:59 +00:00

# $NetBSD: README,v 1.1 2018/06/03 20:59:49 christos Exp $

General guidelines for system wrapper header maintainance.

There are two kinds of system header files:
        1. "infrastructure" headers that provide base definitions and
           other stuff that other headers use (systm.h)
        2.  "feature" headers that provide a specific feature (proc.h).

The solaris ones generally augment ours; the template should be:

solaris/foo.h:

    #ifndef SOLARIS_SYS_FOO_H
    #define SOLARIS_SYS_FOO_H

    /*
     * This include should not be in #ifdef KERNEL.
     * It is the job of the header itself to protect itself.
     * Unless Solaris exposes this header in userland, where
     * it is probably better to fix our header...
     */
    #include_next <sys/foo.h>

    /* More Solaris-specific definitions */

    #endif /* SOLARIS_SYS_FOO_H */

Now there caaes where the solaris headers expose more stuff than ours,
so we need to include more of our system headers from theirs. When that
happens the rule should be that:

Their infrastructure headers should not include our feature headers,
but can include our infrastructure headers, otherwise we end up with
circular dependencies. Violations to the rule should be kept to a minimum
and tested carefully.

In the general case, if we want the augmented symbols we should include
the solaris ones first in the search path.