Re: [PATCH 21/22] libata: implement ATA printk helpers

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

 



Tejun Heo wrote:
> Implement ata_{port|dev}_printk() which prefixes the message with
> proper identification string.  This change is necessary for later PM
> support because devices and links should be identified differently
> depending on how they are attached.
> 
> This also helps unifying device id strings.  Currently, there are two
> forms in use (P is the port number D device number) - 'ataP(D):', and
> 'ataP: dev D '.  These macros also make it harder to forget proper ID
> string (e.g. printing only port number when a device is in question).
> 
> Debug message handling can be integrated into these printk macros by
> passing debug type and level via @lv.
> 
> Signed-off-by: Tejun Heo <htejun@xxxxxxxxx>
> 
> ---
> 
>  include/linux/libata.h |   11 +++++++++++
>  1 files changed, 11 insertions(+), 0 deletions(-)
> 
> 387b4ba08bdce6d729cf441e7c1173d9863f4c04
> diff --git a/include/linux/libata.h b/include/linux/libata.h
> index bd8cd3b..7b54d92 100644
> --- a/include/linux/libata.h
> +++ b/include/linux/libata.h
> @@ -650,7 +650,18 @@ extern void ata_eng_timeout(struct ata_p
>  extern void ata_eh_qc_complete(struct ata_queued_cmd *qc);
>  extern void ata_eh_qc_retry(struct ata_queued_cmd *qc);
>  
> +/*
> + * printk helpers
> + */
> +#define ata_port_printk(ap, lv, fmt, args...) \
> +	printk(lv"ata%u: "fmt, (ap)->id , ##args)
> +
> +#define ata_dev_printk(dev, lv, fmt, args...) \
> +	printk(lv"ata%u.%02u: "fmt, (dev)->ap->id, (dev)->devno , ##args)
>  
> +/*
> + * qc helpers
> + */
>  static inline int
>  ata_sg_is_last(struct scatterlist *sg, struct ata_queued_cmd *qc)
>  {

A minor question:
Messages like "ata5.01" are seen in the log. Do we ever have more than 2 devices per port?
(with port multiplier?) Otherwise, maybe "ata5.1" is shorter?

--
albert

-
: 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