ntp, add debugfs entries for time_status and time_state
PATCH 1/1 ntp, add debugfs entries for time_status and time_state
Add debugfs entries for ntp time_status and time_state. These are useful for debugging ntp issues.
Signed-off-by Prarit Bhargava <[email protected]>
Cc John Stultz <[email protected]>
Cc Thomas Gleixner <[email protected]>
--- kernel/time/ntp.c | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+)
kernel/time/ntp.c +40 -0
@@ -15,6 +15,7 @@#include <linux/time.h> #include <linux/mm.h> #include <linux/module.h> +#include <linux/debugfs.h> #include "tick-internal.h"
@@ -965,3 +966,42 @@ void __init ntp_init(void) {ntp_clear (); } + +static int time_status_get (void *data,u64 *val) +{ + *val = time_status; +return 0 ; +} +DEFINE_SIMPLE_ATTRIBUTE (time_status_fops, time_status_get,NULL ,"0x%0llx\n" ); + +static int time_state_get (void *data,u64 *val) +{ + *val = time_state; +return 0 ; +} +DEFINE_SIMPLE_ATTRIBUTE (time_state_fops, time_state_get,NULL ,"0x%llx\n" ); + +static int __init ntp_debugfs_init (void ) +{ +struct dentry *ntp_dentry, *time_status_dentry, *time_state_dentry; + + ntp_dentry =debugfs_create_dir ("ntp" ,NULL ); +if (!ntp_dentry) +return -ENOMEM ; + + time_status_dentry =debugfs_create_file ("time_status" ,0444 , + ntp_dentry,NULL , + &time_status_fops); +if (!time_status_dentry) +return -ENOMEM ; + + time_state_dentry =debugfs_create_file ("time_state" ,0444 , + ntp_dentry,NULL , + &time_state_fops); +if (!time_state_dentry) +return -ENOMEM ; + +return 0 ; +} +/* debugfs init is core_initcall */ +postcore_initcall (ntp_debugfs_init);
Signature · 1 line
1.7.9.3
Quoted 2 lines · Prarit Bhargava
Add debugfs entries for ntp
time_statusandtime_state. These are useful for debugging ntp issues.
Aren't these easily fetched from adjtimex()? How does having them in debugfs help?
thanks
-john
Quoted 5 lines · John Stultz
Quoted 2 lines · Prarit Bhargava
Add debugfs entries for ntp
time_statusandtime_state. These are useful for debugging ntp issues.Aren't these easily fetched from
adjtimex()? How does having them in debugfs help?
They are, however, there have been circumstances in the past when I've been monitoring things from kernel-side that I've found it useful to have them in debugfs.
P.
Quoted 3 lines
thanks
-john