lkml.org 
[lkml]   [2011]   [Apr]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Subject[PATCH 2/2]SATA: enable flush non-queueable
From
Date

Set SATA queue flush non-queueable. Running below test with a AHCI controller and
ext4 filesystem, below patch gives around ~5% speedup.
sysbench --test fileio --file-test-mode rndrw --num-threads 16 \
--file-total-size 2500MB --max-requests 150000 --max-time 3000

Signed-off-by: Shaohua Li <shaohua.li@intel.com>
---
drivers/ata/libata-scsi.c | 2 ++
1 file changed, 2 insertions(+)

Index: linux/drivers/ata/libata-scsi.c
===================================================================
--- linux.orig/drivers/ata/libata-scsi.c 2011-04-19 14:54:37.000000000 +0800
+++ linux/drivers/ata/libata-scsi.c 2011-04-19 14:58:54.000000000 +0800
@@ -3424,7 +3424,9 @@ void ata_scsi_scan_host(struct ata_port
sdev = __scsi_add_device(ap->scsi_host, channel, id, 0,
NULL);
if (!IS_ERR(sdev)) {
+ struct request_queue *q = sdev->request_queue;
dev->sdev = sdev;
+ blk_set_queue_flush_queueable(q, false);
scsi_device_put(sdev);
} else {
dev->sdev = NULL;



\
 
 \ /
  Last update: 2011-04-19 10:47    [W:1.550 / U:0.008 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site