8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome/*
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome * This file and its contents are supplied under the terms of the
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome * Common Development and Distribution License ("CDDL"), version 1.0.
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome * You may only use this file in accordance with the terms of version
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome * 1.0 of the CDDL.
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome *
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome * A full copy of the text of the CDDL should have accompanied this
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome * source. A copy of the CDDL is also available via the Internet at
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome * http://www.illumos.org/license/CDDL.
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome */
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome/*
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome * Copyright 2016 Toomas Soome <tsoome@me.com>
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome */
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome#ifndef _SYS_LOFI_IMPL_H
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome#define _SYS_LOFI_IMPL_H
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome/*
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome * lofi private implementation details.
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome */
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome#include <sys/nvpair.h>
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome#ifdef __cplusplus
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soomeextern "C" {
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome#endif
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome/* Structure for custom data, maintained as nvlist. */
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soometypedef struct lofi_nvl {
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome kmutex_t ln_lock;
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome kcondvar_t ln_cv;
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome nvlist_t *ln_data;
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome} lofi_nvl_t;
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soomeextern lofi_nvl_t lofi_devlink_cache;
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome#ifdef __cplusplus
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome}
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome#endif
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome
8ae05c101a3c849364fa53a66ec87aa59823326aToomas Soome#endif /* _SYS_LOFI_IMPL_H */