rust-osdev/acpi

ACPI crate not support for Multiprocessor Wakeup Structure

Hsy-Intel opened this issue · 2 comments

In my project, Multiprocessor Wakeup Structure is used to wake up the AP. I understand that the parsing of this part of the code should be handled by the OS. However, an exception will be thrown in the ACPI crate, which is undesirable.

If my MADT contains Multiprocessor Wakeup Structure, it will panic on:

                _ => {
                    return Err(AcpiError::InvalidMadt(MadtError::UnexpectedEntry));
                }

Hi, thanks for the report. When this code was initially written, this structure was not yet specified, but now it is we should definitely support parsing them and surfacing the information through the platform API.

I've merged #220 as an initial step to prevent the error if one is encountered, but we'll need to parse them properly in the future.

Multiprocessor Wakeup PR merged.