On 14/07/2021 21:52, Brijesh Singh wrote:
>
>
> On 7/14/21 12:08 PM, Connor Kuehl wrote:
>> On 7/9/21 3:55 PM, Brijesh Singh wrote:
>>> The KVM_SEV_SNP_LAUNCH_UPDATE command is used for encrypting the bios
>>> image used for booting the SEV-SNP guest.
>>>
>>> Signed-off-by: Brijesh Singh <brijesh.si...@amd.com>
>>> ---
>>> target/i386/sev.c | 33 ++++++++++++++++++++++++++++++++-
>>> target/i386/trace-events | 1 +
>>> 2 files changed, 33 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/target/i386/sev.c b/target/i386/sev.c
>>> index 259408a8f1..41dcb084d1 100644
>>> --- a/target/i386/sev.c
>>> +++ b/target/i386/sev.c
>>> @@ -883,6 +883,30 @@ out:
>>> return ret;
>>> }
>>> +static int
>>> +sev_snp_launch_update(SevGuestState *sev, uint8_t *addr, uint64_t
>>> len, int type)
>>> +{
>>> + int ret, fw_error;
>>> + struct kvm_sev_snp_launch_update update = {};
>>> +
>>> + if (!addr || !len) {
>>> + return 1;
>>
>> Should this be a -1? It looks like the caller checks if this function
>> returns < 0, but doesn't check for res == 1.
>
> Ah, it should be -1.
>
>>
>> Alternatively, invoking error_report might provide more useful
>> information that the preconditions to this function were violated.
>>
>
> Sure, I will add error_report.
Maybe even simpler:
assert(addr);
assert(len > 0);
The assertion failure will show the developer what is wrong. This should
not happen for the end-user (unless I'm missing something).
-Dov