My *nix world

e1000e - The NVM Checksum Is Not Valid

With the recent version of Linux kernel (just a guess) you may discover that your Intel 825** network card (e1000e) is not working anymore and dmesg is displaying an annoying message like this:

e1000e: Intel(R) PRO/1000 Network Driver
e1000e 0000:0x:00.0: The NVM Checksum Is Not Valid
e1000e: probe of 0000:0y:00.0 failed with error -5

It seems that the nework adapter's EEPROM is broken. If the error is not fixed yet then, at the boot time, the card's EEPROM checksum will fail, and as a result of this you will get the above message.

Don't throw your card to the waste container, perhaps it's still working. Windows uses to ignore these kind of problems but Linux, being more rigorous, will check for such issues and will fail loading the device driver if card's NVM checksum is not valid.

How to fix it?

The detailed steps you may find also   here.
If everything works as expected then after reboot you should see something like this:

 e1000e: Intel(R) PRO/1000 Network Driver
 e1000e 0000:00:19.0: setting latency timer to 64
 e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
 e1000e 0000:00:19.0: irq 47 for MSI/MSI-X
 e1000e 0000:00:19.0: eth0: (PCI Express:2.5GT/s:Width x1) 00:24:81:18:88:88
 e1000e 0000:00:19.0: eth0: Intel(R) PRO/1000 Network Connection
 e1000e 0000:00:19.0: eth0: MAC: 8, PHY: 8, PBA No: FFFFFF-0FF

Now, if you think that this article was interesting don't forget to rate it. It shows me that you care and thus I will continue write about these things.

 
The following two tabs change content below.
e1000e - The NVM Checksum Is Not Valid

Eugen Mihailescu

Founder/programmer/one-man-show at Cubique Software
Always looking to learn more about *nix world, about the fundamental concepts of math, physics, electronics. I am also passionate about programming, database and systems administration. 16+ yrs experience in software development, designing enterprise systems, IT support and troubleshooting.
Tagged on: , ,

10 thoughts on “e1000e - The NVM Checksum Is Not Valid

    1. Eugen Mihailescu Post author

      I've read that article. My understanding is that it only fixes the effect but not the root of the problem. By that I mean it patches the Linux kernel/module (so that Linux, likewise Windows, will ignore entirely the "The NVM Checksum Is Not Valid" issue which in reality is not a big issue as I've mentioned in my article). Note that his hardware will still contain the problem! Is just Linux that will start (thanks to that update/patch) to ignore the issue (will become more permissive, silent), likewise Windows does.

      Anyway, I have had this problem some time ago, I haven't patched the software (i.e. Linux) but the root of the problem (i.e. the card's EEPROM). By doing that I could install from scratch whatever system and none of them will complain about "NVM checksum" because, you see, the hardware's problem was fixed. And is fixed for good! The other solution is more like a (soft) compromise that actually could work too.

      I am glad you have pointed out this because maybe other people like you and me will found one solution or another very useful and would be able to fix their problem.

  1. Guillaume

    Thank you!

    Getting the Linux utility directly on the system did the job perfectly, no need for a special boot device.

  2. compdoc

    I faced this problem, however my nic is an onboard I217-LM, and it gives an error using the option
    'DEFAULTCONFIG'. After experimenting, I wrote this:

    Go to the "Intel Ethernet Connections Boot Utility, Preboot Images, and EFI Drivers" page, and download PREBOOT.EXE. Run to extract files. Create a bootable usb stick, that boots freedos. I used Rufus.

    Copy the files BootIMG.FLB and DOS/bootutil.exe to the stick. (Don't copy the directory 'DOS' - just the file inside named bootutil.exe) Next, boot the server from the stick.

    Then run two commands:

    bootutil -wold -all
    bootutil -wole -all

    The first command turns off WOL (wake on lan), and the second command enables it again. This action will correct/reset the checksum.

  3. Nathan

    On Ubuntu 16.04 I ran:
    $ cd APPS/BootUtil/Linux_x64
    $ sudo ./bootutil64e -NIC=1 -DEFAULTCONFIG

    This works. Thank you.

  4. Jörgen

    Thank you so much!!

    Had NIC issues after bios update on my z270 board... NVM checksum fail. I used rufus, installed freeDos, put the intel bootutil files on the stick, booted up, ran the bootutil.exe -NIC=1 -DEFAULTCONFIG and restarted into ubuntu. The nic was working again!

Leave a Reply

Your email address will not be published. Required fields are marked *