On Mon, Jan 17, 2005 at 05:58:00PM +0100, Luca Falavigna wrote:
> +static ssize_t kprobes_read(struct file *file, char __user *buf,
> +                      size_t size, loff_t *off)
> +{
> +     int i;
> +     char *data = "";
> +     ssize_t len = 0;
> +     struct hlist_node *node;
> +     struct kprobe *k;
> +     
> +     spin_lock(&kprobe_lock);
> +     for(i = 0; i < KPROBE_TABLE_SIZE; i++) {
> +             hlist_for_each_entry(k, node, &kprobe_table[i], hlist) {
> +                     if(k) {
> +                             kprobes_list_info(k, data + len);
> +                             len += strlen(data);
> +                     }
> +             }
> +     }
> +     spin_unlock(&kprobe_lock);
> +     return simple_read_from_buffer(buf, size, off, data, len);

Am I missing where you allocate the space for the data to be put into?

Also, why not use the seqfile interface for this, to prevent overflowing
the read buffer?

thanks,

greg k-h
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to