Re: [PATCH 1/6] udf: remove wrong prototype of udf_readdir

From: Jan Kara
Date: Mon Dec 17 2007 - 11:04:55 EST


> sparse generated:
> fs/udf/dir.c:78:5: warning: symbol 'udf_readdir' was not declared. Should it be static?
> there are 2 different prototypes of udf_readdir - remove them and move
> code around to make it still compile
> Signed-off-by: Marcin Slusarz <marcin.slusarz@xxxxxxxxx>
Acked-by: Jan Kara <jack@xxxxxxx>

> CC: Ben Fennema <bfennema@xxxxxxxxxxxxxxxxxxxxxx>
> ---
> fs/udf/dir.c | 118 +++++++++++++++++++++++++++------------------------------
> 1 files changed, 56 insertions(+), 62 deletions(-)
>
> diff --git a/fs/udf/dir.c b/fs/udf/dir.c
> index 9e3b9f9..174d2fc 100644
> --- a/fs/udf/dir.c
> +++ b/fs/udf/dir.c
> @@ -36,68 +36,8 @@
> #include "udf_i.h"
> #include "udf_sb.h"
>
> -/* Prototypes for file operations */
> -static int udf_readdir(struct file *, void *, filldir_t);
> -static int do_udf_readdir(struct inode *, struct file *, filldir_t, void *);
> -
> -/* readdir and lookup functions */
> -
> -const struct file_operations udf_dir_operations = {
> - .read = generic_read_dir,
> - .readdir = udf_readdir,
> - .ioctl = udf_ioctl,
> - .fsync = udf_fsync_file,
> -};
> -
> -/*
> - * udf_readdir
> - *
> - * PURPOSE
> - * Read a directory entry.
> - *
> - * DESCRIPTION
> - * Optional - sys_getdents() will return -ENOTDIR if this routine is not
> - * available.
> - *
> - * Refer to sys_getdents() in fs/readdir.c
> - * sys_getdents() -> .
> - *
> - * PRE-CONDITIONS
> - * filp Pointer to directory file.
> - * buf Pointer to directory entry buffer.
> - * filldir Pointer to filldir function.
> - *
> - * POST-CONDITIONS
> - * <return> >=0 on success.
> - *
> - * HISTORY
> - * July 1, 1997 - Andrew E. Mileski
> - * Written, tested, and released.
> - */
> -
> -int udf_readdir(struct file *filp, void *dirent, filldir_t filldir)
> -{
> - struct inode *dir = filp->f_path.dentry->d_inode;
> - int result;
> -
> - lock_kernel();
> -
> - if (filp->f_pos == 0) {
> - if (filldir(dirent, ".", 1, filp->f_pos, dir->i_ino, DT_DIR) < 0) {
> - unlock_kernel();
> - return 0;
> - }
> - filp->f_pos++;
> - }
> -
> - result = do_udf_readdir(dir, filp, filldir, dirent);
> - unlock_kernel();
> - return result;
> -}
> -
> -static int
> -do_udf_readdir(struct inode *dir, struct file *filp, filldir_t filldir,
> - void *dirent)
> +static int do_udf_readdir(struct inode *dir, struct file *filp,
> + filldir_t filldir, void *dirent)
> {
> struct udf_fileident_bh fibh;
> struct fileIdentDesc *fi = NULL;
> @@ -244,3 +184,57 @@ do_udf_readdir(struct inode *dir, struct file *filp, filldir_t filldir,
>
> return 0;
> }
> +
> +/*
> + * udf_readdir
> + *
> + * PURPOSE
> + * Read a directory entry.
> + *
> + * DESCRIPTION
> + * Optional - sys_getdents() will return -ENOTDIR if this routine is not
> + * available.
> + *
> + * Refer to sys_getdents() in fs/readdir.c
> + * sys_getdents() -> .
> + *
> + * PRE-CONDITIONS
> + * filp Pointer to directory file.
> + * buf Pointer to directory entry buffer.
> + * filldir Pointer to filldir function.
> + *
> + * POST-CONDITIONS
> + * <return> >=0 on success.
> + *
> + * HISTORY
> + * July 1, 1997 - Andrew E. Mileski
> + * Written, tested, and released.
> + */
> +
> +static int udf_readdir(struct file *filp, void *dirent, filldir_t filldir)
> +{
> + struct inode *dir = filp->f_path.dentry->d_inode;
> + int result;
> +
> + lock_kernel();
> +
> + if (filp->f_pos == 0) {
> + if (filldir(dirent, ".", 1, filp->f_pos, dir->i_ino, DT_DIR) < 0) {
> + unlock_kernel();
> + return 0;
> + }
> + filp->f_pos++;
> + }
> +
> + result = do_udf_readdir(dir, filp, filldir, dirent);
> + unlock_kernel();
> + return result;
> +}
> +
> +/* readdir and lookup functions */
> +const struct file_operations udf_dir_operations = {
> + .read = generic_read_dir,
> + .readdir = udf_readdir,
> + .ioctl = udf_ioctl,
> + .fsync = udf_fsync_file,
> +};
> --
> 1.5.3.4
>
> --
> 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/
--
Jan Kara <jack@xxxxxxx>
SuSE CR Labs
--
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/