Re: [PATCH v4 1/3] driver: Google EFI SMI

Mike Waychison
2011-04-30T00:14:55Z

On Fri, Apr 29, 2011 at 4:40 PM, Greg KH <greg@kroah.com> wrote:
> On Fri, Apr 29, 2011 at 03:55:51PM -0700, Mike Waychison wrote:
>> The "gsmi" driver bridges userland with firmware specific routines for
>> accessing hardware.
>>
>> Currently, this driver only supports NVRAM and eventlog information.
>> Deprecated functions have been removed from the driver, though their
>> op-codes are left in place so that they are not re-used.
>>
>> This driver works by trampolining into the firmware via the smi_command
>> outlined in the FADT table.  Three protocols are used due to various
>> limitations over time, but all are included herein.
>>
>> This driver should only ever load on Google boards, identified by either
>> a "Google, Inc." board vendor string in DMI, or "GOOGLE" in the OEM
>> strings of the FADT ACPI table.  This logic happens in
>> gsmi_system_valid().
>>
>> Signed-off-by: Duncan Laurie <dlaurie@google.com>
>> Signed-off-by: Aaron Durbin <adurbin@google.com>
>> Signed-off-by: Mike Waychison <mikew@google.com>
>
> {sigh}
>
> I now get this build error with this patch applied:
>
>  CC [M]  drivers/firmware/google/gsmi.o
> drivers/firmware/google/gsmi.c: In function ‘gsmi_die_callback’:
> drivers/firmware/google/gsmi.c:660:16: error: ‘DIE_NMIWATCHDOG’ undeclared (first use in this function)
> drivers/firmware/google/gsmi.c:660:16: note: each undeclared identifier is reported only once for each function it appears in
> make[3]: *** [drivers/firmware/google/gsmi.o] Error 1
>
>
> Also, I had to hand edit the drivers/firmware/Makefile and Kconfig parts
> of this patch to get it to apply, care to respin it against the
> linux-next tree so I don't have to do that next time around?
>

Ya, I'm looking at these now.

Hmm :( It seems the nmi watchdog got renamed to the 'hard lockup'
detector, and we lost the DIE callback in the meantime.

I think for the moment, I'm going to respin and drop the NMI bits for
now. We can revisit actually calling notify_die() when we panic in
watchdog_overflow_callback() as a follow on.