https://github.com/anphsw/memtest86 is another memtest86+ fork which contains some interesting changes. Unlike both upstream and coreboot's fork:
* in dmi.c, it's not affected by https://bugs.debian.org/1003906 , and it contains updated DMI struct definitions;
* in spd.c, struct pci_smbus_controller smbcontrollers[] contains ~30 additional entries for Intel hardware;
* in main.c and test.c, it has new latency analysis and Rowhammer tests;
* etc.
In config.h and lib.c , both forks have support for 4 serial ports, up from 2.
On its side, the coreboot fork integrates multiboot changes, embeds a much newer and larger JEDEC ID list than both upstream and anphsw's fork, etc.
Lastly, unlike both forks, upstream 5.31b has DDR5 entries in dmi.c's static char *memory_types[], a number of typo fixes, the beginning of a user-space unit test program for memtest86+ (which could be used as a starting point for fuzzing the DMI, SPD, ACPI, etc. parsing functions).
It's a mess :)
PS: I used the following mechanical changes to clean up a bit the large diffs between memtest86+ 5.31b and the anphsw / coreboot forks:
Lionel Debroux <email address hidden> told at http:// bugs.debian. org/943752
Date: Tue, 18 Jan 2022 23:08:44 +0100
https:/ /github. com/anphsw/ memtest86 is another memtest86+ fork which contains some interesting changes. Unlike both upstream and coreboot's fork: /bugs.debian. org/1003906 , and it contains updated DMI struct definitions; controller smbcontrollers[] contains ~30 additional entries for Intel hardware;
* in dmi.c, it's not affected by https:/
* in spd.c, struct pci_smbus_
* in main.c and test.c, it has new latency analysis and Rowhammer tests;
* etc.
In config.h and lib.c , both forks have support for 4 serial ports, up from 2.
On its side, the coreboot fork integrates multiboot changes, embeds a much newer and larger JEDEC ID list than both upstream and anphsw's fork, etc.
Lastly, unlike both forks, upstream 5.31b has DDR5 entries in dmi.c's static char *memory_types[], a number of typo fixes, the beginning of a user-space unit test program for memtest86+ (which could be used as a starting point for fuzzing the DMI, SPD, ACPI, etc. parsing functions).
It's a mess :)
PS: I used the following mechanical changes to clean up a bit the large diffs between memtest86+ 5.31b and the anphsw / coreboot forks:
perl -pi -e "s/v->/vv->/g" * mt86_isdigit/ g" * mt86_memcmp/ g" * mt86_memmove/ g" * mt86_strncmp/ g" * mt86_strstr/ g" * mt86_strlen/ g" * (/mt86_ error(/ g" * mt86_error/ print_error/ g" *
perl -pi -e "s/isdigit/
perl -pi -e "s/memcmp/
perl -pi -e "s/memmove/
perl -pi -e "s/strncmp/
perl -pi -e "s/strstr/
perl -pi -e "s/strlen/
perl -pi -e "s/error\
perl -pi -e "s/print_
+ 1 manual edition to test.h for renaming v to vv
Many whitespace changes still appear in those diffs, despite passing the -b or -w flags to `diff`.