[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <18141.42848.537873.349518@alkaid.it.uu.se>
Date: Tue, 4 Sep 2007 20:43:44 +0200
From: Mikael Pettersson <mikpe@...uu.se>
To: Jeff Norden <jeff@...h.tntech.edu>
Cc: alan@...hat.com, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/1] pata_it821x: fix lost interrupt with atapi devices
Jeff Norden writes:
> From: Jeff Norden <jnorden@...h.tntech.edu>
>
> Fix "lost" interrupt problem when using dma with CD/DVD drives in some
> configurations. This problem can make installing linux from media
> impossible for distro's that have switched to libata-only configurations.
>
> The simple fix is to eliminate the use of dma for reading drive status, etc,
> by checking the number of bytes to transferred.
>
> This change will only affect the behavior of atapi devices, not disks.
> There is more info at http://bugzilla.redhat.com/show_bug.cgi?id=242229
> This patch is for 2.6.22.1
>
> Signed-off-by: Jeff Norden <jnorden@...h.tntech.edu>
>
> ---
>
> --- pata_it821x.c.orig 2007-08-16 14:20:49.000000000 -0500
> +++ pata_it821x.c 2007-08-31 16:09:22.000000000 -0500
> @@ -533,6 +533,10 @@ static int it821x_check_atapi_dma(struct
> struct ata_port *ap = qc->ap;
> struct it821x_dev *itdev = ap->private_data;
>
> + /* Only use dma for transfers to/from the media. */
> + if (qc->nbytes < 2048)
> + return -EOPNOTSUPP;
> +
> /* No ATAPI DMA in smart mode */
> if (itdev->smart)
> return -EOPNOTSUPP;
>
This looks like a gross hack. Aren't you supposed to inspect
the command instead and whitelist the ones you know are OK,
like pata_pdc2027x.c and sata_promise.c do?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists