[lkml]   [2017]   [Oct]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [Part2 PATCH v6 13/38] crypto: ccp: Add Secure Encrypted Virtualization (SEV) command support

On 10/26/2017 08:56 AM, Borislav Petkov wrote:
> On Mon, Oct 23, 2017 at 02:57:04PM -0500, Brijesh Singh wrote:
>> Calling PLATFORM_GET_STATUS is not required, we can manage the state through
>> a simple ref count variable. Issuing PSP commands will always be much more
>> expensive compare to accessing a protected global variable.
> What does "protected" mean here?

Access global variable after acquiring the semaphore.

> In any case, that variable can be a simple bool as you use it as such.

I am not using the variable (fw_init_count) as boolean. The variable
gets incremented in sev_platform_init() and decremented in
sev_platform_shutdown(). In very first call to sev_platform_init (i.e
when variable is zero) we issue PLATFORM_INIT command, similarly
PLATFORM_SHUTDOWN is issued on the last (i.e when variable value is
reached to zero). The variable is used as ref counter.

>> I would prefer to avoid invoking PSP command if possible.
>> Additionally, the global semaphore is still needed to serialize
>> the sev_platform_init() and sev_platform_shutdown() from multiple
>> processes. e.g If process "A" calls sev_platform_init() and if it gets
>> preempted due to whatever reason then we don't want another process
>> to issue the shutdown command while process "A" is in middle of
>> sev_platform_init().
> How? You're holding fw_init_mutex.

In your previous reply you comments on global semaphore (fw_init_mutex)
and in response I tried to highlight why we need the global semaphore.
Did I misunderstood your comment ?


 \ /
  Last update: 2017-10-26 18:57    [W:0.135 / U:6.556 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site