Hi Michael,

On Wed, Mar 13, 2024 at 10:30 PM Michael Kelley <[email protected]> wrote:
> By default, Linux doesn't verify checksums when accessing ACPI tables
> during early boot, though you can add "acpi_force_table_verification"
> to the kernel boot line.  The default is shown in dmesg like this:
>
> [    0.004419] ACPI: Early table checksum verification disabled
>
> The checksum of all tables is checked slightly later in boot, though
> it's after my entropy code has run.  Without the checksum fixup,
> this error is output:
>
> [    0.053752] ACPI BIOS Warning (bug): Incorrect checksum in table
>                 [OEM0] - 0x8B, should be 0x82 (20230628/utcksum-58)
>
> At this point, the checksum error doesn't really matter, but I
> don't want the warning showing up.  I need to experiment a
> bit, but probably the best approach is to set the data length to
> zero (and adjust the checksum) while leaving the rest of the ACPI
> table header intact.  It will be more difficult to make the table
> disappear entirely as it appears in a global list of ACPI tables.

That makes sense. If the length is getting set to zero and the data
itself zeroed, I would assume that the checksum evaluates to some
constant value (0? ~0? dunno how it's computed), so that should ease
things a bit.

Jason

Reply via email to