Re: [PATCH v9 11/17] platform/x86: dell-smbios-smm: test for WSMT

From: Darren Hart
Date: Wed Oct 18 2017 - 15:10:01 EST


On Tue, Oct 17, 2017 at 09:22:58PM +0200, Pali Rohár wrote:
> On Tuesday 17 October 2017 13:21:55 Mario Limonciello wrote:
> > +/* When enabled this indicates that SMM won't work */
> > +static int test_wsmt_enabled(void)
> > +{
> > + struct calling_interface_token *token;
> > +
> > + /* if token doesn't exist, SMM will work */
> > + token = dell_smbios_find_token(WSMT_EN_TOKEN);
> > + if (!token)
> > + return 0;
> > +
> > + /* if token exists, try to access over SMM */
> > + buffer->class = CLASS_TOKEN_READ;
> > + buffer->select = SELECT_TOKEN_STD;
> > + memset(buffer, 0, sizeof(struct calling_interface_buffer));
> > + buffer->input[0] = token->location;
> > + dell_smbios_smm_call(buffer);
> > +
> > + /* if lookup failed, we know WSMT was enabled */
> > + if (buffer->output[0] != 0)
> > + return 1;
> > +
> > + /* query token status if it didn't fail */
> > + return (buffer->output[1] == token->value);
> > +}
>
> Maybe small suggestion... function returns only zero or one -- what is a
> good candidate to have return value boolean and not basic int.

Yes please.

--
Darren Hart
VMware Open Source Technology Center