summaryrefslogtreecommitdiffstats
path: root/net/rxrpc
diff options
context:
space:
mode:
authorKsenija Stanojevic <ksenija.stanojevic@gmail.com>2015-09-17 12:12:53 -0400
committerDavid S. Miller <davem@davemloft.net>2015-09-21 00:53:56 -0400
commit22a3f9a2043be28cde6d272e786874ba0d6afe15 (patch)
treeaccd07556d304f3fd0113957c4da2006b1acde92 /net/rxrpc
parent62e3b1d01c4ebbf11702a27e0c749d27195ba043 (diff)
rxrpc: Replace get_seconds with ktime_get_seconds
Replace time_t type and get_seconds function which are not y2038 safe on 32-bit systems. Function ktime_get_seconds use monotonic instead of real time and therefore will not cause overflow. Signed-off-by: Ksenija Stanojevic <ksenija.stanojevic@gmail.com> Reviewed-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rxrpc')
-rw-r--r--net/rxrpc/ar-connection.c4
-rw-r--r--net/rxrpc/ar-internal.h4
-rw-r--r--net/rxrpc/ar-transport.c4
3 files changed, 6 insertions, 6 deletions
diff --git a/net/rxrpc/ar-connection.c b/net/rxrpc/ar-connection.c
index 6631f4f1e39b..692b3e67fb54 100644
--- a/net/rxrpc/ar-connection.c
+++ b/net/rxrpc/ar-connection.c
@@ -808,7 +808,7 @@ void rxrpc_put_connection(struct rxrpc_connection *conn)
808 808
809 ASSERTCMP(atomic_read(&conn->usage), >, 0); 809 ASSERTCMP(atomic_read(&conn->usage), >, 0);
810 810
811 conn->put_time = get_seconds(); 811 conn->put_time = ktime_get_seconds();
812 if (atomic_dec_and_test(&conn->usage)) { 812 if (atomic_dec_and_test(&conn->usage)) {
813 _debug("zombie"); 813 _debug("zombie");
814 rxrpc_queue_delayed_work(&rxrpc_connection_reap, 0); 814 rxrpc_queue_delayed_work(&rxrpc_connection_reap, 0);
@@ -852,7 +852,7 @@ static void rxrpc_connection_reaper(struct work_struct *work)
852 852
853 _enter(""); 853 _enter("");
854 854
855 now = get_seconds(); 855 now = ktime_get_seconds();
856 earliest = ULONG_MAX; 856 earliest = ULONG_MAX;
857 857
858 write_lock_bh(&rxrpc_connection_lock); 858 write_lock_bh(&rxrpc_connection_lock);
diff --git a/net/rxrpc/ar-internal.h b/net/rxrpc/ar-internal.h
index aef1bd294e17..2934a73a5981 100644
--- a/net/rxrpc/ar-internal.h
+++ b/net/rxrpc/ar-internal.h
@@ -208,7 +208,7 @@ struct rxrpc_transport {
208 struct rb_root server_conns; /* server connections on this transport */ 208 struct rb_root server_conns; /* server connections on this transport */
209 struct list_head link; /* link in master session list */ 209 struct list_head link; /* link in master session list */
210 struct sk_buff_head error_queue; /* error packets awaiting processing */ 210 struct sk_buff_head error_queue; /* error packets awaiting processing */
211 time_t put_time; /* time at which to reap */ 211 unsigned long put_time; /* time at which to reap */
212 spinlock_t client_lock; /* client connection allocation lock */ 212 spinlock_t client_lock; /* client connection allocation lock */
213 rwlock_t conn_lock; /* lock for active/dead connections */ 213 rwlock_t conn_lock; /* lock for active/dead connections */
214 atomic_t usage; 214 atomic_t usage;
@@ -256,7 +256,7 @@ struct rxrpc_connection {
256 struct rxrpc_crypt csum_iv; /* packet checksum base */ 256 struct rxrpc_crypt csum_iv; /* packet checksum base */
257 unsigned long events; 257 unsigned long events;
258#define RXRPC_CONN_CHALLENGE 0 /* send challenge packet */ 258#define RXRPC_CONN_CHALLENGE 0 /* send challenge packet */
259 time_t put_time; /* time at which to reap */ 259 unsigned long put_time; /* time at which to reap */
260 rwlock_t lock; /* access lock */ 260 rwlock_t lock; /* access lock */
261 spinlock_t state_lock; /* state-change lock */ 261 spinlock_t state_lock; /* state-change lock */
262 atomic_t usage; 262 atomic_t usage;
diff --git a/net/rxrpc/ar-transport.c b/net/rxrpc/ar-transport.c
index 1976dec84f29..9946467f16b4 100644
--- a/net/rxrpc/ar-transport.c
+++ b/net/rxrpc/ar-transport.c
@@ -189,7 +189,7 @@ void rxrpc_put_transport(struct rxrpc_transport *trans)
189 189
190 ASSERTCMP(atomic_read(&trans->usage), >, 0); 190 ASSERTCMP(atomic_read(&trans->usage), >, 0);
191 191
192 trans->put_time = get_seconds(); 192 trans->put_time = ktime_get_seconds();
193 if (unlikely(atomic_dec_and_test(&trans->usage))) { 193 if (unlikely(atomic_dec_and_test(&trans->usage))) {
194 _debug("zombie"); 194 _debug("zombie");
195 /* let the reaper determine the timeout to avoid a race with 195 /* let the reaper determine the timeout to avoid a race with
@@ -226,7 +226,7 @@ static void rxrpc_transport_reaper(struct work_struct *work)
226 226
227 _enter(""); 227 _enter("");
228 228
229 now = get_seconds(); 229 now = ktime_get_seconds();
230 earliest = ULONG_MAX; 230 earliest = ULONG_MAX;
231 231
232 /* extract all the transports that have been dead too long */ 232 /* extract all the transports that have been dead too long */