Search Linux Wireless

Re: [PATCH 2/7] ath6kl: add tracing points for sdio transfers

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

 



Johannes Berg <johannes@xxxxxxxxxxxxxxxx> writes:

> On Thu, 2012-12-27 at 13:44 +0200, Kalle Valo wrote:
>
>> +	if (request & HIF_WRITE)
>> +		trace_ath6kl_sdio_wr(addr, request, buf, len);
>> +	else
>> +		trace_ath6kl_sdio_rd(addr, request, buf, len);
>
> It would be more efficient to use a single tracepoint and have a
> "direction" field or so -- then the if doesn't have to be executed when
> tracing is disabled.

Heh, I first had a single tracepoint with an int (1 == tx, 0 == rx) for
this but then I split it to two tracepoints just to make it easier for
filtering. But it would be good to get rid of that extra if.

One way would be to just remove if the clause and let user space parse
the request variable (btw which should be renamed to flags) but then
implementing printk for the trace point is more difficult as HIF_WRITE
is defined for the printk. Is there any easy way to "export" some of the
defines, like HIF_WRITE, for the printk part in a tracepoint?

>> +	for (i = 0; i < scat_req->scat_entries; i++) {
>> +		if (scat_req->req & HIF_WRITE)
>> +			trace_ath6kl_sdio_wr(scat_req->addr,
>> +					     scat_req->req,
>> +					     scat_req->scat_list[i].buf,
>> +					     scat_req->scat_list[i].len);
>> +		else
>> +			trace_ath6kl_sdio_rd(scat_req->addr,
>> +					     scat_req->req,
>> +					     scat_req->scat_list[i].buf,
>> +					     scat_req->scat_list[i].len);
>> +	}
>
> Same here, although it would be even better to move the loop into the
> tracepoint ... is there a small upper bound on "scat_entries"?

Yes, the limit should be 8.

> If yes, you could do something like here:
>
> http://git.kernel.org/?p=linux/kernel/git/iwlwifi/iwlwifi-next.git;a=blob;f=drivers/net/wireless/iwlwifi/iwl-devtrace.h;hb=HEAD#l325
>
> where I put a function call into the __entry to figure out how much
> space is needed.

That looks good, I'll take a look and try to implement the same for
ath6kl.

Thank you for the review!

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


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux