Re: [PATCH] libata-eh: Add a simple mechanism for silencing error reporting

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Alan wrote:
> We want to be able to issue commands that fail silently some of the time
> (set_features/xfer rate to CF 1.4 devices, perhaps some others such as
> user SG_IO commands ought to be silent too as the error is for the app)
> 
> This is a minimal implementation, we can extend it so the QUIET flag
> isn't quiet about errors that are not command errors but indicate
> infrastructre problems (CRC errors, HSM violation, DeviceFault) if need
> be.
> 
> Signed-off-by: Alan Cox <alan@xxxxxxxxxx>
> 
> diff -u --new-file --recursive --exclude-from /usr/src/exclude linux.vanilla-2.6.20-rc6-mm3/drivers/ata/libata-eh.c linux-2.6.20-rc6-mm3/drivers/ata/libata-eh.c
> --- linux.vanilla-2.6.20-rc6-mm3/drivers/ata/libata-eh.c	2007-01-31 14:20:39.000000000 +0000
> +++ linux-2.6.20-rc6-mm3/drivers/ata/libata-eh.c	2007-01-31 14:27:25.000000000 +0000
> @@ -1407,6 +1407,8 @@
>  			continue;
>  		if (qc->flags & ATA_QCFLAG_SENSE_VALID && !qc->err_mask)
>  			continue;
> +		if (qc->tf.flags & ATA_TFLAG_QUIET)
> +			continue;
>  
>  		nr_failed++;
>  	}
> @@ -1446,6 +1448,8 @@
>  
>  		if (!(qc->flags & ATA_QCFLAG_FAILED) || !qc->err_mask)
>  			continue;
> +		if (qc->tf.flags & ATA_TFLAG_QUIET)
> +			continue;
>  
>  		ata_dev_printk(qc->dev, KERN_ERR,
>  			"cmd %02x/%02x:%02x:%02x:%02x:%02x/%02x:%02x:%02x:%02x:%02x/%02x "

I think the result can be a bit confusing if ehc->i.err_mask is set
(port/dev exception message without failed command report).  How about
counting nr_quiet and doing if (nr_failed == nr_quiet) return right
after the counting block?

-- 
tejun
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux