diff mbox series

staging: rtl8723bs: remove get_monotonic_boottime()

Message ID 20180618150717.1066151-1-arnd@arndb.de
State Accepted
Commit 8498887660dfc9a07659ad545bfec389eb1d1d3f
Headers show
Series staging: rtl8723bs: remove get_monotonic_boottime() | expand

Commit Message

Arnd Bergmann June 18, 2018, 3:06 p.m. UTC
get_monotonic_boottime() is deprecated because it uses the
old 'timespec' structure. This replaces one of the last callers
with a call to ktime_get_boottime, which also simplifies it
a bit by avoiding a double conversion.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

---
 drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c | 9 +--------
 1 file changed, 1 insertion(+), 8 deletions(-)

-- 
2.9.0

Comments

Quytelda Kahja June 19, 2018, 7:18 a.m. UTC | #1
I'm fairly sure this doesn't matter functionally (yet), but perhaps
'notify_timestamp' should be updated to an 's64' type since ktime_to_us()
returns a signed type?

That note aside, I think this is good.

On Mon, Jun 18, 2018 at 05:06:50PM +0200, Arnd Bergmann wrote:
> get_monotonic_boottime() is deprecated because it uses the

> old 'timespec' structure. This replaces one of the last callers

> with a call to ktime_get_boottime, which also simplifies it

> a bit by avoiding a double conversion.

>

> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Reviewed-by: Quytelda Kahja <quytelda@tamalin.org>

> ---

>  drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c | 9 +--------

>  1 file changed, 1 insertion(+), 8 deletions(-)

>

> diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c

> index 02178e25fbb8..73fc3a742f74 100644

> --- a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c

> +++ b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c

> @@ -233,13 +233,6 @@ static int rtw_ieee80211_channel_to_frequency(int chan, int band)

>  	return 0; /* not supported */

>  }

>

> -static u64 rtw_get_systime_us(void)

> -{

> -	struct timespec ts;

> -	get_monotonic_boottime(&ts);

> -	return ((u64)ts.tv_sec*1000000) + ts.tv_nsec / 1000;

> -}

> -

>  #define MAX_BSSINFO_LEN 1000

>  struct cfg80211_bss *rtw_cfg80211_inform_bss(struct adapter *padapter, struct wlan_network *pnetwork)

>  {

> @@ -331,7 +324,7 @@ struct cfg80211_bss *rtw_cfg80211_inform_bss(struct adapter *padapter, struct wl

>

>  	notify_channel = ieee80211_get_channel(wiphy, freq);

>

> -	notify_timestamp = rtw_get_systime_us();

> +	notify_timestamp = ktime_to_us(ktime_get_boottime());

>

>  	notify_interval = le16_to_cpu(*(__le16 *)rtw_get_beacon_interval_from_ie(pnetwork->network.IEs));

>  	notify_capability = le16_to_cpu(*(__le16 *)rtw_get_capability_from_ie(pnetwork->network.IEs));

> --

> 2.9.0

>
Arnd Bergmann June 19, 2018, 8:09 a.m. UTC | #2
On Tue, Jun 19, 2018 at 9:18 AM, Quytelda Kahja <quytelda@gmail.com> wrote:
> I'm fairly sure this doesn't matter functionally (yet), but perhaps

> 'notify_timestamp' should be updated to an 's64' type since ktime_to_us()

> returns a signed type?


I think it's fine either way, ktime_t is only signed to deal with
differences between
times and the theoretical case of running with local time set to a
date before 1970
(which I'm sure fails for a number of other reasons), but boottime is guaranteed
to be positive as well as monotonically increasing, so an unsigned
type is fine here.

> That note aside, I think this is good.


> Reviewed-by: Quytelda Kahja <quytelda@tamalin.org>


Thanks for taking a look!

     Arnd
diff mbox series

Patch

diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
index 02178e25fbb8..73fc3a742f74 100644
--- a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
+++ b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c
@@ -233,13 +233,6 @@  static int rtw_ieee80211_channel_to_frequency(int chan, int band)
 	return 0; /* not supported */
 }
 
-static u64 rtw_get_systime_us(void)
-{
-	struct timespec ts;
-	get_monotonic_boottime(&ts);
-	return ((u64)ts.tv_sec*1000000) + ts.tv_nsec / 1000;
-}
-
 #define MAX_BSSINFO_LEN 1000
 struct cfg80211_bss *rtw_cfg80211_inform_bss(struct adapter *padapter, struct wlan_network *pnetwork)
 {
@@ -331,7 +324,7 @@  struct cfg80211_bss *rtw_cfg80211_inform_bss(struct adapter *padapter, struct wl
 
 	notify_channel = ieee80211_get_channel(wiphy, freq);
 
-	notify_timestamp = rtw_get_systime_us();
+	notify_timestamp = ktime_to_us(ktime_get_boottime());
 
 	notify_interval = le16_to_cpu(*(__le16 *)rtw_get_beacon_interval_from_ie(pnetwork->network.IEs));
 	notify_capability = le16_to_cpu(*(__le16 *)rtw_get_capability_from_ie(pnetwork->network.IEs));