GNU bug report logs -
#32890
[PATCH 0/2] test mems
Previous Next
Reported by: Tobias Geerinckx-Rice <me <at> tobias.gr>
Date: Mon, 1 Oct 2018 10:15:02 UTC
Severity: normal
Tags: patch
Done: Tobias Geerinckx-Rice <me <at> tobias.gr>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 32890 in the body.
You can then email your comments to 32890 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#32890
; Package
guix-patches
.
(Mon, 01 Oct 2018 10:15:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Tobias Geerinckx-Rice <me <at> tobias.gr>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Mon, 01 Oct 2018 10:15:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Guix,
Here are some memory testers.
Memtest86+ must be built with '--system=i686-linux' (is there a
way to ask for a 32-bit glibc on x86_64?) and still needs to be
tested by a volunteer with a BIOS machine. It can be launched from
GRUB ('linux16 memtest') or catted to a boot disc (memtest.bin).
Memtester runs in user space and can even run as a regular
user. It should just work.
Kind regards,
T G-R
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32890
; Package
guix-patches
.
(Mon, 01 Oct 2018 10:20:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 32890 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/hardware.scm (memtest86+): New public variable.
---
gnu/packages/hardware.scm | 66 +++++++++++++++++++++++++++++++++++++--
1 file changed, 64 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm
index f77336e50..558ba4ef8 100644
--- a/gnu/packages/hardware.scm
+++ b/gnu/packages/hardware.scm
@@ -18,6 +18,7 @@
(define-module (gnu packages hardware)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages gcc)
#:use-module (gnu packages glib)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
@@ -74,6 +75,67 @@ calibrated, and restored when the calibration is applied.")
(license (list license:bsd-3 ; FindDDCUtil.cmake
license:gpl2+)))) ; everything else
+;; Distinct from memtest86, which is obsolete.
+(define-public memtest86+
+ (package
+ (name "memtest86+")
+ ;; Update the description when/if UEFI support is released.
+ (version "5.01")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://www.memtest.org/download/5.01/memtest86+-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "0fch1l55753y6jkk0hj8f6vw4h1kinkn9ysp22dq5g9zjnvjf88l"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (delete 'configure) ; no configure script
+ (replace 'build
+ ;; The default 'make all' does wonderful things, like scp(1) a file to
+ ;; 192.168.0.12. Build the bootable images and nothing more.
+ (lambda _
+ (invoke "make"
+ "memtest" ; ELF executable
+ "memtest.bin"))) ; DOS/MBR boot sector
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (lib (string-append out "/lib/memtest86+"))
+ (doc (string-append out "/share/doc/memtest86+-" ,version)))
+ (for-each
+ (lambda (file)
+ (install-file file lib))
+ (list "memtest"
+ "memtest.bin"))
+ (for-each
+ (lambda (file)
+ (install-file file doc))
+ (list "FAQ"
+ "README"))))))
+ #:tests? #f)) ; no way to test this
+ (native-inputs
+ ;; Newer GCCs fail with a deluge of "multiple definition of `__foo'" errors.
+ `(("gcc" ,gcc-4.9)))
+ ;; XXX How can I ask to simply 'build the same thing on x86_64 as on i686'?
+ (supported-systems (list "i686-linux"))
+ (home-page "https://www.memtest.org/")
+ (synopsis "Thorough real-mode memory tester")
+ (description
+ "Memtest86+ is a thorough, stand-alone memory test for x86-architecture
+systems. It runs independently of any operating system, at computer boot-up, so
+that it can scan all of your RAM for hardware defects.
+
+Most errors reported by Memtest86+ can be solved by replacing (parts of) your
+RAM, but the test implicitly tests the CPU, caches, and motherboard as well.
+It is impossible for the test to determine which component caused the failure to
+occur: the only option is to replace more parts until the failure is corrected.
+
+Memtest86+ cannot currently be used on computers booted with UEFI.")
+ (license license:gpl2)))
+
(define-public msr-tools
(package
(name "msr-tools")
@@ -89,6 +151,7 @@ calibrated, and restored when the calibration is applied.")
(arguments
`(#:make-flags
(list (string-append "sbindir=" (assoc-ref %outputs "out") "/sbin"))
+ #:tests? #f ; no test suite
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure script
@@ -98,8 +161,7 @@ calibrated, and restored when the calibration is applied.")
(let* ((out (assoc-ref outputs "out"))
(sbin (string-append out "/sbin")))
(mkdir-p sbin)
- #t))))
- #:tests? #f)) ; no test suite
+ #t))))))
(native-inputs
`(("unzip" ,unzip)))
;; These registers and the CPUID instruction only exist on (most) x86 chips.
--
2.18.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32890
; Package
guix-patches
.
(Mon, 01 Oct 2018 10:20:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 32890 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/hardware.scm (memtester): New public variable.
---
gnu/packages/hardware.scm | 46 +++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm
index 558ba4ef8..2c0ef4492 100644
--- a/gnu/packages/hardware.scm
+++ b/gnu/packages/hardware.scm
@@ -136,6 +136,52 @@ occur: the only option is to replace more parts until the failure is corrected.
Memtest86+ cannot currently be used on computers booted with UEFI.")
(license license:gpl2)))
+(define-public memtester
+ (package
+ (name "memtester")
+ (version "4.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ ;; Even the latest release is available under 'old-versions/'.
+ (uri (string-append "http://pyropus.ca/software/memtester/old-versions/"
+ "memtester-" version ".tar.gz"))
+ (sha256
+ (base32 "127xymmyzb9r6dxqrwd69v7gf8csv8kv7fjvagbglf3wfgyy5pzr"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags
+ (list "CC=gcc")
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ ;; This is a home-brewed configuration system where the cc/ld command
+ ;; lines are stored in one-line files.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out")))
+ (substitute* (list "conf-cc" "conf-ld")
+ (("^cc") "gcc"))
+ (substitute* "Makefile"
+ (("(INSTALLPATH.*=).*" _ assignment)
+ (string-append assignment out)))
+ #t)))
+ (replace 'check
+ ;; There is no test suite. Test some RAM for a single iteration.
+ (lambda _
+ (invoke "./memtester" "64K" "1"))))))
+ (home-page "http://pyropus.ca/software/memtester/")
+ (synopsis "User-space memory subsystem tester")
+ (description
+ "Memtester stress-tests the memory subsystem of your operating system and
+computer. It can help debug even intermittent and non-deterministic errors.
+
+Memtester runs entirely in user space. This means that you don't need to reboot
+to test your memory, but also that it's not possible to test all of the RAM
+installed in the system.
+
+It can also be told to test memory starting at a particular physical address.")
+ (license license:gpl2)))
+
(define-public msr-tools
(package
(name "msr-tools")
--
2.18.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32890
; Package
guix-patches
.
(Mon, 01 Oct 2018 10:32:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 32890 <at> debbugs.gnu.org (full text, mbox):
Tobias Geerinckx-Rice wrote:
> (define-public msr-tools
> (package
> (name "msr-tools")
> @@ -89,6 +151,7 @@ calibrated, and restored when the calibration
> is applied.")
> (arguments
> `(#:make-flags
> (list (string-append "sbindir=" (assoc-ref %outputs
> "out") "/sbin"))
> + #:tests? #f ; no test suite
> #:phases
> (modify-phases %standard-phases
> (delete 'configure) ; no configure script
> @@ -98,8 +161,7 @@ calibrated, and restored when the calibration
> is applied.")
> (let* ((out (assoc-ref outputs "out"))
> (sbin (string-append out "/sbin")))
> (mkdir-p sbin)
> - #t))))
> - #:tests? #f)) ; no test suite
> + #t))))))
> (native-inputs
> `(("unzip" ,unzip)))
> ;; These registers and the CPUID instruction only exist on
> (most) x86 chips.
Have some cruft. Shouldn't affect the build, of course.
Kind regards,
T G-R
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32890
; Package
guix-patches
.
(Mon, 01 Oct 2018 15:50:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 32890 <at> debbugs.gnu.org (full text, mbox):
I wrote:
> Memtest86+ must be built with '--system=i686-linux' (is there a
> way to ask for a 32-bit glibc on x86_64?)
There is, and it's called #:system.
Kind regards,
Someone with server hardware issues
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32890
; Package
guix-patches
.
(Tue, 02 Oct 2018 09:45:01 GMT)
Full text and
rfc822 format available.
Message #20 received at 32890 <at> debbugs.gnu.org (full text, mbox):
Hi,
Tobias Geerinckx-Rice <me <at> tobias.gr> skribis:
> * gnu/packages/hardware.scm (memtest86+): New public variable.
[...]
> + (lambda* (#:key outputs #:allow-other-keys)
> + (let* ((out (assoc-ref outputs "out"))
> + (lib (string-append out "/lib/memtest86+"))
> + (doc (string-append out "/share/doc/memtest86+-" ,version)))
> + (for-each
> + (lambda (file)
> + (install-file file lib))
> + (list "memtest"
> + "memtest.bin"))
> + (for-each
> + (lambda (file)
> + (install-file file doc))
> + (list "FAQ"
> + "README"))))))
Please return #t.
Otherwise LGTM!
Ludo’.
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32890
; Package
guix-patches
.
(Tue, 02 Oct 2018 09:46:02 GMT)
Full text and
rfc822 format available.
Message #23 received at 32890 <at> debbugs.gnu.org (full text, mbox):
Tobias Geerinckx-Rice <me <at> tobias.gr> skribis:
> * gnu/packages/hardware.scm (memtest86+): New public variable.
[...]
> + ;; XXX How can I ask to simply 'build the same thing on x86_64 as on i686'?
> + (supported-systems (list "i686-linux"))
And yes, #:system is the way. Then you can add x86_64-linux to
‘supported-systems’, it can’t hurt.
Ludo’.
Information forwarded
to
guix-patches <at> gnu.org
:
bug#32890
; Package
guix-patches
.
(Tue, 02 Oct 2018 09:46:02 GMT)
Full text and
rfc822 format available.
Message #26 received at 32890 <at> debbugs.gnu.org (full text, mbox):
Tobias Geerinckx-Rice <me <at> tobias.gr> skribis:
> * gnu/packages/hardware.scm (memtester): New public variable.
LGTM, thanks!
Ludo'.
Reply sent
to
Tobias Geerinckx-Rice <me <at> tobias.gr>
:
You have taken responsibility.
(Thu, 04 Oct 2018 02:32:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Tobias Geerinckx-Rice <me <at> tobias.gr>
:
bug acknowledged by developer.
(Thu, 04 Oct 2018 02:32:02 GMT)
Full text and
rfc822 format available.
Message #31 received at 32890-done <at> debbugs.gnu.org (full text, mbox):
Pushed as 5eff43804eaed5744967f83edbaeb7ffdb77aec1 &
fb5412511479c19b3e4c884e9cc65e652ea923e2 with the aforementioned
changes, as well as descriptions which (I hope) better describe
both tools' similarities and differences.
Kind regards,
T G-R
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Thu, 01 Nov 2018 11:24:06 GMT)
Full text and
rfc822 format available.
This bug report was last modified 6 years and 234 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.