Giter VIP home page Giter VIP logo

pcmemtest's People

Contributors

martinwhitaker avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

pcmemtest's Issues

ADD grub-mkconfig script

there's a rpm package of pcmemtest with a functional grub.d grub-mkconfig script

we could port that script from there

please make keyboard support working in pure EFI mode

Issue #2 was closed because it's documented that keyboard only works with enabled CMS aka legacy boot.

But more and more EFI systems don't ship a CSM.
So it would be really nice if you could get the keyboard working on pure EFI systems.
Unfortunately grub2 is GPL3+ whereas pcmemtest is only GPL2. It has a working keyboard driver for pure EFI mode.

please support ECC error polling

Using version 1.5 from Debian experimental.
PCMemTest doenst't seem to support ECC error polling which would be useful.

I got correctable Errors from my ECC RAM under Linux, but PCMemTest reported after a full completed pass still 0 Errors.
And there doestn't seem to be anything about ECC error polling in the configuration menu.

After I rebooted in Linux I got another one, just after 6 Minutes:

mc0: 0 Uncorrected Errors with no DIMM info
mc0: 0 Corrected Errors with no DIMM info
mc0: csrow2: 0 Uncorrected Errors
mc0: csrow2: mc#0csrow#2channel#0: 0 Corrected Errors
mc0: csrow2: mc#0csrow#2channel#1: 1 Corrected Errors

Can I user append parameters?

Hi

does the image (BIOS and EFI) get along with append parameters when loading pcmemtest?
e.g. I would like to turn off the machine once all RAM has been checked.

Serial console support

If I may humbly suggest supporting serial consoles. This would offer a method of user input, and I expect much easier than a USB keyboard driver. It also offers an output method for headless machines, particularly servers with IPMI serial-over-LAN.

memtest86+ supports this with the typical Linux kernel option "console". e.g. To output to both the regular console and the second serial port (at max speed), add to the boot command-line: console=tty0 console=ttyS1,115200

Once supporting boot-time command-line options to enable a serial console, you might consider allowing other options to be set there as well, e.g. enabling SMP, without needing any user input.

Display corruption with 64 cores, and very slow SMP test start with 32+ cores

On an old quad-socket Opteron 6272 server (4x16 cores but every pair of cores shares a FPU), which produced several corrected ECC errors overnight, I tried to use PCMemTest 1.5, under the form of the recently added Debian experimental package, in legacy BIOS mode, and forcing SMP enable at start. Well, pcmemtest had worked (UP and SMP modes) on several 32-bit-only computers recently, but not on this computer :)

  • first of all, PCMemTest tried to display IDs and state for all 64 cores, thereby writing over the information on the right side of the same lines:
    pcmemtest_1 5_broken_smp64
  • then, PCMemTest didn't make any visible progress for several minutes (enough for me to wait a bit, then go pick up a crappy external USB camera, put it on top of a pile of stuff in the front of the screen, and take the above picture), before I rebooted the server by pressing Esc.
  • after disabling half of the cores in the BIOS, the lack of visible progress for a while still happens:
    pcmemtest_1 5_broken_smp32
    Before taking this second picture, I used the menu to successfully switch to sequential mode, it didn't help. After taking a picture, I rebooted the server through Esc again: it looks like pcmemtest is not completely hung, it just doesn't start up in a reasonable amount of time.

I can test the latest Git version of pcmemtest later, but for now, memtest86+ 5.31b (again under the form of a Debian experimental package, which contains a bugfix over upstream memtest86+ 5.31b to avoid memory corruption and often a crash on most computers equipped with > 16 RAM slots...) has neither bug: after forcing SMP mode as well, the memory test started properly in 32-core mode:
memtest86+_5 31b_ok_smp32

aarch64 please

Hello, may I ask you to make your software available for the aarch64 platform? if you have nothing to test on, I am ready to play the role of a tester.

Build environment memory.h etc

Hi,
I tried to build this with linux mint 20.3 64bit but first it was missing memory.h and did ln -s at pcmemtest/system for /usr/src/linux-headers-5.4.0-104-generic/include/config/memory.h

then it started building but again for limits.h did etc. ln -s for /usr/include/linux/limits.h

but it goes errer later on.

How should I properly set build environment for this, any pointers would be apreceated. (btw. tnx for the work on really good tool have been using it for years :))

size: invalid option -- G

Today I tried to build 32 and 64bit pcmemtest binaries.

Both fail with the same error

size: Invalid Option -- G

Tried to build it on a debian 10 system

objcopy -O binary memtest_shared memtest_shared.bin
gcc -E -traditional -I../boot -o boot/bootsect.s ../boot/bootsect.S
as -64 boot/bootsect.s -o boot/bootsect.o
gcc -E -traditional -I../boot -o boot/setup.s ../boot/setup.S
as -64 boot/setup.s -o boot/setup.o
size: Invalid Option -- G
Usage: size [option(s)] [file(s)]
 Displays the sizes of sections inside binary files
 If no input file(s) are specified, a.out is assumed
 The options are:
  -A|-B     --format={sysv|berkeley}  Select output style (default is berkeley)
  -o|-d|-x  --radix={8|10|16}         Display numbers in octal, decimal or hex
  -t        --totals                  Display the total sizes (Berkeley only)
            --common                  Display total size for *COM* syms
            --target=<bfdname>        Set the binary file format
            @<file>                   Read options from <file>
  -h        --help                    Display this information
  -v        --version                 Display the program's version

size: supported targets: elf64-x86-64 elf32-i386 elf32-iamcu elf32-x86-64 pei-i386 pei-x86-64 elf64-l1om elf64-k1om elf64-little elf64-big elf32-little elf32-big pe-x86-64 pe-bigobj-x86-64 pe-i386 plugin srec symbolsrec verilog tekhex binary ihex
ld --defsym=_bss_size= -T ldscripts/memtest_bin.lds boot/bootsect.o boot/setup.o -b binary memtest_shared.bin -o memtest.bin
ld:--defsym:0: syntax error
make: *** [Makefile:104: memtest.bin] Error 1
rm boot/setup.s boot/bootsect.s

Feature request

Could you post an ISO version? So users could use pcmemtest.

will the memory whose address is over 4GB be tested?

In the setup_vm_map(), mapping between physical and virtual address is setup.
In first_word_mapping(), the higher addresses DRAM are all mapped into the 2GB~3GB range,
I'm confused! how about the address over 4GB?
Thank you!

void *first_word_mapping(uintptr_t page)
{
void *result;
if (page < PAGE_C(2,GB)) {
// If the address is less than 2GB, it is directly mapped.
result = (void *)(page << PAGE_SHIFT);
} else {
// Otherwise it is mapped to the third GB.
uintptr_t alias = PAGE_C(2,GB) + page % PAGE_C(1,GB);
result = (void *)(alias << PAGE_SHIFT);
}
return result;
}

Document loading pcmemtest from UEFI grub2

The documentation currently states "Either image can be booted by an intermediate bootloader using the Linux 32-bit, 64-bit, or 64-bit EFI handover boot protocols," but I have been unable to successfully load pcmemtest.efi from GRUB2. GRUB2 will report that it is loading the image, and then appears to halt with that message on screen. Perhaps I'm not setting the required graphics settings? Would you provide an example GRUB2 stanza for UEFI to the documentation?

please enable SMP mode by default

It would be nice to have SMP mode enabled by default.
There are not many EFI systems with only 1 CPU
And because keyboard isn't working I can't enable it myself

Pass complete, but its only at 73%?

Hi! Thank you for pcmemtest. I'm excited to get another piece of non-free software off my machine.

Just an FYI, there's work in NixOS to add an option for users to have a pcmemtest added to our grub: NixOS/nixpkgs#156884

But when I ran it, I was a bit confused by the output. It says "pass complete", but it's not at 100% and it kept going?

PXL_20220320_214325956

Keyboard is not powered on

A wonderful Memtest tool, easy to build and run on USB disk.
but, USB Keyboard is not powered on when running this tool on Z490 mother board, (while it is on and work during BIOS stage, and get off when PCMemtest start run), so I can't control PCMemtest mannually.

Want to learn from you

I am a newbie in iverilog. I am really want to learn how to write a verilog systhsis tool, but I don't know how to start.Could you please show me the way to write a compiler and the essential base knowledge I need to acquire.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.