Whamcloud - gitweb
fs/lustre-release.git
3 years agoLU-8297 obd: release MGC device if connect fails 51/20851/3
John L. Hammond [Fri, 17 Jun 2016 14:16:08 +0000 (09:16 -0500)]
LU-8297 obd: release MGC device if connect fails

In lustre_fill_super() if lustre_start_mgc() fails then call
lustre_common_put_super() to release a reference on the MGC device
attached to the LSI.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I89697badac971e78e1cd3596e7ffc42afdcbfeee
Reviewed-on: http://review.whamcloud.com/20851
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8058 lustre: Remove old commented out code 16/20416/14
Ben Evans [Tue, 12 Jul 2016 13:54:59 +0000 (09:54 -0400)]
LU-8058 lustre: Remove old commented out code

These #if 0 blocks have been in place for years. Assume
they are not used and remove them

Cleanup functions that are no longer used:
sec_gss.c: gss_netobj_swabber
sec_gss.c: gss_swab_netobj
osd_iam_lvar.c: e_check
osd_iam.c: iam_leaf_check
osc_page.c: osc_page_is_dlocked
osc_page.c: osc_page_protected
mgs_llog.c: mgs_check_failnid

Test-Parameters: trivial

Signed-off-by: Ben Evans <bevans@cray.com>
Change-Id: Ib3d337f59a14c5cd7340be7e1aef4f2ca9663ac4
Reviewed-on: http://review.whamcloud.com/20416
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Frank Zago <fzago@cray.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8056 llite: POSIX_ACL_XATTR_{ACCESS,DEFAULT} removed in 4.5 25/20225/5
Li Dongyang [Tue, 12 Jul 2016 00:40:27 +0000 (20:40 -0400)]
LU-8056 llite: POSIX_ACL_XATTR_{ACCESS,DEFAULT} removed in 4.5

POSIX_ACL_XATTR_{ACCESS,DEFAULT} are duplicate
xattr name definitions and they are replaced by
XATTR_NAME_POSIX_ACL_{ACCESS,DEFAULT} since Linux kernel 4.5

Linux-commit:97d79299223baab330b194437e676d301f12d5f6

Signed-off-by: Li Dongyang <dongyang.li@anu.edu.au>
Change-Id: I9e031d3ac77a4bf1832d932c1cab7032e4572445
Reviewed-on: http://review.whamcloud.com/20225
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7839 nodemap: add a flag to deny access to unmapped users 58/18758/10
Kit Westneat [Thu, 3 Mar 2016 03:36:49 +0000 (22:36 -0500)]
LU-7839 nodemap: add a flag to deny access to unmapped users

Sometimes it makes more sense to deny access to users who aren't
mapped, instead of just squashing them to nobody. This patch adds a
per-nodemap flag which, if enabled, makes it so EACCES is returned to
all users mapped to the squashed UID. One use case is preventing an
unmapped user from being able to fill a /tmp-style directory, and in
conjunction with SSK it can restrict users of authorized clients to
their subset of the filesystem namespace, essentially providing
isolated containers.

Signed-off-by: Kit Westneat <kit.westneat@gmail.com>
Change-Id: Ia511c887dd94bdec281cbb85e46d49496f85721c
Reviewed-on: http://review.whamcloud.com/18758
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-5814 lov: remove unused code 78/14878/7
John L. Hammond [Thu, 7 Jul 2016 21:16:23 +0000 (17:16 -0400)]
LU-5814 lov: remove unused code

Remove:
  the tested but never set flag OBD_STATFS_PTLRPCD,
  the empty file lustre/lov/lovsub_io.c,
  the unused ld_emerg member of struct lov_device,
  the unused struct lov_device_emerg and supporting functions,
  the unused struct lov_lock_link and supporting functions, and
  the unused, get only, or set only members of struct
    lovsub_device, lovsub_lock, lov_sublock_env, lov_thread_info,
    lov_io_sub, lov_io, lov_request, and lov_request_set.

Reduce the scope of several functions from lov_request.c.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I3f4e7c94b401b5f90f7577c6c65311bd586a06ba
Reviewed-on: http://review.whamcloud.com/14878
Reviewed-by: Frank Zago <fzago@cray.com>
Reviewed-by: Ben Evans <bevans@cray.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7645 build: Remove unused --with-release configure option 58/19958/5
Christopher J. Morrone [Wed, 4 May 2016 00:44:33 +0000 (17:44 -0700)]
LU-7645 build: Remove unused --with-release configure option

At this point, configure's --with-release option no longer
has any effect.  We remove it completely.

Test-Parameters: trivial
Change-Id: I7373c9bf401464f4284ad79aa6fef746dc711bc9
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/19958
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8386 zfs: Use ZFS_MAXPROPLEN instead of ZFS_MAXNAMELEN 51/21251/2
Christopher J. Morrone [Mon, 11 Jul 2016 23:10:29 +0000 (16:10 -0700)]
LU-8386 zfs: Use ZFS_MAXPROPLEN instead of ZFS_MAXNAMELEN

ZFS_MAXNAMELEN was removed on zfs's master branch.  We
substitue ZFS_MAXPROPLEN in its place.  We only used this
macro in the get and set zfs property functions, so this
should be a reasonable exchange.

ZFS_MAXPROPLEN has also been around for a long time, so there
is no need to extra logic to make lustre lustre backwards
compatible with older ZFS releases.

Change-Id: I7292194f1a4e0311477954f7f83a3c353e785ac8
Test-Parameters: trivial
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/21251
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
3 years agoLU-7643 build: Remove Linux version string from RPM release field 54/19954/7
Christopher J. Morrone [Tue, 12 Jul 2016 14:13:53 +0000 (10:13 -0400)]
LU-7643 build: Remove Linux version string from RPM release field

With the landing of the patch:

  "LU-5614 build: use %kernel_module_package in rpm spec"

we neither need, nor desire, to tie a lustre build to a specific
Linux kernel version.  Instead we want to allow the weak updates
system to symlink the lustre modules into any and all kernel
directories that are ABI compatible.

Therefore, we remove the Linux version string from Lustre's
RPM release field.

Note that "%define krequires" is moved to a SLES-only section
when the 0%{?build_src_rpm} conditional is removed.  This may
seem like an odd place to put it at first glance.  But the
next line is the only remaining consumer of krequires, so
we are just moving it to the last place that it might be needed.
This could perhaps be simplified further in a future commit.

When removing the no longer needed %{fullrelease} from the Release
field, we replace it with a 1 and with the %{?dist} string.
%{?dist} is customary for Fedora, RHEL, and likely most rpm-based
distros.

Because the release field is no longer modified between the source
rpm and binary rpm build steps, there is not longer a need for
The build_src_rpm macro.  That is removed as well.

Test-Parameters: trivial
Change-Id: I8306f48d5bf0dffcae2888505ec7f0f63e47fc08
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/19954
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7648 man: new man pages for LFSCK commands 94/19294/5
Fan Yong [Thu, 26 May 2016 05:11:41 +0000 (13:11 +0800)]
LU-7648 man: new man pages for LFSCK commands

split lctl LFSCK sub-commands to new man pages. More explaination
about the "-A | --all" option.

Compatible support:
1) "--create_ostobj" and "--create-ostobj" option pairs
2) "--create_mdtobj" and "--create-mdtobj" option pairs
3) "--window_size" and "--window-size" option pairs

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I560aec923aa72ff11a04916c5fec3ea31c9f4f50
Reviewed-on: http://review.whamcloud.com/19294
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
3 years agoLU-7836 ptlrpc: remove duplicate final ping req 93/19693/2
Di Wang [Tue, 19 Apr 2016 13:53:51 +0000 (09:53 -0400)]
LU-7836 ptlrpc: remove duplicate final ping req

Remove duplidate final ping req if the failover
server get new final ping from the same client,
otherwise the final ping will be piled up on
the recovery server, especially if recovery is
stuck during DNE failover.

Signed-off-by: Di Wang <di.wang@intel.com>
Change-Id: I41ecc88cede1024d386283e693698789ac0b7aa4
Reviewed-on: http://review.whamcloud.com/19693
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8337 kernel: kernel update [SLES12 SP1 3.12.59-60.41] 51/21051/3
Bob Glossman [Tue, 28 Jun 2016 14:48:37 +0000 (07:48 -0700)]
LU-8337 kernel: kernel update [SLES12 SP1 3.12.59-60.41]

Update target and kernel_config files for new version

Test-Parameters: clientdistro=sles12 testgroup=review-ldiskfs \
  mdsdistro=sles12 ossdistro=sles12 mdsfilesystemtype=ldiskfs \
  mdtfilesystemtype=ldiskfs ostfilesystemtype=ldiskfs

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I35038f0715abaa7ae69011e102c19d43b5e416bc
Reviewed-on: http://review.whamcloud.com/21051
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8065 utils: clarify lctl help messages 64/19764/6
Henri Doreau [Mon, 25 Apr 2016 14:45:05 +0000 (16:45 +0200)]
LU-8065 utils: clarify lctl help messages

Clarify the syntax help messages of lctl changelog_{de}register
and make them consistent with the other ones.

Test-Parameters: trivial

Change-Id: Iffb36906d764b5832722e635ab6b9feadf38c64c
Signed-off-by: Henri Doreau <henri.doreau@cea.fr>
Reviewed-on: http://review.whamcloud.com/19764
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-5560 tests: add sanity-selinux.sh 18/15818/14
Sebastien Buisson [Fri, 31 Jul 2015 14:02:06 +0000 (16:02 +0200)]
LU-5560 tests: add sanity-selinux.sh

New test sanity-selinux.sh aims at exercing SELinux support
on the client side, as implemented according to LU-5560.
This patch also adds new fail_locs in CLIO.

Test-Parameters: trivial testlist=sanity-selinux
Signed-off-by: Sebastien Buisson <sebastien.buisson@bull.net>
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I222a82329142705345837e1235dd01e1d85e7a28
Signed-off-by: Saurabh Tandan <saurabh.tandan@intel.com>
Reviewed-on: http://review.whamcloud.com/15818
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@seagate.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8369 nodemap: ignore loopback NID when classifying 60/21160/2
Kit Westneat [Tue, 5 Jul 2016 22:44:50 +0000 (18:44 -0400)]
LU-8369 nodemap: ignore loopback NID when classifying

The loopback NID doesn't make sense in the nid range system
currently used by nodemap. In order to add the MGS to a nodemap,
this patch modifies nodemap_classify_nid to use the first non-lo nid
if it is given the loopback nid.

Signed-off-by: Kit Westneat <kit.westneat@gmail.com>
Change-Id: Iea91a54a14021e478782eedb28ae1a6c3e62d38c
Reviewed-on: http://review.whamcloud.com/21160
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8372 llite: Fix suspicious dereference of pointer 'vma->vm_file' 71/21171/3
Dmitry Eremin [Wed, 6 Jul 2016 11:31:08 +0000 (14:31 +0300)]
LU-8372 llite: Fix suspicious dereference of pointer 'vma->vm_file'

Remove useless LASSERT(vma->vm_file) because of if it's NULL it
will crash early in file_inode(vma->vm_file).

Test-Parameters: trivial

Change-Id: I309127fae03a77020883a0e190c4fa6ea341dfee
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-on: http://review.whamcloud.com/21171
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8368 gnilnd: Use kgnilnd_vzalloc() to avoid stalls 54/21154/3
Chuck Fossen [Tue, 5 Apr 2016 16:38:37 +0000 (16:38 +0000)]
LU-8368 gnilnd: Use kgnilnd_vzalloc() to avoid stalls

Use kgnilnd_vzalloc() for copy buffer allocation in kgnilnd_rdma so
we don't stall allocating in low memory situations.
Clean up freeing of memory that uses kgnilnd_vzalloc to make sure we
call vfree.

Booted on test node and verify we don't break anything. Ran IOR tests.

Test-Parameters: trivial
Signed-off-by: Chris Horn <hornc@cray.com>
Change-Id: Icb1dfe5f91f20195cd3a1093c57dc1157e127e9b
Reviewed-on: http://review.whamcloud.com/21154
Reviewed-by: James Shimek <jshimek@cray.com>
Reviewed-by: Chuck Fossen <chuckf@cray.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8360 llite: check return value for obd_set_info_async 25/21125/3
Yang Sheng [Fri, 1 Jul 2016 16:00:46 +0000 (00:00 +0800)]
LU-8360 llite: check return value for obd_set_info_async

The return value is ignored in client_common_fill_super.
Restore to check it and error out.

Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Change-Id: If8da955acc61212cf04b9600348875aed8f5cfb4
Reviewed-on: http://review.whamcloud.com/21125
Tested-by: Jenkins
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8328 tests: cleanup system after conf-sanity test_86 87/20987/2
Fan Yong [Wed, 18 May 2016 07:52:31 +0000 (15:52 +0800)]
LU-8328 tests: cleanup system after conf-sanity test_86

The conf-sanity test_86 reformats the OST1 device, it only
checks whether the reformat works or not, but it does not
reformat the MGS (or write conf) as to after reformatting
the OST1, it cannot mount to the MGS, so if the subsequent
tests do not reformat the system, then will get failure.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I808d7d6c3fa2e57e8b644bd4af7350be006605c3
Reviewed-on: http://review.whamcloud.com/20987
Tested-by: Jenkins
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8321 kernel: kernel update RHEL7.2 [3.10.0-327.22.2.el7] 63/20963/3
Bob Glossman [Thu, 23 Jun 2016 18:36:54 +0000 (11:36 -0700)]
LU-8321 kernel: kernel update RHEL7.2 [3.10.0-327.22.2.el7]

Update RHEL7.2 kernel to 3.10.0-327.22.2.el7

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I3d2f7b05dde6473fb614cdafc796ecb083298c74
Reviewed-on: http://review.whamcloud.com/20963
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7429 tests: inject lfsck failure properly 16/20916/3
Fan Yong [Sun, 15 May 2016 15:20:41 +0000 (23:20 +0800)]
LU-7429 tests: inject lfsck failure properly

In sanity-lfsck test_23, we need to inject some failure stub to
simulate the case of dangling name entry. But the original mean
may misguide the LFSCK to regard it as bad name entry.

On the other hand, the test scripts injects some test delay that
may cause the LFSCK to run slowly, so need more time to wait the
LFSCK status changes.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I36c6c1bd8d07d2af6680e18b6c722e3bfa3a0062
Reviewed-on: http://review.whamcloud.com/20916
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
3 years agoLU-7914 obdclass: Removed unused reference of cl_page_list_own() 86/20886/4
Parinay Kondekar [Wed, 6 Jul 2016 01:03:03 +0000 (21:03 -0400)]
LU-7914 obdclass: Removed unused reference of cl_page_list_own()

cl_page_list_own() is unused and thus could be removed altogether.

Change-Id: I57c88a484f5d624e413d1b555473819f8785dd05
Signed-off-by: Parinay Kondekar <parinay.kondekar@seagate.com>
Reviewed-on: http://review.whamcloud.com/20886
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Frank Zago <fzago@cray.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8298 sec: remove obsolete sec_level parameter 79/20879/4
John L. Hammond [Mon, 16 May 2016 05:00:25 +0000 (13:00 +0800)]
LU-8298 sec: remove obsolete sec_level parameter

Remove the obsolete sec_level parameter and supporting code.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I073e8093f4a7f0c5faf19112a5f84076016361de
Reviewed-on: http://review.whamcloud.com/20879
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8251 tests: Delete only test files for sanityn 18/20718/3
Saurabh Tandan [Thu, 9 Jun 2016 23:20:19 +0000 (16:20 -0700)]
LU-8251 tests: Delete only test files for sanityn

For sanityn tests_40* to tests_47* replacing
rm -r $DIR1/* with rm -rf $DIR/$tfile* so that
only the tests files are deleted and not all the
data contained in $DIR1

Test-Parameters: trivial testlist=sanityn,sanityn,sanityn,sanityn
Signed-off-by: Saurabh Tandan <saurabh.tandan@intel.com>
Change-Id: I353f9d40c5ee4ee99e7cce90fb61ce9f6d5b8567
Reviewed-on: http://review.whamcloud.com/20718
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
3 years agoLU-8117 build: fix lustre-ppc64 build on el7 04/20404/6
Dmitry Eremin [Tue, 24 May 2016 13:54:30 +0000 (16:54 +0300)]
LU-8117 build: fix lustre-ppc64 build on el7

Explicitly clear the LDFLAGS for kernel modules build so that
the vendor's overzealous linker flags don't create build failures.

Test-Parameters: trivial

Change-Id: I427cffb229a19a8ff0c2ba0c3ed2ac135f21e24d
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-on: http://review.whamcloud.com/20404
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7099 lnet: lock improvement for ko2iblnd 22/20322/5
Liang Zhen [Fri, 14 Nov 2014 15:48:07 +0000 (23:48 +0800)]
LU-7099 lnet: lock improvement for ko2iblnd

kiblnd_check_sends() takes conn::ibc_lock at the begin and release
this lock at the end, this is inefficient because most use-case
needs to explicitly release ibc_lock before caling this function.

This patches changes it to kiblnd_check_sends_locked() and avoid
unnecessary lock dances.

Test-Parameters: trivial

Signed-off-by: Doug Oucharek <doug.s.oucharek@intel.com>
Change-Id: I3b348029dace70fd27beafa495f7a9e0bde442ed
Reviewed-on: http://review.whamcloud.com/20322
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Amir Shehata <amir.shehata@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8056 llite: inode_operations interface changed in 4.5 24/20224/4
Li Dongyang [Mon, 16 May 2016 11:57:31 +0000 (21:57 +1000)]
LU-8056 llite: inode_operations interface changed in 4.5

Linux kernel 4.5 replaced follow_link() with get_link()
while put_link() is removed.
This patch handles the API change.

Linux-commit:6b2553918d8b4e6de9853fd6315bec7271a2e592
Linux-commit:fceef393a538134f03b778c5d2519e670269342f

Signed-off-by: Li Dongyang <dongyang.li@anu.edu.au>
Change-Id: Ia9b8c9b855ed5ab7a428a370074b8801e34d3f99
Reviewed-on: http://review.whamcloud.com/20224
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8056 llite: use inode_lock to access i_mutex 23/20223/5
Li Dongyang [Wed, 6 Jul 2016 00:39:15 +0000 (20:39 -0400)]
LU-8056 llite: use inode_lock to access i_mutex

Linux kernel 4.5 introduced wrappers for i_mutex as the type
of i_mutex will be changed in the future.
This patch prepares us for the upcoming type change. It also
includes a patch from linux kernel removing unused declaration
to make the room for the wrappers mentioned above.

Note that this patch only touches the llite part. osd-ldiskfs still
calls mutex_{lock,unlock} on i_mutex.

Linux-commit:57b8f112cfe6622ddddb8c2641206bb5fa8a112d
Linux-commit:5955102c9984fa081b2d570cfac75c97eecf8f3b

Signed-off-by: Li Dongyang <dongyang.li@anu.edu.au>
Change-Id: Ia4c30443cddfaa5232e1dc1519c33c97dba2a271
Reviewed-on: http://review.whamcloud.com/20223
Tested-by: Jenkins
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8056 socklnd: NETIF_F_ALL_CSUM renamed to NETIF_F_CSUM_MASK 22/20222/7
Li Dongyang [Wed, 6 Jul 2016 00:03:44 +0000 (20:03 -0400)]
LU-8056 socklnd: NETIF_F_ALL_CSUM renamed to NETIF_F_CSUM_MASK

In kernel 4.5 NETIF_F_CSUM_MASK got renamed to NETIF_F_CSUM_MASK.
This patch handles the name change.

Linux-commit:a188222b6ed29404ac2d4232d35d1fe0e77af370

Signed-off-by: Li Dongyang <dongyang.li@anu.edu.au>
Change-Id: Id57505eeca613303c584d3cf74284920a837bb43
Reviewed-on: http://review.whamcloud.com/20222
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-6401 headers: Move object_update functions to new header 20/20120/8
Ben Evans [Wed, 6 Jul 2016 15:59:55 +0000 (11:59 -0400)]
LU-6401 headers: Move object_update functions to new header

The header lustre_idl.h is meant to be a uapi header but it
currently contains code that is only used by the lustre
kernel internals. This patch moves the code related to
object update handling out of lustre_idl.h into a separate
header that is only needed for the kernel server side code.

Signed-off-by: Ben Evans <bevans@cray.com>
Change-Id: Ie025f8424dad8cfc625258ad189c7b7576b3a9b2
Reviewed-on: http://review.whamcloud.com/20120
Reviewed-by: Frank Zago <fzago@cray.com>
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8113 build: Remove obsolete, unused meta packages 45/20045/5
Christopher J. Morrone [Fri, 6 May 2016 19:52:05 +0000 (12:52 -0700)]
LU-8113 build: Remove obsolete, unused meta packages

The meta packages, deps-rhel and deps-sles, were introduced
nine years ago and never used.  This removes those dead lines
in the configuration files.

We would not want to use this method in the future any way.
Better approaches would either be to use multiple spec files
or to use distro-specific macros and conditionals for expressing
dependencies.

Test-Parameters: trivial
Change-Id: I9ad7195e0504f638bca84984af499d959c37adb3
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/20045
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-6696 llog: improve error handling 56/19856/4
Bobi Jam [Thu, 28 Apr 2016 16:53:09 +0000 (00:53 +0800)]
LU-6696 llog: improve error handling

Handle error return value of llog_cat_process() in
osp_sync_thread().

Signed-off-by: Bobi Jam <bobijam.xu@intel.com>
Change-Id: I9b8e00dcc90e8d7d55648ce1b3a18af0a74c542b
Reviewed-on: http://review.whamcloud.com/19856
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
3 years agoLU-8021 tests: In interop, ensure to save/restore correct debug flags 04/19604/8
Parinay Kondekar [Mon, 20 Jun 2016 07:54:47 +0000 (13:24 +0530)]
LU-8021 tests: In interop, ensure to save/restore correct debug flags

debugsave() and debugrestore() in test-framework.sh save the
same debug flags of the client on servers as well.

In case of interop, esp between lustre 2.1.x server and
2.5.x clients, with PTLDEBUG=-1 the debugrestore() would fail as
there are some flags which are newly added to 2.5.x,
    e.g. "lfsck, hsm" are not defined on 2.1.x servers.

- The fix, makes sure to save the debug flags for servers and clients
separately and thus restore correctly.

- It restores the debug flags irrespective of, if the server node
is active or passive, failover node.

- It takes care,
if any of the node(server OR client) is down or unreachable,
if there are separate MDS MGS servers,
if any of the node is rebooted (FAILURE_MODE=hard)
but lustre modules are not loaded.

Also, there is defect introduced by LU-4480 in reset_fail_loc,
this patch fixes that as well.

Seagate-bug-id: MRP-1959
Change-Id: I6c6142cc113f8131bb89e6dc313215440f2242b9
Signed-off-by: Parinay Kondekar <parinay.kondekar@seagate.com>
Reviewed-by: Elena Gryaznova <elena.gryaznova@seagate.com>
Reviewed-by: Ujjwal Lanjewar <ujjwal.lanjewar@seagate.com>
Reviewed-on: http://review.whamcloud.com/19604
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
3 years agoLU-7961 build: Fix ldiskfs source autodetect for CentOS 6 48/19248/3
Brian Behlendorf [Fri, 27 Mar 2015 17:50:09 +0000 (10:50 -0700)]
LU-7961 build: Fix ldiskfs source autodetect for CentOS 6

CentOS 6 installed the kernel source in to the following path
which differs slightly from the RHEL version.  Expand the search
pattern to encompass both the CentOS and RHEL paths.

/usr/src/debug/*/linux-2.6.32-x.y.z.el6.centos.plus.x86_64

Change-Id: I0a102148f34d57b94dddfac7819303314c61a376
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-on: http://review.whamcloud.com/19248
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7899 osd: batch EA updates 43/19143/5
Alex Zhuravlev [Fri, 25 Mar 2016 09:21:16 +0000 (12:21 +0300)]
LU-7899 osd: batch EA updates

during file creation we set number of EAs: LMA, VBR, LinkEA, LOVEA, ACLs.
calling into SA to refill spill again and again is expensive. thus it
makes sense to postpone this to osd_trans_stop() where all changed EAs
has been already collected in a temporary buffer.

Change-Id: I8f02a287b96615c3aa550d63ffd9dd3da51b39ee
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: http://review.whamcloud.com/19143
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7900 obdclass: lu_object_assign_fid() do not lookup 81/19081/8
Alex Zhuravlev [Sat, 19 Mar 2016 19:17:26 +0000 (22:17 +0300)]
LU-7900 obdclass: lu_object_assign_fid() do not lookup

as the object is supposed to be new and unique by definition.
this method is used only with OST objects being created on MDT.

Change-Id: I9e641ab208654ea64eb42394a3618c9f30e7d751
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: http://review.whamcloud.com/19081
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7660 dne: support fs default stripe 41/19041/23
Lai Siyao [Mon, 21 Mar 2016 14:05:10 +0000 (22:05 +0800)]
LU-7660 dne: support fs default stripe

On DNE system slave MDTs should honor fs default stripe, to achieve
this, slave MDT should lock fs root, and cache XATTR_NAME_LOV, below
functionalities are added for this:
* take and cache remote root XATTR lock on slave MDTs.
* add dt_invalidate operation to invalidate OSP attributes cache,
  normally it's called in mdt_object_unlock(), but if we cache this
  lock, it's called upon cross-MDT lock cancel.
* enable OSP attribute cache by default.
* migrate should invalidate remote target explictely if it's newly
  created, because it doesn't take its lock beforehand.
* OSP should cleanup ldlm namespace in device cleanup because there
  may be cached locks.
* add sanity.sh 405 test for this.

Signed-off-by: Lai Siyao <lai.siyao@intel.com>
Change-Id: I90e5f35f3b6a294a2a559c28df267f92ce188b9c
Reviewed-on: http://review.whamcloud.com/19041
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7782 scrub: handle slave obj of striped directory 01/18801/18
Fan Yong [Tue, 10 May 2016 23:10:39 +0000 (07:10 +0800)]
LU-7782 scrub: handle slave obj of striped directory

When lookup item under striped directory, we need to locate the
master MDT-object of the striped directory firstly, then the
client will send lookup (getattr_by_name) RPC to the MDT with
some slave MDT-object's FID and the item's name. If the system
is restored from MDT file level backup, then before the OI scrub
completely built the OI files, the OI mappings of the master
MDT-object and slave MDT-object may be invalid. Usually, it is
not a problem for the master MDT-object. Because when locate the
master MDT-object, we will do name based lookup (for the striped
directory itself) firstly, during such process we can setup the
correct OI mapping for the master MDT-object. But it will be
trouble for the slave MDT-object. Because the client will not
trigger name based lookup on the MDT to locate the slave
MDT-object before locating item under the striped directory,
then when osd_fid_lookup(), it will find that the OI mapping
for the slave MDT-object is invalid and does not know what the
right OI mapping is, then the MDT has to return -EINPROGRESS to
the client to notify that the OI scrub is rebuiding the OI file,
related OI mapping is unknown yet, please try again later. And
then client will re-try the RPC again and again until related
OI mapping has been updated. That is quite inefficient.

To resolve above trouble, we will handle it as the following
two cases:

1) The slave MDT-object and the MDT-object are on different
   MDTs. It is relative easy. Be as one of remote MDT-objects,
   the slave MDT-object is linked under /REMOTE_PARENT_DIR
   with the name of its FID string. We can locate the slave
   MDT-object via lookup the /REMOTE_PARENT_DIR directly.

2) The slave MDT-object and the MDT-object reside on the same
   MDT. Under such case, during lookup the master MDT-object,
   we will lookup the slave MDT-object via readdir the master
   MDT-object, because the slave MDT-objects information are
   stored as sub-directories with the name "${FID}:${index}".
   Then when find the local slave MDT-object, its OI mapping
   will be recorded. Then subsequent osd_fid_lookup() will
   know the correct OI mapping for the slave MDT-object.

The patch also enhance sanity-scrub to avoid DNE in sanity-scrub
on one MDT.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I0bf12ac981017245e4c2da08176422a993086c18
Reviewed-on: http://review.whamcloud.com/18801
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7845 lnet: check if address is visible 82/18782/14
Sebastien Buisson [Tue, 2 Feb 2016 17:06:39 +0000 (18:06 +0100)]
LU-7845 lnet: check if address is visible

In LNetDist(), check if ni's address is currently visible.
If not visible, assign order above 0xffff0000, to make this
ni not a priority.

Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I56735aa25ba632020858507939e12c4565c33d49
Reviewed-on: http://review.whamcloud.com/18782
Tested-by: Jenkins
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7674 lmv: remove unused placement parameter 19/18019/4
John L. Hammond [Fri, 15 Jan 2016 17:21:43 +0000 (11:21 -0600)]
LU-7674 lmv: remove unused placement parameter

Remove the unused lmv.*.placement parameter along with supporting
functions and struct members.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I20274002ad429550d15c4c204899f897f1c69d0f
Reviewed-on: http://review.whamcloud.com/18019
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Ben Evans <bevans@cray.com>
Reviewed-by: Frank Zago <fzago@cray.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7619 obdclass: protect REFASSERT() with lu_ref::lf_guard 56/17756/2
Bruno Faccini [Wed, 30 Dec 2015 16:39:48 +0000 (17:39 +0100)]
LU-7619 obdclass: protect REFASSERT() with lu_ref::lf_guard

Some REFASSERT()s have been added by previous changes, but not
under required lu_ref::lf_guard spin-lock protection.
This can cause unexpected "self" dead-lock situations (vs
LBUG/ASSERT!!) upon lu_ref failure detection.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: If23d43f6fca196a33602b6bb8f051c0a4e26a300
Reviewed-on: http://review.whamcloud.com/17756
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
3 years agoLU-1095 lod: quiet "wanted N, found M" console message 31/17131/5
Andreas Dilger [Thu, 12 Nov 2015 00:39:01 +0000 (17:39 -0700)]
LU-1095 lod: quiet "wanted N, found M" console message

Quiet the relatively useless "wanted 1, found 0" console message from
lod_alloc_qos(), since this is not a fatal error - the MDS will fall
back to lod_alloc_rr() in this case.

Clean up lod_alloc_qos() to use a sensible variable name "lod" for the
LOD OBD device instead of "m", which doesn't really mean anything.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I882636a6b89fa2bcf76383ede8486be9c4300c1e
Reviewed-on: http://review.whamcloud.com/17131
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-4739 obd: Fixing code inconsistencies and coding style 20/10420/6
Bobbie Lind [Tue, 20 May 2014 20:34:37 +0000 (14:34 -0600)]
LU-4739 obd: Fixing code inconsistencies and coding style

config_llog_instance is referenced differently in these functions
than anywhere else in the code.  This patch corrects that as well
as fixing some coding style errors.

Signed-off-by: Bobbie Lind <bobbie.j.lind@intel.com>
Change-Id: I9de1a37e397ffcf660422d3adfeb2f59881ea210
Reviewed-on: http://review.whamcloud.com/10420
Tested-by: Jenkins
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-6429 tests: fix typo in previous patch 26/21026/2
Yang Sheng [Tue, 28 Jun 2016 07:36:36 +0000 (15:36 +0800)]
LU-6429 tests: fix typo in previous patch

Fix typo reformat_mdt to format_mdt.

Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Change-Id: I0a78c44e16da496b071b649c10d072364f73d90d
Reviewed-on: http://review.whamcloud.com/21026
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8284 osd-ldiskfs: i_size updates from BRW should be atomic 16/20816/4
Andrew Perepechko [Wed, 15 Jun 2016 18:03:41 +0000 (21:03 +0300)]
LU-8284 osd-ldiskfs: i_size updates from BRW should be atomic

In osd_write_commit(), it is possible that somewhere between
i_size_read() check and i_size_write() another write updates
i_size to a larger value. In the end, we will have a lower
i_size value than we should.

Change-Id: I720a6cc1214e3e6b32df4f9e2c1017a47e7962f0
Signed-off-by: Andrew Perepechko <andrew.perepechko@seagate.com>
Reviewed-by: Alexander Zarochentsev <alexander.zarochentsev@seagate.com>
Reviewed-by: Alexander Nikolaevich Boyko <alexander.boyko@seagate.com>
Seagate-bug-id: MRP-3528
Reviewed-on: http://review.whamcloud.com/20816
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alexander Boyko <alexander.boyko@seagate.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8199 ptlrpc: better lut_reply_bitmap handling 50/20450/3
Nathaniel Clark [Wed, 25 May 2016 18:58:32 +0000 (14:58 -0400)]
LU-8199 ptlrpc: better lut_reply_bitmap handling

Use OBD_ALLOC_LARGE instead of OBD_ALLOC to allocate chunks because of
size.  Also ensure they are free'd correctly.
Better return checking of tgt_bitmap_chunk_alloc by callers.
Check lut_reply_bitmap[chunk] is non-null in tgt_clear_reply_slot (in
case tgt_bitmap_chunk_alloc did fail).
Don't leak lut_replay_bitmap chunks if tgt_init fails.

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: Ib222300a8c6d0032834d774cde9a9cb3830fb289
Reviewed-on: http://review.whamcloud.com/20450
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Grégoire Pichon <gregoire.pichon@bull.net>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7234 mgs: For handling dash in FSNAME 01/16901/3
Rajesh T G [Wed, 21 Oct 2015 09:42:26 +0000 (15:12 +0530)]
LU-7234 mgs: For handling dash in FSNAME

For FSNAME 'lustre-1, function mgs_llog_open() in mgs_handler.c has
been modified to call strrchr instead of strchr so that 'logname'
variable is updated with entire FSNAME including '-'.

Seagate-bug-id: MRP-2790
Signed-off-by: Sundarraj Illindra <sundarraj.illindra@seagate.com>
Change-Id: I07b2b874f4cf881d0aa2c07586a113fcce8bebfe
Reviewed-on: http://review.whamcloud.com/16901
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8353 mdt: mdt unlink should lock before lookup 88/21088/2
Lai Siyao [Wed, 29 Jun 2016 12:49:24 +0000 (20:49 +0800)]
LU-8353 mdt: mdt unlink should lock before lookup

MDT unlink should lock parent before lookup child, otherwise the
child may be stale in use later.

Signed-off-by: Lai Siyao <lai.siyao@intel.com>
Change-Id: I70560beba7f689bb183ba83c698babc4ce024ece
Reviewed-on: http://review.whamcloud.com/21088
Tested-by: Jenkins
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8343 build: fix kmod_version on SLES 12 21/21021/9
Minh Diep [Mon, 27 Jun 2016 22:51:15 +0000 (15:51 -0700)]
LU-8343 build: fix kmod_version on SLES 12

Starting SLES 12, the kernel-module-subpackage script added a 'k' in
Provides string, here is the sample

%package -n %{-n*}-kmp-%1
%define _this_kmp_version %{-v*}_k%(echo %2 | sed -r 'y/-/_/; \
%s/^(2\.6\.[0-9]+)_/\\1.0_/; # use 2.6.x.0 for mainline kernels')
...
Provides: %{-n*}-kmp = %_this_kmp_version

Change-Id: I5c4a8af03d70862aaca46e41b737a62491cc3cf7
Signed-off-by: Minh Diep <minh.diep@intel.com>
Reviewed-on: http://review.whamcloud.com/21021
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-by: Christopher J. Morrone <morrone2@llnl.gov>
3 years agoLU-8319 fid: fix race in fid allocation 39/20939/3
Fan Yong [Sun, 15 May 2016 02:35:24 +0000 (10:35 +0800)]
LU-8319 fid: fix race in fid allocation

There is race condition when allocating fid/seq in parallel
as following:

The thread1 will release the lcs_mutex via seq_fid_alloc_prep(),
then another fid allocation thread2 can obtain the lcs_mutex and
allocate FID in the new sequence that has just been allocated by
the thread1 via seq_client_alloc_seq(); and then after thread2
released the lcs_mutex, the thread1 will re-allocate the current
FID in the new sequence without checking whether some others have
already taken such FID in the new sequence during it re-obtaining
the lcs_mutex.

Such race will cause two objects to use the same FID, and trigger
OI conflict and LMA verification failures.

This patch makes the fid allocation and lu_client_seq modification
to be protected by the lcs_mutex.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I79c250f57b73d0abd7d039eea02424ae438f1b56
Reviewed-on: http://review.whamcloud.com/20939
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
3 years agoLU-8377 build: clean up .rpmmacros 99/21199/3
Minh Diep [Thu, 7 Jul 2016 22:53:21 +0000 (15:53 -0700)]
LU-8377 build: clean up .rpmmacros

Landing LU-5614 causing ~/.rpmmacros to fill up on every build

Test-Parameters: trivial

Change-Id: Iecf6cc01e90ae951b878d9f0b99b0a3f4ae9ad31
Signed-off-by: Minh Diep <minh.diep@intel.com>
Reviewed-on: http://review.whamcloud.com/21199
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-4039 tests: EXCEPT replay-single test 90 24/21224/3
James Nunez [Fri, 8 Jul 2016 22:05:25 +0000 (16:05 -0600)]
LU-4039 tests: EXCEPT replay-single test 90

replay-single test 90 is failing multiple times a day on
the master branch. Add this test to the ALWAYS_EXCEPT list.

Test-Parameters: trivial testlist=replay-single

Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: I8803b545268fe717d9f5d285bf59bfa360564d57
Reviewed-on: http://review.whamcloud.com/21224
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
3 years agoRevert "LU-7334 lov: Cleanup lov_stripe proc files" 29/21129/2
Oleg Drokin [Fri, 1 Jul 2016 17:18:16 +0000 (17:18 +0000)]
Revert "LU-7334 lov: Cleanup lov_stripe proc files"

Causes problems with default striping described in LU-8338

This reverts commit d34b9dfbebc8d313be9c12a96b660a34ad45edcb.

Change-Id: Ib09cc449f9d826f31799ea0a2211820d3c443456
Reviewed-on: http://review.whamcloud.com/21129
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8055 ldev: Add %H and %b to command sub 40/20040/9
Giuseppe Di Natale [Thu, 5 May 2016 22:43:28 +0000 (15:43 -0700)]
LU-8055 ldev: Add %H and %b to command sub

Introduced %H and %b substitutions for hostname
and backend file system, respectively.

Test-Parameters: trivial testlist=conf-sanity
Signed-off-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Change-Id: I9b50defee43307f614106de4ad75e1fa9267e23b
Reviewed-on: http://review.whamcloud.com/20040
Reviewed-by: Olaf Faaland-LLNL <faaland1@llnl.gov>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8055 ldev: File system label filtering 38/19738/14
Giuseppe Di Natale [Thu, 5 May 2016 22:17:24 +0000 (15:17 -0700)]
LU-8055 ldev: File system label filtering

Introduced -F option to ldev. The -F requires
a file system name to be provided. All labels
associated with that file system will be
printed to stdout. The new option can also be
used with command substitution.

Test-Parameters: trivial testlist=conf-sanity

Signed-off-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Change-Id: I50726371dce809e4d1b4f3de6f530d6f637856a1
Reviewed-on: http://review.whamcloud.com/19738
Tested-by: Jenkins
Reviewed-by: Olaf Faaland-LLNL <faaland1@llnl.gov>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7317 tests: Called the error function where it was missing. 88/16888/11
Aditya Pandit [Tue, 20 Oct 2015 06:50:11 +0000 (12:20 +0530)]
LU-7317 tests: Called the error function where it was missing.

There were bunch of files where error function was missing
Found this by executing grep '|| "' ./*.sh -r
and grep '&& "' ./*sh -r in lustre/tests directory.
Called the error function for those messages.

Seagate-bug-id: MRP-3028
Change-Id: I204008234e36dcb49e28e5256b93bbb0bbaeaea5
Signed-off-by: Aditya Pandit <aditya.pandit@seagate.com>
Signed-off-by: Ashish Purkar <ashish.purkar@seagate.com>
Reviewed-on: http://review.whamcloud.com/16888
Reviewed-by: Jian Yu <jian.yu@intel.com>
Tested-by: Jenkins
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8331 kernel: kernel update [SLES11 SP4 3.0.101-77] 02/21002/2
Bob Glossman [Mon, 27 Jun 2016 15:46:40 +0000 (08:46 -0700)]
LU-8331 kernel: kernel update [SLES11 SP4 3.0.101-77]

Update SLES11 SP4 kernel to 3.0.101-77

Test-Parameters: mdsdistro=sles11sp4 ossdistro=sles11sp4 \
  clientdistro=sles11sp4 mdsfilesystemtype=ldiskfs \
  mdtfilesystemtype=ldiskfs ostfilesystemtype=ldiskfs \
  testgroup=review-ldiskfs

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: Iae1a185cfd054a43e4d4251e0e4f3bb4831065fd
Reviewed-on: http://review.whamcloud.com/21002
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8316 tgt: return -ENOMEM while kmalloc failed 18/20918/2
Yang Sheng [Wed, 22 Jun 2016 13:17:46 +0000 (21:17 +0800)]
LU-8316 tgt: return -ENOMEM while kmalloc failed

Return valid value in tgt_init().

Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Change-Id: Iaaa3697aca42d84011886a360fb31576ed4b53df
Reviewed-on: http://review.whamcloud.com/20918
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8270 ptlrpc: correct use of list_add_tail() 84/20784/3
John L. Hammond [Tue, 14 Jun 2016 18:41:18 +0000 (13:41 -0500)]
LU-8270 ptlrpc: correct use of list_add_tail()

In sptlrpc_gc_add_sec() swap the arguments to list_add_tail() so that
it does what we meant it to do.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I98f4cc0cdf3e271f003c1242b36a317025974c02
Reviewed-on: http://review.whamcloud.com/20784
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8056 lloop: fix bio_for_each_segment_all for newer kernels 19/20619/4
James Simmons [Tue, 21 Jun 2016 14:30:07 +0000 (10:30 -0400)]
LU-8056 lloop: fix bio_for_each_segment_all for newer kernels

Lustre patch http://review.whamcloud.com/20478 back ported
bio_for_each_segment_all from newer kernels but support
for newer kernels was done incorrectly. Update the code to
work with newer kernels.

Change-Id: I6a926320f80113169a13d2319190721c83d58b1d
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: http://review.whamcloud.com/20619
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Wang Shilong <wshilong@ddn.com>
Reviewed-by: Li Dongyang <dongyang.li@anu.edu.au>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7334 lprocfs: Allow default multiplier of 1 55/20455/7
Giuseppe Di Natale [Wed, 25 May 2016 23:23:28 +0000 (16:23 -0700)]
LU-7334 lprocfs: Allow default multiplier of 1

A new default unit '1' is accepted by lprocfs_str_with_units_to_s64
to indicate a default multiplier of 1.

Signed-off-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Change-Id: Iebf29f5d3c36e583729ea717288850729b99eeed
Reviewed-on: http://review.whamcloud.com/20455
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8174 llite: restore fd_och when putting lease 31/20331/6
Henri Doreau [Thu, 19 May 2016 16:31:16 +0000 (18:31 +0200)]
LU-8174 llite: restore fd_och when putting lease

fd_och was not restored when putting back a file lease, preventing
from getting a lease, putting it back and taking it again on a FD.

Expand regression tests accordingly.

Signed-off-by: Henri Doreau <henri.doreau@cea.fr>
Change-Id: I1ad63c5332ee14bdac780f1d74794ac8827186cf
Reviewed-on: http://review.whamcloud.com/20331
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jean-Baptiste Riaux <riaux.jb@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8056 o2iblnd: ib_query_device removed in 4.5 21/20221/7
Li Dongyang [Mon, 20 Jun 2016 02:46:30 +0000 (22:46 -0400)]
LU-8056 o2iblnd: ib_query_device removed in 4.5

We should use the cached attributes in ib_device instead of
calling ib_query_device since kernel 4.5

Linux-commit:182a2da0c768a9ec64abb0d6009667057f1c06af
Linux-commit:cebfe5ca038e2a0f677b41e9682501708ffa2ff3

Signed-off-by: Li Dongyang <dongyang.li@anu.edu.au>
Change-Id: Ie2ab681a3b508f0a1f89d3ff86bf2713b7257e62
Reviewed-on: http://review.whamcloud.com/20221
Tested-by: Jenkins
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8003 llite: remove obsolete code and comments 81/19881/3
John L. Hammond [Fri, 29 Apr 2016 12:03:10 +0000 (07:03 -0500)]
LU-8003 llite: remove obsolete code and comments

Remove obsolete comments about the behavior of ll_ddelete() and the
removed function ll_d_iput(). Remove '#if 0'-ed out code from
ll_ddelete().

Test-Parameters: trivial

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Id2f2eed8e96ee07fdcd4ec14c4e82ed463752562
Reviewed-on: http://review.whamcloud.com/19881
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@seagate.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-6401 obdclass: make get/set_wire_obdo non-inline 66/19266/6
Ben Evans [Thu, 31 Mar 2016 19:15:28 +0000 (14:15 -0500)]
LU-6401 obdclass: make get/set_wire_obdo non-inline

In http://review.whamcloud.com/#/c/16917/ it was requested that
lustre_get_wire_obdo and lustre_set_wire_obdo to not be
inlined functions.

Signed-off-by: Ben Evans <bevans@cray.com>
Change-Id: Ia0537dfbf2fdbd5e83fe49cda4ab6213d999e5e2
Reviewed-on: http://review.whamcloud.com/19266
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-3105 llite: Remove unused lli_open_count from ll_inode_info 44/18544/4
Oleg Drokin [Mon, 20 Jun 2016 02:41:00 +0000 (22:41 -0400)]
LU-3105 llite: Remove unused lli_open_count from ll_inode_info

It was only used by now removed capabilities code.

Change-Id: Ica5617b0408cacbfbc7b08000e5d98a655f08e31
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/18544
Tested-by: Jenkins
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-5282 mdc: fix panic at mdc_free_open() 95/17495/13
Alexander Boyko [Thu, 3 Dec 2015 06:57:36 +0000 (09:57 +0300)]
LU-5282 mdc: fix panic at mdc_free_open()

Assertion was happened for open request when rq_replay is set
to 1.
    ASSERTION(mod->mod_open_req->rq_replay == 0)
But this situation is not fatal for client, and could happened
when mdc_close() failed.
The fix allow to free such requests. If mdc_close fail, MDS doesn`t
receive close request from client. And in a worst case client would
be evicted.

The test recreates issue when mdc_close failed and
client asserts:
   ASSERTION( mod->mod_open_req->rq_replay == 0 ) failed

Signed-off-by: Alexander Boyko <alexander.boyko@seagate.com>
Seagate-bug-id: MRP-3156
Change-Id: I5f98901f633355849fc107149eadc9cf171819af
Reviewed-on: http://review.whamcloud.com/17495
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7931 tests: setup/cleanup after every test script 08/6208/7
Andreas Dilger [Wed, 30 Mar 2016 08:09:54 +0000 (02:09 -0600)]
LU-7931 tests: setup/cleanup after every test script

Setup and cleanup the filesystem after every acceptance-small.sh
test to try and catch problems with module references when they
happen instead of causing later tests to fail in mysterious ways.

Test-Parameters: trivial
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I0136ef81c601e7b9ee968ac62d674a8b16500c1e
Reviewed-on: http://review.whamcloud.com/6208
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8303 lnet: make connection more stable with packet loss 74/20874/2
Alexander Boyko [Sun, 19 Jun 2016 12:56:51 +0000 (15:56 +0300)]
LU-8303 lnet: make connection more stable with packet loss

IB network may lose last connection handshake packet.
This problem isn't Lustre specific and described at
https://oss.oracle.com/pipermail/rds-devel/2007-December/000271.html
as example.
Solution is to make conection established if any packet is received
for it.

Signed-off-by: Alexander Boyko <alexander.boyko@seagate.com>
Signed-off-by: Alexey Lyashkov <alexey.lyashkov@seagate.com>
Seagate-bug-id: MRP-2883
Change-Id: I9bf69fdca24e51a5de06c92e9ad76b4e040c5d65
Reviewed-on: http://review.whamcloud.com/20874
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Reviewed-by: Alexander Zarochentsev <alexander.zarochentsev@seagate.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-6215 build: announce linux kernel 4.4.6 support 43/20543/3
James Simmons [Wed, 1 Jun 2016 15:09:32 +0000 (11:09 -0400)]
LU-6215 build: announce linux kernel 4.4.6 support

Bump kernel version in ChangeLog to latest supported
kernel which is 4.4.6

Change-Id: I920e1139cc7abef82677e9ba79abfdc137dd205b
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: http://review.whamcloud.com/20543
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8125 nrs: pol_arg should be copied after the policy starts 64/20164/7
Emoly Liu [Fri, 24 Jun 2016 01:21:13 +0000 (09:21 +0800)]
LU-8125 nrs: pol_arg should be copied after the policy starts

NRS policy->pol_arg should be copied to a given policy argument
after the policy starts, otherwise a wrong argument will be saved
and it will cause LBUG when we run "lctl get_param" to get NRS
policy.
sanityn.sh test_77h is added to verify this patch.

Signed-off-by: Emoly Liu <emoly.liu@intel.com>
Change-Id: I5a015bb44fa88f69a4d5347cc2721eb72a57c8ad
Reviewed-on: http://review.whamcloud.com/20164
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Henri Doreau <henri.doreau@cea.fr>
Reviewed-by: Jean-Baptiste Riaux <riaux.jb@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7623 lnet: remove useless cast 50/18950/9
James Simmons [Thu, 23 Jun 2016 17:38:13 +0000 (13:38 -0400)]
LU-7623 lnet: remove useless cast

In the cleanup of the user land / kernel pointers a
small cleanup was missed which removed a cast no
longer needed for a call of lnet_ping(). This brings
us into sync with the upstream client.

Change-Id: Ib281aaac7f2a1516d8586fbf3d10dee18cd77873
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: http://review.whamcloud.com/18950
Tested-by: Jenkins
Reviewed-by: Frank Zago <fzago@cray.com>
Reviewed-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8022 lnet: Correct position of lnet_ni_decref() 01/21001/2
Doug Oucharek [Mon, 27 Jun 2016 17:34:44 +0000 (10:34 -0700)]
LU-8022 lnet: Correct position of lnet_ni_decref()

In fix http://review.whamcloud.com/#/c/19614/, the call
to lnet_ni_decref() should have followed the routines
which are using the NI.  This patch correct that.

Signed-off-by: Doug Oucharek <doug.s.oucharek@intel.com>
Change-Id: I55fba4904cc6442f63cf03bf2e3614a7946200f7
Reviewed-on: http://review.whamcloud.com/21001
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-4039 tests: ensure osc import in FULL state 31/20931/4
Yang Sheng [Wed, 22 Jun 2016 18:41:12 +0000 (02:41 +0800)]
LU-4039 tests: ensure osc import in FULL state

The osp import may not in FULL state when
replay-single:test_90 start running. It
was caused by test_89, we should waiting
import valid then start next step.

Test-Parameters: trivial testlist=replay-single,replay-single,replay-single,replay-single
Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Change-Id: I93746137c038183bf114619f53654af1bcaa68eb
Reviewed-on: http://review.whamcloud.com/20931
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
3 years agoLU-7759 llite: handle inactive OSTs better in statfs 95/19195/28
Andreas Dilger [Tue, 29 Mar 2016 17:29:57 +0000 (11:29 -0600)]
LU-7759 llite: handle inactive OSTs better in statfs

Change the order of checks for inactive OSCs in lov_prep_statfs_set()
so that administratively disabled OSTs do not generate any output in
"lfs df" at all, to avoid needlessly cluttering the output.

Enable the lazystatfs mount option by default, so that "df" does not
hang when an OST is temporarily offline.

Fix test-framework.sh to use "lfs df $MOUNT" instead of "df $MOUNT" to
determine when recovery is complete, now that "df" does not block.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I993761a7eb120a36a1b80c2822cb6d8011ccab07
Reviewed-on: http://review.whamcloud.com/19195
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8259 osd-ldiskfs update all *_seq_write() to use "const char __user *buffer" 87/20887/2
Parinay Kondekar [Mon, 20 Jun 2016 11:30:59 +0000 (17:00 +0530)]
LU-8259 osd-ldiskfs update all *_seq_write() to use "const char __user *buffer"

All *_seq_write functions in lustre/osd-ldiskfs/osd_lproc.c declare
buffer as "const char *buffer" and should use "const char __user *buffer"
instead.

This patch takes care of this change.

Change-Id: Ida44679f721a37cf71f327a6f00f3f8857ba0376
Signed-off-by: Parinay Kondekar <parinay.kondekar@seagate.com>
Reviewed-on: http://review.whamcloud.com/20887
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8176 libcfs: Add file_dentry() & file_inode() wrapper 76/20576/10
Yang Sheng [Mon, 20 Jun 2016 02:34:31 +0000 (22:34 -0400)]
LU-8176 libcfs: Add file_dentry() & file_inode() wrapper

Use file_dentry() & file_inode() wrappers to sync
with upstream.

Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Change-Id: I7e62871789617a07dfe083a60374885099d25d51
Reviewed-on: http://review.whamcloud.com/20576
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8197 ptlrpc: do not reduce replay request deadline 99/20399/4
Vladimir Saveliev [Sat, 21 May 2016 03:10:43 +0000 (06:10 +0300)]
LU-8197 ptlrpc: do not reduce replay request deadline

New timeout for a replay request sent to a client with early reply is
calculated without taking into account that new deadline for the
replay request on server side is calculated based upon
obd_recovery_timeout. That results in reducing replay deadline which
forces to early disconnect of the client.

Calculate the timeout sent in early reply to a replay request in
according to new deadline of the replay request on server side.

Seagate-bug-id: MRP-3249
Signed-off-by: Vladimir Saveliev <vladimir.saveliev@seagate.com>
Change-Id: I478ca84a9627816be886a077170285f8af4bfc29
Reviewed-on: http://review.whamcloud.com/20399
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Hongchao Zhang <hongchao.zhang@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8159 osd-ldiskfs: cache xattr in osd-ldiskfs 96/20496/3
Lai Siyao [Tue, 24 May 2016 01:56:08 +0000 (09:56 +0800)]
LU-8159 osd-ldiskfs: cache xattr in osd-ldiskfs

In LU-7660 LOD doesn't cache default striping, so each create will
get it from bottom. LU-7660 has enabled xattr cache in OSP, and
osd-zfs caches xattr already, this patch introduces a similar
mechanism in osd-ldiskfs.

Signed-off-by: Lai Siyao <lai.siyao@intel.com>
Change-Id: I3382119acaf9a819ee2be9737d1eae833e9ea2a4
Reviewed-on: http://review.whamcloud.com/20496
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7702 ldlm: skip lock if export failed 20/18120/9
Alexander Boyko [Wed, 15 Jun 2016 06:12:14 +0000 (14:12 +0800)]
LU-7702 ldlm: skip lock if export failed

This patch resolves IO vs eviction race.
After eviction failed export stayed at stale list,
a client had IO processing and reconnected during it.
A client sent brw rpc with last lock cookie and new connection.
The lock with failed export was found and assert was happened.
(ost_handler.c:1812:ost_prolong_lock_one())
ASSERTION( lock->l_export == opd->opd_exp ) failed:

1. Skip the lock at ldlm_handle2lock if lock export failed.
2. Validation of lock for IO was added at hpreq_check(). The lock
   searching is based on granted interval tree. If server doesn`t
   have a valid lock, it reply to client with ESTALE.
3. A lock prolong was moved at ldlm layer.

Signed-off-by: Alexander Boyko <alexander.boyko@seagate.com>
Seagate-bug-id: MRP-2787
Change-Id: I2177736564c3b8164f1ad3e4cc02dca1704a0e6e
Reviewed-on: http://review.whamcloud.com/18120
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Vitaly Fertman <vitaly.fertman@seagate.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-5614 build: use %kernel_module_package in rpm spec 63/12063/50
Stephen Champion [Tue, 6 Oct 2015 10:16:25 +0000 (15:46 +0530)]
LU-5614 build: use %kernel_module_package in rpm spec

Replace module packages definitions with calls to the vendor defined
%kernel_module_package macro.  This results in many of the rpm packages
changing names from what we are used to in the past.  Each Linux
distribution may name the modules packages slightly differently, most
notably RHEL and SLES choose different naming schemes.  The
%kernel_module_package macro handles these details for us.

For instance, on RHEL7 the packages that contain lustre's kernel modules
become:

  kmod-lustre             (previously in "lustre-modules" package)
  kmod-lustre-osd-ldiskfs (previously in "lustre-osd-ldiskfs" package)
  kmod-lustre-osd-zfs     (previously in "lustre-osd-zfs" package)
  kmod-lustre-tests       (previously in "lustre-tests" package)

On SLES12, the same packages are instead named:

  lustre-kmp-default
  lustre-osd-ldiskfs-kmp-default
  lustre-osd-zfs-kmp-default
  lustre-tests-kmp-default

These kernel module packages give us what is known as "weak-updates".
Instead of compiling Lustre for every minor kernel that is installed,
the weak-updates will automatically symlink the Lustre modules into
and kernel's modules subdirectories if that kernel offers the required
kernel symbols with exactly the same symbol versions.

In addition to changing the package names for all of the Lustre packages
containing kernel modules, the location of the modules in /lib/modules
changes as well.  Each package will put its modules in a subdirectory
matching part of the package name itself (required by the macros on RHEL
systems).  The path name is also different on RHEL and SLES systems
(e.g. "extra" vs. "updates").

Some further path examples are:

  RHEL7, kmod-lustre package:
    /lib/modules/3.10.0-327.18.2.el7_lustre.x86_64/extra/lustre/fs/ost.ko

  SLES12, lustre-kmp-default package:
    /lib/modules/3.12.57-60.35_lustre-default/updates/lustre/fs/ost.ko

  RHEL7, kmod-lustre-osd-ldiskfs package:
    /lib/modules/3.10.0-327.18.2.el7_lustre.x86_64/extra/lustre-osd-ldiskfs/fs/osd_ldiskfs.ko

  SLES12, lustre-osd-ldiskfs-kmp-default package:
    /lib/modules/3.12.57-60.35_lustre-default/updates/lustre-osd-ldiskfs/fs/osd_ldiskfs.ko

Test-Parameters: trivial clientdistro=el6.7 mdsdistro=el6.7 ossdistro=el6.7
Signed-off-by: Stephen Champion <schamp@sgi.com>
Signed-off-by: Alexander Boyko <alexander.boyko@seagate.com>
Change-Id: Ic5351f4bda94eae80eaf349c8490a2c758b15c80
Signed-off-by: Minh Diep <minh.diep@intel.com>
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/12063
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7418 tests: avoid background writeout in sanity 29 29/20929/2
Andreas Dilger [Wed, 22 Jun 2016 17:36:10 +0000 (11:36 -0600)]
LU-7418 tests: avoid background writeout in sanity 29

Intermittent failures of sanity.sh test_29 are caused by background
writeout starting (or continuing) after the MDC DLM locks were
cancelled, requiring the layout lock to be re-fetched from the MDS.
Cancelling the DLM locks via "lru_size=clear" is not enough, since
this will not cancel any locks that are currently in use.

Instead, ensure that all the dirty pages from previous tests are
written out so that no new writes are started during the test.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Ie45965a974e0cd170f969fa122e1762c2361c278
Reviewed-on: http://review.whamcloud.com/20929
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoRevert "LU-5810 tests: add client hostname to lctl mark" 94/20894/3
James Nunez [Tue, 21 Jun 2016 14:56:18 +0000 (14:56 +0000)]
Revert "LU-5810 tests: add client hostname to lctl mark"

Adding hostname to individual lines in test logs broke autotest's
parsing of logs and resulted in no console logs being uploaded to
Maloo. In addition, the way that we added hostname to the log
output was nosier than expect and needs to be reworked.

This reverts commit 9c4156e6fc146a198bb342e28eb246f1076889bd.

Change-Id: I6d7c38fd37edc975bc4f5e1ff5c825d4899af474
Signed-off-by: James Nunez <james.a.nunez@intel.com>
Reviewed-on: http://review.whamcloud.com/20894
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7542 obdclass: quiet lockdep recursive lock warning 82/17582/4
Andreas Dilger [Fri, 11 Dec 2015 00:34:58 +0000 (17:34 -0700)]
LU-7542 obdclass: quiet lockdep recursive lock warning

Lockdep complains about potential recursive locking during mount
because the client configuration log is holding a lock on the MGC
obd_device to prevent it from being torn down, while also getting
locks on the MDC and OSC devices as they are instantiated:

 Lustre: Mounted myth-client
 =============================================
 [ INFO: possible recursive locking detected ]
 ---------------------------------------------

 2 locks held by ll_cfg_requeue/1460:
 #0:  (&cli->cl_sem){.+.+..}, at mgc_requeue_thread+0x27d/0x5d8 [mgc]
 #1:  (&cld->cld_lock){+.+...}, at mgc_process_log+0x88/0xc01 [mgc]

 CPU: 3 PID: 1460 Comm: ll_cfg_requeue
 Call Trace:
 [<ffffffff814cb360>] dump_stack+0x4f/0x6f
 [<ffffffff81081d73>] __lock_acquire+0xc06/0xc74
 [<ffffffff81081f4f>] lock_acquire+0x16e/0x194
 [<ffffffff814ce5d7>] down_read+0x4c/0x61
 [<ffffffffa029f370>] sptlrpc_conf_client_adapt+0x95/0x142 [ptlrpc]
 [<ffffffffa03a7a69>] mdc_set_info_async+0xeb/0x420 [mdc]
 [<ffffffffa01ad69e>] class_notify_sptlrpc_conf+0x2f4/0x347 [obdclass]
 [<ffffffffa04a805c>] mgc_process_log+0xa31/0xc01 [mgc]
 [<ffffffffa04a94ef>] mgc_requeue_thread+0x31f/0x5d8 [mgc]
 [<ffffffff81061f77>] kthread+0xfa/0x102

Add a separate lock class for the MGC callpath, since it will always
be held first, and none of the other obd_device locks should ever
be held concurrently.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Ic36e64608d12dcd4f5b12056e3e2072ca6500c1e
Reviewed-on: http://review.whamcloud.com/17582
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7334 lov: Cleanup lov_stripe proc files 65/20465/6
Giuseppe Di Natale [Tue, 14 Jun 2016 16:34:41 +0000 (12:34 -0400)]
LU-7334 lov: Cleanup lov_stripe proc files

Make lov_stripe* proc files read only. Writing to
these proc files no longer has any impact.

Signed-off-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Change-Id: I5adfbbe529208efef760df22c849e3684a34e187
Reviewed-on: http://review.whamcloud.com/20465
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Jenkins
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-8203 tests: Wait for archive operation to be completed. 42/20442/8
Kirtankumar Krishna Shetty [Wed, 25 May 2016 11:33:48 +0000 (17:03 +0530)]
LU-8203 tests: Wait for archive operation to be completed.

As bandwith control is set to 1048576B/s in the test, so
the archive operation takes <= 40 secs to copy 39000000
bytes.

If we dont wait for the on going archive action to finish
then status will remain as STARTED and never becomes
SUCCEED as we call copytool_cleanup soon after archiving
5MB of data and the request will be stuck there for ever.

Sometimes because of previous unclean shutdown of copytool,
test_60 results in failure because of stuck request.

Test-Parameters: trivial testlist=sanity-hsm,sanity-hsm

Change-Id: I2413c32a617e43fb24e7ca6696026a3c9e1cad00
Seagate-bug-id: MRP-2586
Signed-off-by: Kirtankumar Krishna Shetty <kirtan.shetty@seagate.com>
Reviewed-on: http://review.whamcloud.com/20442
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8058 lnet: Remove old commented out code 14/20414/4
Ben Evans [Tue, 14 Jun 2016 18:15:34 +0000 (14:15 -0400)]
LU-8058 lnet: Remove old commented out code

These #if 0 blocks have been in place for years. Assume
they are not used and remove them

Signed-off-by: Ben Evans <bevans@cray.com>
Change-Id: I3840513cc68786ded878ba8be6b92f0a180507a2
Reviewed-on: http://review.whamcloud.com/20414
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8150 mdt: Track open+create as mknod 46/20246/6
Matt Ezell [Wed, 15 Jun 2016 00:51:07 +0000 (20:51 -0400)]
LU-8150 mdt: Track open+create as mknod

Regular files created with mknod are tracked, but most files are
created as an open with create intent. Track this as a mknod also.

Signed-off-by: Matt Ezell <ezellma@ornl.gov>
Change-Id: I8f6ab9d91d0b31062c7f73f8394a1b12f7963f1c
Reviewed-on: http://review.whamcloud.com/20246
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8116 build: Fix libmount configure message 55/20055/3
Christopher J. Morrone [Sat, 7 May 2016 01:53:07 +0000 (18:53 -0700)]
LU-8116 build: Fix libmount configure message

The configure messages for libmount checking were incorrectly nested resulting
in messages like this:

checking whether build with libmount... checking libmount/libmount.h usability... no
checking libmount/libmount.h presence... no
checking for libmount/libmount.h... no
no

This patch unwinds that mistake.

Change-Id: Iec716d8152880902d3e6961cd1d3b821e37c349a
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/20055
Tested-by: Jenkins
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-7896: do not call lu_site_purge() for single object exceed 82/19082/9
Alex Zhuravlev [Fri, 11 Mar 2016 15:26:47 +0000 (18:26 +0300)]
LU-7896: do not call lu_site_purge() for single object exceed

first of all, this is expensive procedure including a global
mutex and per-bucket spinlocks. also, all the threads observed
exceed will be calling lu_site_purge() and essentially serialized
on that. instead we can let other threads to skip the whole
procedure.

Change-Id: Ib5d213c70b5a2f259153ab24d7c3f5a3e97239df
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: http://review.whamcloud.com/19082
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7664 test: set_conf_param_and_check() defect 95/17995/2
Elena Gryaznova [Thu, 14 Jan 2016 12:13:55 +0000 (14:13 +0200)]
LU-7664 test: set_conf_param_and_check() defect

set_conf_param_and_check() should wait update on facet_active_host
instead of facet_host; othewise tests failed on configuration
facet_HOST != facetfailover_HOST

Seagate-bug-id: MRP-2846
Signed-off-by: Elena Gryaznova <elena.gryaznova@seagate.com>
Reviewed-by: Sergey Cheremencev <sergey.cheremencev@seagate.com>
Reviewed-by: Vitaly Fertman <vitaly.fertman@seagate.com>
Change-Id: I974f145b3783fec1adb2fc6219ef4bd025a31811
Reviewed-on: http://review.whamcloud.com/17995
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-5092 nodemap: remove nodemap_idx_action, only act on MGS 54/18554/9
Kit Westneat [Mon, 22 Feb 2016 19:27:29 +0000 (14:27 -0500)]
LU-5092 nodemap: remove nodemap_idx_action, only act on MGS

Only the MGS config needs to be modified on config changes.
The target configs will be loaded from the MGS and written
whole to disk.

Signed-off-by: Kit Westneat <kit.westneat@gmail.com>
Change-Id: I3114258d6e18d293cdf29ae47a28465f245387de
Reviewed-on: http://review.whamcloud.com/18554
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7403 obd: const correct md_set_lock_data() 72/17072/8
John L. Hammond [Thu, 16 Jun 2016 21:42:00 +0000 (17:42 -0400)]
LU-7403 obd: const correct md_set_lock_data()

Change the __u64 *cookie parameter of md_set_lock_data() to const
struct lustre_handle *lockh.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ie6de252a10c532ee395e407ad2aff258773478a8
Reviewed-on: http://review.whamcloud.com/17072
Reviewed-by: Frank Zago <fzago@cray.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8216 ldiskfs: fix journal quota files for RHEL6.8 91/20791/4
Wang Shilong [Wed, 15 Jun 2016 00:04:04 +0000 (08:04 +0800)]
LU-8216 ldiskfs: fix journal quota files for RHEL6.8

When we hit Lustre crash, e2fsck always complains of Quota
accounting mismatch, and sometimes differences are huge.

The problem is that we don't journal quota updates properly, and
with current codes quota files will be only journaled when syncing
the filesystem, which only happens by sync() call or unmount.

RHEL6.8 version of the patch http://review.whamcloud.com/20503

Signed-off-by: Wang Shilong <wshilong@ddn.com>
Change-Id: Id5b580083197555029442338f7feaf59b1ad154c
Reviewed-on: http://review.whamcloud.com/20791
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-8220 tests: stripe file over all active OSTs 15/20515/5
Noopur Maheshwari [Tue, 31 May 2016 09:10:32 +0000 (14:40 +0530)]
LU-8220 tests: stripe file over all active OSTs

In test_iozone/parallel-scale-cifs, the iozone command creates the
temporary files under test with default stripe count=1, that is,
both the 256mb files reside on the same OST, over-utilizing the OST,
resulting in Use%=100%(No space left on device).

The fix is to create a sub-directory in the samba server mount
point with a stripe count of -1 (stripe over all available OSTs)
and then run iozone with this sub-directory path, so that all the
temporary files created within this sub-directory, during iozone,
reside on multiple OSTs and OST free space is utilized uniformly.

Since the test suite mounts lustre client on smb server, the "lfs
setstripe" command is executed on the smb server.

Test-Parameters: trivial

Seagate-bug-id: MRP-2179
Signed-off-by: Noopur Maheshwari <noopur.maheshwari@seagate.com>
Change-Id: If225b62848b5266dc51ef791ef0d9c8002f908a5
Reviewed-on: http://review.whamcloud.com/20515
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8106 lnet: Do not drop message when shutting down LNet 93/19993/2
Doug Oucharek [Wed, 2 Mar 2016 04:08:00 +0000 (12:08 +0800)]
LU-8106 lnet: Do not drop message when shutting down LNet

There is a case in lnet_parse() where we discover that LNet
is shutting down but we continue to use the NI when we drop the
message and end up calling ko2iblnd_check_send_locked() which tries to
allocate from the Tx pool which has been cleaned up already.
This triggers a NULL pointer dereference.

This fix just returns from lnet_parse() when we disover LNet is
shutting down.

Signed-off-by: Doug Oucharek <doug.s.oucharek@intel.com>
Change-Id: Ia8dba848e88b02ed23e2e77adb702c7ad0e60628
Reviewed-on: http://review.whamcloud.com/19993
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Liang Zhen <liang.zhen@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7861 osp: replace the hot spinlock with atomic trackers 11/19211/5
Alex Zhuravlev [Fri, 17 Jun 2016 15:25:04 +0000 (23:25 +0800)]
LU-7861 osp: replace the hot spinlock with atomic trackers

so that background scanning doesn't race with MDS_REINT_UNLINK

Change-Id: I4006be4298ffa841ca4d131ac37c201ff8ea729f
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: http://review.whamcloud.com/19211
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7204 test: handle FSNAME with dashes in replay-single 85b 02/16902/4
Sundar Keshava [Wed, 21 Oct 2015 10:02:05 +0000 (15:32 +0530)]
LU-7204 test: handle FSNAME with dashes in replay-single 85b

If FSNAME contains a dash, test_85b incorrectly parses lctl dl
output. Fix that.
Also changed the checking of before recovery count value
by using numeric comparison instead of string comparison.
Used tabs in place of spaces.

Test-Parameters: trivial testlist=replay-single envdefinitions=ONLY=85b
Seagate-bug-id: MRP-2792
Signed-off-by: HemaHarish <hema.yarramilli@seagate.com>
Change-Id: I392921b837dee573a704a3fec4b35c7bb79136bc
Reviewed-on: http://review.whamcloud.com/16902
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7301 test: do cleanup only if required 87/16887/2
Chennaiah Palla [Tue, 20 Oct 2015 05:58:21 +0000 (11:28 +0530)]
LU-7301 test: do cleanup only if required

change check_and_cleanup_lustre() to do cleanup only if required

Seagate-bug-id: MRP-1257
Signed-off-by: Chennaiah Palla <chennaiah.palla@seagate.com>
Change-Id: I22f3b2a448c78b0468c5d802a370a51aab3c9f8d
Reviewed-on: http://review.whamcloud.com/16887
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
3 years agoLU-8040 mgc: Apply changelog defaults values in mdd_init0() 54/19854/6
Artem Blagodarenko [Thu, 28 Apr 2016 14:30:53 +0000 (17:30 +0300)]
LU-8040 mgc: Apply changelog defaults values in  mdd_init0()

lctl set_param -P command stores options to params file. This options
are applied in server_start_targets() during target mount. Changelog
apply default options during initialization. So it reset options
applied by "lctl set_param -P".

This patch moves changelogs default value appying before params
processing. So new parameters aplied after default.

Signed-off-by: Artem Blagodarenko <artem.blagodarenko@seagate.com>
Change-Id: Ibb1a8d512844d4fcb66c051441c1864f994d4ded
Reviewed-on: http://review.whamcloud.com/19854
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoNew tag 2.8.55 2.8.55 v2_8_55 v2_8_55_0
Oleg Drokin [Wed, 22 Jun 2016 01:07:49 +0000 (21:07 -0400)]
New tag 2.8.55

Change-Id: Ie0b88ee537b2f76d59a49e3512c834f5314b0eae
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>