All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
To: Trevor Hemsley <trevor.hemsley@ntlworld.com>
Cc: "linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>
Subject: Re: Netcell SyncRaid problem post 2.6.27
Date: Fri, 29 May 2009 21:13:16 +0200	[thread overview]
Message-ID: <200905292113.16487.bzolnier@gmail.com> (raw)
In-Reply-To: <20090528230317.RVVK21638.aamtaout02-winn.ispmail.ntl.com@trevor2.dsl.pipex.com>

On Friday 29 May 2009 01:01:33 Trevor Hemsley wrote:
> On Thu, 28 May 2009 14:10:15 +0200, Bartlomiej Zolnierkiewicz wrote:
> 
> >
> >On Thursday 28 May 2009 01:56:21 Trevor Hemsley wrote:
> >> Hi
> >> 
> >> Apologies if you are not the kernel maintainer that I should be writing
> >> to.
> >> 
> >> I have a Netcell SyncRAID SR5000 controller in my machine here and in
> >> kernels post 2.6.27 it is no longer working correctly. I've had a quick
> >> look at the code but before I dig too deeply, I thought I'd ask to see
> >> if this is something that's already been fixed.
> >
> >Checks for LBA48 support were fixed at this time and since this is a kind
> >of unusual controller (hardware ATA RAID) it could be that we may need to
> >add some special tweaks for it (or it could be just a bug somewhere).
> >
> >Please send me output of 'hdparm --Istdout /dev/hde' command, also please
> >use linux-ide@vger.kernel.org mailing list for communication if possible.
> 
> Since I am unsure about the etiquette of posting attachments to this
> list I have put copies of hdparm --Istdout /dev/hde and dmesg output
> from both kernel 2.6.27.2 and 2.6.29.4 in
> http://www.os2warp.org/sysbench/netcell.tar.gz
> 
> Both kernels are self-compiled but based on the original Centos 5.3
> .config file. The 2.6.29.4 is created by copying the 2.6.27.2 .config
> and then running `make oldconfig` and taking all defaults for those
> items that are new.

Thanks.

Please try this patch (it is for 2.6.30-rc7 but also applies to 2.6.29):

From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Subject: [PATCH] ide_pci_generic: add quirk for Netcell ATA RAID

We need to explicitly mark words 85-87 as valid ones since
firmware doesn't do it.

This should fix support for LBA48 and FLUSH CACHE [EXT] command
which stopped working after we applied more strict checking of
identify words in:

	commit 942dcd85bf8edf38cdc3745306ca250684d99a61
	("ide: idedisk_supports_lba48() -> ata_id_lba48_enabled()")

and

	commit 4b58f17d7c45a8e5f4acda641bec388398b9c0fa
	("ide: ide_id_has_flush_cache() -> ata_id_flush_enabled()")

Reported-by: "Trevor Hemsley" <trevor.hemsley@ntlworld.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
---
once tested+merged this should also go into 2.6.2[89] and libata

 drivers/ide/ide-pci-generic.c |   11 +++++++++++
 1 file changed, 11 insertions(+)

Index: b/drivers/ide/ide-pci-generic.c
===================================================================
--- a/drivers/ide/ide-pci-generic.c
+++ b/drivers/ide/ide-pci-generic.c
@@ -33,6 +33,16 @@ static int ide_generic_all;		/* Set to c
 module_param_named(all_generic_ide, ide_generic_all, bool, 0444);
 MODULE_PARM_DESC(all_generic_ide, "IDE generic will claim all unknown PCI IDE storage controllers.");
 
+static void netcell_quirkproc(ide_drive_t *drive)
+{
+	/* mark words 85-87 as valid */
+	drive->id[ATA_ID_CSF_DEFAULT] |= 0x4000;
+}
+
+static const struct ide_port_ops netcell_port_ops = {
+	.quirkproc		= netcell_quirkproc,
+};
+
 #define DECLARE_GENERIC_PCI_DEV(extra_flags) \
 	{ \
 		.name		= DRV_NAME, \
@@ -74,6 +84,7 @@ static const struct ide_port_info generi
 
 	{	/* 6: Revolution */
 		.name		= DRV_NAME,
+		.port_ops	= &netcell_port_ops,
 		.host_flags	= IDE_HFLAG_CLEAR_SIMPLEX |
 				  IDE_HFLAG_TRUST_BIOS_FOR_DMA |
 				  IDE_HFLAG_OFF_BOARD,

  reply	other threads:[~2009-05-29 19:09 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <200905281410.16060.bzolnier@gmail.com>
2009-05-28 23:01 ` Netcell SyncRaid problem post 2.6.27 Trevor Hemsley
2009-05-29 19:13   ` Bartlomiej Zolnierkiewicz [this message]
2009-05-29 22:44     ` Trevor Hemsley

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200905292113.16487.bzolnier@gmail.com \
    --to=bzolnier@gmail.com \
    --cc=linux-ide@vger.kernel.org \
    --cc=trevor.hemsley@ntlworld.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.