Line data Source code
1 : /* SPDX-License-Identifier: BSD-3-Clause 2 : * Copyright (C) 2016 Intel Corporation. 3 : * All rights reserved. 4 : */ 5 : 6 : #include "spdk/stdinc.h" 7 : 8 : #include "spdk/bdev.h" 9 : #include "spdk/env.h" 10 : #include "spdk/thread.h" 11 : 12 : #include "spdk_internal/init.h" 13 : 14 : static void 15 0 : bdev_initialize_complete(void *cb_arg, int rc) 16 : { 17 0 : spdk_subsystem_init_next(rc); 18 0 : } 19 : 20 : static void 21 0 : bdev_subsystem_initialize(void) 22 : { 23 0 : spdk_bdev_initialize(bdev_initialize_complete, NULL); 24 0 : } 25 : 26 : static void 27 0 : bdev_subsystem_finish_done(void *cb_arg) 28 : { 29 0 : spdk_subsystem_fini_next(); 30 0 : } 31 : 32 : static void 33 0 : bdev_subsystem_finish(void) 34 : { 35 0 : spdk_bdev_finish(bdev_subsystem_finish_done, NULL); 36 0 : } 37 : 38 : static void 39 0 : bdev_subsystem_config_json(struct spdk_json_write_ctx *w) 40 : { 41 0 : spdk_bdev_subsystem_config_json(w); 42 0 : } 43 : 44 : static struct spdk_subsystem g_spdk_subsystem_bdev = { 45 : .name = "bdev", 46 : .init = bdev_subsystem_initialize, 47 : .fini = bdev_subsystem_finish, 48 : .write_config_json = bdev_subsystem_config_json, 49 : }; 50 : 51 0 : SPDK_SUBSYSTEM_REGISTER(g_spdk_subsystem_bdev); 52 0 : SPDK_SUBSYSTEM_DEPEND(bdev, accel) 53 0 : SPDK_SUBSYSTEM_DEPEND(bdev, keyring) 54 0 : SPDK_SUBSYSTEM_DEPEND(bdev, vmd) 55 0 : SPDK_SUBSYSTEM_DEPEND(bdev, sock) 56 0 : SPDK_SUBSYSTEM_DEPEND(bdev, iobuf)