ocfs2: move some definitions to header file
authorGang He <ghe@suse.com>
Thu, 5 Apr 2018 23:19:22 +0000 (16:19 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 6 Apr 2018 04:36:22 +0000 (21:36 -0700)
Patch series "ocfs2: use kobject for online file check", v3.

Use embedded kobject mechanism for online file check feature, this will
avoid to use a global list to save/search per-device online file check
related data.  The changed code is based on Goldwyn Rodrigues's patches
and ext4 fs code, there is not any new features added, except some very
small fixes during this code refactoring.  Second, the code change does
not affect the underlying file check code.  Thank Goldwyn very much.

Compare with second version, add more comments in the patch
descriptions, to make sure each modification is mentioned.  Compare with
first version, split the code change into four patches, make sure each
patch will not bring ocfs2 kernel modules compiling errors.

This patch (of 3):

Move some definitions to header file, which will be referenced by other
source files when kobject mechanism is introduced.

Link: http://lkml.kernel.org/r/1495611866-27360-2-git-send-email-ghe@suse.com
Signed-off-by: Gang He <ghe@suse.com>
Cc: Mark Fasheh <mark@fasheh.com>
Cc: Joel Becker <jlbec@evilplan.org>
Cc: Junxiao Bi <junxiao.bi@oracle.com>
Cc: Joseph Qi <jiangqi903@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/ocfs2/filecheck.c
fs/ocfs2/filecheck.h

index 6b92cb2411387dd253c038c1daf6e1256f17c98c..68f6c35dce3678b515bbfb0eb8adaeda80b03c2c 100644 (file)
@@ -56,33 +56,6 @@ static const char * const ocfs2_filecheck_errs[] = {
 static DEFINE_SPINLOCK(ocfs2_filecheck_sysfs_lock);
 static LIST_HEAD(ocfs2_filecheck_sysfs_list);
 
 static DEFINE_SPINLOCK(ocfs2_filecheck_sysfs_lock);
 static LIST_HEAD(ocfs2_filecheck_sysfs_list);
 
-struct ocfs2_filecheck {
-       struct list_head fc_head;       /* File check entry list head */
-       spinlock_t fc_lock;
-       unsigned int fc_max;    /* Maximum number of entry in list */
-       unsigned int fc_size;   /* Current entry count in list */
-       unsigned int fc_done;   /* Finished entry count in list */
-};
-
-struct ocfs2_filecheck_sysfs_entry {   /* sysfs entry per mounting */
-       struct list_head fs_list;
-       atomic_t fs_count;
-       struct super_block *fs_sb;
-       struct kset *fs_devicekset;
-       struct kset *fs_fcheckkset;
-       struct ocfs2_filecheck *fs_fcheck;
-};
-
-#define OCFS2_FILECHECK_MAXSIZE                100
-#define OCFS2_FILECHECK_MINSIZE                10
-
-/* File check operation type */
-enum {
-       OCFS2_FILECHECK_TYPE_CHK = 0,   /* Check a file(inode) */
-       OCFS2_FILECHECK_TYPE_FIX,       /* Fix a file(inode) */
-       OCFS2_FILECHECK_TYPE_SET = 100  /* Set entry list maximum size */
-};
-
 struct ocfs2_filecheck_entry {
        struct list_head fe_list;
        unsigned long fe_ino;
 struct ocfs2_filecheck_entry {
        struct list_head fe_list;
        unsigned long fe_ino;
index e5cd002a2c09023b7a1f09032eec0425fa0b39b4..af1678b620a42a55e232037a4df24c3bf4b9ab7d 100644 (file)
@@ -43,6 +43,33 @@ enum {
 #define OCFS2_FILECHECK_ERR_START      OCFS2_FILECHECK_ERR_FAILED
 #define OCFS2_FILECHECK_ERR_END                OCFS2_FILECHECK_ERR_UNSUPPORTED
 
 #define OCFS2_FILECHECK_ERR_START      OCFS2_FILECHECK_ERR_FAILED
 #define OCFS2_FILECHECK_ERR_END                OCFS2_FILECHECK_ERR_UNSUPPORTED
 
+struct ocfs2_filecheck {
+       struct list_head fc_head;       /* File check entry list head */
+       spinlock_t fc_lock;
+       unsigned int fc_max;    /* Maximum number of entry in list */
+       unsigned int fc_size;   /* Current entry count in list */
+       unsigned int fc_done;   /* Finished entry count in list */
+};
+
+struct ocfs2_filecheck_sysfs_entry {   /* sysfs entry per mounting */
+       struct list_head fs_list;
+       atomic_t fs_count;
+       struct super_block *fs_sb;
+       struct kset *fs_devicekset;
+       struct kset *fs_fcheckkset;
+       struct ocfs2_filecheck *fs_fcheck;
+};
+
+#define OCFS2_FILECHECK_MAXSIZE                100
+#define OCFS2_FILECHECK_MINSIZE                10
+
+/* File check operation type */
+enum {
+       OCFS2_FILECHECK_TYPE_CHK = 0,   /* Check a file(inode) */
+       OCFS2_FILECHECK_TYPE_FIX,       /* Fix a file(inode) */
+       OCFS2_FILECHECK_TYPE_SET = 100  /* Set entry list maximum size */
+};
+
 int ocfs2_filecheck_create_sysfs(struct super_block *sb);
 int ocfs2_filecheck_remove_sysfs(struct super_block *sb);
 
 int ocfs2_filecheck_create_sysfs(struct super_block *sb);
 int ocfs2_filecheck_remove_sysfs(struct super_block *sb);