Re: [PATCH] support polling of /proc/swaps

From: Jonathan Corbet
Date: Tue Oct 19 2010 - 12:12:08 EST


> From: Kay Sievers <kay.sievers@xxxxxxxx>
> Subject: support polling of /proc/swaps
>
> System management wants to subscribe to changes in swap
> configuration. Make /proc/swaps pollable like /proc/mounts.

Please forgive me...I'm probably undercaffeinated and even dumber than
usual, but...

Here we have this:

> +static unsigned swaps_poll(struct file *file, poll_table *wait)
> +{
> + struct proc_swaps *s = file->private_data;

But here I see:

> static int swaps_open(struct inode *inode, struct file *file)
> {
> - return seq_open(file, &swaps_op);
> + struct proc_swaps *s;
> + int ret;
> +
> + s = kmalloc(sizeof(struct proc_swaps), GFP_KERNEL);
> + if (!s)
> + return -ENOMEM;
> +
> + file->private_data = &s->seq;

It sure looks to me like private_data is a struct seq_file pointer, not a
struct proc_swaps pointer. What am I missing?

Thanks,

jon
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/