Jeff Norden writes:
 >  From: Jeff Norden <[EMAIL PROTECTED]>
 > 
 > 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 <[EMAIL PROTECTED]>
 > 
 > ---
 > 
 > --- 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 [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to