[PATCH v2 24/84] staging/lustre: Remove lustre_build_version.h

2016-02-24 Thread green
From: Oleg Drokin of the two macroses is contained the LUSTRE_RELEASE was unused and BUILD_VERSION is too generically named and was replaced with LUSTRE_VERSION_STRING with all the users (provided by lustre_ver.h) With in-kernel client the build version should be combined with kernel build infor

[PATCH v2 22/84] staging/lustre: Get rid of ldlm_cancel_flags_t typedef

2016-02-24 Thread green
From: Oleg Drokin Replace it with enum ldlm_cancel_flags Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre_dlm.h | 18 ++ drivers/staging/lustre/lustre/include/obd.h| 2 +- drivers/staging/lustre/lustre/include/obd_class.h | 2 +- drivers/st

[PATCH v2 18/84] staging/lustre: Get rid of lustre_quota_version typedef

2016-02-24 Thread green
From: Oleg Drokin Does not appear to be used anywhere. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre/lustre_user.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_user.h b/drivers/staging

[PATCH v2 14/84] staging/lustre: Get rid of llog_op_type typedef

2016-02-24 Thread green
From: Oleg Drokin Replace with enum llog_op_type Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre/lustre_idl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h b/drivers/staging/lustre/

[PATCH v2 20/84] staging/lustre: Remove ldlm_appetite_t typedef

2016-02-24 Thread green
From: Oleg Drokin Replace it with enum ldlm_appetite Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre_dlm.h | 8 drivers/staging/lustre/lustre/ldlm/ldlm_resource.c | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/staging/lustre/

[PATCH v2 15/84] staging/lustre: Get rid of sec_cmd_t typedef

2016-02-24 Thread green
From: Oleg Drokin Replace with enum sec_cmd Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre/lustre_idl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h b/drivers/staging/lustre/lustr

[PATCH v2 11/84] staging/lustre: Remove ldlm type/mode typedefs

2016-02-24 Thread green
From: Oleg Drokin Replace ldlm_mode_t with enum ldlm_mode, ldlm_type_t with enum ldlm_type Signed-off-by: Oleg Drokin --- .../lustre/lustre/include/lustre/lustre_idl.h | 14 drivers/staging/lustre/lustre/include/lustre_dlm.h | 39 -- drivers/staging/lustre/lus

[PATCH v2 17/84] staging/lustre: Get rid of lustre_fid typedef

2016-02-24 Thread green
From: Oleg Drokin Replace it with struct lu_fid Signed-off-by: Oleg Drokin --- .../lustre/lustre/include/lustre/lustre_idl.h | 2 +- .../lustre/lustre/include/lustre/lustre_user.h | 24 +++--- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/drivers/st

[PATCH v2 13/84] staging/lustre: Get rid of obd_cmd_t typedef

2016-02-24 Thread green
From: Oleg Drokin Replace with enum obd_cmd Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre/lustre_idl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h b/drivers/staging/lustre/lustr

[PATCH v2 16/84] staging/lustre: Get rid of object update code

2016-02-24 Thread green
From: Oleg Drokin Object update was originally planned to be used for cross-server updates, so nothign to do with the client. The idea was later significantly reworked anyway so even wire structs should not be retained. This gets rid of update_cmd_t, UPDATE and UPDATE_REPLY rpc and corresponding

[PATCH v2 10/84] staging/lustre: Get rid of ldlm_cmd_t typedef

2016-02-24 Thread green
From: Oleg Drokin Replace it with enum ldlm_cmd Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre/lustre_idl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h b/drivers/staging/lustre/l

[PATCH v2 06/84] staging/lustre: Get rid of ost_cmd_t typedef

2016-02-24 Thread green
From: Oleg Drokin Replace it with enum ost_cmd Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre/lustre_idl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h b/drivers/staging/lustre/lu

[PATCH v2 07/84] staging/lustre: Get rid of quota_cmd_t typedef

2016-02-24 Thread green
From: Oleg Drokin Replace it with enum quota_cmd Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre/lustre_idl.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h b/drivers/staging/lustre/

[PATCH v2 04/84] staging/lustre: Get rid of loc_flags_t typedef

2016-02-24 Thread green
From: Oleg Drokin Replace it with direct reference of enum loc_flags Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lu_object.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/staging/lustre/lustre/include/lu_object.h b/drivers/staging/l

[PATCH v2 00/84] Lustre cleanups

2016-02-24 Thread green
From: Oleg Drokin Due to unfortunate reordering that broke the build in the middle, I am resending the previous patchset with some extra added patches. This contains various Lustre cleanups and coding style fixes, also hunts out various ifdefs that we don't really need and remove various unused

[PATCH v2 05/84] staging/lustre: Get rid of cksum_type_t typedef

2016-02-24 Thread green
From: Oleg Drokin Replace it with enum cksum_type Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre/lustre_idl.h | 4 ++-- drivers/staging/lustre/lustre/include/obd.h | 2 +- drivers/staging/lustre/lustre/include/obd_cksum.h | 12 ++--

[PATCH v2 02/84] staging/lustre/fld: Remove useless typedefs

2016-02-24 Thread green
From: Oleg Drokin Typedefs fld_hash_func_t and fld_scan_func_t are used exectly once in the following structure so don't really help anything at all. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/fld/fld_internal.h | 9 ++--- 1 file changed, 2 insertions(+), 7 deletions(-)

[PATCH 00/25] Lustre cleanups continued

2016-02-25 Thread green
From: Oleg Drokin These are the cleanup patches that were not applied from the previous patch set due to a missing NFS/fhandle fix that is now applied. Also some defines removal and such. Please apply. Oleg Drokin (25): staging/lustre/llite: Fix style vs open parenthesis alignment staging/l

[PATCH 01/25] staging/lustre/llite: Fix style vs open parenthesis alignment

2016-02-25 Thread green
From: Oleg Drokin This mostly fixes checkpatch complaints about "Alignment should match open parenthesis" Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/llite/dcache.c | 3 +- drivers/staging/lustre/lustre/llite/dir.c | 6 +- drivers/staging/lustre/lustre/llite/f

[PATCH 04/25] staging/lustre: Remove unused liblustre_check_services prototype

2016-02-25 Thread green
From: Oleg Drokin liblustre_check_services is no longer present in the tree. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre_net.h | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/staging/lustre/lustre/include/lustre_net.h b/drivers/staging/lustre/lustre/

[PATCH 19/25] staging/lustre/mgc: Fix style vs open parenthesis alignment

2016-02-25 Thread green
From: Oleg Drokin This mostly fixes checkpatch complaints about "Alignment should match open parenthesis" Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/mgc/mgc_request.c | 28 - 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/drivers/stagi

[PATCH 25/25] staging/lustre/ptlrpc: Fix ENABLE_PINGER ifdef

2016-02-25 Thread green
From: Oleg Drokin As it is ENABLE_PINGER is never defined, but in reality it's the code that is now compiled out that should be used since all other instances were converted like that too. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/ptlrpc/import.c | 28 ---

[PATCH 14/25] staging/lustre/ptlrpc: Fix style vs open parenthesis alignment

2016-02-25 Thread green
From: Oleg Drokin This mostly fixes checkpatch complaints about "Alignment should match open parenthesis" Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/ptlrpc/client.c | 40 +--- drivers/staging/lustre/lustre/ptlrpc/import.c | 21 +++ drivers/staging/lustre

[PATCH 13/25] staging/lustre: NEED_QUOTA_DEFS is never defined, drop it.

2016-02-25 Thread green
From: Oleg Drokin Signed-off-by: Oleg Drokin --- .../staging/lustre/lustre/include/lustre/lustre_user.h | 16 1 file changed, 16 deletions(-) diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_user.h b/drivers/staging/lustre/lustre/include/lustre/lustre_user.h

[PATCH 08/25] staging/lustre: Remove liblustre references from explanations

2016-02-25 Thread green
From: Oleg Drokin Since liblustre is no longer with us, referencing to it in the explanations only makes things less clear Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/cl_object.h | 4 ++-- drivers/staging/lustre/lustre/include/lustre_lite.h | 2 +- drivers/staging/lu

[PATCH 15/25] staging/lustre/osc: Fix style vs open parenthesis alignment

2016-02-25 Thread green
From: Oleg Drokin This mostly fixes checkpatch complaints about "Alignment should match open parenthesis" Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/osc/lproc_osc.c | 20 ++--- drivers/staging/lustre/lustre/osc/osc_cache.c | 18 +--- drivers/staging/lustre

[PATCH 18/25] staging/lustre/mdc: Fix style vs open parenthesis alignment

2016-02-25 Thread green
From: Oleg Drokin This mostly fixes checkpatch complaints about "Alignment should match open parenthesis" Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/mdc/mdc_internal.h | 2 +- drivers/staging/lustre/lustre/mdc/mdc_locks.c| 26 +++- drivers/staging/lus

[PATCH 17/25] staging/lustre/lov: Fix style vs open parenthesis alignment

2016-02-25 Thread green
From: Oleg Drokin This mostly fixes checkpatch complaints about "Alignment should match open parenthesis" Signed-off-by: Oleg Drokin --- .../staging/lustre/lustre/lov/lov_cl_internal.h| 87 +++--- drivers/staging/lustre/lustre/lov/lov_ea.c | 2 +- drivers/staging/l

[PATCH 24/25] staging/lustre: Remove unneeded {} in lprocfs_stats_unlock()

2016-02-25 Thread green
From: Oleg Drokin Since there's only one call in those if () else branches, the braces are not really necessary. Highlighted by checkpatch. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lprocfs_status.h | 10 -- 1 file changed, 4 insertions(+), 6 deletions(-) d

[PATCH 21/25] staging/lustre/lmv: Fix style vs open parenthesis alignment

2016-02-25 Thread green
From: Oleg Drokin This mostly fixes checkpatch complaints about "Alignment should match open parenthesis" Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/lmv/lmv_intent.c | 2 +- drivers/staging/lustre/lustre/lmv/lmv_internal.h | 4 ++-- drivers/staging/lustre/lustre/lmv/lmv_o

[PATCH 22/25] staging/lustre: Fix lines that start with spaces

2016-02-25 Thread green
From: Oleg Drokin Found with checkpatch. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre_cfg.h | 2 +- drivers/staging/lustre/lustre/include/lustre_dlm.h | 4 ++-- drivers/staging/lustre/lustre/llite/llite_nfs.c| 6 +++--- drivers/staging/lustre/lustre/llite/

[PATCH 20/25] staging/lustre/obdecho: Fix style vs open parenthesis alignment

2016-02-25 Thread green
From: Oleg Drokin This mostly fixes checkpatch complaints about "Alignment should match open parenthesis" Signed-off-by: Oleg Drokin --- .../staging/lustre/lustre/obdecho/echo_client.c| 22 +++--- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/drivers/stagi

[PATCH 23/25] staging/lustre: Rework MAX_DIO_SIZE macro

2016-02-25 Thread green
From: Oleg Drokin KMALLOC_MAX_SIZE is always defined in the kernel, so no point in checking for it, just use t directly. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/llite/rw26.c | 10 ++ 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/drivers/staging/lust

[PATCH 16/25] staging/lustre/obdclass: Fix style vs open parenthesis alignment

2016-02-25 Thread green
From: Oleg Drokin This mostly fixes checkpatch complaints about "Alignment should match open parenthesis" Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/obdclass/cl_io.c | 20 ++-- drivers/staging/lustre/lustre/obdclass/cl_lock.c | 21 ++-- drivers/staging/lustre/lustre/o

[PATCH 11/25] staging/lustre: MS_POSIXACL is always defined, don't check for it

2016-02-25 Thread green
From: Oleg Drokin Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/llite/llite_lib.c | 4 1 file changed, 4 deletions(-) diff --git a/drivers/staging/lustre/lustre/llite/llite_lib.c b/drivers/staging/lustre/lustre/llite/llite_lib.c index 47f9ad7..0cdaa48 100644 --- a/drivers/

[PATCH 12/25] staging/lustre: Remove RELEASEPAGE_ARG_TYPE compat macro

2016-02-25 Thread green
From: Oleg Drokin Not used in the kernel proper. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/llite/rw26.c | 7 +-- 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/drivers/staging/lustre/lustre/llite/rw26.c b/drivers/staging/lustre/lustre/llite/rw26.c index 64

[PATCH 10/25] staging/lustre: F_SETLKW64 F_SETLK64 F_GETLK64 are always defined

2016-02-25 Thread green
From: Oleg Drokin Remove the ifdefs for the around usage. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/llite/file.c | 6 -- 1 file changed, 6 deletions(-) diff --git a/drivers/staging/lustre/lustre/llite/file.c b/drivers/staging/lustre/lustre/llite/file.c index 477dc0e..2

[PATCH 06/25] staging/lustre: Convert ptlrpc_at_check_timed to void

2016-02-25 Thread green
From: Oleg Drokin The only caller was not looking at the return value, and liblustre, that cared about it is not part of the kernel client. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/ptlrpc/service.c | 10 -- 1 file changed, 4 insertions(+), 6 deletions(-) diff --git

[PATCH 09/25] staging/lustre/lmv: Remove commented out MDS selection policies

2016-02-25 Thread green
From: Oleg Drokin The new DNE code does not use them either so they are not longer needed. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/lmv/lmv_obd.c | 45 - 1 file changed, 45 deletions(-) diff --git a/drivers/staging/lustre/lustre/lmv/lmv_obd.c b

[PATCH 07/25] staging/lustre: Remove misleading liblustre comments.

2016-02-25 Thread green
From: Oleg Drokin These two comments certainly refer to some ifdefed code that is no longer present, so remove them too. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/lov/lov_pool.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/staging/lustre/lustre/lov/lov_pool.c

[PATCH 03/25] staging/lustre/fld: Fix style vs open parenthesis alignment

2016-02-25 Thread green
From: Oleg Drokin This mostly fixes checkpatch complaints about "Alignment should match open parenthesis" Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/fld/fld_cache.c | 14 +++--- drivers/staging/lustre/lustre/fld/fld_request.c | 17 +++-- drivers/staging/

[PATCH 02/25] staging/lustre/include: Fix style of function declarations

2016-02-25 Thread green
From: Oleg Drokin This mostly fixes checkpatch complaints about "Alignment should match open parenthesis" and "space prohibited between function name and open parenthesis" Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/cl_object.h | 410 ++--- .../staging

[PATCH 05/25] staging/lustre: Remove unused lustre_build_lock_params()

2016-02-25 Thread green
From: Oleg Drokin And also struct lustre_rw_params that is only referenced by it. Signed-off-by: Oleg Drokin --- .../staging/lustre/lustre/include/lustre_lite.h| 48 -- 1 file changed, 48 deletions(-) diff --git a/drivers/staging/lustre/lustre/include/lustre_lite.h b/

[PATCH 1/4] staging/lustre: Only set INTERRUPTIBLE state before calling schedule

2015-05-16 Thread green
From: Oleg Drokin In __l_wait_event the condition could be a complicated function that does allocations and other potentialy blocking activities, so it sohuld not be called in a task state other than RUNNABLE Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/include/lustre_lib.h | 1

[PATCH 2/4] staging/lustre/ptlrpc: Fix wrong indenting in plain_authorize()

2015-05-16 Thread green
From: Oleg Drokin smatch highlighted a wrongly indented bit of code that almost hides the extra assignment. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/ptlrpc/sec_plain.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/staging/lustre/lustre/ptlrpc/s

[PATCH 3/4] staging/lustre/ptlrpc: Fix potential NULL pointer dereference

2015-05-16 Thread green
From: Oleg Drokin In lov_unpackmd() there's this strange bit of code where we first try to look inside of lmm striping pattern for it's type, and then we check if the pattern is NULL which cannot be right. Move the check under if (lmm) branch so that it's safe. Found by Coverity version 6.6.1 S

[PATCH 4/4] staging/lustre/llite: Fix wrong identing in ll_setxattr_common

2015-05-16 Thread green
From: Oleg Drokin smatch has highlighted wrong indenting that results from commit 7fc1f831d83f ("staging/lustre/llite: extended attribute cache") Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/llite/xattr.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --

[PATCH 0/4] Few lustre fixes and cleanups.

2015-05-16 Thread green
From: Oleg Drokin This set fixes a couple of style issues, and a couple of bugs. Please consider Oleg Drokin (4): staging/lustre: Only set INTERRUPTIBLE state before calling schedule staging/lustre/ptlrpc: Fix wrong indenting in plain_authorize() staging/lustre/ptlrpc: Fix potential NULL

[PATCH 0/2] incorrect cpumask behavior with CPUMASK_OFFSTACK

2015-02-25 Thread green
From: Oleg Drokin I just got a report today from Tyson Whitehead that Lustre crashes when CPUMASK_OFFSTACK is enabled. A little investigation revealed that this code: cpumask_t mask; ... cpumask_copy(&mask, topology_thread_cpumask(0)); weight = cpus

[PATCH 2/2] cpumask: make whole cpumask operations like copy to work with NR_CPUS bits

2015-02-25 Thread green
From: Oleg Drokin When we are doing things like cpumask_copy, and CONFIG_CPUMASK_OFFSTACK is set, we only copy actual number of bits equal to number of CPUs we have. But underlying allocations got NR_CPUS = 8192, so if the cpumask is allocated on the stack or has other prefilled values there's a

[PATCH 1/2] cpumask: Properly calculate cpumask values

2015-02-25 Thread green
From: Oleg Drokin With CONFIG_CPUMASK_OFFSTACK enabled there seems to be some disparity between theoretical maximum of CPUs in the system (NR_CPUS that is huge) and the actual value that is calculated at runtime (nr_cpu_ids). Functions like cpus_weight should only check up to nr_cpu_ids bits in

[PATCH 4/4] staging/lustre: Don't call blocking funcitons when !RUNNABLE

2015-03-07 Thread green
From: Oleg Drokin Move setting of TASK_INTERRUPTIBLE just around schedule call in libcfs_sock_accept. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/libcfs/linux/linux-tcpip.c | 10 -- 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/staging/lustre/lu

[PATCH 0/4] Lustre fixes

2015-03-07 Thread green
From: Oleg Drokin The first two patches are a follow on for the previous patch series on not using deprecated cpumask-related code. And two blocking while atomic/not running fixes. Please consider. Lai Siyao (1): staging/lustre/llite: avoid nonatomic memory alloc under spinlock Oleg Drokin

[PATCH 2/4] staging/lustre/o2iblnd: Don't use cpus_weight

2015-03-07 Thread green
From: Oleg Drokin cpus_weight and for_each_cpu_mask are deprecated, so replace them with cpumask_weight and for_each_cpu respectively. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/driv

[PATCH 3/4] staging/lustre/llite: avoid nonatomic memory alloc under spinlock

2015-03-07 Thread green
From: Lai Siyao ll_intent_drop_lock() may sleep in memory allocation, which should not be called inside spinlock. Signed-off-by: Lai Siyao Signed-off-by: Jian Yu Reviewed-on: http://review.whamcloud.com/10674 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-2272 Signed-off-by: Oleg Drokin

[PATCH 1/4] staging/lustre/libcfs: replace deprecated cpus_ calls with cpumask_

2015-03-07 Thread green
From: Oleg Drokin This patch continues to further remove deprecated functions, such as any_online_cpu, for_each_cpu_mask and also cleaning up usage of NR_CPUS in a few places Signed-off-by: Oleg Drokin --- .../staging/lustre/lustre/libcfs/linux/linux-cpu.c | 32 -- 1 file c

[PATCH 00/10] Lustre fixes

2015-03-25 Thread green
From: Oleg Drokin A number of lustre fixes. Andriy Skulysh (1): staging/lustre/ptlrpc: fix import state during replay Bobi Jam (2): staging/lustre/osc: shorten IO calling path staging/lustre/mgc: detach MGC dev on error Christopher J. Morrone (1): staging/lustre/mdc: Handle empty but n

[PATCH 10/10] staging/lustre/xattr: xattr data may be gone with lock held

2015-03-25 Thread green
From: Lai Siyao Xattr cached data may be gone, but lock still held, in this case, refetch xattr from server, otherwise client will return error. Signed-off-by: Lai Siyao Reviewed-on: http://review.whamcloud.com/12952 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-3544 Reviewed-by: Bobi Jam

[PATCH 08/10] staging/lustre/llite: glimpse the inode before doing fiemap

2015-03-25 Thread green
From: Li Dongyang For a new inode, the i_size is 0 until a stat, which will yield an empty fiemap result. Fix the issue by glimpsing the size before doing fiemap. Signed-off-by: Li Dongyang Signed-off-by: Bob Glossman Reviewed-by: Andreas Dilger Reviewed-by: Jinshan Xiong Reviewed-on: http:/

[PATCH 09/10] staging/lustre: update timestamps after buiding rpc

2015-03-25 Thread green
From: Niu Yawei The mtime/atime/ctime in the write RPC has to be updated after the RPC is built (where xid is generated), otherwise, it could race with the setattr and updating wrong timestamps on OST side. Seems this regression was introduced when landing clio code. Signed-off-by: Niu Yawei R

[PATCH 02/10] staging/lustre/mdc: Handle empty but non-zero acl xattr

2015-03-25 Thread green
From: "Christopher J. Morrone" We have found that posix_acl_access can have a value of \002\000\000\000. In that case body->aclsize is non-zero, but the there are no actuall acls stored in the xattr. In mdc_unpack_acl(), it only checks IS_ERR() on the pointer returned by posix_acl_from_xattr(),

[PATCH 04/10] staging/lustre/mgc: check the import stat for lprocfs

2015-03-25 Thread green
From: Hongchao Zhang in lprocfs_mgc_rd_ir_state, the import state should be checked the validity before doing further work. Signed-off-by: Hongchao Zhang Reviewed-on: http://review.whamcloud.com/12896 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5650 Reviewed-by: Fan Yong Reviewed-by: N

[PATCH 03/10] staging/lustre/ptlrpc: false alarm in AT network latency measuring

2015-03-25 Thread green
From: Liang Zhen If early reply of client RPC is lost and client RPC is expired and resent, server will drop the resent RPC because it's already in processing, server may also send reply or early reply to client, which can still match reply buffer of the original request. In this case, client is

[PATCH 06/10] staging/lustre/lov: don't crash accessing LOV object with FID{0,0}

2015-03-25 Thread green
From: Yang Sheng Some object maybe has a corrupted LOV EA or a hole in LOV EA. We should not crash client in such case. Signed-off-by: Fan Yong Signed-off-by: Yang Sheng Reviewed-on: http://review.whamcloud.com/12740 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-4958 Reviewed-by: Jian Yu

[PATCH 07/10] staging/lustre/ptlrpc: fix import state during replay

2015-03-25 Thread green
From: Andriy Skulysh Client doesn't restore import state correctly on reconnect during replay. It resends lock replay when final ping was queued by server. Server fails with "target_queue_recovery_request()) ASSERTION( req->rq_export->exp_lock_replay_needed ) failed" Add imp_replay_state to stor

[PATCH 05/10] staging/lustre/mgc: detach MGC dev on error

2015-03-25 Thread green
From: Bobi Jam lustre_start_mgc() creates MGC device, if error happens later on ll_fill_super(), this device is still attached, and later mount fails by keep complaining that the MGC device's already in the client node. It turns out that the device was referenced by mgc config llog data which is

[PATCH 01/10] staging/lustre/osc: shorten IO calling path

2015-03-25 Thread green
From: Bobi Jam By using osc_io_unplug_aync() for osc_queue_sync_pages() to shorten the IO calling path, to reduce the chance of stack overflow. Signed-off-by: Bobi Jam Signed-off-by: Bob Glossman http://review.whamcloud.com/11612 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-3188 Reviewed

[PATCH v2 01/10] staging/lustre/osc: shorten IO calling path

2015-03-25 Thread green
From: Bobi Jam By using osc_io_unplug_aync() for osc_queue_sync_pages() to shorten the IO calling path, to reduce the chance of stack overflow. Signed-off-by: Bobi Jam Signed-off-by: Bob Glossman Reviewed-on: http://review.whamcloud.com/11612 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU

[PATCH v2 07/10] staging/lustre/ptlrpc: fix import state during replay

2015-03-25 Thread green
From: Andriy Skulysh Client doesn't restore import state correctly on reconnect during replay. It resends lock replay when final ping was queued by server. Server fails with "target_queue_recovery_request()) ASSERTION( req->rq_export->exp_lock_replay_needed ) failed" Add imp_replay_state to stor

[PATCH 00/20] Lustre fixes

2015-02-01 Thread green
From: Oleg Drokin These 20 patches represent various lustre fixes mostly taken from development lustre tree. It also unbreaks lustre flock functionality accdentally broken in the staging tree by a cleanup. Please consider. Alexander Boyko (1): staging/lustre/osc: split different type of IO D

[PATCH 07/20] staging/lustre/lnet: peer aliveness status and NI status

2015-02-01 Thread green
From: Liang Zhen A couple of changes to improve aliveness detection: - When LNet received a message, it can determine peer of this message is alive - When LNet received a message from remote network, it can determine router is alive and NI status on router is UP. Signed-off-by: Liang Zhen

[PATCH 15/20] staging/lustre/fld: refer to MDT0 for fld lookup in some cases

2015-02-01 Thread green
From: wang di It is possible that when fld client is trying to lookup seq on one of MDT, but the connection between the client and the MDT is not being initialized yet, especially during striped dir creation, because client will only send create req to the master MDT, then master MDT will distrib

[PATCH 12/20] staging/lustre/obd: change type of cl_conn_count to size_t

2015-02-01 Thread green
From: Dmitry Eremin Change type of cl_conn_count to size_t. Signed-off-by: Dmitry Eremin Reviewed-on: http://review.whamcloud.com/13125 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5577 Reviewed-by: James Simmons Reviewed-by: John L. Hammond Signed-off-by: Oleg Drokin --- drivers/sta

[PATCH 16/20] staging/lustre/libcfs: protect kkuc_groups from write access

2015-02-01 Thread green
From: Frank Zago Since reg->kr_fp can be changed inside the foreach loop, kkuc_groups must be write protected, and not just read protected. This should fix the following oops, which could happen if two different threads simultaneously execute the function, and EPIPE is returned. PID: 24385 TAS

[PATCH 18/20] staging/lustre/llite: don't add to page cache upon failure

2015-02-01 Thread green
From: Lai Siyao Reading directory pages may fail on MDS, in this case client should not cache a non-up-to-date directory page, because it will cause a later read on the same page fail. Signed-off-by: Lai Siyao Signed-off-by: Oleg Drokin Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5461

[PATCH 20/20] staging/lustre/mdc: Initialize req in mdc_enqueue for !it case

2015-02-01 Thread green
From: Oleg Drokin Commit ab909585b813 ("staging: lustre: Cleanup variable declarations in mdc_enqueue()") broke Lustre flock handling introducing access to uninitialized req variable, leading to bizzare crash in a later call to __req_capsule_offset with invalid pill value. Set req to NULL just f

[PATCH 19/20] staging/lustre/clio: Do not allow group locks with gid 0

2015-02-01 Thread green
From: Patrick Farrell When a group lock with GID=0 is released (put_grouplock is called), an assertion in cl_put_grouplock is hit. We should not allow group lock requests with GID=0, instead we should return -EINVAL. Signed-off-by: Patrick Farrell Reviewed-on: http://review.whamcloud.com/12459

[PATCH 14/20] staging/lustre/llite: Solve a race to access lli_has_smd in read case

2015-02-01 Thread green
From: Jinshan Xiong In vvp_io_read_lock(), it used to decide if to add read lock by checking lli_has_smd. Accessing lli_has_smd is racy when an empty file is turned into raid0, therefore, it may result in read requests are issued without corresponding lock. Signed-off-by: Jinshan Xiong Reviewed

[PATCH 10/20] staging/lustre/obdclass: Proper swabbing of llog_rec_tail.

2015-02-01 Thread green
From: Henri Doreau A variable-length structure preceeds llog_rec_tail within an llog block. Thus cr_tail shouldn't be accessed directly as a structure member but its actual location should be computed dynamically. Signed-off-by: Henri Doreau Reviewed-on: http://review.whamcloud.com/11937 Intel-

[PATCH 11/20] staging/lustre/lnet: portal spreading rotor should be unsigned

2015-02-01 Thread green
From: Liang Zhen Portal spreading rotor should be unsigned, otherwise lnet may get negative CPT number and access invalid addresses. Signed-off-by: Liang Zhen Reviewed-on: http://review.whamcloud.com/11936 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5639 Reviewed-by: Amir Shehata Revie

[PATCH 17/20] staging/lustre/llite: Add exception entry check after radix_tree

2015-02-01 Thread green
From: Yang Sheng We need to check for an exception entry after radix_tree lookup. Signed-off-by: Yang Sheng Signed-off-by: Oleg Drokin Reviewed-on: http://review.whamcloud.com/10709 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5162 Reviewed-by: Bob Glossman Reviewed-by: James Simmons

[PATCH 06/20] staging/lustre: fix comparison between signed and unsigned

2015-02-01 Thread green
From: Dmitry Eremin Expression if (size != (ssize_t)size) is always false. Therefore no bounds check errors detected. Signed-off-by: Dmitry Eremin Reviewed-on: http://review.whamcloud.com/11376 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5417 Reviewed-by: John L. Hammond Reviewed-by: F

[PATCH 09/20] staging/lustre/llite: remove llite proc root on init failure

2015-02-01 Thread green
From: "John L. Hammond" In init_lustre_lite() ensure that /proc/fs/lustre/llite is removed in case of failure. Generally rework the cleanup code in this function. Signed-off-by: John L. Hammond Reviewed-on: http://review.whamcloud.com/6420 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-333

[PATCH 13/20] staging/lustre/ptlrpc: hold rq_lock when modify rq_flags

2015-02-01 Thread green
From: Niu Yawei In after_reply(), take the rq_lock for changing the rq_resend. Signed-off-by: Niu Yawei Reviewed-on: http://review.whamcloud.com/11957 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5633 Reviewed-by: Fan Yong Reviewed-by: Johann Lombardi Signed-off-by: Oleg Drokin --- d

[PATCH 04/20] staging/lustre/libcfs: fix illegal page access of tracefiled()

2015-02-01 Thread green
From: Li Xi After failure happens and put_pages_back() returns the pages, tracefiled() should not go on itering on the page list. Otherwise, some pages might be accessed illegally. Signed-off-by: Li Xi Signed-off-by: Jian Yu Reviewed-on: http://review.whamcloud.com/11454 Intel-bug-id: https://

[PATCH 08/20] staging/lustre/llite: to configure max_cached_mb correctly

2015-02-01 Thread green
From: Jinshan Xiong If there exists MGS conf_param to reduce the memory cache max_cached_mb it will fail because dt_exp is not initialized yet. It should just go ahead and configure it because certainly it have enough free LRU slot to deduct ccc_lru_left. Signed-off-by: Jinshan Xiong Reviewed-

[PATCH 02/20] staging/lustre/osc: split different type of IO

2015-02-01 Thread green
From: Alexander Boyko Do not allow different type of pages at the same rpc. Signed-off-by: Alexander Boyko Signed-off-by: Vitaly Fertman Xyratex-bug-id: MRP-859 Reviewed-on: http://review.whamcloud.com/10930 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-3192 Reviewed-by: Jinshan Xiong R

[PATCH 05/20] staging/lustre/obdclass: fix a race in recovery

2015-02-01 Thread green
From: Hongchao Zhang in "class_export_recovery_cleanup", the check of the flag "exp->exp_req_replay_needed" should be protected by "exp_lock". Signed-off-by: Hongchao Zhang Reviewed-on: http://review.whamcloud.com/10849 Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5128 Reviewed-by: Fan Y

[PATCH 03/20] staging/lustre/ldlm: high load because of negative timeout

2015-02-01 Thread green
From: Li Xi When the time of LRU resizing exceeds waiting period of recalculation, the ldlm daemon will keep on resizing without any interval of rest. That will cause high CPU load. This patch fixes the problem by setting the recalculation timestamp after LRU resizing finishes rather than before

[PATCH 01/20] staging/lustre/ptlrpc: avoid list scan in ptlrpcd_check

2015-02-01 Thread green
From: Liang Zhen ptlrpcd_check() always scan all requests on ptlrpc_request_set and try to finish completed requests, this is low efficiency. Even worse, l_wait_event() always checks condition for twice before sleeping and one more time after waking up, which means it will call ptlrpcd_check() fo

[PATCH] gfs2: use __vmalloc GFP_NOFS for fs-related allocations.

2015-02-01 Thread green
From: Oleg Drokin leaf_dealloc uses vzalloc as a fallback to kzalloc(GFP_NOFS), so it clearly does not want any shrinker activity within the fs itself. convert vzalloc into __vmalloc(GFP_NOFS|__GFP_ZERO) to better achieve this goal. Signed-off-by: Oleg Drokin --- fs/gfs2/dir.c | 3 ++- 1 file

[PATCH] CODA: Do not opencode kvfree

2015-02-01 Thread green
From: Oleg Drokin Signed-off-by: Oleg Drokin --- fs/coda/coda_linux.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/coda/coda_linux.h b/fs/coda/coda_linux.h index d6f7a76..537754b 100644 --- a/fs/coda/coda_linux.h +++ b/fs/coda/coda_linux.h @@ -73,7 +73,7 @@ void coda_s

[PATCH] staging/lustre/llite: Fix obd name after c&p error

2015-03-02 Thread green
From: Oleg Drokin commit 95745e9b1de2 ("staging: lustre: Use kasprintf.") introduced a copy and paste error causing two different obd types to be assigned same content causing lustre to fail on mount with a warning from procfs followed by a bizzare error about OST not having enough MDS capabiliti

[PATCH] staging/lustre: remove unused lustre_update.h header

2015-01-30 Thread green
From: Oleg Drokin lustre_update.h containts various server-side structures that are not really relevant for the client. Also remove the only user of this file that does not actually need it. Signed-off-by: Oleg Drokin --- .../staging/lustre/lustre/include/lustre_update.h | 189 ---

[PATCH] staging/lustre/llite: get rid of backing_dev_info

2015-01-21 Thread green
From: Oleg Drokin With removal of backing_dev_info from struct address_space, we don't need to assign it in Lustre either. Signed-off-by: Oleg Drokin --- drivers/staging/lustre/lustre/llite/llite_lib.c | 4 1 file changed, 4 deletions(-) diff --git a/drivers/staging/lustre/lustre/llite/l

[PATCH 2/2] staging/lustre/libcfs: replace deprecated cpus_ calls with cpumask_

2015-03-01 Thread green
From: Oleg Drokin Rusty Russel advises that cpus_* functions are deprecated to work on cpumasks and cpumask_* functions should be called instead, otherwise problems with CPUMASK_OFFSTACK arise. Signed-off-by: Oleg Drokin --- .../staging/lustre/lustre/libcfs/linux/linux-cpu.c | 78 +++--

[PATCH 0/2] Lustre: get rid of deprecated cpumask calls

2015-03-01 Thread green
From: Oleg Drokin A recent crash report with CONFIG_CPUMASK_OFFSTACK enabled set off a chain of emails through which I learned that cpus_* functions are deprecated and should not be really used to operate on cpumasks. These two patches do just that, replacing cpus_* and cpu_* calls with cpumask_

[PATCH 1/2] staging/lustre/ptlrpc: Do not use deprecated cpus_* functions

2015-03-01 Thread green
From: Oleg Drokin As per Rusty Russel, cpus_* functions are deprecated. When mixing cpumask_copy with cpus_weight, they operate on different sized masks if CPUMASK_OFFSTACK is enabled, causing an immediate assertion failure. Copying of cpumasks by assignment is also not allowed now. Additionally

[PATCH] mm: Do not discard partial pages with POSIX_FADV_DONTNEED

2016-04-15 Thread green
From: Oleg Drokin I noticed that the logic in fadvise64_64 syscall is incorrect for partial pages. While first page of the region is correctly skipped if it is partial, the last page of the region is mistakenly discarded. This leads to problems for applications that read data in non-page-aligned

[PATCH 00/43] Lustre IO stack simplifications and cleanups

2016-03-30 Thread green
From: Oleg Drokin This large body of patches mostly deals with Lustre IO stack simplifications and related cleanups. In particular the whole cl_page and cl_lock stuff is reduced to basically nothing. The simplifications remove about 5K lines of code and the other 5k are mostly due to shuffling co

<    1   2   3   4   5   6   7   8   9   10   >