nvlist
struct nvlist *nv_next;
struct nvlist *cf_root; /* "root on ra0a" */
struct nvlist *cf_dump; /* "dumps on ra0b" */
struct nvlist *dl_depends;
struct nvlist *a_devs; /* children */
struct nvlist *a_refs; /* parents */
struct nvlist *p_devs; /* children using it */
struct nvlist *d_atlist; /* e.g., "at tg" (attr list) */
struct nvlist *fi_optf; /* flattened version of above, if needed */
struct nvlist *dm_devnodes; /* information on /dev nodes */
extern struct nvlist *machinesubarches;
extern struct nvlist *options; /* options */
extern struct nvlist *fsoptions; /* filesystems */
extern struct nvlist *mkoptions; /* makeoptions */
extern struct nvlist *appmkoptions; /* appending mkoptions */
extern struct nvlist *condmkoptions; /* conditional makeoption table */
DECLHASH(nvhash, nvlist);
void deffilesystem(struct nvlist *, struct nvlist *);
void defoption(const char *, struct defoptlist *, struct nvlist *);
void defflag(const char *, struct defoptlist *, struct nvlist *, int);
void defparam(const char *, struct defoptlist *, struct nvlist *, int);
int onlist(struct nvlist *, void *);
struct nvlist *newnv(const char *, const char *, void *, long long, struct nvlist *);
void nvfree(struct nvlist *);
void nvfreel(struct nvlist *);
struct nvlist *nvcat(struct nvlist *, struct nvlist *);
struct nvlist *flathead, **flatp;
struct nvlist ***p = context;
struct nvlist *nv;
struct nvlist ***p = context;
struct nvlist *nv;
prexpr(struct nvlist *expr)
pr0(struct nvlist *e)
DEF_ALLOCWRAP(nvlist);
setmachine(const char *mch, const char *mcharch, struct nvlist *mchsubarches,
struct nvlist *nv;
static void setmachine(const char *, const char *, struct nvlist *, int);
struct nvlist *list;
struct nvlist *__nv1, *__nv2;
DECL_ALLOCWRAP(nvlist);
DEFHASH(nvhash, nvlist);
do_emit_fs(const char *name, struct nvlist *nv, void *v)
struct nvlist *nv1;
struct nvlist *machinesubarches;
defoption(const char *fname, struct defoptlist *opts, struct nvlist *deps)
defparam(const char *fname, struct defoptlist *opts, struct nvlist *deps, int obs)
defflag(const char *fname, struct defoptlist *opts, struct nvlist *deps, int obs)
struct nvlist *options; /* options */
struct nvlist *fsoptions; /* filesystems */
struct nvlist *mkoptions; /* makeoptions */
struct nvlist *appmkoptions; /* appending mkoptions */
struct nvlist *condmkoptions; /* conditional makeoption table */
struct nvlist *nv;
struct nvlist *nv;
struct nvlist *nv;
do_option(struct hashtab *ht, struct nvlist **npp, struct nvlist ***next,
struct nvlist *nv, *onv;
undo_option(struct hashtab *ht, struct nvlist **npp,
struct nvlist ***next, const char *name, const char *type, int nowarn)
struct nvlist *nv;
cfcrosscheck(struct config *cf, const char *what, struct nvlist *nv)
static struct nvlist **nextopt;
static struct nvlist **nextmkopt;
static struct nvlist **nextappmkopt;
static struct nvlist **nextcndmkopt;
static struct nvlist **nextfsopt;
static struct nvlist *cmdlinedefs, *cmdlineundefs;
static void do_depends(struct nvlist *);
static void do_depend(struct nvlist *);
static int do_option(struct hashtab *, struct nvlist **,
struct nvlist ***, const char *, const char *,
static int undo_option(struct hashtab *, struct nvlist **,
struct nvlist ***, const char *, const char *, int);
struct nvlist *nv1;
static int cfcrosscheck(struct config *, const char *, struct nvlist *);
struct defoptlist *opts, struct nvlist *deps, int obs);
static struct nvlist *find_declared_fs_option(const char *name);
struct nvlist *p;
struct nvlist *p;
struct nvlist *p, *n;
struct nvlist *nv;
struct nvlist *fs;
do_depends(struct nvlist *nv)
struct nvlist *opt;
do_depend(struct nvlist *nv)
struct nvlist *nv;
check_dependencies(const char *thing, struct nvlist *deps)
struct nvlist *dep;
add_fs_dependencies(struct nvlist *nv, struct nvlist *deps)
add_opt_dependencies(struct defoptlist *dl, struct nvlist *deps)
deffilesystem(struct nvlist *fses, struct nvlist *deps)
struct nvlist *nv;
static struct nvlist *
struct nvlist *fs;
struct nvlist *fs;
struct nvlist *deps, int obs)
struct nvlist *nv;
fprintcnt(FILE *fp, struct nvlist *nv)
emitcnt(struct nvlist *head)
struct nvlist *nv;
struct nvlist *option;
static int emitcnt(struct nvlist *);
emitmkoption(FILE *fp, const char *ass, const struct nvlist *nv)
struct nvlist *option;
struct nvlist *nv;
struct nvlist *nv;
static void emitmkoption(FILE *, const char *, const struct nvlist *);
struct nvlist *nv;
static struct nvlist *
struct nvlist *nv;
struct nvlist *stack = NULL;
setconf(struct nvlist **npp, const char *what, struct nvlist *v)
devcleanup(struct nvlist *stack)
struct nvlist *nv;
struct nvlist *nv, *onv;
struct nvlist *nv, *stack = NULL;
struct nvlist *stack = NULL;
struct condexpr *cond, struct nvlist *nv_nodes)
onlist(struct nvlist *nv, void *ptr)
static struct nvlist *
addtoattr(struct nvlist *l, struct devbase *dev)
struct nvlist *n;
defdevattach(struct deva *deva, struct devbase *dev, struct nvlist *atlist,
struct nvlist *nv;
static struct nvlist *addtoattr(struct nvlist *, struct devbase *);
static int resolve(struct nvlist **, const char *, const char *,
struct nvlist *, int);
resolve(struct nvlist **nvp, const char *name, const char *what,
struct nvlist *dflt, int part)
struct nvlist *nv;
void defdevattach(struct deva *, struct devbase *, struct nvlist *,
void setconf(struct nvlist **, const char *, struct nvlist *);
struct condexpr *, struct nvlist *);
struct nvlist *
newnv(const char *name, const char *str, void *ptr, long long i, struct nvlist *next)
struct nvlist *nv;
nvfree(struct nvlist *nv)
nvfreel(struct nvlist *nv)
struct nvlist *next;
struct nvlist *
nvcat(struct nvlist *nv1, struct nvlist *nv2)
struct nvlist *nv;