Skip to content

Update uACPI example tests since some now work#299

Open
martin-hughes wants to merge 2 commits into
rust-osdev:mainfrom
martin-hughes:update-examples
Open

Update uACPI example tests since some now work#299
martin-hughes wants to merge 2 commits into
rust-osdev:mainfrom
martin-hughes:update-examples

Conversation

@martin-hughes
Copy link
Copy Markdown
Contributor

Some of the tests based on the uACPI examples now work, so they can be included in the tests.

@martin-hughes
Copy link
Copy Markdown
Contributor Author

I don't really know why the test failed - it works locally for me! I did see that the workflow took over 20 minutes to even start, so I'd love to blame Github... but just in case, @IsaacWoods any chance you could test on your machine?

@martin-hughes
Copy link
Copy Markdown
Contributor Author

So it's definitely not Github at fault then 😆 but they all still pass on my machine! Any ideas?

@IsaacWoods
Copy link
Copy Markdown
Member

Hm nope it fails on my machine too! Albeit with a different error (Failed(ParseFail(IllegalOpcode(170)))).

I'm not 100% surprised though - I did wonder if I'd got the level copies in CopyObject occurred at correct. uACPI must be doing something subtly different to replace the object at the namespace node, but keeping the underlying method object around (we keep an Arc to this in MethodContext but the underlying memory gets swapped out under us, corrupting the stream). I feel I'd need to commit some time to focus on the exact semantics we should be doing to fix this.

Not sure why it is passing locally for you - maybe some unstaged changes that fix this? Or just chance.

@martin-hughes
Copy link
Copy Markdown
Contributor Author

Oh how weird! No, no unstaged changes here - plus I tried it on Windows and WSL-Ubuntu 22.04

Only thing I can think of is the iasl version? But that feels a bit sketchy... What version are you on? I've got 20251212 (for Windows) and 20200925 (for Ubuntu 22.04 - pretty old!)

@martin-hughes
Copy link
Copy Markdown
Contributor Author

Ah wait! I've just hit it on the Ubuntu version... Did a rustup update and now it triggers. But worryingly, on two consecutive runs I got two different errors:

Test failed with: Failed(ParseFail(IllegalOpcode(25))), and
Test failed with: Failed(ParseFail(RunOutOfStream))

Not sure what's going on there, but sadly I've run out of time to look today.

The `copy_object_to_self` test triggers issue rust-osdev#300
@martin-hughes
Copy link
Copy Markdown
Contributor Author

OK, the failing test is somewhat outside the scope of this PR, so I've re-ignored the failing test and opened #300 to look for a resolution.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants