* [PATCH 01/13] staging/lustre: Remove unused ll_vfs_* compat defines
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
@ 2015-07-30 22:27 ` green
2015-07-30 22:27 ` [PATCH 02/13] staging/lustre: get rid of cfs_bio_* compat macroses green
` (12 subsequent siblings)
13 siblings, 0 replies; 17+ messages in thread
From: green @ 2015-07-30 22:27 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
Lustre defines quite a bit of those compatibility defines
duplicating kernel vfs api, but they are not actually used
in the client so remove them all and also ll_dirty_inode,
ll_security_inode_unlink and cfs_path_put
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
.../lustre/lustre/include/linux/lustre_compat25.h | 25 ----------------------
1 file changed, 25 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
index 513c81f..622bc93 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
@@ -74,22 +74,9 @@
#define FS_HAS_FIEMAP (0)
#endif
-#define ll_vfs_rmdir(dir, entry, mnt) vfs_rmdir(dir, entry)
-#define ll_vfs_mkdir(inode, dir, mnt, mode) vfs_mkdir(inode, dir, mode)
-#define ll_vfs_link(old, mnt, dir, new, mnt1) vfs_link(old, dir, new)
-#define ll_vfs_unlink(inode, entry, mnt) vfs_unlink(inode, entry)
-#define ll_vfs_mknod(dir, entry, mnt, mode, dev) \
- vfs_mknod(dir, entry, mode, dev)
-#define ll_security_inode_unlink(dir, entry, mnt) \
- security_inode_unlink(dir, entry)
-#define ll_vfs_rename(old, old_dir, mnt, new, new_dir, mnt1) \
- vfs_rename(old, old_dir, new, new_dir, NULL, 0)
-
#define cfs_bio_io_error(a, b) bio_io_error((a))
#define cfs_bio_endio(a, b, c) bio_endio((a), (c))
-#define cfs_path_put(nd) path_put(&(nd)->path)
-
#ifndef SLAB_DESTROY_BY_RCU
#define SLAB_DESTROY_BY_RCU 0
@@ -127,14 +114,6 @@ static inline int ll_quota_off(struct super_block *sb, int off, int remount)
}
-# define ll_vfs_dq_init dquot_initialize
-# define ll_vfs_dq_drop dquot_drop
-# define ll_vfs_dq_transfer dquot_transfer
-# define ll_vfs_dq_off(sb, remount) dquot_suspend(sb, -1)
-
-
-
-
#define queue_max_phys_segments(rq) queue_max_segments(rq)
#define queue_max_hw_segments(rq) queue_max_segments(rq)
@@ -194,8 +173,4 @@ static inline int ll_quota_off(struct super_block *sb, int off, int remount)
# define ll_umode_t umode_t
-#include <linux/dcache.h>
-
-# define ll_dirty_inode(inode, flag) (inode)->i_sb->s_op->dirty_inode((inode), flag)
-
#endif /* _COMPAT25_H */
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* [PATCH 02/13] staging/lustre: get rid of cfs_bio_* compat macroses
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
2015-07-30 22:27 ` [PATCH 01/13] staging/lustre: Remove unused ll_vfs_* compat defines green
@ 2015-07-30 22:27 ` green
2015-07-30 22:27 ` [PATCH 03/13] staging/lustre: Drop FS_HAS_FIEMAP compat macro green
` (11 subsequent siblings)
13 siblings, 0 replies; 17+ messages in thread
From: green @ 2015-07-30 22:27 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
This replaces cfs_bio_io_error with direct calls to bio_io_error
and cfs_bio_end_io with bio_end_io
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
drivers/staging/lustre/lustre/include/linux/lustre_compat25.h | 4 ----
drivers/staging/lustre/lustre/llite/lloop.c | 4 ++--
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
index 622bc93..e7d57e8 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
@@ -74,10 +74,6 @@
#define FS_HAS_FIEMAP (0)
#endif
-#define cfs_bio_io_error(a, b) bio_io_error((a))
-#define cfs_bio_endio(a, b, c) bio_endio((a), (c))
-
-
#ifndef SLAB_DESTROY_BY_RCU
#define SLAB_DESTROY_BY_RCU 0
#endif
diff --git a/drivers/staging/lustre/lustre/llite/lloop.c b/drivers/staging/lustre/lustre/llite/lloop.c
index cc00fd1..56938d2 100644
--- a/drivers/staging/lustre/lustre/llite/lloop.c
+++ b/drivers/staging/lustre/lustre/llite/lloop.c
@@ -365,7 +365,7 @@ static void loop_make_request(struct request_queue *q, struct bio *old_bio)
loop_add_bio(lo, old_bio);
return;
err:
- cfs_bio_io_error(old_bio, old_bio->bi_iter.bi_size);
+ bio_io_error(old_bio);
}
@@ -376,7 +376,7 @@ static inline void loop_handle_bio(struct lloop_device *lo, struct bio *bio)
while (bio) {
struct bio *tmp = bio->bi_next;
bio->bi_next = NULL;
- cfs_bio_endio(bio, bio->bi_iter.bi_size, ret);
+ bio_endio(bio, ret);
bio = tmp;
}
}
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* [PATCH 03/13] staging/lustre: Drop FS_HAS_FIEMAP compat macro
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
2015-07-30 22:27 ` [PATCH 01/13] staging/lustre: Remove unused ll_vfs_* compat defines green
2015-07-30 22:27 ` [PATCH 02/13] staging/lustre: get rid of cfs_bio_* compat macroses green
@ 2015-07-30 22:27 ` green
2015-07-30 22:27 ` [PATCH 04/13] staging/lustre: Drop SLAB_DESTROY_BY_RCU redefine, it's always defined green
` (10 subsequent siblings)
13 siblings, 0 replies; 17+ messages in thread
From: green @ 2015-07-30 22:27 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
FS_HAS_FIEMAP was some sort of old RHEL5 construct that's not
really important anymore
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
drivers/staging/lustre/lustre/include/linux/lustre_compat25.h | 5 -----
drivers/staging/lustre/lustre/obdclass/obd_mount.c | 2 +-
2 files changed, 1 insertion(+), 6 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
index e7d57e8..1a6b2fb 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
@@ -69,11 +69,6 @@
# define inode_dio_read(i) atomic_inc(&(i)->i_dio_count)
/* inode_dio_done(i) use as-is for read unlock */
-
-#ifndef FS_HAS_FIEMAP
-#define FS_HAS_FIEMAP (0)
-#endif
-
#ifndef SLAB_DESTROY_BY_RCU
#define SLAB_DESTROY_BY_RCU 0
#endif
diff --git a/drivers/staging/lustre/lustre/obdclass/obd_mount.c b/drivers/staging/lustre/lustre/obdclass/obd_mount.c
index 3e0b8a4..40ab7b2 100644
--- a/drivers/staging/lustre/lustre/obdclass/obd_mount.c
+++ b/drivers/staging/lustre/lustre/obdclass/obd_mount.c
@@ -1281,7 +1281,7 @@ struct file_system_type lustre_fs_type = {
.mount = lustre_mount,
.kill_sb = lustre_kill_super,
.fs_flags = FS_BINARY_MOUNTDATA | FS_REQUIRES_DEV |
- FS_HAS_FIEMAP | FS_RENAME_DOES_D_MOVE,
+ FS_RENAME_DOES_D_MOVE,
};
MODULE_ALIAS_FS("lustre");
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* [PATCH 04/13] staging/lustre: Drop SLAB_DESTROY_BY_RCU redefine, it's always defined
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
` (2 preceding siblings ...)
2015-07-30 22:27 ` [PATCH 03/13] staging/lustre: Drop FS_HAS_FIEMAP compat macro green
@ 2015-07-30 22:27 ` green
2015-07-30 22:27 ` [PATCH 05/13] staging/lustre: remove *hw_segments compat defines green
` (9 subsequent siblings)
13 siblings, 0 replies; 17+ messages in thread
From: green @ 2015-07-30 22:27 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
SLAB_DESTROY_BY_RCU is always defined in kernel slab.h, so
no point in checking for it.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
drivers/staging/lustre/lustre/include/linux/lustre_compat25.h | 6 ------
1 file changed, 6 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
index 1a6b2fb..38eda23 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
@@ -69,12 +69,6 @@
# define inode_dio_read(i) atomic_inc(&(i)->i_dio_count)
/* inode_dio_done(i) use as-is for read unlock */
-#ifndef SLAB_DESTROY_BY_RCU
-#define SLAB_DESTROY_BY_RCU 0
-#endif
-
-
-
static inline int
ll_quota_on(struct super_block *sb, int off, int ver, char *name, int remount)
{
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* [PATCH 05/13] staging/lustre: remove *hw_segments compat defines
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
` (3 preceding siblings ...)
2015-07-30 22:27 ` [PATCH 04/13] staging/lustre: Drop SLAB_DESTROY_BY_RCU redefine, it's always defined green
@ 2015-07-30 22:27 ` green
2015-07-30 22:27 ` [PATCH 06/13] staging/lustre: Drop SEEK_* definition checks green
` (8 subsequent siblings)
13 siblings, 0 replies; 17+ messages in thread
From: green @ 2015-07-30 22:27 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
queue_max_phys_segments, queue_max_hw_segments and bio_hw_segments
are not used anywhere in the client code, so remove them
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
drivers/staging/lustre/lustre/include/linux/lustre_compat25.h | 6 ------
1 file changed, 6 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
index 38eda23..d0e8f3c 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
@@ -100,10 +100,6 @@ static inline int ll_quota_off(struct super_block *sb, int off, int remount)
-#define queue_max_phys_segments(rq) queue_max_segments(rq)
-#define queue_max_hw_segments(rq) queue_max_segments(rq)
-
-
#define ll_d_hlist_node hlist_node
#define ll_d_hlist_empty(list) hlist_empty(list)
#define ll_d_hlist_entry(ptr, type, name) hlist_entry(ptr.first, type, name)
@@ -112,8 +108,6 @@ static inline int ll_quota_off(struct super_block *sb, int off, int remount)
p = NULL; hlist_for_each_entry(dentry, i_dentry, alias)
-#define bio_hw_segments(q, bio) 0
-
#define ll_pagevec_init(pv, cold) do {} while (0)
#define ll_pagevec_add(pv, pg) (0)
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* [PATCH 06/13] staging/lustre: Drop SEEK_* definition checks
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
` (4 preceding siblings ...)
2015-07-30 22:27 ` [PATCH 05/13] staging/lustre: remove *hw_segments compat defines green
@ 2015-07-30 22:27 ` green
2015-07-31 23:00 ` Greg Kroah-Hartman
2015-07-30 22:27 ` [PATCH 07/13] staging/lustre: Drop FMODE_UNSIGNED_OFFSET define green
` (7 subsequent siblings)
13 siblings, 1 reply; 17+ messages in thread
From: green @ 2015-07-30 22:27 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
SEEK_DATA and SEEK_HOLE are always defined in the kernel,
drop the definition checks
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
.../lustre/lustre/include/linux/lustre_compat25.h | 38 ----------------------
1 file changed, 38 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
index d0e8f3c..7d90999 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
@@ -69,37 +69,6 @@
# define inode_dio_read(i) atomic_inc(&(i)->i_dio_count)
/* inode_dio_done(i) use as-is for read unlock */
-static inline int
-ll_quota_on(struct super_block *sb, int off, int ver, char *name, int remount)
-{
- int rc;
-
- if (sb->s_qcop->quota_on) {
- struct path path;
-
- rc = kern_path(name, LOOKUP_FOLLOW, &path);
- if (!rc)
- return rc;
- rc = sb->s_qcop->quota_on(sb, off, ver
- , &path
- );
- path_put(&path);
- return rc;
- } else
- return -ENOSYS;
-}
-
-static inline int ll_quota_off(struct super_block *sb, int off, int remount)
-{
- if (sb->s_qcop->quota_off) {
- return sb->s_qcop->quota_off(sb, off
- );
- } else
- return -ENOSYS;
-}
-
-
-
#define ll_d_hlist_node hlist_node
#define ll_d_hlist_empty(list) hlist_empty(list)
#define ll_d_hlist_entry(ptr, type, name) hlist_entry(ptr.first, type, name)
@@ -121,13 +90,6 @@ static inline int ll_quota_off(struct super_block *sb, int off, int remount)
# define NO_QUOTA (-EDQUOT)
#endif
-#ifndef SEEK_DATA
-#define SEEK_DATA 3 /* seek to the next data */
-#endif
-#ifndef SEEK_HOLE
-#define SEEK_HOLE 4 /* seek to the next hole */
-#endif
-
#ifndef FMODE_UNSIGNED_OFFSET
#define FMODE_UNSIGNED_OFFSET ((__force fmode_t)0x2000)
#endif
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* Re: [PATCH 06/13] staging/lustre: Drop SEEK_* definition checks
2015-07-30 22:27 ` [PATCH 06/13] staging/lustre: Drop SEEK_* definition checks green
@ 2015-07-31 23:00 ` Greg Kroah-Hartman
2015-07-31 23:37 ` Oleg Drokin
0 siblings, 1 reply; 17+ messages in thread
From: Greg Kroah-Hartman @ 2015-07-31 23:00 UTC (permalink / raw)
To: green; +Cc: devel, Andreas Dilger, Oleg Drokin, Linux Kernel Mailing List
On Thu, Jul 30, 2015 at 06:27:57PM -0400, green@linuxhacker.ru wrote:
> From: Oleg Drokin <green@linuxhacker.ru>
>
> SEEK_DATA and SEEK_HOLE are always defined in the kernel,
> drop the definition checks
>
> Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
> ---
> .../lustre/lustre/include/linux/lustre_compat25.h | 38 ----------------------
> 1 file changed, 38 deletions(-)
>
> diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
> index d0e8f3c..7d90999 100644
> --- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
> +++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
> @@ -69,37 +69,6 @@
> # define inode_dio_read(i) atomic_inc(&(i)->i_dio_count)
> /* inode_dio_done(i) use as-is for read unlock */
>
> -static inline int
> -ll_quota_on(struct super_block *sb, int off, int ver, char *name, int remount)
> -{
> - int rc;
> -
> - if (sb->s_qcop->quota_on) {
> - struct path path;
> -
> - rc = kern_path(name, LOOKUP_FOLLOW, &path);
> - if (!rc)
> - return rc;
> - rc = sb->s_qcop->quota_on(sb, off, ver
> - , &path
> - );
> - path_put(&path);
> - return rc;
> - } else
> - return -ENOSYS;
> -}
> -
> -static inline int ll_quota_off(struct super_block *sb, int off, int remount)
> -{
> - if (sb->s_qcop->quota_off) {
> - return sb->s_qcop->quota_off(sb, off
> - );
> - } else
> - return -ENOSYS;
> -}
> -
> -
> -
This code removal doesn't match up with the changelog text, so I can't
take this :(
^ permalink raw reply [flat|nested] 17+ messages in thread* Re: [PATCH 06/13] staging/lustre: Drop SEEK_* definition checks
2015-07-31 23:00 ` Greg Kroah-Hartman
@ 2015-07-31 23:37 ` Oleg Drokin
0 siblings, 0 replies; 17+ messages in thread
From: Oleg Drokin @ 2015-07-31 23:37 UTC (permalink / raw)
To: Greg Kroah-Hartman; +Cc: devel, Andreas Dilger, Linux Kernel Mailing List
On Jul 31, 2015, at 7:00 PM, Greg Kroah-Hartman wrote:
> On Thu, Jul 30, 2015 at 06:27:57PM -0400, green@linuxhacker.ru wrote:
>> From: Oleg Drokin <green@linuxhacker.ru>
>>
>> SEEK_DATA and SEEK_HOLE are always defined in the kernel,
>> drop the definition checks
> This code removal doesn't match up with the changelog text, so I can't
> take this :(
Whoops.
A fallover from a mistaken rebase, I guess.
I'll resubmit in a moment.
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH 07/13] staging/lustre: Drop FMODE_UNSIGNED_OFFSET define
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
` (5 preceding siblings ...)
2015-07-30 22:27 ` [PATCH 06/13] staging/lustre: Drop SEEK_* definition checks green
@ 2015-07-30 22:27 ` green
2015-07-30 22:27 ` [PATCH 08/13] staging/lustre: replace ll_umode_t with umode_t green
` (6 subsequent siblings)
13 siblings, 0 replies; 17+ messages in thread
From: green @ 2015-07-30 22:27 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
It's not really used anywhere.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
drivers/staging/lustre/lustre/include/linux/lustre_compat25.h | 4 ----
1 file changed, 4 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
index 7d90999..754f63f 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
@@ -90,10 +90,6 @@
# define NO_QUOTA (-EDQUOT)
#endif
-#ifndef FMODE_UNSIGNED_OFFSET
-#define FMODE_UNSIGNED_OFFSET ((__force fmode_t)0x2000)
-#endif
-
#if !defined(_ASM_GENERIC_BITOPS_EXT2_NON_ATOMIC_H_) && !defined(ext2_set_bit)
# define ext2_set_bit __test_and_set_bit_le
# define ext2_clear_bit __test_and_clear_bit_le
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* [PATCH 08/13] staging/lustre: replace ll_umode_t with umode_t
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
` (6 preceding siblings ...)
2015-07-30 22:27 ` [PATCH 07/13] staging/lustre: Drop FMODE_UNSIGNED_OFFSET define green
@ 2015-07-30 22:27 ` green
2015-07-30 22:28 ` [PATCH 09/13] staging/lustre: Use hlist primitives directly green
` (5 subsequent siblings)
13 siblings, 0 replies; 17+ messages in thread
From: green @ 2015-07-30 22:27 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
umode_t is what we need anyway, so replace all users
and drop the define.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
drivers/staging/lustre/lustre/include/linux/lustre_compat25.h | 6 ------
drivers/staging/lustre/lustre/llite/namei.c | 2 +-
2 files changed, 1 insertion(+), 7 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
index 754f63f..65493b3 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
@@ -104,10 +104,4 @@
# define TIMES_SET_FLAGS (ATTR_MTIME_SET | ATTR_ATIME_SET)
#endif
-
-#include <linux/version.h>
-#include <linux/fs.h>
-
-# define ll_umode_t umode_t
-
#endif /* _COMPAT25_H */
diff --git a/drivers/staging/lustre/lustre/llite/namei.c b/drivers/staging/lustre/lustre/llite/namei.c
index 72ce6e7..2ed1e0a 100644
--- a/drivers/staging/lustre/lustre/llite/namei.c
+++ b/drivers/staging/lustre/lustre/llite/namei.c
@@ -1008,7 +1008,7 @@ static int ll_unlink(struct inode *dir, struct dentry *dentry)
return rc;
}
-static int ll_mkdir(struct inode *dir, struct dentry *dentry, ll_umode_t mode)
+static int ll_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode)
{
int err;
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* [PATCH 09/13] staging/lustre: Use hlist primitives directly
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
` (7 preceding siblings ...)
2015-07-30 22:27 ` [PATCH 08/13] staging/lustre: replace ll_umode_t with umode_t green
@ 2015-07-30 22:28 ` green
2015-07-30 22:28 ` [PATCH 10/13] staging/lustre: Get rid of ll_pagevec_ macros green
` (4 subsequent siblings)
13 siblings, 0 replies; 17+ messages in thread
From: green @ 2015-07-30 22:28 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
Get rid of ll_d_hlist* compat defines.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
drivers/staging/lustre/lustre/include/linux/lustre_compat25.h | 9 ---------
drivers/staging/lustre/lustre/llite/dcache.c | 3 +--
drivers/staging/lustre/lustre/llite/namei.c | 10 ++++------
3 files changed, 5 insertions(+), 17 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
index 65493b3..bc4f752 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
@@ -69,15 +69,6 @@
# define inode_dio_read(i) atomic_inc(&(i)->i_dio_count)
/* inode_dio_done(i) use as-is for read unlock */
-#define ll_d_hlist_node hlist_node
-#define ll_d_hlist_empty(list) hlist_empty(list)
-#define ll_d_hlist_entry(ptr, type, name) hlist_entry(ptr.first, type, name)
-#define ll_d_hlist_for_each(tmp, i_dentry) hlist_for_each(tmp, i_dentry)
-#define ll_d_hlist_for_each_entry(dentry, p, i_dentry, alias) \
- p = NULL; hlist_for_each_entry(dentry, i_dentry, alias)
-
-
-
#define ll_pagevec_init(pv, cold) do {} while (0)
#define ll_pagevec_add(pv, pg) (0)
#define ll_pagevec_lru_add_file(pv) do {} while (0)
diff --git a/drivers/staging/lustre/lustre/llite/dcache.c b/drivers/staging/lustre/lustre/llite/dcache.c
index 7b008a6..b866859 100644
--- a/drivers/staging/lustre/lustre/llite/dcache.c
+++ b/drivers/staging/lustre/lustre/llite/dcache.c
@@ -250,7 +250,6 @@ void ll_intent_release(struct lookup_intent *it)
void ll_invalidate_aliases(struct inode *inode)
{
struct dentry *dentry;
- struct ll_d_hlist_node *p;
LASSERT(inode != NULL);
@@ -258,7 +257,7 @@ void ll_invalidate_aliases(struct inode *inode)
inode->i_ino, inode->i_generation, inode);
ll_lock_dcache(inode);
- ll_d_hlist_for_each_entry(dentry, p, &inode->i_dentry, d_u.d_alias) {
+ hlist_for_each_entry(dentry, &inode->i_dentry, d_u.d_alias) {
CDEBUG(D_DENTRY, "dentry in drop %pd (%p) parent %p inode %p flags %d\n",
dentry, dentry, dentry->d_parent,
d_inode(dentry), dentry->d_flags);
diff --git a/drivers/staging/lustre/lustre/llite/namei.c b/drivers/staging/lustre/lustre/llite/namei.c
index 2ed1e0a..05e7dc8 100644
--- a/drivers/staging/lustre/lustre/llite/namei.c
+++ b/drivers/staging/lustre/lustre/llite/namei.c
@@ -144,10 +144,9 @@ struct inode *ll_iget(struct super_block *sb, ino_t hash,
static void ll_invalidate_negative_children(struct inode *dir)
{
struct dentry *dentry, *tmp_subdir;
- struct ll_d_hlist_node *p;
ll_lock_dcache(dir);
- ll_d_hlist_for_each_entry(dentry, p, &dir->i_dentry, d_u.d_alias) {
+ hlist_for_each_entry(dentry, &dir->i_dentry, d_u.d_alias) {
spin_lock(&dentry->d_lock);
if (!list_empty(&dentry->d_subdirs)) {
struct dentry *child;
@@ -334,15 +333,14 @@ void ll_i2gids(__u32 *suppgids, struct inode *i1, struct inode *i2)
static struct dentry *ll_find_alias(struct inode *inode, struct dentry *dentry)
{
struct dentry *alias, *discon_alias, *invalid_alias;
- struct ll_d_hlist_node *p;
- if (ll_d_hlist_empty(&inode->i_dentry))
+ if (hlist_empty(&inode->i_dentry))
return NULL;
discon_alias = invalid_alias = NULL;
ll_lock_dcache(inode);
- ll_d_hlist_for_each_entry(alias, p, &inode->i_dentry, d_u.d_alias) {
+ hlist_for_each_entry(alias, &inode->i_dentry, d_u.d_alias) {
LASSERT(alias != dentry);
spin_lock(&alias->d_lock);
@@ -690,7 +688,7 @@ static struct inode *ll_create_node(struct inode *dir, struct lookup_intent *it)
goto out;
}
- LASSERT(ll_d_hlist_empty(&inode->i_dentry));
+ LASSERT(hlist_empty(&inode->i_dentry));
/* We asked for a lock on the directory, but were granted a
* lock on the inode. Since we finally have an inode pointer,
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* [PATCH 10/13] staging/lustre: Get rid of ll_pagevec_ macros
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
` (8 preceding siblings ...)
2015-07-30 22:28 ` [PATCH 09/13] staging/lustre: Use hlist primitives directly green
@ 2015-07-30 22:28 ` green
2015-07-30 22:28 ` [PATCH 11/13] staging/lustre: ATTR_TIMES_SET is always defined, so don't check it green
` (3 subsequent siblings)
13 siblings, 0 replies; 17+ messages in thread
From: green @ 2015-07-30 22:28 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
They are noop anyways.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
drivers/staging/lustre/lustre/include/linux/lustre_compat25.h | 5 -----
drivers/staging/lustre/lustre/llite/dir.c | 4 ----
2 files changed, 9 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
index bc4f752..ffcbc78 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
@@ -69,11 +69,6 @@
# define inode_dio_read(i) atomic_inc(&(i)->i_dio_count)
/* inode_dio_done(i) use as-is for read unlock */
-#define ll_pagevec_init(pv, cold) do {} while (0)
-#define ll_pagevec_add(pv, pg) (0)
-#define ll_pagevec_lru_add_file(pv) do {} while (0)
-
-
#ifndef QUOTA_OK
# define QUOTA_OK 0
#endif
diff --git a/drivers/staging/lustre/lustre/llite/dir.c b/drivers/staging/lustre/lustre/llite/dir.c
index 3d746a9..769b611 100644
--- a/drivers/staging/lustre/lustre/llite/dir.c
+++ b/drivers/staging/lustre/lustre/llite/dir.c
@@ -203,7 +203,6 @@ static int ll_dir_filler(void *_hash, struct page *page0)
CDEBUG(D_VFSTRACE, "read %d/%d pages\n", nrdpgs, npages);
- ll_pagevec_init(&lru_pvec, 0);
for (i = 1; i < npages; i++) {
unsigned long offset;
int ret;
@@ -228,15 +227,12 @@ static int ll_dir_filler(void *_hash, struct page *page0)
GFP_KERNEL);
if (ret == 0) {
unlock_page(page);
- if (ll_pagevec_add(&lru_pvec, page) == 0)
- ll_pagevec_lru_add_file(&lru_pvec);
} else {
CDEBUG(D_VFSTRACE, "page %lu add to page cache failed: %d\n",
offset, ret);
}
page_cache_release(page);
}
- ll_pagevec_lru_add_file(&lru_pvec);
if (page_pool != &page0)
kfree(page_pool);
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* [PATCH 11/13] staging/lustre: ATTR_TIMES_SET is always defined, so don't check it
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
` (9 preceding siblings ...)
2015-07-30 22:28 ` [PATCH 10/13] staging/lustre: Get rid of ll_pagevec_ macros green
@ 2015-07-30 22:28 ` green
2015-07-30 22:28 ` [PATCH 12/13] staging/lustre: Get rid of inode_dio_write_done and inode_dio_read green
` (2 subsequent siblings)
13 siblings, 0 replies; 17+ messages in thread
From: green @ 2015-07-30 22:28 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
Remove ATTR_TIMES_SET check as it's always present, move
the mask of times define close to where it's used.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
drivers/staging/lustre/lustre/include/linux/lustre_compat25.h | 6 ------
drivers/staging/lustre/lustre/llite/llite_lib.c | 2 ++
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
index ffcbc78..157bafb 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
@@ -84,10 +84,4 @@
# define ext2_find_next_zero_bit find_next_zero_bit_le
#endif
-#ifdef ATTR_TIMES_SET
-# define TIMES_SET_FLAGS (ATTR_MTIME_SET | ATTR_ATIME_SET | ATTR_TIMES_SET)
-#else
-# define TIMES_SET_FLAGS (ATTR_MTIME_SET | ATTR_ATIME_SET)
-#endif
-
#endif /* _COMPAT25_H */
diff --git a/drivers/staging/lustre/lustre/llite/llite_lib.c b/drivers/staging/lustre/lustre/llite/llite_lib.c
index ab4839c..39f0b2a 100644
--- a/drivers/staging/lustre/lustre/llite/llite_lib.c
+++ b/drivers/staging/lustre/lustre/llite/llite_lib.c
@@ -1150,6 +1150,8 @@ void ll_clear_inode(struct inode *inode)
lli->lli_has_smd = false;
}
+#define TIMES_SET_FLAGS (ATTR_MTIME_SET | ATTR_ATIME_SET | ATTR_TIMES_SET)
+
static int ll_md_setattr(struct dentry *dentry, struct md_op_data *op_data,
struct md_open_data **mod)
{
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* [PATCH 12/13] staging/lustre: Get rid of inode_dio_write_done and inode_dio_read
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
` (10 preceding siblings ...)
2015-07-30 22:28 ` [PATCH 11/13] staging/lustre: ATTR_TIMES_SET is always defined, so don't check it green
@ 2015-07-30 22:28 ` green
2015-07-30 22:28 ` [PATCH 13/13] staging/lustre: use ATTR_OPEN directly, remove ATTR_RAW green
2015-07-31 23:03 ` [PATCH 00/13] Removal of lustre compat macros Greg Kroah-Hartman
13 siblings, 0 replies; 17+ messages in thread
From: green @ 2015-07-30 22:28 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
These primitives are long deprecated and unused.
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
drivers/staging/lustre/lustre/include/linux/lustre_compat25.h | 5 -----
drivers/staging/lustre/lustre/llite/llite_lib.c | 5 +----
drivers/staging/lustre/lustre/llite/vvp_io.c | 5 ++---
3 files changed, 3 insertions(+), 12 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
index 157bafb..6b14406 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_compat25.h
@@ -64,11 +64,6 @@
#define LTIME_S(time) (time.tv_sec)
-/* inode_dio_wait(i) use as-is for write lock */
-# define inode_dio_write_done(i) do {} while (0) /* for write unlock */
-# define inode_dio_read(i) atomic_inc(&(i)->i_dio_count)
-/* inode_dio_done(i) use as-is for read unlock */
-
#ifndef QUOTA_OK
# define QUOTA_OK 0
#endif
diff --git a/drivers/staging/lustre/lustre/llite/llite_lib.c b/drivers/staging/lustre/lustre/llite/llite_lib.c
index 39f0b2a..55e2dc6 100644
--- a/drivers/staging/lustre/lustre/llite/llite_lib.c
+++ b/drivers/staging/lustre/lustre/llite/llite_lib.c
@@ -1356,11 +1356,8 @@ int ll_setattr_raw(struct dentry *dentry, struct iattr *attr, bool hsm_import)
if (!op_data)
return -ENOMEM;
- if (!S_ISDIR(inode->i_mode)) {
- if (attr->ia_valid & ATTR_SIZE)
- inode_dio_write_done(inode);
+ if (!S_ISDIR(inode->i_mode))
mutex_unlock(&inode->i_mutex);
- }
memcpy(&op_data->op_attr, attr, sizeof(*attr));
diff --git a/drivers/staging/lustre/lustre/llite/vvp_io.c b/drivers/staging/lustre/lustre/llite/vvp_io.c
index 91bba79..a659962 100644
--- a/drivers/staging/lustre/lustre/llite/vvp_io.c
+++ b/drivers/staging/lustre/lustre/llite/vvp_io.c
@@ -455,12 +455,11 @@ static void vvp_io_setattr_end(const struct lu_env *env,
struct cl_io *io = ios->cis_io;
struct inode *inode = ccc_object_inode(io->ci_obj);
- if (cl_io_is_trunc(io)) {
+ if (cl_io_is_trunc(io))
/* Truncate in memory pages - they must be clean pages
* because osc has already notified to destroy osc_extents. */
vvp_do_vmtruncate(inode, io->u.ci_setattr.sa_attr.lvb_size);
- inode_dio_write_done(inode);
- }
+
mutex_unlock(&inode->i_mutex);
}
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* [PATCH 13/13] staging/lustre: use ATTR_OPEN directly, remove ATTR_RAW
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
` (11 preceding siblings ...)
2015-07-30 22:28 ` [PATCH 12/13] staging/lustre: Get rid of inode_dio_write_done and inode_dio_read green
@ 2015-07-30 22:28 ` green
2015-07-31 23:03 ` [PATCH 00/13] Removal of lustre compat macros Greg Kroah-Hartman
13 siblings, 0 replies; 17+ messages in thread
From: green @ 2015-07-30 22:28 UTC (permalink / raw)
To: Greg Kroah-Hartman, devel, Andreas Dilger
Cc: Linux Kernel Mailing List, Oleg Drokin, Oleg Drokin
From: Oleg Drokin <green@linuxhacker.ru>
ATTR_RAW is unused.
No point in redefining ATTR_OPEN as ATTR_FROM_OPEN
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
---
.../lustre/lustre/include/linux/lustre_patchless_compat.h | 12 ------------
drivers/staging/lustre/lustre/mdc/mdc_lib.c | 2 +-
2 files changed, 1 insertion(+), 13 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/linux/lustre_patchless_compat.h b/drivers/staging/lustre/lustre/include/linux/lustre_patchless_compat.h
index 1456278..ebe8d68 100644
--- a/drivers/staging/lustre/lustre/include/linux/lustre_patchless_compat.h
+++ b/drivers/staging/lustre/lustre/include/linux/lustre_patchless_compat.h
@@ -60,18 +60,6 @@ truncate_complete_page(struct address_space *mapping, struct page *page)
ll_delete_from_page_cache(page);
}
-#ifdef ATTR_OPEN
-# define ATTR_FROM_OPEN ATTR_OPEN
-#else
-# ifndef ATTR_FROM_OPEN
-# define ATTR_FROM_OPEN 0
-# endif
-#endif /* ATTR_OPEN */
-
-#ifndef ATTR_RAW
-#define ATTR_RAW 0
-#endif
-
#ifndef ATTR_CTIME_SET
/*
* set ATTR_CTIME_SET to a high value to avoid any risk of collision with other
diff --git a/drivers/staging/lustre/lustre/mdc/mdc_lib.c b/drivers/staging/lustre/lustre/mdc/mdc_lib.c
index d3234cb..1a850ea 100644
--- a/drivers/staging/lustre/lustre/mdc/mdc_lib.c
+++ b/drivers/staging/lustre/lustre/mdc/mdc_lib.c
@@ -286,7 +286,7 @@ static inline __u64 attr_pack(unsigned int ia_valid)
sa_valid |= MDS_ATTR_KILL_SGID;
if (ia_valid & ATTR_CTIME_SET)
sa_valid |= MDS_ATTR_CTIME_SET;
- if (ia_valid & ATTR_FROM_OPEN)
+ if (ia_valid & ATTR_OPEN)
sa_valid |= MDS_ATTR_FROM_OPEN;
if (ia_valid & ATTR_BLOCKS)
sa_valid |= MDS_ATTR_BLOCKS;
--
2.1.0
^ permalink raw reply [flat|nested] 17+ messages in thread* Re: [PATCH 00/13] Removal of lustre compat macros
2015-07-30 22:27 [PATCH 00/13] Removal of lustre compat macros green
` (12 preceding siblings ...)
2015-07-30 22:28 ` [PATCH 13/13] staging/lustre: use ATTR_OPEN directly, remove ATTR_RAW green
@ 2015-07-31 23:03 ` Greg Kroah-Hartman
13 siblings, 0 replies; 17+ messages in thread
From: Greg Kroah-Hartman @ 2015-07-31 23:03 UTC (permalink / raw)
To: green; +Cc: devel, Andreas Dilger, Linux Kernel Mailing List
On Thu, Jul 30, 2015 at 06:27:51PM -0400, green@linuxhacker.ru wrote:
> From: Oleg Drokin <green@linuxhacker.ru>
>
> This patchset is a stroll through lustre/include/linux/lustre_compat25.h
> that houses a bunch of our "compatibility with old/new kernels"
> code and gettign rid of everything that we know for granted is available
> because we are part of the tree.
>
> These are the low hanging fruit, the rest are somewhat more tricky and
> would need some more research.
I applied some of these, please fix up the changelog entry (or break it
up into 2 patches) for that one patch, and resend that and the remaining
ones.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 17+ messages in thread