From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933848AbbI3LbU (ORCPT ); Wed, 30 Sep 2015 07:31:20 -0400 Received: from mout.kundenserver.de ([212.227.126.131]:53070 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933029AbbI3L1I (ORCPT ); Wed, 30 Sep 2015 07:27:08 -0400 From: Arnd Bergmann To: netdev@vger.kernel.org Cc: y2038@lists.linaro.org, linux-kernel@vger.kernel.org, "David S. Miller" , Arnd Bergmann , Johannes Berg , linux-wireless@vger.kernel.org Subject: [PATCH 06/12] mac80211: use ktime_get_seconds Date: Wed, 30 Sep 2015 13:26:36 +0200 Message-Id: <1443612402-3000775-7-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.1.0.rc2 In-Reply-To: <1443612402-3000775-1-git-send-email-arnd@arndb.de> References: <1443612402-3000775-1-git-send-email-arnd@arndb.de> X-Provags-ID: V03:K0:bwJVxZX9ahZp8t/EWCSRpaum593l9jfDdFwFb0lzjw7o43g3l9p +x5PImEq6VT5tXf7aIIcNXHAHIEIU84elexeiaLayH7iUWYjQMjSVZsQdZw/OHxmXGHRaY2 TXVF7tEwgk4QnDXyp/7aY3I+aiJJxPxPqyWrySkr64x5WJoIWsp+bKNaRJi67x13e38nfKQ LsLTJeBFS6T/1XCDq2NCw== X-UI-Out-Filterresults: notjunk:1;V01:K0:xr6XB40cdXY=:zgROeUuZDX4fq98UNVQiF6 JxR7uywnYNa2ww53rZUcJ4r37xjVcGpvaK9+ouQkaDKJNLfJ/DdLbHxMC3ASHm8ehfETfF5tD tLlhaq8BES0QI82CtqYIE6MyvGL9V/e3J1yRoszrOqyjgxuxxG1gjMwVH1Eppo92t6CP1oi3S zWYHE+ZQ+LrnOfAC7gJYc9Jme+XchjlYlHmA/va4KzTUYe9J9pt5To4c0FnUbHW63TnqXZYNE VdAYlfe7XSNwHU3JdAzWDsBcKvlt8t2fRSUM24Q20ojaKY/swmjdb5TSasvlloEaq5ea++G2/ 2dXXAkjlDXlkTXg8J5uIJLo+Mu42Hun2fL+Z11cLjn7vbZyBvNtwEZyAs7uZxjLTetl1jIvp5 7dFz3kOz4Ue8lRvo5tc3d5yPzjMNy8ii1Inrm7+YKQCCP2DUi6uYs6g38M62L2dcjNruRK3vg EpHJMNMhD9Ly3Cb9dvCAqBZaWEwevdkBkZAeMgAufpHx/Ovebv2KfSfTu7ydQIOcyCJXGjcOl zaZYkiSfD5LLXDtyYDBcQguBalAIFRLcljoam8/Si7HkV+a2UHqquFiIEb9iuy3wpHYHI82M7 yZDVseOzw476VFOEfBtPMIFDcB8PJq5JycK8COEd5RLFHBP6WG7xIpFXqOzpMgtQmie2oHBcs Zvkbt6qJdEWRe7sKTM2v6yC/6dddK75mb4G+1Z2GQT0dTDNt52sJer9jvpKf9T0gdb5w= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The mac80211 code uses ktime_get_ts to measure the connected time. As this uses monotonic time, it is y2038 safe on 32-bit systems, but we still want to deprecate the use of 'timespec' because most other users are broken. This changes the code to use ktime_get_seconds() instead, which avoids the timespec structure and is slightly more efficient. Signed-off-by: Arnd Bergmann Cc: Johannes Berg Cc: linux-wireless@vger.kernel.org --- net/mac80211/sta_info.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/net/mac80211/sta_info.c b/net/mac80211/sta_info.c index 64f1936350c6..c3644458e2ee 100644 --- a/net/mac80211/sta_info.c +++ b/net/mac80211/sta_info.c @@ -303,7 +303,6 @@ struct sta_info *sta_info_alloc(struct ieee80211_sub_if_data *sdata, struct ieee80211_local *local = sdata->local; struct ieee80211_hw *hw = &local->hw; struct sta_info *sta; - struct timespec uptime; int i; sta = kzalloc(sizeof(*sta) + hw->sta_data_size, gfp); @@ -339,8 +338,7 @@ struct sta_info *sta_info_alloc(struct ieee80211_sub_if_data *sdata, /* Mark TID as unreserved */ sta->reserved_tid = IEEE80211_TID_UNRESERVED; - ktime_get_ts(&uptime); - sta->last_connected = uptime.tv_sec; + sta->last_connected = ktime_get_seconds(); ewma_signal_init(&sta->avg_signal); for (i = 0; i < ARRAY_SIZE(sta->chain_signal_avg); i++) ewma_signal_init(&sta->chain_signal_avg[i]); @@ -1813,7 +1811,6 @@ void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo) struct ieee80211_sub_if_data *sdata = sta->sdata; struct ieee80211_local *local = sdata->local; struct rate_control_ref *ref = NULL; - struct timespec uptime; u32 thr = 0; int i, ac; @@ -1838,8 +1835,7 @@ void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo) BIT(NL80211_STA_INFO_RX_DROP_MISC) | BIT(NL80211_STA_INFO_BEACON_LOSS); - ktime_get_ts(&uptime); - sinfo->connected_time = uptime.tv_sec - sta->last_connected; + sinfo->connected_time = ktime_get_seconds() - sta->last_connected; sinfo->inactive_time = jiffies_to_msecs(jiffies - sta->last_rx); if (!(sinfo->filled & (BIT(NL80211_STA_INFO_TX_BYTES64) | -- 2.1.0.rc2