Fedora 19 on Vaio Pro 13 – SSD Issues

Its no secret that the Vaio Pro comes with a very nice SSD. The 128GB version is a MZHPU128HCGM made by Samsung. From my benchmarking it is very fast with ~1100MB/s read and ~500MB/s write. But when booting into Fedora 19, it may fail to boot, or the system may lock up for short periods (especially under heavy IO). During boot it may show a stream of the following messages (if it happens while you are logged in they will be in dmesg):

01:45:25,494 ERR kernel:[  155.668632] ata1.00: exception Emask 0x0 SAct 0x3 SErr 0x0 action 0x6 frozen
01:45:25,494 ERR kernel:[  155.668640] ata1.00: failed command: READ FPDMA QUEUED
01:45:25,494 ERR kernel:[  155.668650] ata1.00: cmd 60/08:00:00:08:00/00:00:00:00:00/40 tag 0 ncq 4096 in
01:45:25,494 ERR kernel:[  155.668650]          res 40/00:01:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
01:45:25,494 ERR kernel:[  155.668655] ata1.00: status: { DRDY }
01:45:25,494 ERR kernel:[  155.668659] ata1.00: failed command: READ FPDMA QUEUED
01:45:25,494 ERR kernel:[  155.668667] ata1.00: cmd 60/08:08:80:b8:e7/00:00:0e:00:00/40 tag 1 ncq 4096 in
01:45:25,494 ERR kernel:[  155.668667]          res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
01:45:25,494 ERR kernel:[  155.668672] ata1.00: status: { DRDY }

From my previous experience with the errors on other systems I decided to try disabling Native Command Queuing (NCQ). This immediately fixed the issue.

To make the fix permanent you need to add libata.force=noncq to your GRUB2 default kernel boot parameters. As root, edit /etc/defaults/grub and add libata.force=noncq to the end of the GRUB_CMDLINE_LINUX line. The finished file should look similar to the below:

GRUB_TIMEOUT=2
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rd.md=0 rd.lvm=0 rd.dm=0 vconsole.keymap=us $([ -x /usr/sbin/rhcrashkernel-param ] && /usr/sbin/rhcrashkernel-param || :) rd.luks=0 vconsole.font=latarcyrheb-sun16 rhgb quiet libata.force=noncq"
GRUB_DISABLE_RECOVERY="true"

Then simply update your GRUB2 menu and reboot:

# grub2-mkconfig -o /boot/efi/EFI/Boot/grub.cfg

I am very interested to know if anyone has experienced this issue on their Vaio Pro or whether there is an issue with my SSD.

13 thoughts on “Fedora 19 on Vaio Pro 13 – SSD Issues

  1. wisp

    Could you please comment on how long it takes from power on to Grub and then from Grub to desktop login?

    Reply
  2. Matt

    Hi Nick, Firstly thanks for all the work that you have done here, well done. I’m pretty much a newbie to the linux world and I have the vaio pro 13 with the 256gb SSD and the machine would not boot into the desktop with command queuing turned on. not sure what that is all about. I also have a toshiba utlrabook with 128gb SSD and I used the same kernel switch (libata.force=noncq) on ubuntu 12 and that completely changed the personality of the machine although it was no where near as bad as the Sony. It took a bit of effort to getting the networking running with the kernel you provided but,that was my mistake because I already yum updated the kernel to a newer one than yours and It was giving me a bit of issues installing an older one. Did you have any issues with the SD card reader by any chance?

    Reply
  3. Adrian

    Hi, thank you for your very useful information 🙂
    I installed Arch Linux on my new Vaio Pro 13. libata.noncq is no longer needed with Linux 3.11.0-rc4, works great. Unfortunately I didn’t manage to get it booting through UEFI. I use ArchLinux’s liveUSB to boot my Linux in UEFI mode… I tried copying grubx64.efi to \EFI\Boot\ with changed name but after reboot Windows 8 starts. My changes done by efibootmgr are not persistent after reboot.

    Reply
  4. Ben Konrath

    Thanks for this – it really helped me get up and running with Fedora 19 on my SVS1313C5E. If you want to boot with secure boot, you can copy EFI/fedora/shim.efi to EFI/Boot/bootx64.efi. It’s working for me anyway.

    Reply
  5. Ben Konrath

    I also had to add libata.force=noncq to use a Samsung 840 pro SSD in my Sony Vaio SVS1313C5E. I’m using the stock kernel from Fedora 19 (3.9.5-301.fc19.x86_64) as the 3.11 update doesn’t work well for me.

    Reply

Leave a Reply