Skip to contentSkip to conversation

staging/lustre: move IT_* definitions to lustre_idl.h

PATCH New Ben Evans 3 participants 5 messages Oct 20, 2015 – Oct 21, 2015 Staging

lore
Share & tools
lore

Ben Evans

author
#0 lore raw

PATCH 1/1 staging/lustre: move IT_* definitions to lustre_idl.h

Put IT_* definitions into an enum, as they're sent over the wire, adjust calls, print statements, etc. to use the new enum.

---
 .../lustre/lustre/include/lustre/lustre_idl.h      |   18 ++++++++++++++++++
 drivers/staging/lustre/lustre/include/lustre_dlm.h |    2 +-
 drivers/staging/lustre/lustre/include/obd.h        |   16 ----------------
 drivers/staging/lustre/lustre/ldlm/ldlm_lock.c     |    2 +-
 4 files changed, 20 insertions(+), 18 deletions(-)
drivers/staging/lustre/lustre/include/lustre/lustre_idl.h +18 -0
index ac78dbc..646c095 100644
@@ -2782,6 +2782,24 @@ union ldlm_gl_desc {
 
 void lustre_swab_gl_desc(union ldlm_gl_desc *);
 
+enum ldlm_intent_flags {
+	IT_OPEN        = 0x00000001,
+	IT_CREAT       = 0x00000002,
+	IT_OPEN_CREAT  = 0x00000003,
+	IT_READDIR     = 0x00000004,
+	IT_GETATTR     = 0x00000008,
+	IT_LOOKUP      = 0x00000010,
+	IT_UNLINK      = 0x00000020,
+	IT_TRUNC       = 0x00000040,
+	IT_GETXATTR    = 0x00000080,
+	IT_EXEC        = 0x00000100,
+	IT_PIN         = 0x00000200,
+	IT_LAYOUT      = 0x00000400,
+	IT_QUOTA_DQACQ = 0x00000800,
+	IT_QUOTA_CONN  = 0x00001000,
+	IT_SETXATTR    = 0x00002000,
+};
+
 struct ldlm_intent {
 	__u64 opc;
 };
drivers/staging/lustre/lustre/include/lustre_dlm.h +1 -1
index 3552546..af46f36 100644
@@ -1017,7 +1017,7 @@ extern struct obd_ops ldlm_obd_ops;
 
 extern char *ldlm_lockname[];
 extern char *ldlm_typename[];
-char *ldlm_it2str(int it);
+const char *ldlm_it2str(enum ldlm_intent_flags it);
 
 /**
  * Just a fancy CDEBUG call with log level preset to LDLM_DEBUG.
drivers/staging/lustre/lustre/include/obd.h +0 -16
index 9ad8c26..f731f51 100644
@@ -995,22 +995,6 @@ enum obd_cleanup_stage {
 
 struct lu_context;
 
-/* /!\ must be coherent with include/linux/namei.h on patched kernel */
-#define IT_OPEN     (1 << 0)
-#define IT_CREAT    (1 << 1)
-#define IT_READDIR  (1 << 2)
-#define IT_GETATTR  (1 << 3)
-#define IT_LOOKUP   (1 << 4)
-#define IT_UNLINK   (1 << 5)
-#define IT_TRUNC    (1 << 6)
-#define IT_GETXATTR (1 << 7)
-#define IT_EXEC     (1 << 8)
-#define IT_PIN      (1 << 9)
-#define IT_LAYOUT   (1 << 10)
-#define IT_QUOTA_DQACQ (1 << 11)
-#define IT_QUOTA_CONN  (1 << 12)
-#define IT_SETXATTR (1 << 13)
-
 static inline int it_to_lock_mode(struct lookup_intent *it)
 {
 	/* CREAT needs to be tested before open (both could be set) */
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c +1 -1
index cd340fc..f3b197a 100644
@@ -123,7 +123,7 @@ void ldlm_convert_policy_to_local(struct obd_export *exp, ldlm_type_t type,
 	convert(wpolicy, lpolicy);
 }
 
-char *ldlm_it2str(int it)
+const char *ldlm_it2str(enum ldlm_intent_flags it)
 {
 	switch (it) {
 	case IT_OPEN:
Signature · 1 line
1.6.5.6
#1 lore raw

PATCH 1/1 staging/lustre: move IT_* definitions to lustre_idl.h

Do you know what the removed comment about being coherent with namei.h means or once meant? I took a look and can't see anything that corresponds now, but I'd feel more comfortable if I knew for sure what that comment meant...

- Patrick
________________________________________
From: lustre-devel [lustre-devel-bounces at lists.lustre.org] on behalf of Ben Evans [bevans at cray.com]
Sent: Tuesday, October 20, 2015 5:02 PM
To: lustre-devel at lists.lustre.org
Subject: [lustre-devel] [PATCH] staging/lustre: move IT_* definitions to lustre_idl.h

Put IT_* definitions into an enum, as they're sent over the wire, adjust calls, print statements, etc. to use the new enum.

---
 .../lustre/lustre/include/lustre/lustre_idl.h      |   18 ++++++++++++++++++
 drivers/staging/lustre/lustre/include/lustre_dlm.h |    2 +-
 drivers/staging/lustre/lustre/include/obd.h        |   16 ----------------
 drivers/staging/lustre/lustre/ldlm/ldlm_lock.c     |    2 +-
 4 files changed, 20 insertions(+), 18 deletions(-)
drivers/staging/lustre/lustre/include/lustre/lustre_idl.h +18 -0
index ac78dbc..646c095 100644
@@ -2782,6 +2782,24 @@ union ldlm_gl_desc {
 
 void lustre_swab_gl_desc(union ldlm_gl_desc *);
 
+enum ldlm_intent_flags {
+       IT_OPEN        = 0x00000001,
+       IT_CREAT       = 0x00000002,
+       IT_OPEN_CREAT  = 0x00000003,
+       IT_READDIR     = 0x00000004,
+       IT_GETATTR     = 0x00000008,
+       IT_LOOKUP      = 0x00000010,
+       IT_UNLINK      = 0x00000020,
+       IT_TRUNC       = 0x00000040,
+       IT_GETXATTR    = 0x00000080,
+       IT_EXEC        = 0x00000100,
+       IT_PIN         = 0x00000200,
+       IT_LAYOUT      = 0x00000400,
+       IT_QUOTA_DQACQ = 0x00000800,
+       IT_QUOTA_CONN  = 0x00001000,
+       IT_SETXATTR    = 0x00002000,
+};
+
 struct ldlm_intent {
        __u64 opc;
 };
drivers/staging/lustre/lustre/include/lustre_dlm.h +1 -1
index 3552546..af46f36 100644
@@ -1017,7 +1017,7 @@ extern struct obd_ops ldlm_obd_ops;
 
 extern char *ldlm_lockname[];
 extern char *ldlm_typename[];
-char *ldlm_it2str(int it);
+const char *ldlm_it2str(enum ldlm_intent_flags it);
 
 /**
  * Just a fancy CDEBUG call with log level preset to LDLM_DEBUG.
drivers/staging/lustre/lustre/include/obd.h +0 -16
index 9ad8c26..f731f51 100644
@@ -995,22 +995,6 @@ enum obd_cleanup_stage {
 
 struct lu_context;
 
-/* /!\ must be coherent with include/linux/namei.h on patched kernel */
-#define IT_OPEN     (1 << 0)
-#define IT_CREAT    (1 << 1)
-#define IT_READDIR  (1 << 2)
-#define IT_GETATTR  (1 << 3)
-#define IT_LOOKUP   (1 << 4)
-#define IT_UNLINK   (1 << 5)
-#define IT_TRUNC    (1 << 6)
-#define IT_GETXATTR (1 << 7)
-#define IT_EXEC     (1 << 8)
-#define IT_PIN      (1 << 9)
-#define IT_LAYOUT   (1 << 10)
-#define IT_QUOTA_DQACQ (1 << 11)
-#define IT_QUOTA_CONN  (1 << 12)
-#define IT_SETXATTR (1 << 13)
-
 static inline int it_to_lock_mode(struct lookup_intent *it)
 {
        /* CREAT needs to be tested before open (both could be set) */
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c +1 -1
index cd340fc..f3b197a 100644
@@ -123,7 +123,7 @@ void ldlm_convert_policy_to_local(struct obd_export *exp, ldlm_type_t type,
        convert(wpolicy, lpolicy);
 }
 
-char *ldlm_it2str(int it)
+const char *ldlm_it2str(enum ldlm_intent_flags it)
 {
        switch (it) {
        case IT_OPEN:

--
1.6.5.6

_______________________________________________
lustre-devel mailing list
[email protected]
http://lists.lustre.org/listinfo.cgi/lustre-devel-lustre.org

#2 lore raw

PATCH 1/1 staging/lustre: move IT_* definitions to lustre_idl.h

This is a throwback to the times when we patched client kernel with "raw operations". We no longer do, so the comment is only confusing now.

Quoted 113 lines · Patrick Farrell

Do you know what the removed comment about being coherent with namei.h means or once meant? I took a look and can't see anything that corresponds now, but I'd feel more comfortable if I knew for sure what that comment meant...

- Patrick
________________________________________
From: lustre-devel [lustre-devel-bounces at lists.lustre.org] on behalf of Ben Evans [bevans at cray.com]
Sent: Tuesday, October 20, 2015 5:02 PM
To: lustre-devel at lists.lustre.org
Subject: [lustre-devel] [PATCH] staging/lustre: move IT_* definitions to lustre_idl.h

Put IT_* definitions into an enum, as they're sent over the wire, adjust calls, print statements, etc. to use the new enum.

---

.../lustre/lustre/include/lustre/lustre_idl.h      |   18 ++++++++++++++++++
drivers/staging/lustre/lustre/include/lustre_dlm.h |    2 +-
drivers/staging/lustre/lustre/include/obd.h        |   16 ----------------
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c     |    2 +-
4 files changed, 20 insertions(+), 18 deletions(-)
drivers/staging/lustre/lustre/include/lustre/lustre_idl.h +18 -0
index ac78dbc..646c095 100644
@@ -2782,6 +2782,24 @@ union ldlm_gl_desc {
 
 void lustre_swab_gl_desc(union ldlm_gl_desc *);
 
+enum ldlm_intent_flags {
+       IT_OPEN        = 0x00000001,
+       IT_CREAT       = 0x00000002,
+       IT_OPEN_CREAT  = 0x00000003,
+       IT_READDIR     = 0x00000004,
+       IT_GETATTR     = 0x00000008,
+       IT_LOOKUP      = 0x00000010,
+       IT_UNLINK      = 0x00000020,
+       IT_TRUNC       = 0x00000040,
+       IT_GETXATTR    = 0x00000080,
+       IT_EXEC        = 0x00000100,
+       IT_PIN         = 0x00000200,
+       IT_LAYOUT      = 0x00000400,
+       IT_QUOTA_DQACQ = 0x00000800,
+       IT_QUOTA_CONN  = 0x00001000,
+       IT_SETXATTR    = 0x00002000,
+};
+
 struct ldlm_intent {
       __u64 opc;
 };
drivers/staging/lustre/lustre/include/lustre_dlm.h +1 -1
index 3552546..af46f36 100644
@@ -1017,7 +1017,7 @@ extern struct obd_ops ldlm_obd_ops;
 
 extern char *ldlm_lockname[];
 extern char *ldlm_typename[];
-char *ldlm_it2str(int it);
+const char *ldlm_it2str(enum ldlm_intent_flags it);
 
 /**
 * Just a fancy CDEBUG call with log level preset to LDLM_DEBUG.
drivers/staging/lustre/lustre/include/obd.h +0 -16
index 9ad8c26..f731f51 100644
@@ -995,22 +995,6 @@ enum obd_cleanup_stage {
 
 struct lu_context;
 
-/* /!\ must be coherent with include/linux/namei.h on patched kernel */
-#define IT_OPEN     (1 << 0)
-#define IT_CREAT    (1 << 1)
-#define IT_READDIR  (1 << 2)
-#define IT_GETATTR  (1 << 3)
-#define IT_LOOKUP   (1 << 4)
-#define IT_UNLINK   (1 << 5)
-#define IT_TRUNC    (1 << 6)
-#define IT_GETXATTR (1 << 7)
-#define IT_EXEC     (1 << 8)
-#define IT_PIN      (1 << 9)
-#define IT_LAYOUT   (1 << 10)
-#define IT_QUOTA_DQACQ (1 << 11)
-#define IT_QUOTA_CONN  (1 << 12)
-#define IT_SETXATTR (1 << 13)
-
 static inline int it_to_lock_mode(struct lookup_intent *it)
 {
       /* CREAT needs to be tested before open (both could be set) */
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c +1 -2
index cd340fc..f3b197a 100644
@@ -123,7 +123,7 @@ void ldlm_convert_policy_to_local(struct obd_export *exp, ldlm_type_t type,
       convert(wpolicy, lpolicy);
 }
 
-char *ldlm_it2str(int it)
+const char *ldlm_it2str(enum ldlm_intent_flags it)
 {
       switch (it) {
       case IT_OPEN:
--

1.6.5.6

_______________________________________________
lustre-devel mailing list
lustre-devel at lists.lustre.org
http://lists.lustre.org/listinfo.cgi/lustre-devel-lustre.org
_______________________________________________
lustre-devel mailing list
lustre-devel at lists.lustre.org
http://lists.lustre.org/listinfo.cgi/lustre-devel-lustre.org

author
#3 lore raw

PATCH 1/1 staging/lustre: move IT_* definitions to lustre_idl.h

In reply to Patrick Farrell

Yep, see the discussion here: http://review.whamcloud.com/#/c/16228/

Quoted 121 lines · Patrick Farrell

Do you know what the removed comment about being coherent with namei.h means or once meant? I took a look and can't see anything that corresponds now, but I'd feel more comfortable if I knew for sure what that comment meant...

- Patrick
________________________________________
From: lustre-devel [lustre-devel-bounces at lists.lustre.org] on behalf of Ben Evans [bevans at cray.com]
Sent: Tuesday, October 20, 2015 5:02 PM
To: lustre-devel at lists.lustre.org
Subject: [lustre-devel] [PATCH] staging/lustre: move IT_* definitions to
lustre_idl.h

Put IT_* definitions into an enum, as they're sent over the wire, adjust calls, print statements, etc. to use the new enum.

---
.../lustre/lustre/include/lustre/lustre_idl.h | 18
++++++++++++++++++
drivers/staging/lustre/lustre/include/lustre_dlm.h | 2 +-
drivers/staging/lustre/lustre/include/obd.h | 16
----------------
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c | 2 +-

4 files changed, 20 insertions(+), 18 deletions(-)
drivers/staging/lustre/lustre/include/lustre/lustre_idl.h +18 -0
index ac78dbc..646c095 100644
@@ -2782,6 +2782,24 @@ union ldlm_gl_desc {
 
 void lustre_swab_gl_desc(union ldlm_gl_desc *);
 
+enum ldlm_intent_flags {
+       IT_OPEN        = 0x00000001,
+       IT_CREAT       = 0x00000002,
+       IT_OPEN_CREAT  = 0x00000003,
+       IT_READDIR     = 0x00000004,
+       IT_GETATTR     = 0x00000008,
+       IT_LOOKUP      = 0x00000010,
+       IT_UNLINK      = 0x00000020,
+       IT_TRUNC       = 0x00000040,
+       IT_GETXATTR    = 0x00000080,
+       IT_EXEC        = 0x00000100,
+       IT_PIN         = 0x00000200,
+       IT_LAYOUT      = 0x00000400,
+       IT_QUOTA_DQACQ = 0x00000800,
+       IT_QUOTA_CONN  = 0x00001000,
+       IT_SETXATTR    = 0x00002000,
+};
+
 struct ldlm_intent {
       __u64 opc;
 };
drivers/staging/lustre/lustre/include/lustre_dlm.h +1 -1
index 3552546..af46f36 100644
@@ -1017,7 +1017,7 @@ extern struct obd_ops ldlm_obd_ops;
 
 extern char *ldlm_lockname[];
 extern char *ldlm_typename[];
-char *ldlm_it2str(int it);
+const char *ldlm_it2str(enum ldlm_intent_flags it);
 
 /**
 * Just a fancy CDEBUG call with log level preset to LDLM_DEBUG.
drivers/staging/lustre/lustre/include/obd.h +0 -16
index 9ad8c26..f731f51 100644
@@ -995,22 +995,6 @@ enum obd_cleanup_stage {
 
 struct lu_context;
 
-/* /!\ must be coherent with include/linux/namei.h on patched kernel */
-#define IT_OPEN     (1 << 0)
-#define IT_CREAT    (1 << 1)
-#define IT_READDIR  (1 << 2)
-#define IT_GETATTR  (1 << 3)
-#define IT_LOOKUP   (1 << 4)
-#define IT_UNLINK   (1 << 5)
-#define IT_TRUNC    (1 << 6)
-#define IT_GETXATTR (1 << 7)
-#define IT_EXEC     (1 << 8)
-#define IT_PIN      (1 << 9)
-#define IT_LAYOUT   (1 << 10)
-#define IT_QUOTA_DQACQ (1 << 11)
-#define IT_QUOTA_CONN  (1 << 12)
-#define IT_SETXATTR (1 << 13)
-
 static inline int it_to_lock_mode(struct lookup_intent *it)
 {
       /* CREAT needs to be tested before open (both could be set) */
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c +1 -1
index cd340fc..f3b197a 100644
@@ -123,7 +123,7 @@ void ldlm_convert_policy_to_local(struct obd_export
 *exp, ldlm_type_t type,
       convert(wpolicy, lpolicy);
 }
 
-char *ldlm_it2str(int it)
+const char *ldlm_it2str(enum ldlm_intent_flags it)
 {
       switch (it) {

case IT_OPEN:
--
1.6.5.6

_______________________________________________
lustre-devel mailing list
lustre-devel at lists.lustre.org
http://lists.lustre.org/listinfo.cgi/lustre-devel-lustre.org

#4 lore raw

PATCH 1/1 staging/lustre: move IT_* definitions to lustre_idl.h

Ah, OK.

Thank you, Ben, Oleg.
________________________________________
From: Ben Evans
Sent: Wednesday, October 21, 2015 8:37 AM
To: Patrick Farrell; Ben Evans; lustre-devel at lists.lustre.org
Subject: Re: [lustre-devel] [PATCH] staging/lustre: move IT_* definitions to lustre_idl.h

Yep, see the discussion here: http://review.whamcloud.com/#/c/16228/

Quoted 121 lines · Patrick Farrell

Do you know what the removed comment about being coherent with namei.h means or once meant? I took a look and can't see anything that corresponds now, but I'd feel more comfortable if I knew for sure what that comment meant...

- Patrick
________________________________________
From: lustre-devel [lustre-devel-bounces at lists.lustre.org] on behalf of Ben Evans [bevans at cray.com]
Sent: Tuesday, October 20, 2015 5:02 PM
To: lustre-devel at lists.lustre.org
Subject: [lustre-devel] [PATCH] staging/lustre: move IT_* definitions to
lustre_idl.h

Put IT_* definitions into an enum, as they're sent over the wire, adjust calls, print statements, etc. to use the new enum.

---
.../lustre/lustre/include/lustre/lustre_idl.h | 18
++++++++++++++++++
drivers/staging/lustre/lustre/include/lustre_dlm.h | 2 +-
drivers/staging/lustre/lustre/include/obd.h | 16
----------------
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c | 2 +-

4 files changed, 20 insertions(+), 18 deletions(-)
drivers/staging/lustre/lustre/include/lustre/lustre_idl.h +18 -0
index ac78dbc..646c095 100644
@@ -2782,6 +2782,24 @@ union ldlm_gl_desc {
 
 void lustre_swab_gl_desc(union ldlm_gl_desc *);
 
+enum ldlm_intent_flags {
+       IT_OPEN        = 0x00000001,
+       IT_CREAT       = 0x00000002,
+       IT_OPEN_CREAT  = 0x00000003,
+       IT_READDIR     = 0x00000004,
+       IT_GETATTR     = 0x00000008,
+       IT_LOOKUP      = 0x00000010,
+       IT_UNLINK      = 0x00000020,
+       IT_TRUNC       = 0x00000040,
+       IT_GETXATTR    = 0x00000080,
+       IT_EXEC        = 0x00000100,
+       IT_PIN         = 0x00000200,
+       IT_LAYOUT      = 0x00000400,
+       IT_QUOTA_DQACQ = 0x00000800,
+       IT_QUOTA_CONN  = 0x00001000,
+       IT_SETXATTR    = 0x00002000,
+};
+
 struct ldlm_intent {
       __u64 opc;
 };
drivers/staging/lustre/lustre/include/lustre_dlm.h +1 -1
index 3552546..af46f36 100644
@@ -1017,7 +1017,7 @@ extern struct obd_ops ldlm_obd_ops;
 
 extern char *ldlm_lockname[];
 extern char *ldlm_typename[];
-char *ldlm_it2str(int it);
+const char *ldlm_it2str(enum ldlm_intent_flags it);
 
 /**
 * Just a fancy CDEBUG call with log level preset to LDLM_DEBUG.
drivers/staging/lustre/lustre/include/obd.h +0 -16
index 9ad8c26..f731f51 100644
@@ -995,22 +995,6 @@ enum obd_cleanup_stage {
 
 struct lu_context;
 
-/* /!\ must be coherent with include/linux/namei.h on patched kernel */
-#define IT_OPEN     (1 << 0)
-#define IT_CREAT    (1 << 1)
-#define IT_READDIR  (1 << 2)
-#define IT_GETATTR  (1 << 3)
-#define IT_LOOKUP   (1 << 4)
-#define IT_UNLINK   (1 << 5)
-#define IT_TRUNC    (1 << 6)
-#define IT_GETXATTR (1 << 7)
-#define IT_EXEC     (1 << 8)
-#define IT_PIN      (1 << 9)
-#define IT_LAYOUT   (1 << 10)
-#define IT_QUOTA_DQACQ (1 << 11)
-#define IT_QUOTA_CONN  (1 << 12)
-#define IT_SETXATTR (1 << 13)
-
 static inline int it_to_lock_mode(struct lookup_intent *it)
 {
       /* CREAT needs to be tested before open (both could be set) */
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c +1 -1
index cd340fc..f3b197a 100644
@@ -123,7 +123,7 @@ void ldlm_convert_policy_to_local(struct obd_export
 *exp, ldlm_type_t type,
       convert(wpolicy, lpolicy);
 }
 
-char *ldlm_it2str(int it)
+const char *ldlm_it2str(enum ldlm_intent_flags it)
 {
       switch (it) {

case IT_OPEN:
--
1.6.5.6

_______________________________________________
lustre-devel mailing list
lustre-devel at lists.lustre.org
http://lists.lustre.org/listinfo.cgi/lustre-devel-lustre.org