cgd_worker
struct cgd_worker *cw = sc->sc_worker;
struct cgd_worker *cw = sc->sc_worker;
struct cgd_worker *cw = sc->sc_worker;
static struct cgd_worker *cgd_create_one_worker(void);
static void cgd_destroy_one_worker(struct cgd_worker *);
static struct cgd_worker *cgd_create_worker(void);
static void cgd_destroy_worker(struct cgd_worker *);
static struct cgd_worker *cgd_worker;
struct cgd_worker *cw;
struct cgd_worker *cw = sc->sc_worker;
static struct cgd_worker *
KASSERT(cgd_worker == NULL);
cgd_worker = cgd_create_worker();
KASSERT(cgd_worker != NULL);
return cgd_worker;
cgd_destroy_one_worker(struct cgd_worker *cw)
KASSERT(cw == cgd_worker);
cgd_destroy_worker(cgd_worker);
cgd_worker = NULL;
static struct cgd_worker *
struct cgd_worker *cw;
cw = kmem_alloc(sizeof(struct cgd_worker), KM_SLEEP);
kmem_free(cw, sizeof(struct cgd_worker));
cgd_destroy_worker(struct cgd_worker *cw)
kmem_free(cw, sizeof(struct cgd_worker));
struct cgd_worker *cw = sc->sc_worker;
struct cgd_worker *cw = sc->sc_worker;
struct cgd_worker *sc_worker; /* shared worker data */