- User Since
- Jan 7 2019, 7:21 PM (111 w, 4 d)
Wed, Feb 24
It looks great now! Since this changes core libc functions, can you perform a buildworld on a system with the modified libc installed to confirm everything works fine?
Mon, Feb 22
@bruno.larsen_eldorado.org.br, overall your changes look good to me.
I have only one more suggestion and some nitpicks.
Fri, Feb 19
Worked fine on PPC64LE, both on Talos and QEMU, with D27475 to fix boot with ofwfb on LE.
Thu, Feb 18
Fri, Feb 12
Looks good. I have been using a slightly modified version of this on Talos II and it is working well.
Fri, Feb 5
Using only htole64() won't work in all cases.
Dec 4 2020
Nov 25 2020
Nov 17 2020
Nov 16 2020
The changes look good to me overall.
Leave superpages disabled by default
Nov 13 2020
Wow, that's really a lot of endianness fixes, nice job!
Nov 9 2020
Nov 6 2020
Nov 5 2020
Restore comment about tlbie instruction forms
Oct 23 2020
- improve performance
- force inline in new moea64_pte_* functions to avoid extra overhead with clang -O now defaulting -O1
- look for superpage PVO in moea64_enter only when superpages are enabled
- use multiple PV locks for superpage ops, instead of making a single PV lock cover a superpage
Sep 23 2020
Rename ppcpnv/powernv to power8.
This diff has several changes on top of the previous one. The main ones are:
Sep 14 2020
Sep 10 2020
Fix ERAT multi-hit issue
Sep 1 2020
Aug 31 2020
Looks good to me.
Aug 28 2020
- address (part of) markj's comments
Aug 24 2020
Aug 21 2020
Address jhibbits' comments
Address bdragon's comments
Aug 20 2020
Aug 18 2020
Aug 11 2020
Looks good, very similar to amd64 code.
But if you want to make it equivalent to amd64 code, you could also print SP, PC (that would be frame->fixreg and frame->srr0, I think) and the word (or maybe the first 2 words) at frame->srr0.
Aug 3 2020
Jul 29 2020
Nice. I just have a few more nitpicks.
Jul 27 2020
Jul 21 2020
Just for the record, measuring buildworld (as well as kernel and libc builds) times with superpages enabled and disabled didn't show any significant variation.
But when comparing the build times with a kernel that has D25237 vs one without it, there is a consistent performance hit of about 3%.
- Address jhibbits comments
Jul 20 2020
Jul 15 2020
Jul 14 2020
Jul 13 2020
Moved PVO_PADDR() changes to another diff (D25654).
Jul 6 2020
Jul 3 2020
Address kib's review comments
Jul 2 2020
Jul 1 2020
Jun 18 2020
Right now I'm planning to profile the code to try to improve superpages performance, that should at least present some gain over not using it.
- Add more specific sysctl counters about promotion failures.
- Add an early check to handle a very common promote fail case, that dramatically reduces the number of promotion failures and improves buildworld performance substantially.
- Factor out different PPC64 tlbie instruction forms into an ifunc, which also corrects large page invalidation on older cores.
Jun 15 2020
- Address jhibbits' comments
Jun 12 2020
Jun 11 2020
- add missing count increment when handling superpages, in moea64_clear_bit()