6

I have a lenovo z 480 and half of the time ubuntu will not boot, only displays this error message

Error ata1.00: failed to enable AA (error_mask = 0x1

and sometimes the screen goes black with blinking cursor. I've tried several distros (kde and gnome and always equals the start and end times others do not. All use the grub 2, the only distro that starts 100% all the time is mageia not if using the old grub but it is very annoying not to be able to use the distro that you like best.

Braiam
  • 67,791
  • 32
  • 179
  • 269
oscar
  • 61
  • 1
  • 1
  • 2

4 Answers4

3

Error ata1.00: failed to enable AA (error_mask = 0x1)

This point to a problem with your hardware, be the cables, the hard drive or the motherboard. The only way to fix it, is diagnostic each piece of hardware. Since you said is random, you may test the memory and the Hard Disk first. Ubuntu includes the memtest86+ to do heuristics test to the memory, for the Hard Drive, you should do a full backup of all your important data then replace it.

Braiam
  • 67,791
  • 32
  • 179
  • 269
3

The hard drive incorrectly advertises the ATA_FLAG_FPDMA_AA flag (the FPDMA FIS Auto Activate bit) but when this is activated it does not seem to have this capability. See http://download.intel.com/support/chipsets/imsm/sb/sata2_ncq_overview.pdf

Generally, the best fix is for drivers/ata/libata-core.c to be quirked to fix this for the specific drive series. A workaround may be do disable NCQ using the kernel parameter libata.force=noncq but this will make performance suck.

To do this, edit /etc/default/grub

and change:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

to:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash libata.force=noncq"

and run:

sudo update-grub
0

In my case it was caused by corrupt file system. I have fixed it by

  1. Boot into Recovery mode
  2. I got the exact error /dev/sda2 requires a manual fsck
  3. I have issued command fsck -y /dev/sda2
  4. After the command finishes I got success message.
  5. Issued command reboot
  6. Boot into normal mode and everything was fine.

Reference:

  1. Recovery mode
  2. fsck
0

My problem turned out to also be a corrupt file system. I made use of systemd-fsck to repair it.

  1. Reboot and intercept the GRUB boot menu. See How to get to the GRUB menu at boot-time? if you need help with this.
  2. Press the e key to edit the boot options.
  3. Find the line beginning with "linux" and add fsck.mode=force to the end of the line.
  4. Press F10 to continue booting
  5. Watch fsck run for all disks.