memtest86+: switch to upstream binary

source built package has been reported to fail with more than 4GB of RAM.

Closes: #11691
This commit is contained in:
yopito 2021-08-21 17:52:02 +02:00 committed by Leah Neukirchen
parent e8553134ea
commit ecfbf48fee
7 changed files with 7 additions and 194 deletions

View file

@ -1,10 +0,0 @@
--- a/Makefile
+++ b/Makefile
@@ -21,7 +21,6 @@ OBJS= head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o \
all: clean memtest.bin memtest
- scp memtest.bin root@192.168.0.12:/srv/tftp/mt86plus
# Link it statically once so I know I don't have undefined
# symbols and then link it dynamically so I have full

View file

@ -1,18 +0,0 @@
Patch to get memtest86+ working with gcc 4.7.2 or later and PCI scan fix
these patches were taken from Mageia
upstream report containing link to the patches:
http://forum.canardpc.com/threads/83443-Memtest86-V5.01-crashes-with-gcc-4.7.2-or-later
Patch source: http://pkgs.fedoraproject.org/cgit/rpms/memtest86+.git/
--- a/Makefile~ 2014-01-08 01:30:11.355900076 +0000
+++ b/Makefile 2014-01-08 01:31:19.387555469 +0000
@@ -12,7 +12,7 @@
AS=as -32
CC=gcc
-CFLAGS= -Wall -march=i486 -m32 -O1 -fomit-frame-pointer -fno-builtin \
+CFLAGS= -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin \
-ffreestanding -fPIC $(SMP_FL) -fno-stack-protector
OBJS= head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o \

View file

@ -1,27 +0,0 @@
Patch to get memtest86+ working with gcc 4.7.2 or later and PCI scan fix
these patches were taken from Mageia
upstream report containing link to the patches:
http://forum.canardpc.com/threads/83443-Memtest86-V5.01-crashes-with-gcc-4.7.2-or-later
Patch source: http://pkgs.fedoraproject.org/cgit/rpms/memtest86+.git/
--- a/io.h~ 2013-08-10 02:01:58.000000000 +0000
+++ b/io.h 2014-01-08 01:29:12.404465515 +0000
@@ -31,7 +31,7 @@
*/
#define __OUT1(s,x) \
-extern inline void __out##s(unsigned x value, unsigned short port) {
+static inline void __out##s(unsigned x value, unsigned short port) {
#define __OUT2(s,s1,s2) \
__asm__ __volatile__ ("out" #s " %" s1 "0,%" s2 "1"
@@ -43,7 +43,7 @@
__OUT1(s##c_p,x) __OUT2(s,s1,"") : : "a" (value), "id" (port)); SLOW_DOWN_IO; }
#define __IN1(s) \
-extern inline RETURN_TYPE __in##s(unsigned short port) { RETURN_TYPE _v;
+static inline RETURN_TYPE __in##s(unsigned short port) { RETURN_TYPE _v;
#define __IN2(s,s1,s2) \
__asm__ __volatile__ ("in" #s " %" s2 "1,%" s1 "0"

View file

@ -1,100 +0,0 @@
Patch to get memtest86+ working with gcc 4.7.2 or later and PCI scan fix
these patches were taken from Mageia
upstream report containing link to the patches:
http://forum.canardpc.com/threads/83443-Memtest86-V5.01-crashes-with-gcc-4.7.2-or-later
Patch source: http://pkgs.fedoraproject.org/cgit/rpms/memtest86+.git/
--- a/controller.c
+++ b/controller.c
@@ -2,6 +2,8 @@
* MemTest86+ V5 Specific code (GPL V2.0)
* By Samuel DEMEULEMEESTER, sdemeule@memtest.org
* http://www.canardpc.com - http://www.memtest.org
+ *
+ * Edited by David McInnis Oct 4, 2014
*/
//#include "defs.h"
@@ -292,7 +294,7 @@ static void setup_nhm(void)
/* First, locate the PCI bus where the MCH is located */
- for(i = 0; i < sizeof(possible_nhm_bus); i++) {
+ for(i = 0; i < sizeof(possible_nhm_bus) / sizeof(possible_nhm_bus[0]); i++) {
pci_conf_read( possible_nhm_bus[i], 3, 4, 0x00, 2, &vid);
pci_conf_read( possible_nhm_bus[i], 3, 4, 0x02, 2, &did);
vid &= 0xFFFF;
@@ -327,7 +329,7 @@ static void setup_nhm32(void)
ctrl.mode = ECC_NONE;
/* First, locate the PCI bus where the MCH is located */
- for(i = 0; i < sizeof(possible_nhm_bus); i++) {
+ for(i = 0; i < sizeof(possible_nhm_bus) / sizeof(possible_nhm_bus[0]); i++) {
pci_conf_read( possible_nhm_bus[i], 3, 4, 0x00, 2, &vid);
pci_conf_read( possible_nhm_bus[i], 3, 4, 0x02, 2, &did);
vid &= 0xFFFF;
@@ -1424,7 +1426,7 @@ static void poll_fsb_amd64(void) {
unsigned long dramchr;
float clockratio;
double dramclock;
- unsigned int dummy[3];
+ unsigned int dummy[4];
int ram_type;
float coef = 10;
@@ -2851,13 +2853,13 @@ static void poll_timings_nf4ie(void) {
static void poll_timings_i875(void) {
- ulong dev6, dev62;
+ ulong dev6;
ulong temp;
float cas;
int rcd, rp, ras, chan;
long *ptr, *ptr2;
- pci_conf_read( 0, 6, 0, 0x40, 4, &dev62);
+ pci_conf_read( 0, 6, 0, 0x40, 4, &dev6);
ptr2=(long*)(dev6+0x68);
/* Read the MMR Base Address & Define the pointer */
--- a/init.c
+++ b/init.c
@@ -7,6 +7,8 @@
*
* Released under version 2 of the Gnu Public License.
* By Chris Brady
+ *
+ * Edited by David McInnis October 4, 2014
*/
@@ -914,7 +916,6 @@ void cpu_type(void)
default:
cprint(0, COL_MID, "Unknown Intel");
break;
- break;
}
}
--- a/main.c
+++ b/main.c
@@ -422,7 +422,7 @@ void test_start(void)
//initialise_cpus();
btrace(my_cpu_num, __LINE__, "BeforeInit", 1, 0, 0);
/* Draw the screen and get system information */
- init();
+ init();
/* Set defaults and initialize variables */
set_defaults();
@@ -737,7 +737,7 @@ void test_start(void)
/* Do the same test for each CPU */
if (++cpu_sel >= act_cpus)
{
- cpu_sel = 0;
+ cpu_sel = 0;
next_test();
} else {
continue;

View file

@ -1,15 +0,0 @@
"Fix compilation of inline assembly with new gcc"
Patch source: http://pkgs.fedoraproject.org/cgit/rpms/memtest86+.git/
--- a/Makefile
+++ b/Makefile
@@ -13,7 +13,7 @@ AS=as -32
CC=gcc
CFLAGS= -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin \
- -ffreestanding -fPIC $(SMP_FL) -fno-stack-protector
+ -ffreestanding -fPIC $(SMP_FL) -fno-stack-protector -fgnu89-inline
OBJS= head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o \
config.o cpuid.o linuxbios.o pci.o memsize.o spd.o error.o dmi.o controller.o \

View file

@ -1,11 +0,0 @@
--- a/Makefile 2019-03-29 16:41:29.629879497 +0100
+++ b/Makefile 2019-03-29 16:41:55.351031244 +0100
@@ -53,7 +53,7 @@
$(CC) -c $(CFLAGS) -fno-strict-aliasing reloc.c
test.o: test.c
- $(CC) -c -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding test.c
+ $(CC) -c -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fno-stack-protector test.c
random.o: random.c
$(CC) -c -Wall -march=i486 -m32 -O3 -fomit-frame-pointer -fno-builtin -ffreestanding random.c

View file

@ -1,26 +1,20 @@
# Template file for 'memtest86+' # Template file for 'memtest86+'
pkgname=memtest86+ pkgname=memtest86+
version=5.01 version=5.01
revision=5 revision=6
archs="i686 x86_64" archs="i686* x86_64*"
short_desc="Advanced Memory Diagnostic Tool" short_desc="Advanced Memory Diagnostic Tool - upstream binary"
maintainer="Orphaned <orphan@voidlinux.org>" maintainer="Orphaned <orphan@voidlinux.org>"
license="GPL-2.0-or-later" license="GPL-2.0-or-later"
homepage="http://www.memtest.org" homepage="http://www.memtest.org"
distfiles="http://www.memtest.org/download/${version}/${pkgname}-${version}.tar.gz" distfiles="https://www.memtest.org/download/${version}/memtest86+-${version}.bin.gz"
checksum=142127b7953fbd829b1057fb64a78d3340c2b771484230a7347e94530a0d9039 checksum=78f6625b093de69537d99ed68e35b2a9e5d666504cb2533affab1967bd888fc8
create_wrksrc=yes
nostrip=yes nostrip=yes
noverifyrdeps=yes noverifyrdeps=yes
if [ "$XBPS_MACHINE" = "x86_64" ]; then
makedepends="gcc-multilib"
fi
do_build() {
make
}
do_install() { do_install() {
vinstall memtest.bin 755 boot memtest86+ vinstall memtest86+-5.01.bin 755 boot memtest86+
vinstall ${FILESDIR}/20_memtest86+ 755 etc/grub.d vinstall ${FILESDIR}/20_memtest86+ 755 etc/grub.d
} }