Skip to content

Conversation

sayantn
Copy link
Contributor

@sayantn sayantn commented Oct 4, 2025

It has been failing fairly often, just want to be sure that everything is OK

edit: CI be like

image

edit: ok so it's probably test_xsave

@sayantn sayantn force-pushed the check-msvc branch 8 times, most recently from febe902 to d713d87 Compare October 4, 2025 04:27
@sayantn
Copy link
Contributor Author

sayantn commented Oct 4, 2025

seems like our xsave buffer is too small. We have a fixed-size 2560 byte buffer, but SDM (Vol 1, section 13.1-13.5) specifies that the position and size of xsave components are not fixed in general, and require querying CPUID for the exact size and position. Even doing a naive computation, with assuming packed arrangement, I am getting 3636 bytes without AMX, and with AMX present it skyrockets to 11892 bytes.

So, ideally we should query CPUID for each xsave component we are going to retrieve, and allocate dynamically as needed (I couldn't see any mention of a "largest" possible xsave area size in SDM)

As for why it is only showing up just now, idk. Maybe GH updated their runner machines, so they are more capable now (meaning more components will actually be stored in the xsave area, because xsave only stores the data for areas which are requested and are actually available via XCR0)

@sayantn sayantn mentioned this pull request Oct 4, 2025
@sayantn sayantn closed this Oct 4, 2025
@sayantn sayantn closed this Oct 4, 2025
@sayantn sayantn deleted the check-msvc branch October 8, 2025 10:31
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.

1 participant