Description of problem: Low Hard disk transfer rate for VX800 platform. Version-Release number of selected component (if applicable): How reproducible: It takes 2 hours to install the RHEL 4.7 into VIA VX800 platform + VIA Nano 1.3GHz CPU + IDE Harddisk. And after RHEL 4.7 installed, the IDE is running in PIO mode only by hdparm command. Actual results: Expected results: Additional info: After adding PCI IDs into via82cxxx.c/pci_ids.h(listed as below), rebuild kernel and set the HD to DMA mode, the performance has big improvement. Following is the patches: --- a/drivers/ide/pci/via82cxxx.c 2009-06-09 18:42:27.000000000 +0800 +++ b/drivers/ide/pci/via82cxxx.c 2009-06-09 18:55:34.000000000 +0800 @@ -75,7 +75,11 @@ u8 rev_max; u16 flags; } via_isa_bridges[] = { + { "vx800", PCI_DEVICE_ID_VIA_VX800, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, + { "cx700", PCI_DEVICE_ID_VIA_CX700, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, { "vt8251", PCI_DEVICE_ID_VIA_8251, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, + { "vt8237a", PCI_DEVICE_ID_VIA_8237A, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, + { "vt8237s", PCI_DEVICE_ID_VIA_8237S, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, { "vt8237", PCI_DEVICE_ID_VIA_8237, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, { "vt8235", PCI_DEVICE_ID_VIA_8235, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, { "vt8233a", PCI_DEVICE_ID_VIA_8233A, 0x00, 0x2f, VIA_UDMA_133 | VIA_BAD_AST }, @@ -628,6 +632,7 @@ static struct pci_device_id via_pci_tbl[] = { { PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C576_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, { PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, + { PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_SATA_EIDE, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, { 0, }, }; MODULE_DEVICE_TABLE(pci, via_pci_tbl); --- a/include/linux/pci_ids.h 2009-06-09 18:42:36.000000000 +0800 +++ b/include/linux/pci_ids.h 2009-06-09 13:49:18.000000000 +0800 @@ -1356,6 +1356,12 @@ #define PCI_DEVICE_ID_VIA_8235_1 0xB168 #define PCI_DEVICE_ID_VIA_838X_1 0xB188 #define PCI_DEVICE_ID_VIA_83_87XX_1 0xB198 +#define PCI_DEVICE_ID_VIA_8237A 0x3337 +#define PCI_DEVICE_ID_VIA_8237S 0x3372 +#define PCI_DEVICE_ID_VIA_8251 0x3287 +#define PCI_DEVICE_ID_VIA_CX700 0x8324 +#define PCI_DEVICE_ID_VIA_VX800 0x8353 +#define PCI_DEVICE_ID_VIA_SATA_EIDE 0x5324 #define PCI_VENDOR_ID_SIEMENS 0x110A #define PCI_DEVICE_ID_SIEMENS_DSCC4 0x2102
sign-off by Joseph Chan <JosephChan.tw>
Please be advised, that Bugzilla is not a support tool. It is an Engineering and Community tool. So although all changes to Enterprise Linux go through Bugzilla and Red Hat considers issues directly entered into Bugzilla valuable feedback, there is no SLA around it. If this is a production issue, please report it to your Red Hat Support contact. Thank you.
Please treat this as a feature request for RHEL 4.9. We just want PCI IDs added to via82cxxx.c
Created attachment 407869 [details] Backport VIA PCI ID's from upstream The proposed patch is incomplete and doesn't mention the upstream changesets. I've backported the relevant patches. Please test.
@Dell, @Via, Please confirm that you will test these changes once we have a new kernel build ready. Thanks
But before we can provide an update kernel build to test, we need to first confirm that the patch set provided in comment #6 works as expected.
VIA is happy to test if we have the test build.....
Charles -- Can you please confirm that Dell will also be testing this item in RHEL 4.9? We need this confirmation to proceed with the evaluation of this request. Thanks!
Two experimental kernels with the patch are available at: http://people.redhat.com/~mchehab/.bz504778/ Please test.
Thank you very much for your help. I have downloaded it and waiting for the approval to download the RHEL 4.8 for applying this patch. Regards
Please be reported the test result as below: 1. x86_64 * before patch > uname -a Linux localhost.localdomain 2.6.9-78.EL #1 Wed Jul 9 15:26:38 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux > hdparm -tT /dev/hda /dev/hda: Timing cached reads: 1780 MB in 2.00 seconds = 889.25 MB/sec Timing buffered disk reads: 14 MB in 3.24 seconds = 4.32 MB/sec * after patch > uname -a Linux localhost.localdomain 2.6.9-78.16.EL #1 Fri Apr 23 15:04:20 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux > hdparm -tT /dev/hda Timing cached reads: 1560 MB in 2.00 seconds = 779.73 MB/sec Timing buffered disk reads: 194 MB in 3.01 seconds = 64.50 MB/sec 2. i686 * before patch > uname -a Linux localhost.localdomain 2.6.9-78.EL #1 Wed Jul 9 15:27:01 EDT 2008 i686 i686 i386 GNU/Linux > hdparm -tT /dev/hda /dev/hda: Timing cached reads: 3044 MB in 2.00 seconds = 1520.71 MB/sec Timing buffered disk reads: 14 MB in 3.22 seconds = 4.35 MB/sec * after patch > uname -a Linux localhost.localdomain 2.6.9-78.16.EL #1 Fri Apr 23 15:04:16 EDT 2010 i686 i686 i386 GNU/Linux > hdparm -tT /dev/hda Timing cached reads: 2736 MB in 2.00 seconds = 1367.52 MB/sec Timing buffered disk reads: 192 MB in 3.00 seconds = 63.97 MB/sec This patch works well in my platform. And the performance has been improved after patch. Thank you very much for your help. Bruce C. Chang
Patches post at rh Kernel ML at May, 1st. Still waiting for acks.
Committed in 89.37.EL . RPMS are available at http://people.redhat.com/vgoyal/rhel4/
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2011-0263.html