Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

patch as of 5.0.3 and 5.1.0 no longer applies to 6.6.30 #39

Closed
ghibo opened this issue May 3, 2024 · 12 comments
Closed

patch as of 5.0.3 and 5.1.0 no longer applies to 6.6.30 #39

ghibo opened this issue May 3, 2024 · 12 comments

Comments

@ghibo
Copy link

ghibo commented May 3, 2024

Starting from kernel 6.6.30 the bore patchset (either 5.0.3 and 5.1.0) no longer applies correctly anymore, this because there were in 6.6.30 some upstream patches to the eevdf code upon which bore relies on.

Also in bore-5.1.0 I get random freeze with audio looping that reminds the freeze that were described at the beginning of the issue #32. It doesn't happen so often, and thus it's more hard to reproduce, but I haven't got the same problem using previous 5.0.3 upon 6.6.30 (and reverting the eevdf's 6.6.30 patches to let 5.0.3 applying correctly).

Last but not least, in legacy dir, there are patches for LTS kernels 4.4, 4.19 and 5.15 series, but seems it is missed the one for another LTS, which is the 5.10 series.

@firelzrd
Copy link
Owner

firelzrd commented May 4, 2024

There's been "sched urgent fix" done at Linux 6.6.30.
Unfortunately Some files are missing in this kernel, and I cannot seem to build it.
So, any fix can't be confirmed to build or work at my side at this moment.
If you may be able to use the 6.8 or 6.9 series, please consider using those instead.
v5.2.0 is confirmed to build and run perfectly.
The "urgent fix" from EEVDF side should also fix your lockup issue.

@firelzrd
Copy link
Owner

firelzrd commented May 4, 2024

FYI, Ubuntu's latest LTS 24.04 has adopted Linux 6.8.

@ghibo
Copy link
Author

ghibo commented May 4, 2024

Thank for your answer. I'm not using the 6.8.x or 6.9-rc; I'm still at 6.6.x because it's LTS (upstream) and it gets consistent with all other tiny stuff (like suspend/hybernation, proprietary drivers like nvidia, etc.), while 6.8.x and 6.9 are moving (and then go EOL) too fast. At the moment the only solution is to revert the 3 eevdf upstream patches, and use the bore-5.0.3.

@firelzrd
Copy link
Owner

firelzrd commented May 4, 2024

Here's a WIP patch of v5.2.0 for 6.6.30+ if you're interested to try.
https://drive.google.com/file/d/1-RECePAmzPZvYmjyCDtqBCKY-9lc1GQ8/view?usp=sharing

It includes the copy of 6.9's latest pick_eevdf function and as much equivalent update as from other kernel versions.
But since I couldn't manage to build linux 6.6.30, I cannot guarantee a success of build or boot (yet).
It hasn't gone through ANY test. So please consider it unofficial.

@ghibo
Copy link
Author

ghibo commented May 4, 2024

Here's a WIP patch of v5.2.0 for 6.6.30+ if you're interested to try. https://drive.google.com/file/d/1-RECePAmzPZvYmjyCDtqBCKY-9lc1GQ8/view?usp=sharing

It includes the copy of 6.9's latest pick_eevdf function and as much equivalent update as from other kernel versions. But since I couldn't manage to build linux 6.6.30, I cannot guarantee a success of build or boot (yet). It hasn't gone through ANY test. So please consider it unofficial.

Thanks. It applies correctly, but fails compiling, ending with error:

kernel/sched/fair.c: In function 'pick_eevdf':
kernel/sched/fair.c:1144:29: error: implicit declaration of function 'vruntime_eligible'; did you mean 'entity_eligible'? [-Werror=implicit-function-declaration]
 1144 |                 if (left && vruntime_eligible(cfs_rq,
      |                             ^~~~~~~~~~~~~~~~~
      |                             entity_eligible
kernel/sched/fair.c:1145:60: error: 'struct sched_entity' has no member named 'min_vruntime'; did you mean 'vruntime'?
 1145 |                                         __node_2_se(left)->min_vruntime)) {
      |                                                            ^~~~~~~~~~~~
      |                                                            vruntime
cc1: some warnings being treated as errors
make[4]: *** [scripts/Makefile.build:243: kernel/sched/fair.o] Error 1

@firelzrd
Copy link
Owner

firelzrd commented May 4, 2024

Thank you for the testing.
I guess v5.2.0 cannot be adapted easily.
I uploaded v5.1.0 patch for 6.6.30+
How about this now?
https://drive.google.com/file/d/1MAkj3AWvdSibNu12iT1LHV-8wa4sGDl1/view?usp=sharing

If it builds and boots with no problem, I'll add it for 6.6.30+.
Your kind cooperation will be highly appreciated.
Thank you in advance!

@ghibo
Copy link
Author

ghibo commented May 4, 2024

Thank you for the testing. I guess v5.2.0 cannot be adapted easily. I uploaded v5.1.0 patch for 6.6.30+ How about this now? https://drive.google.com/file/d/1MAkj3AWvdSibNu12iT1LHV-8wa4sGDl1/view?usp=sharing

If it builds and boots with no problem, I'll add it for 6.6.30+. Your kind cooperation will be highly appreciated. Thank you in advance!

Actually it builds and boots. Can't say yet anything about stability, as the previous freeze was not happening just after boot, but sometimes later after long usage. For now it's up. Benchmark tests with schbench (legacy version) were consistent with previous results.

@firelzrd
Copy link
Owner

firelzrd commented May 5, 2024

Thank you for the testing!
If the "urgent fix" didn't fix your freeze problem, then please consider other causes also.
I haven't got any report of system lockups from anyone else so far.

@ghibo
Copy link
Author

ghibo commented May 5, 2024

Thank you for the testing! If the "urgent fix" didn't fix your freeze problem, then please consider other causes also. I haven't got any report of system lockups from anyone else so far.

Actually it's up and running since 18 hours, no freeze. I'd say it's stable.

@ghibo
Copy link
Author

ghibo commented May 20, 2024

Curiously I still get some random freeze with audio looping in 6.6.31 too. Not easy to trigger (let's say once every two days), but there. Maybe something missed to review?

@firelzrd
Copy link
Owner

firelzrd commented May 21, 2024

Curiously I still get some random freeze with audio looping in 6.6.31 too.

Thank you for the report.
Random, unspecified unstability is a nasty thing to deal with, especially when it's hard to reproduce at will to narrow down which component is causing the problem.
On 6.9-rc6 kernel, my test rig has been up for 21 days through all kinds of workloads without an issue.
So, what differs between this and your system must be considered before I go deeper into this issue. It maybe scheduler, or maybe not.

@ghibo
Copy link
Author

ghibo commented May 21, 2024

Yep, difficult to track. I tried to build a 2nd 6.6.31 kernel which the only difference is the CONFIG_SCHED_BORE which is not set. For now the non-bore kernel was up almost a day without freeze.

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

No branches or pull requests

2 participants