Re: Libata disk corruptor paths ?

2007-04-11 Thread Tejun Heo
Alan Cox wrote: > Found these by inspection: > > Command issuing goes via ata_qc_reinit() which sets up the device bits > for the command to include the device select bit. > > If we are using NCQ then the code in ata_build_rw_tf sets bit 6 directly > without using |= which clears the device selec

Re: Libata disk corruptor paths ?

2007-03-30 Thread Alan Cox
> There is another ugly here too ata_tf_init sets the device bits but > doesn't set TFLAG_DEVICE. Scarily in fact the qc_reinit path that Argh ignore this part - I meant to delete it as the tf structure is memset to zero. The other case I believe is a genuine bug however - To unsubscribe from this

Libata disk corruptor paths ?

2007-03-30 Thread Alan Cox
Found these by inspection: Command issuing goes via ata_qc_reinit() which sets up the device bits for the command to include the device select bit. If we are using NCQ then the code in ata_build_rw_tf sets bit 6 directly without using |= which clears the device select bit and means any NCQ comman