On Fri, Jan 3, 2020 at 3:17 AM Namjae Jeon <namjae.jeon@xxxxxxxxxxx> wrote: > > Add STAGING prefix to config names to avoid collsion with fs/exfat config. > > Signed-off-by: Namjae Jeon <namjae.jeon@xxxxxxxxxxx> > --- > drivers/staging/Makefile | 2 +- > drivers/staging/exfat/Kconfig | 26 +++++++-------- > drivers/staging/exfat/Makefile | 2 +- > drivers/staging/exfat/exfat.h | 14 ++++---- > drivers/staging/exfat/exfat_blkdev.c | 12 +++---- > drivers/staging/exfat/exfat_core.c | 8 ++--- > drivers/staging/exfat/exfat_super.c | 50 ++++++++++++++-------------- > 7 files changed, 57 insertions(+), 57 deletions(-) > > diff --git a/drivers/staging/Makefile b/drivers/staging/Makefile > index 463aef6a18ef..fdd03fd6e704 100644 > --- a/drivers/staging/Makefile > +++ b/drivers/staging/Makefile > @@ -48,7 +48,7 @@ obj-$(CONFIG_FIELDBUS_DEV) += fieldbus/ > obj-$(CONFIG_KPC2000) += kpc2000/ > obj-$(CONFIG_UWB) += uwb/ > obj-$(CONFIG_USB_WUSB) += wusbcore/ > -obj-$(CONFIG_EXFAT_FS) += exfat/ > +obj-$(CONFIG_STAGING_EXFAT_FS) += exfat/ > obj-$(CONFIG_QLGE) += qlge/ > obj-$(CONFIG_NET_VENDOR_HP) += hp/ > obj-$(CONFIG_WFX) += wfx/ > diff --git a/drivers/staging/exfat/Kconfig b/drivers/staging/exfat/Kconfig > index 0130019cbec2..292a19dfcaf5 100644 > --- a/drivers/staging/exfat/Kconfig > +++ b/drivers/staging/exfat/Kconfig > @@ -1,41 +1,41 @@ > # SPDX-License-Identifier: GPL-2.0 > -config EXFAT_FS > +config STAGING_EXFAT_FS > tristate "exFAT fs support" > depends on BLOCK > select NLS > help > This adds support for the exFAT file system. > > -config EXFAT_DISCARD > +config STAGING_EXFAT_DISCARD > bool "enable discard support" > - depends on EXFAT_FS > + depends on STAGING_EXFAT_FS > default y > > -config EXFAT_DELAYED_SYNC > +config STAGING_EXFAT_DELAYED_SYNC > bool "enable delayed sync" > - depends on EXFAT_FS > + depends on STAGING_EXFAT_FS > default n > > -config EXFAT_KERNEL_DEBUG > +config STAGING_EXFAT_KERNEL_DEBUG > bool "enable kernel debug features via ioctl" > - depends on EXFAT_FS > + depends on STAGING_EXFAT_FS > default n > > -config EXFAT_DEBUG_MSG > +config STAGING_EXFAT_DEBUG_MSG > bool "print debug messages" > - depends on EXFAT_FS > + depends on STAGING_EXFAT_FS > default n > > -config EXFAT_DEFAULT_CODEPAGE > +config STAGING_EXFAT_DEFAULT_CODEPAGE > int "Default codepage for exFAT" > default 437 > - depends on EXFAT_FS > + depends on STAGING_EXFAT_FS > help > This option should be set to the codepage of your exFAT filesystems. > > -config EXFAT_DEFAULT_IOCHARSET > +config STAGING_EXFAT_DEFAULT_IOCHARSET > string "Default iocharset for exFAT" > default "utf8" > - depends on EXFAT_FS > + depends on STAGING_EXFAT_FS > help > Set this to the default input/output character set you'd like exFAT to use. > diff --git a/drivers/staging/exfat/Makefile b/drivers/staging/exfat/Makefile > index 6c90aec83feb..057556eeca0c 100644 > --- a/drivers/staging/exfat/Makefile > +++ b/drivers/staging/exfat/Makefile > @@ -1,6 +1,6 @@ > # SPDX-License-Identifier: GPL-2.0-or-later > > -obj-$(CONFIG_EXFAT_FS) += exfat.o > +obj-$(CONFIG_STAGING_EXFAT_FS) += exfat.o > > exfat-y := exfat_core.o \ > exfat_super.o \ > diff --git a/drivers/staging/exfat/exfat.h b/drivers/staging/exfat/exfat.h > index 51c665a924b7..3865c17027ce 100644 > --- a/drivers/staging/exfat/exfat.h > +++ b/drivers/staging/exfat/exfat.h > @@ -9,7 +9,7 @@ > #include <linux/types.h> > #include <linux/buffer_head.h> > > -#ifdef CONFIG_EXFAT_KERNEL_DEBUG > +#ifdef CONFIG_STAGING_EXFAT_KERNEL_DEBUG > /* For Debugging Purpose */ > /* IOCTL code 'f' used by > * - file systems typically #0~0x1F > @@ -22,9 +22,9 @@ > > #define EXFAT_DEBUGFLAGS_INVALID_UMOUNT 0x01 > #define EXFAT_DEBUGFLAGS_ERROR_RW 0x02 > -#endif /* CONFIG_EXFAT_KERNEL_DEBUG */ > +#endif /* CONFIG_STAGING_EXFAT_KERNEL_DEBUG */ > > -#ifdef CONFIG_EXFAT_DEBUG_MSG > +#ifdef CONFIG_STAGING_EXFAT_DEBUG_MSG > #define DEBUG 1 > #else > #undef DEBUG > @@ -661,10 +661,10 @@ struct exfat_mount_options { > > /* on error: continue, panic, remount-ro */ > unsigned char errors; > -#ifdef CONFIG_EXFAT_DISCARD > +#ifdef CONFIG_STAGING_EXFAT_DISCARD > /* flag on if -o dicard specified and device support discard() */ > unsigned char discard; > -#endif /* CONFIG_EXFAT_DISCARD */ > +#endif /* CONFIG_STAGING_EXFAT_DISCARD */ > }; > > #define EXFAT_HASH_BITS 8 > @@ -700,9 +700,9 @@ struct exfat_sb_info { > > spinlock_t inode_hash_lock; > struct hlist_head inode_hashtable[EXFAT_HASH_SIZE]; > -#ifdef CONFIG_EXFAT_KERNEL_DEBUG > +#ifdef CONFIG_STAGING_EXFAT_KERNEL_DEBUG > long debug_flags; > -#endif /* CONFIG_EXFAT_KERNEL_DEBUG */ > +#endif /* CONFIG_STAGING_EXFAT_KERNEL_DEBUG */ > }; > > /* > diff --git a/drivers/staging/exfat/exfat_blkdev.c b/drivers/staging/exfat/exfat_blkdev.c > index 7bcd98b13109..8791a5f2bb08 100644 > --- a/drivers/staging/exfat/exfat_blkdev.c > +++ b/drivers/staging/exfat/exfat_blkdev.c > @@ -35,13 +35,13 @@ int exfat_bdev_read(struct super_block *sb, sector_t secno, struct buffer_head * > { > struct bd_info_t *p_bd = &(EXFAT_SB(sb)->bd_info); > struct fs_info_t *p_fs = &(EXFAT_SB(sb)->fs_info); > -#ifdef CONFIG_EXFAT_KERNEL_DEBUG > +#ifdef CONFIG_STAGING_EXFAT_KERNEL_DEBUG > struct exfat_sb_info *sbi = EXFAT_SB(sb); > long flags = sbi->debug_flags; > > if (flags & EXFAT_DEBUGFLAGS_ERROR_RW) > return -EIO; > -#endif /* CONFIG_EXFAT_KERNEL_DEBUG */ > +#endif /* CONFIG_STAGING_EXFAT_KERNEL_DEBUG */ > > if (!p_bd->opened) > return -ENODEV; > @@ -72,13 +72,13 @@ int exfat_bdev_write(struct super_block *sb, sector_t secno, struct buffer_head > struct buffer_head *bh2; > struct bd_info_t *p_bd = &(EXFAT_SB(sb)->bd_info); > struct fs_info_t *p_fs = &(EXFAT_SB(sb)->fs_info); > -#ifdef CONFIG_EXFAT_KERNEL_DEBUG > +#ifdef CONFIG_STAGING_EXFAT_KERNEL_DEBUG > struct exfat_sb_info *sbi = EXFAT_SB(sb); > long flags = sbi->debug_flags; > > if (flags & EXFAT_DEBUGFLAGS_ERROR_RW) > return -EIO; > -#endif /* CONFIG_EXFAT_KERNEL_DEBUG */ > +#endif /* CONFIG_STAGING_EXFAT_KERNEL_DEBUG */ > > if (!p_bd->opened) > return -ENODEV; > @@ -121,13 +121,13 @@ int exfat_bdev_write(struct super_block *sb, sector_t secno, struct buffer_head > int exfat_bdev_sync(struct super_block *sb) > { > struct bd_info_t *p_bd = &(EXFAT_SB(sb)->bd_info); > -#ifdef CONFIG_EXFAT_KERNEL_DEBUG > +#ifdef CONFIG_STAGING_EXFAT_KERNEL_DEBUG > struct exfat_sb_info *sbi = EXFAT_SB(sb); > long flags = sbi->debug_flags; > > if (flags & EXFAT_DEBUGFLAGS_ERROR_RW) > return -EIO; > -#endif /* CONFIG_EXFAT_KERNEL_DEBUG */ > +#endif /* CONFIG_STAGING_EXFAT_KERNEL_DEBUG */ > > if (!p_bd->opened) > return -ENODEV; > diff --git a/drivers/staging/exfat/exfat_core.c b/drivers/staging/exfat/exfat_core.c > index 794000e7bc6f..5e7645fe8c45 100644 > --- a/drivers/staging/exfat/exfat_core.c > +++ b/drivers/staging/exfat/exfat_core.c > @@ -177,11 +177,11 @@ static s32 clr_alloc_bitmap(struct super_block *sb, u32 clu) > { > int i, b; > sector_t sector; > -#ifdef CONFIG_EXFAT_DISCARD > +#ifdef CONFIG_STAGING_EXFAT_DISCARD > struct exfat_sb_info *sbi = EXFAT_SB(sb); > struct exfat_mount_options *opts = &sbi->options; > int ret; > -#endif /* CONFIG_EXFAT_DISCARD */ > +#endif /* CONFIG_STAGING_EXFAT_DISCARD */ > struct fs_info_t *p_fs = &(EXFAT_SB(sb)->fs_info); > struct bd_info_t *p_bd = &(EXFAT_SB(sb)->bd_info); > > @@ -192,7 +192,7 @@ static s32 clr_alloc_bitmap(struct super_block *sb, u32 clu) > > exfat_bitmap_clear((u8 *)p_fs->vol_amap[i]->b_data, b); > > -#ifdef CONFIG_EXFAT_DISCARD > +#ifdef CONFIG_STAGING_EXFAT_DISCARD > if (opts->discard) { > ret = sb_issue_discard(sb, START_SECTOR(clu), > (1 << p_fs->sectors_per_clu_bits), > @@ -204,7 +204,7 @@ static s32 clr_alloc_bitmap(struct super_block *sb, u32 clu) > return ret; > } > } > -#endif /* CONFIG_EXFAT_DISCARD */ > +#endif /* CONFIG_STAGING_EXFAT_DISCARD */ > > return sector_write(sb, sector, p_fs->vol_amap[i], 0); > } > diff --git a/drivers/staging/exfat/exfat_super.c b/drivers/staging/exfat/exfat_super.c > index 744344a2521c..9fa2ad3627c5 100644 > --- a/drivers/staging/exfat/exfat_super.c > +++ b/drivers/staging/exfat/exfat_super.c > @@ -38,8 +38,8 @@ > > static struct kmem_cache *exfat_inode_cachep; > > -static int exfat_default_codepage = CONFIG_EXFAT_DEFAULT_CODEPAGE; > -static char exfat_default_iocharset[] = CONFIG_EXFAT_DEFAULT_IOCHARSET; > +static int exfat_default_codepage = CONFIG_STAGING_EXFAT_DEFAULT_CODEPAGE; > +static char exfat_default_iocharset[] = CONFIG_STAGING_EXFAT_DEFAULT_IOCHARSET; > > #define INC_IVERSION(x) (inode_inc_iversion(x)) > #define GET_IVERSION(x) (inode_peek_iversion_raw(x)) > @@ -647,7 +647,7 @@ static int ffsCreateFile(struct inode *inode, char *path, u8 mode, > /* create a new file */ > ret = create_file(inode, &dir, &uni_name, mode, fid); > > -#ifndef CONFIG_EXFAT_DELAYED_SYNC > +#ifndef CONFIG_STAGING_EXFAT_DELAYED_SYNC > fs_sync(sb, true); > fs_set_vol_flags(sb, VOL_CLEAN); > #endif > @@ -1008,7 +1008,7 @@ static int ffsWriteFile(struct inode *inode, struct file_id_t *fid, > update_dir_checksum_with_entry_set(sb, es); > release_entry_set(es); > > -#ifndef CONFIG_EXFAT_DELAYED_SYNC > +#ifndef CONFIG_STAGING_EXFAT_DELAYED_SYNC > fs_sync(sb, true); > fs_set_vol_flags(sb, VOL_CLEAN); > #endif > @@ -1134,7 +1134,7 @@ static int ffsTruncateFile(struct inode *inode, u64 old_size, u64 new_size) > if (fid->rwoffset > fid->size) > fid->rwoffset = fid->size; > > -#ifndef CONFIG_EXFAT_DELAYED_SYNC > +#ifndef CONFIG_STAGING_EXFAT_DELAYED_SYNC > fs_sync(sb, true); > fs_set_vol_flags(sb, VOL_CLEAN); > #endif > @@ -1282,7 +1282,7 @@ static int ffsMoveFile(struct inode *old_parent_inode, struct file_id_t *fid, > num_entries + 1); > } > out: > -#ifndef CONFIG_EXFAT_DELAYED_SYNC > +#ifndef CONFIG_STAGING_EXFAT_DELAYED_SYNC > fs_sync(sb, true); > fs_set_vol_flags(sb, VOL_CLEAN); > #endif > @@ -1344,7 +1344,7 @@ static int ffsRemoveFile(struct inode *inode, struct file_id_t *fid) > fid->start_clu = CLUSTER_32(~0); > fid->flags = (p_fs->vol_type == EXFAT) ? 0x03 : 0x01; > > -#ifndef CONFIG_EXFAT_DELAYED_SYNC > +#ifndef CONFIG_STAGING_EXFAT_DELAYED_SYNC > fs_sync(sb, true); > fs_set_vol_flags(sb, VOL_CLEAN); > #endif > @@ -1420,7 +1420,7 @@ static int ffsSetAttr(struct inode *inode, u32 attr) > update_dir_checksum_with_entry_set(sb, es); > release_entry_set(es); > > -#ifndef CONFIG_EXFAT_DELAYED_SYNC > +#ifndef CONFIG_STAGING_EXFAT_DELAYED_SYNC > fs_sync(sb, true); > fs_set_vol_flags(sb, VOL_CLEAN); > #endif > @@ -1804,7 +1804,7 @@ static int ffsCreateDir(struct inode *inode, char *path, struct file_id_t *fid) > > ret = create_dir(inode, &dir, &uni_name, fid); > > -#ifndef CONFIG_EXFAT_DELAYED_SYNC > +#ifndef CONFIG_STAGING_EXFAT_DELAYED_SYNC > fs_sync(sb, true); > fs_set_vol_flags(sb, VOL_CLEAN); > #endif > @@ -2053,7 +2053,7 @@ static int ffsRemoveDir(struct inode *inode, struct file_id_t *fid) > fid->start_clu = CLUSTER_32(~0); > fid->flags = (p_fs->vol_type == EXFAT) ? 0x03 : 0x01; > > -#ifndef CONFIG_EXFAT_DELAYED_SYNC > +#ifndef CONFIG_STAGING_EXFAT_DELAYED_SYNC > fs_sync(sb, true); > fs_set_vol_flags(sb, VOL_CLEAN); > #endif > @@ -2176,14 +2176,14 @@ static long exfat_generic_ioctl(struct file *filp, unsigned int cmd, > unsigned long arg) > { > struct inode *inode = filp->f_path.dentry->d_inode; > -#ifdef CONFIG_EXFAT_KERNEL_DEBUG > +#ifdef CONFIG_STAGING_EXFAT_KERNEL_DEBUG > unsigned int flags; > -#endif /* CONFIG_EXFAT_KERNEL_DEBUG */ > +#endif /* CONFIG_STAGING_EXFAT_KERNEL_DEBUG */ > > switch (cmd) { > case EXFAT_IOCTL_GET_VOLUME_ID: > return exfat_ioctl_volume_id(inode); > -#ifdef CONFIG_EXFAT_KERNEL_DEBUG > +#ifdef CONFIG_STAGING_EXFAT_KERNEL_DEBUG > case EXFAT_IOC_GET_DEBUGFLAGS: { > struct super_block *sb = inode->i_sb; > struct exfat_sb_info *sbi = EXFAT_SB(sb); > @@ -2207,7 +2207,7 @@ static long exfat_generic_ioctl(struct file *filp, unsigned int cmd, > > return 0; > } > -#endif /* CONFIG_EXFAT_KERNEL_DEBUG */ > +#endif /* CONFIG_STAGING_EXFAT_KERNEL_DEBUG */ > default: > return -ENOTTY; /* Inappropriate ioctl for device */ > } > @@ -3400,7 +3400,7 @@ static int exfat_show_options(struct seq_file *m, struct dentry *root) > seq_puts(m, ",errors=panic"); > else > seq_puts(m, ",errors=remount-ro"); > -#ifdef CONFIG_EXFAT_DISCARD > +#ifdef CONFIG_STAGING_EXFAT_DISCARD > if (opts->discard) > seq_puts(m, ",discard"); > #endif > @@ -3481,7 +3481,7 @@ enum { > Opt_err_ro, > Opt_utf8_hack, > Opt_err, > -#ifdef CONFIG_EXFAT_DISCARD > +#ifdef CONFIG_STAGING_EXFAT_DISCARD > Opt_discard, > #endif /* EXFAT_CONFIG_DISCARD */ > }; > @@ -3501,9 +3501,9 @@ static const match_table_t exfat_tokens = { > {Opt_err_panic, "errors=panic"}, > {Opt_err_ro, "errors=remount-ro"}, > {Opt_utf8_hack, "utf8"}, > -#ifdef CONFIG_EXFAT_DISCARD > +#ifdef CONFIG_STAGING_EXFAT_DISCARD > {Opt_discard, "discard"}, > -#endif /* CONFIG_EXFAT_DISCARD */ > +#endif /* CONFIG_STAGING_EXFAT_DISCARD */ > {Opt_err, NULL} > }; > > @@ -3524,7 +3524,7 @@ static int parse_options(char *options, int silent, int *debug, > opts->iocharset = exfat_default_iocharset; > opts->casesensitive = 0; > opts->errors = EXFAT_ERRORS_RO; > -#ifdef CONFIG_EXFAT_DISCARD > +#ifdef CONFIG_STAGING_EXFAT_DISCARD > opts->discard = 0; > #endif > *debug = 0; > @@ -3595,11 +3595,11 @@ static int parse_options(char *options, int silent, int *debug, > case Opt_debug: > *debug = 1; > break; > -#ifdef CONFIG_EXFAT_DISCARD > +#ifdef CONFIG_STAGING_EXFAT_DISCARD > case Opt_discard: > opts->discard = 1; > break; > -#endif /* CONFIG_EXFAT_DISCARD */ > +#endif /* CONFIG_STAGING_EXFAT_DISCARD */ > case Opt_utf8_hack: > break; > default: > @@ -3803,7 +3803,7 @@ static void __exit exfat_destroy_inodecache(void) > kmem_cache_destroy(exfat_inode_cachep); > } > > -#ifdef CONFIG_EXFAT_KERNEL_DEBUG > +#ifdef CONFIG_STAGING_EXFAT_KERNEL_DEBUG > static void exfat_debug_kill_sb(struct super_block *sb) > { > struct exfat_sb_info *sbi = EXFAT_SB(sb); > @@ -3831,17 +3831,17 @@ static void exfat_debug_kill_sb(struct super_block *sb) > > kill_block_super(sb); > } > -#endif /* CONFIG_EXFAT_KERNEL_DEBUG */ > +#endif /* CONFIG_STAGING_EXFAT_KERNEL_DEBUG */ > > static struct file_system_type exfat_fs_type = { > .owner = THIS_MODULE, > .name = "exfat", And what about the module name collision? What is mount -t exfat expected to do? One way to tackle this is to have CONFIG_EXFAT_FS and CONFIG_STAGING_EXFAT be mutually exclusive. But that is just messy. If you ask me, the first patch of the fs/exfat series should remove the staging exfat driver. It is going to be removed anyway, so why bother with this extra complexity and letting them live together for a brief moment in history. Thanks, Amir.