Re: [RFC][PATCH 9/14] Union-mount readdir

Carsten Otte
2007-05-14T10:43:53Z

On 5/14/07, Bharata B Rao <bharata@linux.vnet.ibm.com> wrote:
> +/* This is a copy from fs/readdir.c */
> +struct getdents_callback {
> + struct linux_dirent __user *current_dir;
> + struct linux_dirent __user *previous;
> + int count;
> + int error;
> +};
This should go into a header file.

> +static int union_cache_find_entry(struct list_head *uc_list,
> + const char *name, int namelen)
> +{
> + struct union_cache_entry *p;
> + int ret = 0;
> +
> + list_for_each_entry(p, uc_list, list) {
> + if (p->name.len != namelen)
> + continue;
> + if (strncmp(p->name.name, name, namelen) == 0) {
> + ret = 1;
> + break;
> + }
> + }
> + return ret;
> +}
Why not use strlen instead of having both string and length as parameter?

> +static struct file * __dentry_open_read(struct dentry *dentry,
> + struct vfsmount *mnt, int flags)
> +{
> + struct file *f;
> + struct inode *inode;
> + int error;
> +
> + error = -ENFILE;
> + f = get_empty_filp();
> + if (!f)
> + goto out;
This is the only case where error is not explicitly set to a different
value before hitting out/cleanup => consider setting conditionally.

so long,
Carsten