Closed Locietta closed 1 year ago
There is a warning when building this:
.config:384:warning: override: GENERIC_CPU3 changes choice state
Normally, CPU type should be set using the config script? I am quite sure that I did not see this warning before.
For me, it still reports:
Error code: Wsl/Service/CreateInstance/CreateVm/HCS_E_CONNECTION_TIMEOUT
.config:384: warning: override: GENERIC_CPU3 changes choice state
This is caused by duplicated flags set by defconfig and scripts/config -e
, and should be benign. But you are right, I may fix it just by deleting GENERIC_CPU3=y
in defconfig.
For me, it still reports:
Error code: Wsl/Service/CreateInstance/CreateVm/HCS_E_CONNECTION_TIMEOUT
That's interesting, I don't know what chips you're on. But I revisited the build and found it boots on my old skylake laptop, but fails on newer 12th gen intel chip. And I also tried non-LTO build, it's the same result (ok for skylake, fails on newer chip).
But you are right, I may fix it just by deleting GENERIC_CPU3=y in defconfig.
Ah, just noticed that deleting CONFIG_GENERIC_CPU3=y
will make CONFIG_GENERIC_CPU=y
automatically generated in .config, which makes the warning still presists.
I've tried to build with gcc, clang and with non-LTO, ThinLTO/FullLTO. And all of them fails on the newer chip. So compiler and LTO status might be irrelavent...
Captured WSL logs shows an error:
ThreadID="21,744" ProcessorNumber="11" PartA_PrivTags="16,777,216" file="D:\a\1\s\src\windows\common\socket.cpp" linenumber="45" type="0" failurecount="6" threadid="21,744" hr="-2,143,878,903" message="" code="" function=""
No idea about what's going on. 🤔
Merge this anyway (as a partial solution), I'll make another PR if I think I find a complete solution.
Backport config changes from upstream.
Updates #30.
Seems to resolve the issue without disabling LTO, still need more information. I'm wondering if providing an non-lto build is a nice move...? (maybe make it non-lto for current "old" build for example)
WERROR is enabled to avoid problematic kernel being published. Though it's not quite helpful for LTO bugs, since the warning is not given by compiler and doesn't break the build. 😕