spdk通过vhost-user与qemu通信的代码---spdk初始化服务端

        该文介绍一个物理机上的spdk与qemu进行通信,由于是在同一个操作系统中,所以可以采用域套接字方式实现通信。实现通信的步骤大体分为两步。第一步:通过spdk的rpc命令创建对应类型的域套接字,spdk作为服务端。第二步:创建虚拟机时将该套接字的信息传递给qemu,qemu作为client端。

        首先介绍下第一步,spdk如何创建套接字,并且绑定与该套接字上的相关信息。spdk中vhost的实现方式有两种:scsi 和 blk。以scsi为例,介绍下spdk中代码实现流程。

        vhsot_scsi在spdk中以子系统方式存在,在spdk初始化时对其子系统进行初始化,子系统的初始化可参考spdk初始化流程,初始化接口vhost_scsi_subsystem_init。spdk作为服务端需要先创建服务端的域套接字,创建套接字是通过rpc接口实现,接口调用栈大体如下(spdk版本24.05):

spdk创建scsi控制器的rpc接口: vhost_create_scsi_controller
-->rpc_vhost_create_scsi_controller
    -->vhost_scsi_dev_construct     
        -->vhost_dev_register
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值