From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============2122969057259347801==" MIME-Version: 1.0 From: Sreeni (Sreenivasa) Busam (Stellus) Subject: [SPDK] Request for more details on SPDK driver API. Date: Sat, 11 Nov 2017 01:24:38 +0000 Message-ID: <2d1a050aa5d84f13a85ed8f587afeeb6@stellus.com> In-Reply-To: CGME20171111012439uscas1p1e9f78f851215bc85ccf0a4f891d277e7@uscas1p1.samsung.com List-ID: To: spdk@lists.01.org --===============2122969057259347801== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable I am new to SPDK driver and trying to understand the various API's availabl= e to do I/O on NVMe local device and using NVMeoF protocol on a target devi= ce. I see different interfaces for the read and write I/O operations. It seems there are two types of interfaces available. 1. spdk_nvme_ns_cmd_read() and spdk_nvme_ns_cmd_write() and related functio= n. This is used for PCIe devices. It seems to apply to devices attached loc= ally. 2. spdk_bdev_read_blocks() and spdk_bdev_write_blocks() and related API's i= n lib/bdev. I have been looking at the code and trying to understand how this API and r= elated APIs for the module has been used, the API's in 2. are used for blob= fs I/O operation spdk/lib/blob/bdev/*, when there is a blob filesystem and = for I/O operation on NVMe devices using NVMeoF protocol spdk/lib/nvmf/*. Is this a correct assumption? Is the lib/bdev layer developed to address on= ly these cases? Can the lib/bdev API be used on a local NVMe device? If so, is there a test= program to understand how to create a bdev device and do the I/O on NVMe S= SD block device? Please let me know if there is an example to understand how to use the lib/= nvmf interfaces. I want to test a device on remote target using NVMeoF prot= ocol. Thanks very much for any help in the lib/bdev API. --===============2122969057259347801== Content-Type: text/html MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.html" PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv VFIvUkVDLWh0bWw0MCI+CjxoZWFkPgo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNv bnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11cy1hc2NpaSI+CjxtZXRhIG5hbWU9IkdlbmVyYXRv ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUgKGZpbHRlcmVkIG1lZGl1bSkiPgo8c3R5bGU+ PCEtLQovKiBGb250IERlZmluaXRpb25zICovCkBmb250LWZhY2UKCXtmb250LWZhbWlseToiQ2Ft YnJpYSBNYXRoIjsKCXBhbm9zZS0xOjIgNCA1IDMgNSA0IDYgMyAyIDQ7fQpAZm9udC1mYWNlCgl7 Zm9udC1mYW1pbHk6Ik1hbGd1biBHb3RoaWMiOwoJcGFub3NlLTE6MiAxMSA1IDMgMiAwIDAgMiAw IDQ7fQpAZm9udC1mYWNlCgl7Zm9udC1mYW1pbHk6Q2FsaWJyaTsKCXBhbm9zZS0xOjIgMTUgNSAy IDIgMiA0IDMgMiA0O30KQGZvbnQtZmFjZQoJe2ZvbnQtZmFtaWx5OiJcQE1hbGd1biBHb3RoaWMi OwoJcGFub3NlLTE6MiAxMSA1IDMgMiAwIDAgMiAwIDQ7fQovKiBTdHlsZSBEZWZpbml0aW9ucyAq LwpwLk1zb05vcm1hbCwgbGkuTXNvTm9ybWFsLCBkaXYuTXNvTm9ybWFsCgl7bWFyZ2luOjBpbjsK CW1hcmdpbi1ib3R0b206LjAwMDFwdDsKCWZvbnQtc2l6ZToxMS4wcHQ7Cglmb250LWZhbWlseToi Q2FsaWJyaSIsc2Fucy1zZXJpZjt9CmE6bGluaywgc3Bhbi5Nc29IeXBlcmxpbmsKCXttc28tc3R5 bGUtcHJpb3JpdHk6OTk7Cgljb2xvcjojMDU2M0MxOwoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGlu ZTt9CmE6dmlzaXRlZCwgc3Bhbi5Nc29IeXBlcmxpbmtGb2xsb3dlZAoJe21zby1zdHlsZS1wcmlv cml0eTo5OTsKCWNvbG9yOiM5NTRGNzI7Cgl0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30KcC5N c29MaXN0UGFyYWdyYXBoLCBsaS5Nc29MaXN0UGFyYWdyYXBoLCBkaXYuTXNvTGlzdFBhcmFncmFw aAoJe21zby1zdHlsZS1wcmlvcml0eTozNDsKCW1hcmdpbi10b3A6MGluOwoJbWFyZ2luLXJpZ2h0 OjBpbjsKCW1hcmdpbi1ib3R0b206MGluOwoJbWFyZ2luLWxlZnQ6LjVpbjsKCW1hcmdpbi1ib3R0 b206LjAwMDFwdDsKCWZvbnQtc2l6ZToxMS4wcHQ7Cglmb250LWZhbWlseToiQ2FsaWJyaSIsc2Fu cy1zZXJpZjt9CnNwYW4uRW1haWxTdHlsZTE3Cgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtY29t cG9zZTsKCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmOwoJY29sb3I6d2luZG93dGV4 dDt9Ci5Nc29DaHBEZWZhdWx0Cgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7Cglmb250LWZh bWlseToiQ2FsaWJyaSIsc2Fucy1zZXJpZjt9CkBwYWdlIFdvcmRTZWN0aW9uMQoJe3NpemU6OC41 aW4gMTEuMGluOwoJbWFyZ2luOjEuMGluIDEuMGluIDEuMGluIDEuMGluO30KZGl2LldvcmRTZWN0 aW9uMQoJe3BhZ2U6V29yZFNlY3Rpb24xO30KLyogTGlzdCBEZWZpbml0aW9ucyAqLwpAbGlzdCBs MAoJe21zby1saXN0LWlkOjE4NzMyMjc0MjU7Cgltc28tbGlzdC10eXBlOmh5YnJpZDsKCW1zby1s aXN0LXRlbXBsYXRlLWlkczo1NTQwNTIzMTggNjc2OTg3MDMgNjc2OTg3MTMgNjc2OTg3MTUgNjc2 OTg3MDMgNjc2OTg3MTMgNjc2OTg3MTUgNjc2OTg3MDMgNjc2OTg3MTMgNjc2OTg3MTU7fQpAbGlz dCBsMDpsZXZlbDEKCXttc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsKCW1zby1sZXZlbC1udW1iZXIt cG9zaXRpb246bGVmdDsKCXRleHQtaW5kZW50Oi0uMjVpbjt9CkBsaXN0IGwwOmxldmVsMgoJe21z by1sZXZlbC1udW1iZXItZm9ybWF0OmFscGhhLWxvd2VyOwoJbXNvLWxldmVsLXRhYi1zdG9wOm5v bmU7Cgltc28tbGV2ZWwtbnVtYmVyLXBvc2l0aW9uOmxlZnQ7Cgl0ZXh0LWluZGVudDotLjI1aW47 fQpAbGlzdCBsMDpsZXZlbDMKCXttc28tbGV2ZWwtbnVtYmVyLWZvcm1hdDpyb21hbi1sb3dlcjsK CW1zby1sZXZlbC10YWItc3RvcDpub25lOwoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpyaWdo dDsKCXRleHQtaW5kZW50Oi05LjBwdDt9CkBsaXN0IGwwOmxldmVsNAoJe21zby1sZXZlbC10YWIt c3RvcDpub25lOwoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OwoJdGV4dC1pbmRlbnQ6 LS4yNWluO30KQGxpc3QgbDA6bGV2ZWw1Cgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6YWxwaGEt bG93ZXI7Cgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsKCW1zby1sZXZlbC1udW1iZXItcG9zaXRp b246bGVmdDsKCXRleHQtaW5kZW50Oi0uMjVpbjt9CkBsaXN0IGwwOmxldmVsNgoJe21zby1sZXZl bC1udW1iZXItZm9ybWF0OnJvbWFuLWxvd2VyOwoJbXNvLWxldmVsLXRhYi1zdG9wOm5vbmU7Cglt c28tbGV2ZWwtbnVtYmVyLXBvc2l0aW9uOnJpZ2h0OwoJdGV4dC1pbmRlbnQ6LTkuMHB0O30KQGxp c3QgbDA6bGV2ZWw3Cgl7bXNvLWxldmVsLXRhYi1zdG9wOm5vbmU7Cgltc28tbGV2ZWwtbnVtYmVy LXBvc2l0aW9uOmxlZnQ7Cgl0ZXh0LWluZGVudDotLjI1aW47fQpAbGlzdCBsMDpsZXZlbDgKCXtt c28tbGV2ZWwtbnVtYmVyLWZvcm1hdDphbHBoYS1sb3dlcjsKCW1zby1sZXZlbC10YWItc3RvcDpu b25lOwoJbXNvLWxldmVsLW51bWJlci1wb3NpdGlvbjpsZWZ0OwoJdGV4dC1pbmRlbnQ6LS4yNWlu O30KQGxpc3QgbDA6bGV2ZWw5Cgl7bXNvLWxldmVsLW51bWJlci1mb3JtYXQ6cm9tYW4tbG93ZXI7 Cgltc28tbGV2ZWwtdGFiLXN0b3A6bm9uZTsKCW1zby1sZXZlbC1udW1iZXItcG9zaXRpb246cmln aHQ7Cgl0ZXh0LWluZGVudDotOS4wcHQ7fQpvbAoJe21hcmdpbi1ib3R0b206MGluO30KdWwKCXtt YXJnaW4tYm90dG9tOjBpbjt9Ci0tPjwvc3R5bGU+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+Cjxv OnNoYXBlZGVmYXVsdHMgdjpleHQ9ImVkaXQiIHNwaWRtYXg9IjEwMjYiIC8+CjwveG1sPjwhW2Vu ZGlmXS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPgo8bzpzaGFwZWxheW91dCB2OmV4dD0iZWRp dCI+CjxvOmlkbWFwIHY6ZXh0PSJlZGl0IiBkYXRhPSIxIiAvPgo8L286c2hhcGVsYXlvdXQ+PC94 bWw+PCFbZW5kaWZdLS0+CjwvaGVhZD4KPGJvZHkgbGFuZz0iRU4tVVMiIGxpbms9IiMwNTYzQzEi IHZsaW5rPSIjOTU0RjcyIj4KPGRpdiBjbGFzcz0iV29yZFNlY3Rpb24xIj4KPHAgY2xhc3M9Ik1z b05vcm1hbCI+SSBhbSBuZXcgdG8gU1BESyBkcml2ZXIgYW5kIHRyeWluZyB0byB1bmRlcnN0YW5k IHRoZSB2YXJpb3VzIEFQSSYjODIxNztzIGF2YWlsYWJsZSB0byBkbyBJL08gb24gTlZNZSBsb2Nh bCBkZXZpY2UgYW5kIHVzaW5nIE5WTWVvRiBwcm90b2NvbCBvbiBhIHRhcmdldCBkZXZpY2UuCjxv OnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5JIHNlZSBkaWZmZXJlbnQgaW50ZXJm YWNlcyBmb3IgdGhlIHJlYWQgYW5kIHdyaXRlIEkvTyBvcGVyYXRpb25zLjxvOnA+PC9vOnA+PC9w Pgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5JdCBzZWVtcyB0aGVyZSBhcmUgdHdvIHR5cGVzIG9mIGlu dGVyZmFjZXMgYXZhaWxhYmxlLjxvOnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj4x LiBzcGRrX252bWVfbnNfY21kX3JlYWQoKSBhbmQgc3Bka19udm1lX25zX2NtZF93cml0ZSgpIGFu ZCByZWxhdGVkIGZ1bmN0aW9uLiBUaGlzIGlzIHVzZWQgZm9yIFBDSWUgZGV2aWNlcy4gSXQgc2Vl bXMgdG8gYXBwbHkgdG8gZGV2aWNlcyBhdHRhY2hlZCBsb2NhbGx5LjxvOnA+PC9vOnA+PC9wPgo8 cCBjbGFzcz0iTXNvTm9ybWFsIj4yLiBzcGRrX2JkZXZfcmVhZF9ibG9ja3MoKSBhbmQgc3Bka19i ZGV2X3dyaXRlX2Jsb2NrcygpIGFuZCByZWxhdGVkIEFQSSYjODIxNztzIGluIGxpYi9iZGV2Ljxv OnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5JIGhhdmUgYmVlbiBsb29raW5nIGF0 IHRoZSBjb2RlIGFuZCB0cnlpbmcgdG8gdW5kZXJzdGFuZCBob3cgdGhpcyBBUEkgYW5kIHJlbGF0 ZWQgQVBJcyBmb3IgdGhlIG1vZHVsZSBoYXMgYmVlbiB1c2VkLCB0aGUgQVBJJiM4MjE3O3MgaW4g Mi4gYXJlIHVzZWQgZm9yIGJsb2JmcyBJL08gb3BlcmF0aW9uIHNwZGsvbGliL2Jsb2IvYmRldi8q LCB3aGVuIHRoZXJlIGlzIGEgYmxvYiBmaWxlc3lzdGVtIGFuZCBmb3IgSS9PIG9wZXJhdGlvbgog b24gTlZNZSBkZXZpY2VzIHVzaW5nIE5WTWVvRiBwcm90b2NvbCBzcGRrL2xpYi9udm1mLyouPG86 cD48L286cD48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPklzIHRoaXMgYSBjb3JyZWN0IGFzc3Vt cHRpb24/IElzIHRoZSBsaWIvYmRldiBsYXllciBkZXZlbG9wZWQgdG8gYWRkcmVzcyBvbmx5IHRo ZXNlIGNhc2VzPzxvOnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5DYW4gdGhlIGxp Yi9iZGV2IEFQSSBiZSB1c2VkIG9uIGEgbG9jYWwgTlZNZSBkZXZpY2U/IElmIHNvLCBpcyB0aGVy ZSBhIHRlc3QgcHJvZ3JhbSB0byB1bmRlcnN0YW5kIGhvdyB0byBjcmVhdGUgYSBiZGV2IGRldmlj ZSBhbmQgZG8gdGhlIEkvTyBvbiBOVk1lIFNTRCBibG9jayBkZXZpY2U/PG86cD48L286cD48L3A+ CjxwIGNsYXNzPSJNc29Ob3JtYWwiPlBsZWFzZSBsZXQgbWUga25vdyBpZiB0aGVyZSBpcyBhbiBl eGFtcGxlIHRvIHVuZGVyc3RhbmQgaG93IHRvIHVzZSB0aGUgbGliL252bWYgaW50ZXJmYWNlcy4g SSB3YW50IHRvIHRlc3QgYSBkZXZpY2Ugb24gcmVtb3RlIHRhcmdldCB1c2luZyBOVk1lb0YgcHJv dG9jb2wuPG86cD48L286cD48L3A+CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9v OnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFsIj5UaGFua3MgdmVyeSBtdWNoIGZvciBhbnkgaGVs cCBpbiB0aGUgbGliL2JkZXYgQVBJLjxvOnA+PC9vOnA+PC9wPgo8cCBjbGFzcz0iTXNvTm9ybWFs Ij48bzpwPiZuYnNwOzwvbzpwPjwvcD4KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8 L286cD48L3A+CjwvZGl2Pgo8L2JvZHk+CjwvaHRtbD4K --===============2122969057259347801==--