Hi @Daniel, @Paul and @all
I reviewed the code you have updated about
‘pass named args to bdev.py [0]’. I think its functions are consistent with the
py_spdk [1] I have proposed in the past. The difference is that you made the
changes on the basis of rpc.py, while I considered more not to modify the
rpc.py to make adjustments as much as possible. For this reason, I added one
more layer (scripts/py_spdk/nvmf_client.py, which can invoke the
/scripts/rpc/mvmf.py) on the /script/rpc/*.py module. Actually, this layer can
be integrated into /scripts/rpc/nvmf.py by modifying rpc.py. However, I didn’t
consider modifying rpc.py to integrate and remove this extra layer. I am afraid
of influencing the use of rpc.py.
I think you did a better job, it is also
applicable to my usage scenarios. Now I have modified the /rpc/nvmf. py by
referring to your code and submitted the patch to the gerrit [2]. At the same
time, I have written the call_spdk project about how the upper application calls
these modified methods of the patch and put it into my github [3], which
directly bypasses the rpc.py and imports
these /scripts/rpc/*. py modules, I hope you can spare some time to visit them
together and give me some feedbacks.
Later, I plan to put these implementations
into the openstack/cyborg project to realize the management of NVME
accelerators. If there is no problem in the submitted code, I am willing to
help SPDK community to update the other /scripts/rpc/*.py methods, for example:
vhost.py, and then modify the SPDK Driver of openstack/cyborg to use these rpc
modules. I don't know what you think about this?
I It is worth mentioning that the SPDK
Driver I submitted has been integrated into the Openstack version Q [4]. I
wonder if you guys are interested in adopting Cyborg into SPDK to enhance the
ecology of SPDK.
Any idea is appreciated. I hope to receive
your reply.
[0]
[1]
[2]
[3]
[4]
Thx,