qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] hw/block/nvme: Align I/O BAR to 4 KiB


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH] hw/block/nvme: Align I/O BAR to 4 KiB
Date: Tue, 30 Jun 2020 11:39:24 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0

On 6/30/20 10:46 AM, Klaus Jensen wrote:
> On Jun 30 10:35, Philippe Mathieu-Daudé wrote:
>> Hi Klaus,
>>
>> On 6/25/20 8:23 PM, Klaus Jensen wrote:
>>> On Jun 25 17:48, Philippe Mathieu-Daudé wrote:
>>>> Simplify the NVMe emulated device by aligning the I/O BAR to 4 KiB.
>>>>
>>>> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>>>> ---
>>>>  include/block/nvme.h | 3 +++
>>>>  hw/block/nvme.c      | 5 ++---
>>>>  2 files changed, 5 insertions(+), 3 deletions(-)
>>>>
>>>> diff --git a/include/block/nvme.h b/include/block/nvme.h
>>>> index 1720ee1d51..6d87c9c146 100644
>>>> --- a/include/block/nvme.h
>>>> +++ b/include/block/nvme.h
>>>> @@ -22,6 +22,8 @@ typedef struct NvmeBar {
>>>>      uint32_t    pmrebs;
>>>>      uint32_t    pmrswtp;
>>>>      uint32_t    pmrmsc;
>>>> +    uint32_t    reserved[58];
>>>> +    uint8_t     cmd_set_specfic[0x100];
>>>>  } NvmeBar;
>>>
>>> This ends up as a freak mix of v1.3 and v1.4 specs. Since we already
>>> have the PMR stuff in there, I think it makes more sense to align with
>>> v1.4 and remove the reserved bytes.
>>
>> I'm sorry but I don't understand what you'd prefer, removing the
>> cmd_set_specfic[] for v1.3 and instead use this?
>>
>>       uint32_t    pmrmsc;
>>  +    uint32_t    reserved[122];
>>   } NvmeBar;
>>
>> Or this?
>>
>>       uint32_t    pmrmsc;
>>  +    uint8_t     reserved[488];
>>   } NvmeBar;
>>
> 
> Yes, the second one.
> 
> But it should be 484 bytes reserved and the bug is in the pmrmsc field
> that should be uint64_t. Can you fix that as well?  :)
> 

Ah this is what you did in "hw/block/nvme: add NVMe 1.4 specific fields"
https://www.mail-archive.com/qemu-devel@nongnu.org/msg717891.html




reply via email to

[Prev in Thread] Current Thread [Next in Thread]