Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
filesystems
lustre_2_12
0011-LU-13344-sec-remove-time_t-usage.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0011-LU-13344-sec-remove-time_t-usage.patch of Package lustre_2_12
From 9d4d300444633f3fe9beb71238124ebe78cd793b Mon Sep 17 00:00:00 2001 From: James Simmons <jsimmons@infradead.org> Date: Fri, 20 Mar 2020 19:49:06 -0400 Subject: [PATCH 11/35] LU-13344 sec: remove time_t usage In the latest kernels time_t has been removed since time_t has been a 64 bit value just like time64_t so no need for it anymore. Change ps_sepol_mtime to ktime_t which is the preferred time format in the linux kernel. For the case of the Lustre GGS code the fields marked as time_t are timestamps so just change it to time64_t. Change-Id: I9f40592d440cc8d68c7b73c0c31d88bcecb3723b Signed-off-by: James Simmons <jsimmons@infradead.org> Reviewed-on: https://review.whamcloud.com/37942 Tested-by: jenkins <devops@whamcloud.com> Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com> Tested-by: Maloo <maloo@whamcloud.com> Reviewed-by: Neil Brown <neilb@suse.de> Reviewed-by: Sebastien Buisson <sbuisson@ddn.com> Tested-by: Sebastien Buisson <sbuisson@ddn.com> Reviewed-by: Oleg Drokin <green@whamcloud.com> --- lustre/include/lustre_sec.h | 2 +- lustre/ptlrpc/gss/gss_svc_upcall.c | 6 +++--- lustre/ptlrpc/gss/sec_gss.c | 2 +- lustre/ptlrpc/sec.c | 9 ++++++--- lustre/ptlrpc/sec_lproc.c | 2 +- 5 files changed, 12 insertions(+), 9 deletions(-) diff --git a/lustre/include/lustre_sec.h b/lustre/include/lustre_sec.h index cef4bd5c7e34..6a69d01150aa 100644 --- a/lustre/include/lustre_sec.h +++ b/lustre/include/lustre_sec.h @@ -870,7 +870,7 @@ struct ptlrpc_sec { struct obd_import *ps_import; spinlock_t ps_lock; /** mtime of SELinux policy file */ - time_t ps_sepol_mtime; + ktime_t ps_sepol_mtime; /** next check time of SELinux policy file */ ktime_t ps_sepol_checknext; /** diff --git a/lustre/ptlrpc/gss/gss_svc_upcall.c b/lustre/ptlrpc/gss/gss_svc_upcall.c index bbb4a0b424b1..2202e3f56f8c 100644 --- a/lustre/ptlrpc/gss/gss_svc_upcall.c +++ b/lustre/ptlrpc/gss/gss_svc_upcall.c @@ -315,7 +315,7 @@ static int rsi_parse(struct cache_detail *cd, char *mesg, int mlen) char *buf = mesg; int len; struct rsi rsii, *rsip = NULL; - time_t expiry; + time64_t expiry; int status = -EINVAL; ENTRY; @@ -560,7 +560,7 @@ static int rsc_parse(struct cache_detail *cd, char *mesg, int mlen) char *buf = mesg; int len, rv, tmp_int; struct rsc rsci, *rscp = NULL; - time_t expiry; + time64_t expiry; int status = -EINVAL; struct gss_api_mech *gm = NULL; @@ -782,7 +782,7 @@ int gss_svc_upcall_install_rvs_ctx(struct obd_import *imp, CERROR("unable to get expire time, drop it\n"); GOTO(out, rc = -EINVAL); } - rsci.h.expiry_time = (time_t) ctx_expiry; + rsci.h.expiry_time = ctx_expiry; switch (imp->imp_obd->u.cli.cl_sp_to) { case LUSTRE_SP_MDT: diff --git a/lustre/ptlrpc/gss/sec_gss.c b/lustre/ptlrpc/gss/sec_gss.c index ab59c841a441..845bfbca44d5 100644 --- a/lustre/ptlrpc/gss/sec_gss.c +++ b/lustre/ptlrpc/gss/sec_gss.c @@ -1102,7 +1102,7 @@ int gss_sec_create_common(struct gss_sec *gsec, sec->ps_import = class_import_get(imp); spin_lock_init(&sec->ps_lock); INIT_LIST_HEAD(&sec->ps_gc_list); - sec->ps_sepol_mtime = 0; + sec->ps_sepol_mtime = ktime_set(0, 0); sec->ps_sepol_checknext = ktime_set(0, 0); sec->ps_sepol[0] = '\0'; diff --git a/lustre/ptlrpc/sec.c b/lustre/ptlrpc/sec.c index 100990eae4c7..3f061761e2fd 100644 --- a/lustre/ptlrpc/sec.c +++ b/lustre/ptlrpc/sec.c @@ -1807,14 +1807,17 @@ static int sepol_helper(struct obd_import *imp) argv[2] = imp->imp_obd->obd_type->typ_name; argv[4] = imp->imp_obd->obd_name; spin_lock(&imp->imp_sec->ps_lock); - if (imp->imp_sec->ps_sepol_mtime == 0 && + if (ktime_to_ns(imp->imp_sec->ps_sepol_mtime) == 0 && imp->imp_sec->ps_sepol[0] == '\0') { /* ps_sepol has not been initialized */ argv[5] = NULL; argv[7] = NULL; } else { - snprintf(mtime_str, sizeof(mtime_str), "%lu", - imp->imp_sec->ps_sepol_mtime); + time64_t mtime_ms; + + mtime_ms = ktime_to_ms(imp->imp_sec->ps_sepol_mtime); + snprintf(mtime_str, sizeof(mtime_str), "%lld", + mtime_ms / MSEC_PER_SEC); mode_str[0] = imp->imp_sec->ps_sepol[0]; } spin_unlock(&imp->imp_sec->ps_lock); diff --git a/lustre/ptlrpc/sec_lproc.c b/lustre/ptlrpc/sec_lproc.c index 37bca072d1f4..95dbf2062495 100644 --- a/lustre/ptlrpc/sec_lproc.c +++ b/lustre/ptlrpc/sec_lproc.c @@ -198,7 +198,7 @@ lprocfs_sptlrpc_sepol_seq_write(struct file *file, const char __user *buffer, spin_lock(&imp->imp_sec->ps_lock); snprintf(imp->imp_sec->ps_sepol, param->sdd_sepol_len + 1, "%s", param->sdd_sepol); - imp->imp_sec->ps_sepol_mtime = param->sdd_sepol_mtime; + imp->imp_sec->ps_sepol_mtime = ktime_set(param->sdd_sepol_mtime, 0); spin_unlock(&imp->imp_sec->ps_lock); out: -- 2.41.0
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor