Skip to contentSkip to conversation

libata fixes

PATCH In review Jeff Garzik 4 participants 8 messages Nov 8, 2003 – Nov 11, 2003

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 libata fixes

Linus, please do a

bk pull bk://gkernel.bkbits.net/libata-2.5

This will update the following files:

 drivers/scsi/libata.h       |    2 +-
 drivers/scsi/sata_promise.c |   18 ++++++++++++++----
 2 files changed, 15 insertions(+), 5 deletions(-)

through these ChangeSets:

<[email protected]> (03/11/07 1.1417)
[libata] fix Promise PCI posting bugs

<[email protected]> (03/11/06 1.1416)
[libata] bump libata version

<[email protected]> (03/11/06 1.1415)
[libata] fix ugly Promise interrupt masking bug

#1 lore raw

(Not about this particular libata update)

static void __init quirk_intel_ide_combined(struct pci_dev *pdev)
...
{ PCI_FIXUP_FINAL, PCI_VENDOR_ID_INTEL, PCI_ANY_ID,
quirk_intel_ide_combined },

Won't this oops if some Intel device would be hotplugged? A similar problem with quirk_via_bridge was just fixed.

#2 lore raw
Quoted 9 lines · Sergey Vlasov

(Not about this particular libata update)

static void __init quirk_intel_ide_combined(struct pci_dev *pdev)
...
{ PCI_FIXUP_FINAL, PCI_VENDOR_ID_INTEL, PCI_ANY_ID,
quirk_intel_ide_combined },

Won't this oops if some Intel device would be hotplugged? A similar problem with quirk_via_bridge was just fixed.

We should probably start marking entries as "no hotplug" because many of the quirks have no need to be run after initial boot.

Jeff

#3 lore raw

Success with Promise FastTrak S150 TX4 (Re: [BK PATCHES] libata fixes)

In reply to Jeff Garzik

On Sat, Nov 08, 2003 at 12:26:21PM -0500, Jeff Garzik <[email protected]> wrote...

Quoted 2 lines

<[email protected]> (03/11/06 1.1415)
[libata] fix ugly Promise interrupt masking bug

This solved the last outstanding problem with the 4th drive and the driver seems to find all drives and properly boot off them, at least in a situation where no RAID-functionalty of the card is used. Great Work.

# A first quick run of bonnie++ seems to show 2.6.0-test9+libata several # %s slower then 2.4.22+ft3xx, but that might be related to differences

# between 2.4 and 2.6.
Signature · 4 lines
	Oliver M. Bolzer
	[email protected]

GPG (PGP) Fingerprint = 621B 52F6 2AC1 36DB 8761  018F 8786 87AD EF50 D1FF
#4 lore raw

Re: Success with Promise FastTrak S150 TX4 (Re: [BK PATCHES] libata fixes)

Quoted 11 lines · Oliver M. Bolzer

On Sat, Nov 08, 2003 at 12:26:21PM -0500, Jeff Garzik <[email protected]> wrote...

Quoted 2 lines

<[email protected]> (03/11/06 1.1415)
[libata] fix ugly Promise interrupt masking bug

This solved the last outstanding problem with the 4th drive and the driver seems to find all drives and properly boot off them, at least in a situation where no RAID-functionalty of the card is used. Great Work.

Thanks for testing.

Quoted 3 lines

# A first quick run of bonnie++ seems to show 2.6.0-test9+libata several # %s slower then 2.4.22+ft3xx, but that might be related to differences

# between 2.4 and 2.6.

One possibility is that queueing is not yet enabled in my sata_promise driver. Several of the SATA drivers support having multiple commands outstanding per driver (tagged command queueing), but I need to do a bit more work before I can enable queueing in the core.

Jeff

#5 lore raw

Re: Success with Promise FastTrak S150 TX4 (Re: [BK PATCHES] libata fixes)

On Mon, Nov 10, 2003 at 11:26:16AM -0500, Jeff Garzik <[email protected]> wrote...

Quoted 8 lines
Quoted 3 lines

# A first quick run of bonnie++ seems to show 2.6.0-test9+libata several # %s slower then 2.4.22+ft3xx, but that might be related to differences

# between 2.4 and 2.6.

One possibility is that queueing is not yet enabled in my sata_promise driver. Several of the SATA drivers support having multiple commands outstanding per driver (tagged command queueing), but I need to do a bit more work before I can enable queueing in the core.

I disabled /dev/mdX Software-RAID5 on two of the boxes that have the hardware (got 8 of them) and did some preliminary benchmarking using bonnie++ 1.02b. The hardware is P4-2.4GHz, 1GB RAM (highmem-enabled) wich 4 Maxtor SATA-drives with 200GBs each. The partitions I ran the tests on are 186GB large.

2.4.22 + Promise ft3xx
silo4:/dev/sda3

Version 1.02b ------Sequential Output------ --Sequential Input- --Random-

                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
silo4.rz.informa 2G 27330  95 62522  19 22619   6 29056  98 56311   6 159.7   0
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16  3007  98 +++++ +++ +++++ +++  3087  99 +++++ +++  9173 100

silo4,2G,27330,95,62522,19,22619,6,29056,98,56311,6,159.7,0,16,3007,98,+++++,+++,+++++,+++,3087,99,+++++,+++,9173,100

==========
2.4.22-bk48 + 2.4.22-bk48-libata1
silo5:/dev/sda3

Version 1.02b ------Sequential Output------ --Sequential Input- --Random-

                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
silo5.rz.informa 2G 28068  96 61698  18 23174   5 24372  77 56009   6 175.1   0
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16  2986  97 +++++ +++ +++++ +++  3136  99 +++++ +++  9867  98

silo5,2G,28068,96,61698,18,23174,5,24372,77,56009,6,175.1,0,16,2986,97,+++++,+++,+++++,+++,3136,99,+++++,+++,9867,98

The performance differences are not that big that they would really matter. One is better at one direction while the other is better at the other direction.

I am REALLY happy that a free-as-in-freedom driver exist for the hardware that has a much more certain future thant a looks-like-GPL-on-the-first-look-but-one--.o-has-no-source driver. And the libata code was really nice to read and follow, even though I knew almost nothing about disk driver. THANK YOU!

Signature · 4 lines
	Oliver M. Bolzer
	[email protected]

GPG (PGP) Fingerprint = 621B 52F6 2AC1 36DB 8761  018F 8786 87AD EF50 D1FF
#6 lore raw

Re: Success with Promise FastTrak S150 TX4 (Re: [BK PATCHES] libata fixes)

Quoted 5 lines · Oliver M. Bolzer

I disabled /dev/mdX Software-RAID5 on two of the boxes that have the hardware (got 8 of them) and did some preliminary benchmarking using bonnie++ 1.02b. The hardware is P4-2.4GHz, 1GB RAM (highmem-enabled) wich 4 Maxtor SATA-drives with 200GBs each. The partitions I ran the tests on are 186GB large.

[...]

Quoted 3 lines

The performance differences are not that big that they would really matter. One is better at one direction while the other is better at the other direction.

Well, I'll still be looking to increase performance in libata, even such ;)

But stability before performance :)

Quoted 5 lines

I am REALLY happy that a free-as-in-freedom driver exist for the hardware that has a much more certain future thant a looks-like-GPL-on-the-first-look-but-one--.o-has-no-source driver. And the libata code was really nice to read and follow, even though I knew almost nothing about disk driver. THANK YOU!

Thank Promise, too. They are actively supporting my efforts on this driver with hardware and docs. Promise has also provided Arjan (author of "pdcraid") with documentation on their vendor-specific RAID format, and they are making other efforts to better support open source, and be more friendly with the open source community.

Jeff

#7 lore raw

Re: Success with Promise FastTrak S150 TX4 (Re: [BK PATCHES] libata fixes)

Quoted 1 line · Jeff Garzik

Thank Promise, too. They are actively supporting my efforts on this driver with hardware and docs. Promise has also provided Arjan (author of "pdcraid") with documentation on their vendor-specific RAID format, and they are making other efforts to better support open source, and be more friendly with the open source community.

And it's working, I would not have purchased a SATA150 TX4 for my new server if libata did not have support for it. I know, it's small potatoes, they didn't make much money off that sale, but everything helps. The only other 4-port (non RAID) SATA card I have seen was from SIIG, but it has disappeared from their web site and distributors, and libata's support for the Sil3114 on it isn't ready yet anyway :-)