[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f96b1867-142f-7fdc-8123-58fe3bdce844@quicinc.com>
Date: Thu, 9 Mar 2023 10:44:17 +0800
From: Ziqi Chen <quic_ziqichen@...cinc.com>
To: Bart Van Assche <bvanassche@....org>, <quic_asutoshd@...cinc.com>,
<quic_cang@...cinc.com>, <mani@...nel.org>,
<stanley.chu@...iatek.com>, <adrian.hunter@...el.com>,
<beanhuo@...ron.com>, <avri.altman@....com>,
<junwoo80.lee@...sung.com>, <martin.petersen@...cle.com>
CC: <linux-scsi@...r.kernel.org>,
Alim Akhtar <alim.akhtar@...sung.com>,
"James E.J. Bottomley" <jejb@...ux.ibm.com>,
Steven Rostedt <rostedt@...dmis.org>,
Masami Hiramatsu <mhiramat@...nel.org>,
open list <linux-kernel@...r.kernel.org>,
"open list:TRACING" <linux-trace-kernel@...r.kernel.org>
Subject: Re: [PATCH v4] scsi: ufs: core: Add trace event for MCQ
On 3/7/2023 11:47 PM, Bart Van Assche wrote:
> On 3/6/23 21:53, Ziqi Chen wrote:
>> You are right, users may hate it if the trace events for legacy mode
>> and MCQ mode are different. But if I merge them into one event, it
>> will print much invalid information as we can not add if-else into
>> TP_printk().
>>
>> (For example: in SDB legacy mode, you can see such invalid prints "
>> hqid = 0 , sqt= 0, cqh=0, cqt = 0")
>>
>> Users may hate these invalid information.
>>
>> Anyway, I have made new version that merge 2 mode into one event, but
>> are you sure we really need to use this way? if yes , I can push new
>> version here.
>>
>> Or, could you give some suggestions if you have better way.
>>
>> Below is a piece of new version code , you can preview.
>>
>> TP_fast_assign(
>> __assign_str(dev_name, dev_name);
>> __entry->str_t = str_t;
>> __entry->tag = tag;
>> __entry->doorbell = doorbell;
>> __entry->hwq_id = hwq? hwq->id: 0;
>> __entry->sq_tail = hwq? hwq->sq_tail_slot: 0;
>> __entry->cq_head = hwq? hwq->cq_head_slot: 0;
>> __entry->cq_tail = hwq? hwq->cq_tail_slot: 0;
>> __entry->transfer_len = transfer_len;
>> __entry->lba = lba;
>> __entry->intr = intr;
>> __entry->opcode = opcode;
>> __entry->group_id = group_id;
>> ),
>>
>> TP_printk(
>> "%s: %s: tag: %u, DB: 0x%x, size: %d, IS: %u, LBA: %llu,
>> opcode: 0x%x (%s),"
>> "group_id: 0x%x, hqid: %d, sqt: %d, cqh: %d, cqt: %d",
>> show_ufs_cmd_trace_str(__entry->str_t), __get_str(dev_name),
>> __entry->tag,
>> __entry->doorbell, __entry->transfer_len, __entry->intr,
>> __entry->lba,
>> (u32)__entry->opcode, str_opcode(__entry->opcode),
>> (u32)__entry->group_id,
>> __entry->hwq_id,__entry->sq_tail, __entry->cq_head,
>> __entry->cq_tail
>> )
>
> Hi Ziqi,
>
> Please reply below the original e-mail instead of above. This is
> expected on Linux kernel mailing lists.
>
> Regarding your question: I propose to leave out the sq_tail, cq_head and
> cq_tail information. That information may be useful for hardware
> developers but is not useful for other users of the Linux kernel. So the
> only piece of information that is left that is MCQ-specific is the
> hardware queue index. I expect that users will be fine to see that
> information in trace events.
>
> How about reporting hardware queue index -1 for legacy mode instead of
> 0? That will allow users to tell the difference between legacy mode and
> MCQ mode from the trace events.
>
> Thanks,
>
> Bart.
Hi Bart,
Thanks for you suggestion. But the member hwq->id is an Unsigned
integer. if you want to identify SDB mode and MCQ mode, using "0" is
enough, Or how about add string such as below?
ufshcd_command: MCQ: complete_rsp: 1d84000.ufshc: tag: 14, DB: 0x0,
size: 32768, IS: 0, LBA: 5979448,opcode: 0x2a (WRITE_10),group_id: 0x0,
hqid: 2
Ziqi
>
Powered by blists - more mailing lists