[CRIU] [PATCH] timerfd: show procfs fdinfo helper

Andrey Wagin avagin at gmail.com
Wed Dec 25 00:47:08 PST 2013


2013/12/24 Shawn Landden <shawn at churchofgit.com>:
> | pos:  0
> | flags:        02004002
> | clockid:      0
>
> Cc: Thomas Gleixner <tglx at linutronix.de>
> Cc: Alexander Viro <viro at zeniv.linux.org.uk>
> Signed-off-by: Shawn Landden <shawn at churchofgit.com>
> ---
>  fs/timerfd.c | 17 +++++++++++++++++
>  1 file changed, 17 insertions(+)
>
> diff --git a/fs/timerfd.c b/fs/timerfd.c
> index 9293121..e5fa587 100644
> --- a/fs/timerfd.c
> +++ b/fs/timerfd.c
> @@ -25,6 +25,7 @@
>  #include <linux/syscalls.h>
>  #include <linux/compat.h>
>  #include <linux/rcupdate.h>
> +#include <linux/seq_file.h>
>
>  struct timerfd_ctx {
>         union {
> @@ -284,7 +285,23 @@ static ssize_t timerfd_read(struct file *file, char __user *buf, size_t count,
>         return res;
>  }
>
> +#ifdef CONFIG_PROC_FS
> +static int timerfd_show_fdinfo(struct seq_file *m, struct file *f)
> +{
> +       struct timerfd_ctx *ctx = f->private_data;
> +       int clockid;
> +
> +       clockid = ctx->clockid;
> +       seq_printf(m, "clockid:\t%d\n", clockid);

I think we can show ctx->ticks, itimerspec here. The ctx->ticks is
required for proper dumping and restoring timerfd.

> +
> +       return 0;
> +}
> +#endif
> +
>  static const struct file_operations timerfd_fops = {
> +#ifdef CONFIG_PROC_FS
> +       .show_fdinfo    = timerfd_show_fdinfo,
> +#endif
>         .release        = timerfd_release,
>         .poll           = timerfd_poll,
>         .read           = timerfd_read,
> --
> 1.8.5.2.297.g3e57c29
>
> _______________________________________________
> CRIU mailing list
> CRIU at openvz.org
> https://lists.openvz.org/mailman/listinfo/criu


More information about the CRIU mailing list