I recently started noticing some blk_update_request: I/O error, dev fd0, sector 0 errors on my second computer running Arch Linux that I use as a server. This began when I had to reboot the computer when I moved into a new apartment. I had the following /etc/fstab configuration:

# /etc/fstab: static file system information
# <file system> <dir>   <type>  <options>       <dump>  <pass>
/dev/sda1       /       ext4    rw,relatime,data=ordered        0 1

/dev/sda2       none    swap    defaults        0 0

/dev/sdb1       /media/marcel/videos    auto    rw,user,auto    0 0

So my main hdd gets mounted to / and my external hdd get mounted to /media/marcel/videos. The problem is that after the reboot, my external drive got /dev/sda and my internal drive got /dev/sdb. The computer booted fine as far as I could tell until I looked into /media/marcel/videos which was a clone of /. Now I have the external drive unplugged and I am just trying to troubleshoot my main drive.

Relavent dmesg:

ACPI Error: [CAPB] Namespace lookup failure, AE_ALREADY_EXISTS (20160108/dsfield-211)
ACPI Error: Method parse/execution failed [\_SB.PCI0._OSC] (Node ffff88007b891708), AE_ALREADY_EXISTS (20160108/psparse-542)
blk_update_request: I/O error, dev fd0, sector 0
floppy: error -5 while reading block 0
ACPI Exception: AE_NOT_FOUND, Evaluating _DOD (20160108/video-1248)
ACPI Warning: SystemIO range 0x0000000000001028-0x000000000000102F conflicts with OpRegion 0x0000000000001028-0x0000000000001047 (\_SB.PCI0.IEIT.EITR) (20160108/utaddress-255)
ACPI Warning: SystemIO range 0x0000000000001028-0x000000000000102F conflicts with OpRegion 0x0000000000001000-0x000000000000102F (\_SB.PCI0.LPC0.PMIO) (20160108/utaddress-255)
ACPI Warning: SystemIO range 0x0000000000001180-0x00000000000011AF conflicts with OpRegion 0x0000000000001180-0x00000000000011AF (\_SB.PCI0.LPC0.GPOX) (20160108/utaddress-255)
blk_update_request: I/O error, dev fd0, sector 0
floppy: error -5 while reading block 0
blk_update_request: I/O error, dev fd0, sector 0
floppy: error -5 while reading block 0
blk_update_request: I/O error, dev fd0, sector 0
floppy: error -5 while reading block 0

fdisk -l (whenever I run fdisk -l, I get the blk_update_request error again):

Disk /dev/sda: 149.1 GiB, 160041885696 bytes, 312581808 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0007ee23

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sda1  *         2048 311609343 311607296 148.6G 83 Linux
/dev/sda2       311609344 312581807    972464 474.9M 82 Linux swap / Solaris

uname -a:

Linux nas 4.5.3-1-ARCH #1 SMP PREEMPT Sat May 7 20:43:57 CEST 2016 x86_64 GNU/Linux

Is this a serious issue or something that can be ignored?

Edit 1:


Module                  Size  Used by
cfg80211              491520  0
rfkill                 20480  2 cfg80211
coretemp               16384  0
kvm_intel             180224  0
psmouse               118784  0
kvm                   491520  1 kvm_intel
irqbypass              16384  1 kvm
serio_raw              16384  0
snd_hda_codec_analog    16384  1
iTCO_wdt               16384  0
snd_hda_codec_generic    69632  1 snd_hda_codec_analog
iTCO_vendor_support    16384  1 iTCO_wdt
gpio_ich               16384  0
input_leds             16384  0
ppdev                  20480  0
led_class              16384  1 input_leds
pcspkr                 16384  0
evdev                  24576  3
joydev                 20480  0
mac_hid                16384  0
snd_hda_intel          32768  0
snd_hda_codec         106496  3 snd_hda_codec_generic,snd_hda_intel,snd_hda_codec_analog
i2c_i801               20480  0
snd_hda_core           49152  4 snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_hda_codec_analog
lpc_ich                24576  0
snd_hwdep              16384  1 snd_hda_codec
snd_pcm                86016  3 snd_hda_codec,snd_hda_intel,snd_hda_core
mei_me                 32768  0
i915                 1155072  1
mei                    81920  1 mei_me
snd_timer              28672  1 snd_pcm
snd                    65536  7 snd_hwdep,snd_timer,snd_pcm,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_hda_codec_analog
intel_agp              20480  0
soundcore              16384  1 snd
fjes                   28672  0
drm_kms_helper        106496  1 i915
e1000e                217088  0
drm                   290816  3 i915,drm_kms_helper
parport_pc             28672  0
ptp                    20480  1 e1000e
parport                40960  2 ppdev,parport_pc
pps_core               20480  1 ptp
button                 16384  1 i915
video                  36864  1 i915
intel_gtt              20480  3 i915,intel_agp
acpi_cpufreq           20480  1
syscopyarea            16384  1 drm_kms_helper
sysfillrect            16384  1 drm_kms_helper
sysimgblt              16384  1 drm_kms_helper
fb_sys_fops            16384  1 drm_kms_helper
i2c_algo_bit           16384  1 i915
tpm_tis                20480  0
tpm                    36864  1 tpm_tis
processor              32768  1 acpi_cpufreq
sch_fq_codel           20480  2
ip_tables              28672  0
x_tables               28672  1 ip_tables
ext4                  516096  1
crc16                  16384  1 ext4
mbcache                20480  1 ext4
jbd2                   94208  1 ext4
sr_mod                 24576  0
cdrom                  49152  1 sr_mod
sd_mod                 36864  3
hid_generic            16384  0
usbhid                 45056  0
hid                   114688  2 hid_generic,usbhid
atkbd                  24576  0
libps2                 16384  2 atkbd,psmouse
ata_piix               36864  2
ehci_pci               16384  0
floppy                 69632  0
ata_generic            16384  0
pata_acpi              16384  0
i8042                  24576  1 libps2
serio                  20480  6 serio_raw,atkbd,i8042,psmouse
uhci_hcd               40960  0
libata                196608  3 pata_acpi,ata_generic,ata_piix
ehci_hcd               69632  1 ehci_pci
usbcore               196608  4 uhci_hcd,ehci_hcd,ehci_pci,usbhid
usb_common             16384  1 usbcore
scsi_mod              151552  3 libata,sd_mod,sr_mod
  • 1
    fd0 and floppy from dmesg are not related to hdds. If your machine has floppy drive and you do not use it - better to remove it. Programs such as fdisk may ask all relevant block devices with help of external programs or libraries. – user140866 May 13 '16 at 2:45
  • So are you saying that the blk_update_request errors are coming from my floppy drive? If that's the case, that's really weird because I don't even have a floppy drive. – Marcel May 13 '16 at 2:47
  • Do you have fd0 device? ls -ld /dev/fd0 – user140866 May 13 '16 at 2:48
  • And post your lsmod please – user140866 May 13 '16 at 2:49
  • @siblynx added. – Marcel May 13 '16 at 2:51

It seems that kernel erroneously detected some device as floppy or just created a non existent reference because your machine does not have real floppy drive. So these blk_update_request for fd0 are completely unrelated to your hard drives. Many disk managing programs such as fdisk like to enumerate all available block devices, and definitely fdisk did hit floppy module and these messages started to appear in your dmesg.

Since your machine does not have floppy drive, it is safe and encouraged to remove and blacklist floppy kernel module so it will not bother you in future:

sudo rmmod floppy
echo "blacklist floppy" | sudo tee /etc/modprobe.d/blacklist-floppy.conf

then add /etc/modprobe.d/blacklist-floppy.conf to /etc/mkinitcpio.conf FILES variable and do mkinitcpio -p linux so initramfs will not load it too.

So after next reboot it will not appear and mess your steady configuration.

  • 1
    I had to add /etc/modprobe.d/blacklist-floppy.conf to /etc/mkinitcpio.conf and then run mkinitcpio -p linux to get the changes to hold. You might want to add that. – Marcel May 13 '16 at 4:07
  • Yeah, had this in past and forgot to add. – user140866 May 13 '16 at 4:14
  • Do note that if your system has a floppy controller, it can't know until it tries to probe it if there's a drive attached, and it can't really tell the difference very well between "empty drive" and "no drive". That's why you have to blacklist the module to get rid of the error if you don't have a drive. – Perkins Apr 6 '18 at 18:03

Try this: http://forums.debian.net/viewtopic.php?t=133253

It solves this bug which wasn't obviously in my case a floppy initialization bug rather than a new partition UUID (like new UUID for swap partition).

Btw: It's not necessary to change in /boot/grub/grub.cfg from "root=UUID=" to "root=/dev/sd??".


I have been fideling and fooling around with that for yet rather a lang time.

A short and a long solution.

This is the short one:

  • First see that your fstab file is okay, especially your swap partition. -Than run:

sudo update-initramfs -u

and your problems should be over.


The long version written by someone else which I did not take note of. (Sorry people!)


Use blkid to determine the UUID of your swap partition, and while at it, make sure all other partitions have correct UUID's in /etc/fstab. Also can use lsblk -f to find the UUID's.

Put the correct UUID's into /etc/fstab, especially swap, for this error.

Put the correct UUID for swap into /etc/initramfs-tools/conf.d/resume.

Run sudo update-initramfs -u

Reboot. Fixed my triple boot of Stretch all with this error, as the swap file had changed.


The problem was due to my swap being encrypted. So the local-premount script in initramfs was waiting for a swap device that was not available, until it timed out. The relevant message was gave up waiting for suspend/resume device.

To disable this (as resuming from swap is not possible with an encrypted swap, and I don't use hibernation anyway), I modified this file: /etc/initramfs-tools/conf.d/resume.

In this file, a line with

RESUME=none (instead of the UUID that was here) will disable waiting for a resume device.


sudo update-initramfs -u to apply the changes.

System now boots normally.




Use the below command and it will fix the problem for sure:

# sudo rmmod floppy
# echo "blacklist floppy" | sudo tee /etc/modprobe.d/blacklist-floppy.conf
# update-initramfs -u -k all


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.