From: Kalle Valo <kvalo@codeaurora.org>
To: Tony Chuang <yhchuang@realtek.com>
Cc: Johannes Berg <johannes@sipsolutions.net>,
"Larry.Finger\@lwfinger.net" <Larry.Finger@lwfinger.net>,
Pkshih <pkshih@realtek.com>, Andy Huang <tehuang@realtek.com>,
"sgruszka\@redhat.com" <sgruszka@redhat.com>,
"linux-wireless\@vger.kernel.org"
<linux-wireless@vger.kernel.org>
Subject: Re: [RFC v3 01/12] rtw88: main files
Date: Thu, 15 Nov 2018 16:18:21 +0200 [thread overview]
Message-ID: <87zhuaa0gi.fsf@codeaurora.org> (raw)
In-Reply-To: <F7CD281DE3E379468C6D07993EA72F84D1734F60@RTITMBSVM01.realtek.com.tw> (Tony Chuang's message of "Mon, 22 Oct 2018 03:40:27 +0000")
Tony Chuang <yhchuang@realtek.com> writes:
>> -----Original Message-----
>> From: Kalle Valo [mailto:kvalo@codeaurora.org]
>> Sent: Sunday, October 14, 2018 1:48 AM
>> To: Tony Chuang
>> Cc: Johannes Berg; Larry.Finger@lwfinger.net; Pkshih; Andy Huang;
>> sgruszka@redhat.com; linux-wireless@vger.kernel.org
>> Subject: Re: [RFC v3 01/12] rtw88: main files
>>
>> Tony Chuang <yhchuang@realtek.com> writes:
>>
>> >> > +static void rtw_watch_dog_work(struct work_struct *work)
>> >> > +{
>> >> > + struct rtw_dev *rtwdev = container_of(work, struct rtw_dev,
>> >> > + watch_dog_work.work);
>> >> > + struct rtw_vif *rtwvif;
>> >> > +
>> >> > + if (!rtw_flag_check(rtwdev, RTW_FLAG_RUNNING))
>> >> > + return;
>> >> > +
>> >> > + ieee80211_queue_delayed_work(rtwdev->hw,
>> >> &rtwdev->watch_dog_work,
>> >> > + RTW_WATCH_DOG_DELAY_TIME);
>> >>
>> >> You're aware of the power cost of waking up every 2 seconds? That's a
>> >> really bad idea, in general, at the very least you should use a more
>> >> power efficient scheduling here to combine with other wakeups
>> >> (round_jiffies_relative, or so).
>> >
>> > Yeah I knew it, but so far we can only work like this...
>> > Will use round_jiffies_relative to combine the CPU wakeups.
>>
>> Can you elaborate more why this horrible timer is needed? And it
>> definitely needs a comment in the code explaining the reason.
>>
>
>
> The watchdog timer is required for our devices to enhance the performance.
> It does a lot of tx/rx statistics processing for the hardware.
> Those information process routines help the devices to adapt to the environment.
>
> However, status polling every two seconds is not a good solution.
> But it makes drive simpler to be implemented.
>
> We will try to change it to interrupt mode.
> But it will take a lot of time to work on it.
> So, before it's done, I think we can leave the timer here.
Yeah, interrupt mode sounds like a much better idea. But if you have to
keep two second polling at least add a proper comment to the code
explaining what you said above.
--
Kalle Valo
next prev parent reply other threads:[~2018-11-15 14:18 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-03 11:20 [RFC v3 00/12] rtw88: mac80211 driver for Realtek 802.11ac wireless network chips yhchuang
2018-10-03 11:20 ` [RFC v3 01/12] rtw88: main files yhchuang
2018-10-08 14:10 ` Johannes Berg
[not found] ` <201810081447.w98ElQfu018110@rtits1.realtek.com.tw>
2018-10-11 7:23 ` Tony Chuang
2018-10-11 7:30 ` Johannes Berg
2018-10-13 17:47 ` Kalle Valo
2018-10-22 3:40 ` Tony Chuang
2018-11-15 14:18 ` Kalle Valo [this message]
2018-10-03 11:20 ` [RFC v3 02/12] rtw88: core files yhchuang
2018-10-08 14:12 ` Johannes Berg
2018-10-03 11:20 ` [RFC v3 03/12] rtw88: hci files yhchuang
2018-10-03 11:20 ` [RFC v3 04/12] rtw88: trx files yhchuang
2018-10-03 11:20 ` [RFC v3 05/12] rtw88: mac files yhchuang
2018-10-08 13:38 ` Johannes Berg
2018-10-03 11:20 ` [RFC v3 06/12] rtw88: fw and efuse files yhchuang
2018-10-03 11:20 ` [RFC v3 07/12] rtw88: phy files yhchuang
2018-10-04 14:10 ` Stanislaw Gruszka
2018-10-08 2:28 ` Tony Chuang
2018-10-03 11:20 ` [RFC v3 08/12] rtw88: debug files yhchuang
2018-10-04 14:23 ` Stanislaw Gruszka
2018-10-08 7:57 ` Tony Chuang
2018-10-08 13:29 ` Johannes Berg
[not found] ` <201810081446.w98EkN0r017815@rtits1.realtek.com.tw>
2018-10-09 2:42 ` Tony Chuang
2018-10-03 11:20 ` [RFC v3 09/12] rtw88: chip files yhchuang
2018-10-04 14:36 ` Stanislaw Gruszka
2018-10-08 9:38 ` Tony Chuang
2018-10-03 11:20 ` [RFC v3 10/12] rtw88: 8822B init table yhchuang
2018-10-03 11:20 ` [RFC v3 11/12] rtw88: 8822C " yhchuang
2018-10-03 11:20 ` [RFC v3 12/12] rtw88: Kconfig & Makefile yhchuang
2018-10-08 14:00 ` Johannes Berg
[not found] ` <201810081447.w98ElIFH018051@rtits1.realtek.com.tw>
2018-10-09 5:10 ` Tony Chuang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87zhuaa0gi.fsf@codeaurora.org \
--to=kvalo@codeaurora.org \
--cc=Larry.Finger@lwfinger.net \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=pkshih@realtek.com \
--cc=sgruszka@redhat.com \
--cc=tehuang@realtek.com \
--cc=yhchuang@realtek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.