diff options
Diffstat (limited to 'include/linux/time_namespace.h')
| -rw-r--r-- | include/linux/time_namespace.h | 17 | 
1 files changed, 13 insertions, 4 deletions
diff --git a/include/linux/time_namespace.h b/include/linux/time_namespace.h index bb2c52f4fc94..c514d0e5a45c 100644 --- a/include/linux/time_namespace.h +++ b/include/linux/time_namespace.h @@ -33,17 +33,22 @@ struct time_namespace {  extern struct time_namespace init_time_ns;  #ifdef CONFIG_TIME_NS +static inline struct time_namespace *to_time_ns(struct ns_common *ns) +{ +	return container_of(ns, struct time_namespace, ns); +} +void __init time_ns_init(void);  extern int vdso_join_timens(struct task_struct *task,  			    struct time_namespace *ns);  extern void timens_commit(struct task_struct *tsk, struct time_namespace *ns);  static inline struct time_namespace *get_time_ns(struct time_namespace *ns)  { -	refcount_inc(&ns->ns.count); +	ns_ref_inc(ns);  	return ns;  } -struct time_namespace *copy_time_ns(unsigned long flags, +struct time_namespace *copy_time_ns(u64 flags,  				    struct user_namespace *user_ns,  				    struct time_namespace *old_ns);  void free_time_ns(struct time_namespace *ns); @@ -52,7 +57,7 @@ struct page *find_timens_vvar_page(struct vm_area_struct *vma);  static inline void put_time_ns(struct time_namespace *ns)  { -	if (refcount_dec_and_test(&ns->ns.count)) +	if (ns_ref_put(ns))  		free_time_ns(ns);  } @@ -108,6 +113,10 @@ static inline ktime_t timens_ktime_to_host(clockid_t clockid, ktime_t tim)  }  #else +static inline void __init time_ns_init(void) +{ +} +  static inline int vdso_join_timens(struct task_struct *task,  				   struct time_namespace *ns)  { @@ -129,7 +138,7 @@ static inline void put_time_ns(struct time_namespace *ns)  }  static inline -struct time_namespace *copy_time_ns(unsigned long flags, +struct time_namespace *copy_time_ns(u64 flags,  				    struct user_namespace *user_ns,  				    struct time_namespace *old_ns)  {  | 
