Re: [RFC PATCH 5/5] nvme-vfio: Add a document for the NVMe device

Chaitanya Kulkarni
2022-12-07T22:54:43Z

Jonathan,

>> ++---------------------------+-----------+-----------+------------+
>> +| | | | |
>> +| Opcode by Field | | | |
>> +| | | | |
>> ++--------+---------+--------+ | | |
>> +| | | | Combined | Namespace | |
>> +| 07 | 06:02 | 01:00 | Opcode | Identifier| Command |
>> +| | | | | used | |
>> ++--------+---------+--------+ | | |
>> +|Generic | Function| Data | | | |
>> +|command | |Transfer| | | |
>> ++--------+---------+--------+-----------+-----------+------------+
>> +| |
>> +| Vendor SpecificOpcode |
>> ++--------+---------+--------+-----------+-----------+------------+
>> +| | | | | | Query the |
>> +| 1b | 10001 | 00 | 0xC4 | | data size |
>> ++--------+---------+--------+-----------+-----------+------------+
>> +| | | | | | Suspend the|
>> +| 1b | 10010 | 00 | 0xC8 | | VF |
>> ++--------+---------+--------+-----------+-----------+------------+
>> +| | | | | | Resume the |
>> +| 1b | 10011 | 00 | 0xCC | | VF |
>> ++--------+---------+--------+-----------+-----------+------------+
>> +| | | | | | Save the |
>> +| 1b | 10100 | 10 | 0xD2 | |device data |
>> ++--------+---------+--------+-----------+-----------+------------+
>> +| | | | | | Load the |
>> +| 1b | 10101 | 01 | 0xD5 | |device data |
>> ++--------+---------+--------+-----------+-----------+------------+
>> +
> I'm assuming by using these vendor specific opcodes and id-ctrl's vu space, that
> you should make this code be protected by some kind of vendor/device specific-flag
> or preferably something standard.
>
> No way of knowing what 0xC4 will do on a non-lm drive, for instance
>

This is only reference implementation. The process of the
standardization of the NVMe Live Migration is will take of these
opcodes and anything Vendor specific present in this series.

It is very important to get some feedback on this to help the
standardization in any way.

-ck