Skip to content

[202012][Arista] Disable ATA NCQ for a few products#13803

Merged
qiluo-msft merged 1 commit intosonic-net:202012from
Staphylo:202012-gardena-ncq
Mar 13, 2023
Merged

[202012][Arista] Disable ATA NCQ for a few products#13803
qiluo-msft merged 1 commit intosonic-net:202012from
Staphylo:202012-gardena-ncq

Conversation

@Staphylo
Copy link
Copy Markdown
Collaborator

@Staphylo Staphylo commented Feb 14, 2023

Why I did it

Some products might experience an occasional IO failure in the communication between CPU and SSD.
Based on some research it could be attributable to some device not handling ATA NCQ (Native Command Queue).

This issue currently affect 4 products:

  • DCS-7170-32C*
  • DCS-7170-64C
  • DCS-7060DX4-32
  • DCS-7260CX3-64

How I did it

This change disable NCQ on the affected drive for a small set of products.

How to verify it

When the fix is applied, these 2 patterns can be found in the dmesg.
ata1.00: FORCE: horkage modified (noncq)
NCQ (not used)

Test results using: fio --direct=1 --rw=randrw --bs=64k --ioengine=libaio --iodepth=64 --runtime=120 --numjobs=4

with NCQ (ata1.00: 61865984 sectors, multi 1: LBA48 NCQ (depth 32), AA)

   READ: bw=33.9MiB/s (35.6MB/s), 33.9MiB/s-33.9MiB/s (35.6MB/s-35.6MB/s), io=4073MiB (4270MB), run=120078-120078msec
  WRITE: bw=34.1MiB/s (35.8MB/s), 34.1MiB/s-34.1MiB/s (35.8MB/s-35.8MB/s), io=4100MiB (4300MB), run=120078-120078msec

without NCQ (ata1.00: 61865984 sectors, multi 1: LBA48 NCQ (not used))

   READ: bw=31.7MiB/s (33.3MB/s), 31.7MiB/s-31.7MiB/s (33.3MB/s-33.3MB/s), io=3808MiB (3993MB), run=120083-120083msec
  WRITE: bw=31.9MiB/s (33.4MB/s), 31.9MiB/s-31.9MiB/s (33.4MB/s-33.4MB/s), io=3830MiB (4016MB), run=120083-120083msec

Description for the changelog

Disable ATA NCQ for a few Arista products

@prgeor
Copy link
Copy Markdown
Contributor

prgeor commented Mar 6, 2023

@lguohan please help merge

@lguohan
Copy link
Copy Markdown
Collaborator

lguohan commented Mar 13, 2023

@qiluo-msft is the 202012 branch owner

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants