Whamcloud - gitweb
fs/lustre-release.git
7 years agoLU-4423 ldlm: use time64_t for l_last_activity 41/23141/2
Arnd Bergmann [Thu, 13 Oct 2016 18:50:00 +0000 (14:50 -0400)]
LU-4423 ldlm: use time64_t for l_last_activity

The l_last_activity struct member is used to keep track lock hold
times, and it is printed for debugging purposes. For the elapsed
time, we can use 'long' here, but it's better to use time64_t
for storing the real time to avoid an overflow in 2038.

Update server side code as well that is not present in upstream
client.

Linux-commit: bf6d21539d58f64812d71c956ecec3d67650b2ee

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Change-Id: Idbbc64afbb9307e6133c671a7aa2122318c62679
Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: https://review.whamcloud.com/23141
Reviewed-by: Frank Zago <fzago@cray.com>
Tested-by: Jenkins
Reviewed-by: Dmitry Eremin <dmitry.eremin@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>
7 years agoLU-4423 libcfs: tracefile document seconds overflow 37/23137/2
Arnd Bergmann [Thu, 13 Oct 2016 18:04:39 +0000 (14:04 -0400)]
LU-4423 libcfs: tracefile document seconds overflow

The lustre tracefile has a timestamp defined as

__u32 ph_sec;
__u64 ph_usec;

which seems completely backwards, as the microsecond portion of
a time stamp will always fit into a __u32 value, while the second
portion will overflow in 2038 or 2106 (in case of unsigned seconds).

Changing this would unfortunately change the format in an incompatible
way, breaking all existing user space tools that access the data.

This uses ktime_get_real_ts64() to replace the insufficient
do_gettimeofday() and then truncates the seconds portion to
an u32 type, along with comments to explain the result.

A possible alternative would be the use of ktime_get_ts64() to
read a monotonic timestamp that never overflows, but this would
trigger a check in user space 'hdr->ph_sec < (1 << 30)' that
attempts to ensure that the values are within a reasonable range.

Linux-commit: 65f28840e4c653b7d78feabcb65280c09d3d0d23

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Change-Id: I5fdf6d09d39fbb4da8ccba51a745b00996f116f7
Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: https://review.whamcloud.com/23137
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Frank Zago <fzago@cray.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-4423 libcfs: use 64-bit inode timestamps internally 36/23136/2
Arnd Bergmann [Thu, 13 Oct 2016 17:03:03 +0000 (13:03 -0400)]
LU-4423 libcfs: use 64-bit inode timestamps internally

Lustre has 64-bit timestamps in its network data structures, but
on 32 bit systems, it converts them directly into time_t, which is
32 bit wide.

This changes the code to use 64-bit time stamps for files. The Linux
VFS code still uses time_t though, and will be changed in a separate
patch series.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Change-Id: I6d3e986fa4eac2fe76a6d66a55f2cdbfe8fdae55
Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: https://review.whamcloud.com/23136
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-6245 libcfs: add ktime_get_real_seconds support 66/22866/10
James Simmons [Tue, 25 Oct 2016 01:43:12 +0000 (21:43 -0400)]
LU-6245 libcfs: add ktime_get_real_seconds support

In newer kernels time support is moving to u64 to avoid
the 2038 limitation. The function get_seconds() which
only returns a 32 bit value is being replaced by a new
function ktime_get_real_seconds(). This patch adds a
wrapper for older platforms that lack this function.
Only the libcfs/LNet layer has been ported in this
patch since it is a huge change.

Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Change-Id: Ic16859f1b052bfb72299cc85fe50364a9e70d660
Reviewed-on: https://review.whamcloud.com/22866
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Frank Zago <fzago@cray.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8314 lfs: improve getdirstripe interface 19/24319/4
Lai Siyao [Tue, 13 Dec 2016 15:57:40 +0000 (23:57 +0800)]
LU-8314 lfs: improve getdirstripe interface

* remove unused options '-v' '-R' '-q' for "lfs getdirstripe".
* add "[--mdt-hash|-t]" option for "lfs getdirstripe", and print
  hash_type by default.

Signed-off-by: Lai Siyao <lai.siyao@intel.com>
Change-Id: Ib7eaf00744d0cd5dec13e683c39e2ecf1d54808b
Reviewed-on: https://review.whamcloud.com/24319
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8922 lod: check master stripes properly 47/24247/2
Di Wang [Thu, 8 Dec 2016 09:55:26 +0000 (04:55 -0500)]
LU-8922 lod: check master stripes properly

When creating striped directory, it should
first check if the stripe has been created
on the current MDT, otherwise it might create
duplicate stripes on the master MDT, especially
when one MDT is deactived, and specified stripes
is larger than the active MDTs.

Signed-off-by: Di Wang <di.wang@intel.com>
Change-Id: I089f5cf517c71816151e8ece1b36b9064ee3b7f2
Reviewed-on: https://review.whamcloud.com/24247
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8569 linkea: linkEA size limitation 00/23500/9
Fan Yong [Sun, 28 Aug 2016 10:15:37 +0000 (18:15 +0800)]
LU-8569 linkea: linkEA size limitation

Under DNE mode, if we do not restrict the linkEA size, and if there
are too many cross-MDTs hard links to the same object, then it will
casue the llog overflow. On the other hand, too many linkEA entries
in the linkEA will serious affect the linkEA performance because we
only support to locate linkEA entry consecutively.

So we need to restrict the linkEA size. Currently, it is 4096 bytes,
that is independent from the backend. If too many hard links caused
the linkEA overflowed, we will add overflow timestamp in the linkEA
header. Such overflow timestamp has some functionalities:

1. It will prevent the object being migrated to other MDT, because
   some name entries may be not in the linkEA, so we cannot update
   these name entries for the migration.

2. It will tell the namespace LFSCK that the 'nlink' attribute may
   be more trustable than the linkEA, then avoid misguiding the
   namespace LFSCK to repair 'nlink' attribute based on linkEA.

There will be subsequent patch(es) for namespace LFSCK to handle the
linkEA size limitation and overflow cases.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I2d6c2be04305c1d7e3af160d8b80e73b66a36483
Reviewed-on: https://review.whamcloud.com/23500
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoNew tag 2.9.51 2.9.51 v2_9_51 v2_9_51_0
Oleg Drokin [Tue, 27 Dec 2016 23:06:27 +0000 (18:06 -0500)]
New tag 2.9.51

Change-Id: Ie0e5df746be2336ad77da4ebe50faf7cf8337813
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8972 tests: Disable conf-sanity test 101 17/24517/2
Oleg Drokin [Sun, 25 Dec 2016 21:09:07 +0000 (16:09 -0500)]
LU-8972 tests: Disable conf-sanity test 101

It causes a lot of failures for apparently no good reason.

Change-Id: I0e29c3274b18eece1249e79bed2b58edc493836f
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: https://review.whamcloud.com/24517
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
7 years agoLU-8925 kernel: kernel update RHEL7.3 [3.10.0-514.2.2.el7] 72/24372/3
Bob Glossman [Mon, 12 Dec 2016 19:20:23 +0000 (11:20 -0800)]
LU-8925 kernel: kernel update RHEL7.3 [3.10.0-514.2.2.el7]

update RHEL 7.3 kernel to 3.10.0-514.2.2.el7

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I684e25eede267c96d41c37b1c3295301c38b5573
Reviewed-on: https://review.whamcloud.com/24372
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>
7 years agoLU-3425 utils: rename l_getgroups.8 to l_getidentity.8 19/24219/4
Andreas Dilger [Wed, 7 Dec 2016 20:56:40 +0000 (13:56 -0700)]
LU-3425 utils: rename l_getgroups.8 to l_getidentity.8

Rename the man page for l_getgroups.8 to l_getidentity.8 to match
the "new" name of the utility, and update the content accordingly.

Test-Parameters: trivial
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I698c8170cb0623ff692bfe76962b5c71d75bc18b
Reviewed-on: https://review.whamcloud.com/24219
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Steve Guminski <stephenx.guminski@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8890 ptlrpc: fix module_param in ptlrpcd.c 65/24065/3
Dmitry Eremin [Fri, 25 Nov 2016 18:00:14 +0000 (21:00 +0300)]
LU-8890 ptlrpc: fix module_param in ptlrpcd.c

Missing module parameter description for ptlrpcd_per_cpt_max

Change-Id: Id00d6bd73cf2779e0f12db5184292ebdb0cfa8ae
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-on: https://review.whamcloud.com/24065
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
7 years agoLU-8887 ptlrpc: remove unused pc->pc_env 61/24061/3
Dmitry Eremin [Thu, 1 Dec 2016 09:08:59 +0000 (12:08 +0300)]
LU-8887 ptlrpc: remove unused pc->pc_env

Environment for request interpreters is not used any more.

Change-Id: Id218fa251bb022f2fff11c79adeb83da65fe3088
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-on: https://review.whamcloud.com/24061
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@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>
7 years agoLU-8886 lfsck: handle -ENODATA for the end of iteration 56/24056/2
Fan Yong [Sun, 28 Aug 2016 09:41:14 +0000 (17:41 +0800)]
LU-8886 lfsck: handle -ENODATA for the end of iteration

When the LFSCK engine makes checkpoint, it will record the current
position (hash) of the iteration that can be used to resume the
LFSCK scanning from the latest checkpoint. But if someone removed
the target corresponding to the LFSCK checkpoint position, then
the LFSCK will start scanning from the 'next' position when try to
resume from the latest checkpoint. But if the 'next' hits the end
of the iteration, the lower layer (ldiskfs) will return "-ENODATA"
for dt_it_ops::load() call. The LFSCK engine needs to handle such
case properly to avoid reguarding it as failure.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I5a6a46cf3eefbdc680780abcc3402860736d6e0a
Reviewed-on: https://review.whamcloud.com/24056
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>
7 years agoLU-8869 build: Fix building of DEB packages 99/23999/6
Thomas Stibor [Tue, 29 Nov 2016 14:13:34 +0000 (15:13 +0100)]
LU-8869 build: Fix building of DEB packages

Building DEB packages failed with errors:
dh_install: lustre-dev missing files (debian/tmp/usr/lib/*.so.*)
and dpkg-checkbuilddeps: Unmet build dependencies.
Moreover, signing the DEB packages failed due signing problems
of the author listed in debian/changelog.
Additionally, latest DEB based distributions ship Lustre modules
from kernel staging which can conflict with modules build from
upstream. To fix the problem, build modules with
configure --with-kmp-moddir=updates and add search order
of "search updates built-in" in /etc/depmod.d/lustre.conf

Signed-off-by: Thomas Stibor <t.stibor@gsi.de>
Change-Id: I02c58103bfaa83b97f5cd207af823fb477e0f0d3
Reviewed-on: https://review.whamcloud.com/23999
Tested-by: Jenkins
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8724 utils: Use open() instead of opendir() with dirfd() 81/23981/6
Steve Guminski [Mon, 5 Dec 2016 19:39:16 +0000 (14:39 -0500)]
LU-8724 utils: Use open() instead of opendir() with dirfd()

Several llapi functions use opendir() and dirfd() to obtain a file
descriptor.  These calls are replaced with a single call to open().
This makes the code cleaner and more efficient.

This patch also corrects whitespace to match the Coding Style
Guidelines.

Test-Parameters: trivial
Signed-off-by: Steve Guminski <stephenx.guminski@intel.com>
Change-Id: I798165960fb500920b82adabe389975135ed3ac9
Reviewed-on: https://review.whamcloud.com/23981
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8776 build: Fix weird inline definitions 79/23979/2
Steve Guminski [Tue, 22 Nov 2016 18:43:52 +0000 (13:43 -0500)]
LU-8776 build: Fix weird inline definitions

This patch removes unnecessary inline keywords from functions
that do not have to be inlined.  It also corrects the ordering
of the keywords in several functions from "inline static" to
"static inline".

Test-Parameters: trivial
Signed-off-by: Steve Guminski <stephenx.guminski@intel.com>
Change-Id: I13dde114a803513b72d6497f42be460c4df06883
Reviewed-on: https://review.whamcloud.com/23979
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-7952 osp: Move strlen() call below LASSERT() 19/20919/5
Arshad Hussain [Tue, 21 Jun 2016 03:21:29 +0000 (08:51 +0530)]
LU-7952 osp: Move strlen() call below LASSERT()

This patch moves the strlen() call below LASSERT(). This
avoids a case when parameter to strlen() is NULL and
dereferencing the NULL pointer would cause fault before
it reaches LASSERT().

Signed-off-by: Arshad Hussain <arshad.hussain@seagate.com>
Change-Id: Ie7a683751cf44d7dfad6de1a9024c5fb7a35c35d
Reviewed-on: https://review.whamcloud.com/20919
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
7 years agoLU-7988 hsm: don't use a ptlrpc_thread struct for the cdt 61/22761/8
Frank Zago [Wed, 28 Sep 2016 15:08:07 +0000 (11:08 -0400)]
LU-7988 hsm: don't use a ptlrpc_thread struct for the cdt

Since only the waitq and the event flag from the ptlrpc_thread
structure are used, declare these directly and do not use the
ptlrpc_thread structure at all.

Test-Parameters: trivial testlist=sanity-hsm
Signed-off-by: frank zago <fzago@cray.com>
Change-Id: Iba63ac70ad381f7e40976ac423594eae46c5249b
Reviewed-on: https://review.whamcloud.com/22761
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Henri Doreau <henri.doreau@cea.fr>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-6142 socklnd: change UAPI typedefs to proper structure 06/18506/5
James Simmons [Mon, 12 Dec 2016 18:15:48 +0000 (13:15 -0500)]
LU-6142 socklnd: change UAPI typedefs to proper structure

The upstream kernel requires proper structures so
convert all the UAPI typedefs in socklnd.h.

Remove the inline function socklnd_init_msg.
Its only used by the kernel code and functions
are not allowed in UAPI headers.

Change-Id: I4120c5abc4dda456289146452ed61e0162062cea
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: https://review.whamcloud.com/18506
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8562 osp: fix precreate_cleanup_orphans/precreate_reserve race 11/22211/7
Sergey Cheremencev [Thu, 10 Nov 2016 15:30:53 +0000 (23:30 +0800)]
LU-8562 osp: fix precreate_cleanup_orphans/precreate_reserve race

osp_statfs_interpret can clear error in opd_pre_status despite of the
fact that osp_precreate_cleanup_orphans got error and doesn't know
exactly OST object last_id. Example:
1. mdt sends req "create objects x..y"
2. objects created. mdt gets OK
3. MDT->OST reconnection
4. MDT sends cleanup_orphans last_used_fid=x
5. OST removes x..y and sends reply OK and last_id=x
6. MDT->OST connection aborted. cleanup_orphans exits with EIO
7. osp_statfs_interpret changes opd_pre_status from EIO to 0
8. osp_precreate_reserve reserves object and changes last_used_id from x to x+1
9. connection restored. MDT sends cleanup_orphans last_id=x+1
In fine OST has a gap - object x was removed by cleanup_orphans.

So don't clear opd_pre_recovering until we get last_id from OST.

Change-Id: I1647053fdab9a0c9bf59a048b0814e7b2dec52f2
Signed-off-by: Sergey Cheremencev <sergey.cheremencev@seagate.com>
Seagate-bug-id: MRP-3693
Reviewed-on: https://review.whamcloud.com/22211
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8367 osp: do not block orphan cleanup 68/23168/17
Alex Zhuravlev [Fri, 14 Oct 2016 17:48:50 +0000 (20:48 +0300)]
LU-8367 osp: do not block orphan cleanup

do not block orphan cleanup till all reserved objects are consumed,
otherwise we risk to get into a livelock when one blocked thread
holding reservation can block recovery. instead ask OST to recreate
possible missing objects in our precreate window.

Change-Id: I066b0783cce54d7ecd25a08da5c76f211b7244f5
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: https://review.whamcloud.com/23168
Reviewed-by: Sergey Cheremencev <sergey.cheremencev@seagate.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8807 llite: check reply status in ll_migrate() 66/23666/2
Niu Yawei [Wed, 9 Nov 2016 02:43:36 +0000 (21:43 -0500)]
LU-8807 llite: check reply status in ll_migrate()

ll_migrate() should check reply status before trying to read
reply buffer, checking if request is NULL doesn't make sense.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I585844e0c1118fad23f19791dc95e34bc0d6e38a
Reviewed-on: https://review.whamcloud.com/23666
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-6374 tests: wait for zfs commit 88/23688/2
Niu Yawei [Thu, 10 Nov 2016 04:15:16 +0000 (23:15 -0500)]
LU-6374 tests: wait for zfs commit

wait_delete_completed_mds() should always wait for zfs commit to free
used space.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: If57e67841060d9f13ec3ba13e44f7b88a82301c5
Reviewed-on: https://review.whamcloud.com/23688
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Hongchao Zhang <hongchao.zhang@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8901 misc: update Intel copyright messages for 2016 33/24233/4
Andreas Dilger [Thu, 8 Dec 2016 08:35:18 +0000 (01:35 -0700)]
LU-8901 misc: update Intel copyright messages for 2016

Update copyright messages for files updated in 2016, excluding
trivial patches.

Add trivial patches to updatecw.sh script exclude list.  Improve
the output of patches causing the most changes to include the
patch summary instead of just the hash.

Test-Parameters: trivial
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Ifb098e8126f698ea975e10ba13f5f47c449ae4ad
Reviewed-on: https://review.whamcloud.com/24233
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-7765 tests: Fix replay-dual test_26 stderr redirection 65/18365/6
Oleg Drokin [Tue, 9 Feb 2016 17:05:30 +0000 (12:05 -0500)]
LU-7765 tests: Fix replay-dual test_26 stderr redirection

Using 2&>1 just redirects to a file named 1, while we need
to use 2>&1 to redirect to descriptor one.  In fact the
recommended form is &>/dev/null that means >/dev/null 2>&1.

Test-Parameters: trivial
Change-Id: I008e212cebe2f3d6f6c7b7ce000b508aaf63da38
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: https://review.whamcloud.com/18365
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
7 years agoLU-7735 utils: Allow revert of NO_PRIMNODE 04/18304/5
Sebastien Piechurski [Thu, 4 Feb 2016 16:45:16 +0000 (11:45 -0500)]
LU-7735 utils: Allow revert of NO_PRIMNODE

When formatting a target or modifying an existing one with the
parameter "--servicenode", the flag no_primnode is set on the target,
modifying the way the target is then registered on the MGS to avoid
adding the NID of the node actually registering and let only the nids
given with --servicenode parameters.

However, if someone wants to revert to the older behavior with the
"--failnode" parameter, the no_primnode flag is never unset, and the
primary node NID is never added to the mountdata.

Test-Parameters: trivial testlist=conf-sanity
Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: I2251f66236c91365c03e7d138cd8e6508956d73d
Reviewed-on: https://review.whamcloud.com/18304
Reviewed-by: Bob Glossman <bob.glossman@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>
7 years agoLU-8920 utils: don't print deactivated OSTs in "lfs df" 28/24228/2
Andreas Dilger [Wed, 7 Dec 2016 23:56:47 +0000 (16:56 -0700)]
LU-8920 utils: don't print deactivated OSTs in "lfs df"

Don't print deactivated OSTs or MDTs in "lfs df".  If they have
been deactivated then the sysadmin knows they are inactive so
there isn't much benefit to printing them all the time.  Only
print deactivated OSTs/MDTs if the new "-v" option is given.

Add long options for "-i" and "-h" (--inodes and --human-readable,
respectively) and sort the lfs_df() options to be alphabetical by
short option letter.

Move the "lfs df" manual to a separate "lfs-df.1" man page to
allow better description of the options and examples.

Add a "flags" argument to showdf() and mntdf() instead of adding
an every-growing list of boolean arguments to these functions.

Do space->tab conversion for affected functions.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I97917f0583373ffe645f68ed3cf8dbfbc48cab07
Reviewed-on: https://review.whamcloud.com/24228
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Steve Guminski <stephenx.guminski@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>
7 years agoLU-8906 mdd: Return rc in mdd_local_file_create() 41/24141/2
Henri Doreau [Mon, 5 Dec 2016 14:43:03 +0000 (15:43 +0100)]
LU-8906 mdd: Return rc in mdd_local_file_create()

rc was sometimes set but not returned, with no reason.

Change-Id: I30d1aa94aedce1dd974ff0da20b1491298d2d70e
Signed-off-by: Henri Doreau <henri.doreau@cea.fr>
Reviewed-on: https://review.whamcloud.com/24141
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@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>
7 years agoLU-8867 ksocklnd: ignore timedout TX on closing connection 73/23973/3
Liang Zhen [Mon, 28 Nov 2016 07:47:23 +0000 (15:47 +0800)]
LU-8867 ksocklnd: ignore timedout TX on closing connection

ksocklnd reaper thread always tries to close the connection for the
first timedout zero-copy TX. This is wrong if this connection is
already being closed, because the reaper will see the same TX again
and again and cannot find out other timedout zero-copy TXs and close
connections for them.

Change-Id: I4552f556f17910857e589a8ae27682d976fcd991
Signed-off-by: Liang Zhen <liang.zhen@intel.com>
Reviewed-on: https://review.whamcloud.com/23973
Tested-by: Jenkins
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8847 tests: llapi_fid_test uses incorrect parameters 39/23939/2
Steve Guminski [Thu, 24 Nov 2016 12:57:33 +0000 (07:57 -0500)]
LU-8847 tests: llapi_fid_test uses incorrect parameters

Several function calls in test12 were providing incorrect parameters.
The value "0600" was provided, in an attempt to create a file with
read/write access for the owner.  However, the parameters actually
represent the open flags, so the incorrect parameters were instead
requesting (O_EXCL | O_NOCTTY).

Since llapi_create_volatile_idx by default already uses
(O_RDWR | O_CREAT) and a mask of (S_IRUSR | S_IWUSR), there are no
further flags required.  For llapi_open_by_fid, only the minimum
O_RDONLY is required (the call should not attempt to create the
file).

Test-Parameters: trivial
Signed-off-by: Steve Guminski <stephenx.guminski@intel.com>
Change-Id: I5a1c9a014ab19a1a6a1901e2a8a091d4d65548f6
Reviewed-on: https://review.whamcloud.com/23939
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8305 tests: fix fileset setup in sanity-sec 36/23936/2
Sebastien Buisson [Thu, 24 Nov 2016 10:34:07 +0000 (11:34 +0100)]
LU-8305 tests: fix fileset setup in sanity-sec

In test_27 of sanity-sec, only set fileset on nodemap with
'set_param -P' command. This command will install the fileset info
into all servers including MGS. But we need to wait into
wait_nm_sync() for it to be set.

Test-Parameters: trivial testlist=sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec
Test-Parameters: trivial testlist=sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec
Test-Parameters: trivial testlist=sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec,sanity-sec
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I811ca29f5f58385dd5f76a069556865850065e3e
Reviewed-on: https://review.whamcloud.com/23936
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Kit Westneat <kit.westneat@gmail.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8811 mdc: avoid returning freed request 43/23843/2
John L. Hammond [Thu, 17 Nov 2016 17:39:19 +0000 (11:39 -0600)]
LU-8811 mdc: avoid returning freed request

In mdc_close() if ptlrpc_request_pack() fails then set req to NULL so
that an already freed request is not returned in *request.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I7460c650b736f51d78981f8a1e50758f7acf7c77
Reviewed-on: https://review.whamcloud.com/23843
Reviewed-by: Patrick Farrell <paf@cray.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
7 years agoLU-8846 lfs: try to unlink volatile file in lfs_migrate() 42/23842/3
John L. Hammond [Thu, 17 Nov 2016 17:32:15 +0000 (11:32 -0600)]
LU-8846 lfs: try to unlink volatile file in lfs_migrate()

In lfs_migrate() try to unlink the volatile file in case the MDT does
not support volatile file creation.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I1e777c22ebde22e0c2080683a2b13650da7ebc7a
Reviewed-on: https://review.whamcloud.com/23842
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8197 ptlrpc: set correct rq_timeout for normal replay reply 33/23833/3
Niu Yawei [Thu, 17 Nov 2016 14:07:02 +0000 (09:07 -0500)]
LU-8197 ptlrpc: set correct rq_timeout for normal replay reply

Fix from f3ce48ce543791d60326777d95ab2c9c03826965 introduced a
regression which set larger rq_timeout of normal replay reply
mistakenly, that result in incorrect estimated service time
increase during recovery.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: If62c94f6147e6d6d9ae5954e4847725e9cd66a67
Reviewed-on: https://review.whamcloud.com/23833
Tested-by: Jenkins
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Hongchao Zhang <hongchao.zhang@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8844 llite: delete lloop 17/23817/2
James Simmons [Wed, 16 Nov 2016 20:54:37 +0000 (15:54 -0500)]
LU-8844 llite: delete lloop

Since the migration to clio the lloop performance
has been far worst than the default loop back
device. Also lloop never worked on non x86 platforms.
Also newer kernel's loop back devices support
direct IO so their is no need for lloop anymore.

Change-Id: Iab029d4fcb223b01f07a1f279e2d4da8616fa93e
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: https://review.whamcloud.com/23817
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
7 years agoLU-8842 mdc: Make IT_OPEN take lookup bits lock 97/23797/2
Patrick Farrell [Wed, 16 Nov 2016 15:33:21 +0000 (09:33 -0600)]
LU-8842 mdc: Make IT_OPEN take lookup bits lock

Commit 8d161d44214f907a9f2d9cf5a79cd2c83de995c3 from
http://review.whamcloud.com/#/c/10205/3 accidentally
changed handling of IT_OPEN, making it take the
MDS_INODELOCK_UPDATE bits lock instead of
MDS_INODELOCK_LOOKUP.

This does not cause any known bugs.

Signed-off-by: Patrick Farrell <paf@cray.com>
Change-Id: Ia7269d8907ad41b6d53c8b106f33cab8afecb514
Reviewed-on: https://review.whamcloud.com/23797
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8836 lprocfs: move lprocfs_stats_[un]lock to a source file 73/23773/2
James Simmons [Tue, 15 Nov 2016 21:03:00 +0000 (16:03 -0500)]
LU-8836 lprocfs: move lprocfs_stats_[un]lock to a source file

There is no reason to export lprocfs_stats_alloc_one.
The reason is due to the functions lprocfs_stats_[un]lock
being inline functions in a header file. Lets untangle
this mess and turn those inline functions into real
functions in a source file.

Change-Id: I8e33f36226c54baa93c50beb716705d20a55fa58
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: https://review.whamcloud.com/23773
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
7 years agoLU-8826 recovery: don't shrink recovery hard time 16/23716/7
Niu Yawei [Fri, 11 Nov 2016 11:33:03 +0000 (06:33 -0500)]
LU-8826 recovery: don't shrink recovery hard time

1. Don't shrink recovery hard time, otherwise, soft limit will be
   very close to hard limit and hard timer can be expired easily
   during the 1st recovery stage: waiting for all clients
   connected, and VBR won't take effect at all. Added replay-vbr
   test_13 to verify this.
2. When exp_need_sync is set, all transactions on MDT/OST should
   be synchronous.
3. Removed unused target_client_add_cb().

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: Idbb011f2772d5c779c53c3e990ceef5a386e4b5b
Reviewed-on: https://review.whamcloud.com/23716
Tested-by: Jenkins
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8793 tests: add version check to conf-sanity.sh test_99 68/23668/2
Emoly Liu [Wed, 9 Nov 2016 06:12:28 +0000 (14:12 +0800)]
LU-8793 tests: add version check to conf-sanity.sh test_99

This patch adds Lustre version check codes into conf-sanity.sh
test_99 to make the test interoperate with servers that do not
have the following change:

Lustre-commit: 310fd9ced4e60d83d4f93ebf45f05654eff408cb
Lustre-change: http://review.whamcloud.com/21545

Test-Parameters: trivial testlist=conf-sanity
Signed-off-by: Emoly Liu <emoly.liu@intel.com>
Change-Id: I379388427c7824c21e5c1f65ec8e362ca1b7905c
Reviewed-on: https://review.whamcloud.com/23668
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8810 tests: skip non-crucial LFSCK intermediateness check 50/23650/2
Fan Yong [Thu, 11 Aug 2016 22:59:47 +0000 (06:59 +0800)]
LU-8810 tests: skip non-crucial LFSCK intermediateness check

Sometimes, because of system schedule issue, the test scripts
may miss to check some LFSCK intermediate status, but it will
not affect the LFSCK to detect and repair the inconsistency.
We can skip some non-crucial status check, but check the LFSCK
repaired things directly.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Ie356fa194b9ea7b9194b9fa9f8cf44a69d4c20db
Reviewed-on: https://review.whamcloud.com/23650
Tested-by: Jenkins
Reviewed-by: Jian Yu <jian.yu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8809 osp: print more opd_pre information in LASSERTF() 42/23642/2
Emoly Liu [Tue, 8 Nov 2016 01:44:07 +0000 (09:44 +0800)]
LU-8809 osp: print more opd_pre information in LASSERTF()

This patch is to print out the opd_pre_last_created_fid and
opd_pre_used_fid values in the LASSERT() from osp_statfs(),
so that we know what kind of values they contain.

Test-Parameters: trivial
Signed-off-by: Emoly Liu <emoly.liu@intel.com>
Change-Id: I9f525aa46fc0078d241b04767f5a2cebebeaf6b9
Reviewed-on: https://review.whamcloud.com/23642
Tested-by: Jenkins
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
7 years agoLU-4423 lov: check return value of lov_sub_get() 18/23618/4
Jinshan Xiong [Sat, 26 Nov 2016 16:24:56 +0000 (11:24 -0500)]
LU-4423 lov: check return value of lov_sub_get()

Check return value of lov_sub_get() in lov_io_read_ahead().

Linux-commit: f99e73a5e3ff556bc69e5e592fee18d4cb7600dd

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: Ic5403664c649b8f41861cf1bbfc68ab9ef537a15
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: https://review.whamcloud.com/23618
Tested-by: Jenkins
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
7 years agoLU-8801 quota: fix ldiskfs accounting iterator 83/23583/7
Niu Yawei [Fri, 4 Nov 2016 14:49:57 +0000 (10:49 -0400)]
LU-8801 quota: fix ldiskfs accounting iterator

walk_tree_dqentry() should always record the information of the
index block it walked through no matter if a valid entry is found
in this call, so that it can continue the next search from correct
position.

Added a test case in s-q to verify accounting iterator.

Reading proc file acct_user/group will become extremely slow when
there are large amount of id entries, because each seq->start():
lprocfs_quota_seq_start() calls it->next() one by one to move the
cursor to last processed position. This patch changed it to use the
it->load() on last processed key, and reading performance improved
significantly.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I2ddcd35e505233fa4de821fefa5fbe87be4dbe19
Reviewed-on: https://review.whamcloud.com/23583
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8790 test: Limit lock number by available inodes count 43/23543/2
Dmitry Eremin [Wed, 2 Nov 2016 14:32:39 +0000 (17:32 +0300)]
LU-8790 test: Limit lock number by available inodes count

For machines with big numbers of CPUs the count of files to create
is more than available inodes. So, the sanity::test_124b fails.

Test-Parameters: trivial

Change-Id: I544efbc0da7acc99f4f60010cb404d234b1db964
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-on: https://review.whamcloud.com/23543
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8789 build: add files to .gitignore 40/23540/3
Dmitry Eremin [Wed, 2 Nov 2016 13:55:07 +0000 (16:55 +0300)]
LU-8789 build: add files to .gitignore

Exclude files that are generated during the "make" build process.

Test-Parameters: trivial

Change-Id: I5a573d7842fec94616de5d016cc5aab99e813193
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-on: https://review.whamcloud.com/23540
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>
7 years agoLU-6210 libcfs: Change positional struct initializers to C99 32/23332/3
Steve Guminski [Wed, 26 Oct 2016 17:47:01 +0000 (13:47 -0400)]
LU-6210 libcfs: Change positional struct initializers to C99

This patch makes no functional changes.  Struct initializers in the
libcfs directory that use C89 or GCC-only syntax are updated to C99
syntax.

The C99 syntax prevents incorrect initialization if values are
accidently placed in the wrong position, allows changes in the struct
definition, and clears any members that are not given an explicit
value.

The following struct initializers have been updated:

libcfs/include/libcfs/libcfs_crypto.h:
static struct cfs_crypto_hash_type hash_types[]
libcfs/libcfs/linux/linux-debug.c:
static struct notifier_block libcfs_panic_notifier
libcfs/libcfs/linux/linux-module.c:
struct miscdevice libcfs_dev
libcfs/libcfs/util/nidstrings.c:
static struct netstrfns  libcfs_netstrfns[]

Test-Parameters: trivial
Signed-off-by: Steve Guminski <stephenx.guminski@intel.com>
Change-Id: I75479a0ff751e710259374f34cf0dada977e5d8a
Reviewed-on: https://review.whamcloud.com/23332
Reviewed-by: Frank Zago <fzago@cray.com>
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: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8703 libcfs: fix error messages 07/23307/3
Dmitry Eremin [Fri, 21 Oct 2016 12:48:11 +0000 (15:48 +0300)]
LU-8703 libcfs: fix error messages

Don't treat unability to set CPU partition affinity as error.

Change-Id: I9ccbef76e05f1a5f75b648610b5a71389ed0d6e1
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-on: https://review.whamcloud.com/23307
Reviewed-by: Patrick Farrell <paf@cray.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8739 test: disable DNE in racer for old MDSs 73/23273/2
John L. Hammond [Thu, 20 Oct 2016 14:32:03 +0000 (09:32 -0500)]
LU-8739 test: disable DNE in racer for old MDSs

In racer.sh add environtmental variables RACER_ENABLE_REMOTE_DIRS,
RACER_ENABLE_STRIPED_DIRS, and RACER_ENABLE_MIGRATION to enable or
disable the corresponding operations. RACER_ENABLE_REMOTE_DIRS
defaults to true only if the MDS version is at least 2.5, while
RACER_ENABLE_STRIPED_DIRS and RACER_ENABLE_MIGRATION default to true
only if the MDS version is at least 2.8.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I88b6350bd5abef4e13055a0a2ab68692367a6a5d
Reviewed-on: https://review.whamcloud.com/23273
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
7 years agoLU-8684 mgs: prevent duplicate pool to be added to the log 84/23184/8
Jadhav Vikram [Fri, 14 Oct 2016 04:56:34 +0000 (10:26 +0530)]
LU-8684 mgs: prevent duplicate pool to be added to the log

pool proc entry get created through mgc process running on
client or mdt's, mgs is not aware about pool proc entrys, so
mgs failed to check pool already exist, it simply writes the
pool operation logs into logfile of client or mdt's. lctl
pool_new for existing pool will only write logs and succeed
on mgs, mgc running on client or mdt's process the log to
create pool and cause the warning message proc already
registered for that existing pool.

Changes prevents the duplicate pool to be added to the log
mgs check pool creation logs of client and mdt's logfile
to figure out attempt of duplicate pool creation.

Signed-off-by: Jadhav Vikram <jadhav.vikram@seagate.com>
Change-Id: Ia80d116f552c5f718df99589906404b58f17d85e
Reviewed-on: https://review.whamcloud.com/23184
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Jenkins
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8538 tests: Silence conf-sanity 63 on debug kernel 21/22121/7
Oleg Drokin [Wed, 24 Aug 2016 20:33:52 +0000 (16:33 -0400)]
LU-8538 tests: Silence conf-sanity 63 on debug kernel

On debug kernels every slab only takes whole page at all
times no matter the size, so silence the misleading error then.

Change-Id: I051b98a1200f61c38966e0be7543bf884efbc22c
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: https://review.whamcloud.com/22121
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
7 years agoLU-7714 osd: propagate errors in osd_objset_open() 95/21495/2
John L. Hammond [Mon, 25 Jul 2016 13:36:48 +0000 (08:36 -0500)]
LU-7714 osd: propagate errors in osd_objset_open()

In osd_objset_open() replace GOTO(out, -ENOTSUPP) with
GOTO(out, rc = -ENOTSUPP).

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I30465664a8f50c278335fe5ebcbc5f228e33c25f
Reviewed-on: https://review.whamcloud.com/21495
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Henri Doreau <henri.doreau@cea.fr>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
7 years agoLU-8403 obd: remove OBD_NOTIFY_CREATE 20/21420/5
John L. Hammond [Tue, 19 Jul 2016 14:16:15 +0000 (09:16 -0500)]
LU-8403 obd: remove OBD_NOTIFY_CREATE

None of the obd_notify() handlers listen for the OBD_NOTIFY_CREATE
event, so remove it and its sole use in lov_add_target().

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I976b2215ba4b8fecf170a4efd3d7ec642183daaf
Reviewed-on: https://review.whamcloud.com/21420
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Ben Evans <bevans@cray.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
7 years agoLU-8295 tests: comply with OBD_RACE() behavior 17/21117/12
Bruno Faccini [Thu, 30 Jun 2016 23:11:14 +0000 (01:11 +0200)]
LU-8295 tests: comply with OBD_RACE() behavior

Have conf-sanity/test_41c better comply with OBD_RACE() internal
behavior when creating a racy situation with 2 similar mount
cmds being run in parallel.

CFS_FAIL_ONCE must be set, and fail_loc must only be reset when
it is sure that both mount commands have reached the race
rendez-vous, in order to have OBD_RACE() behave as expected.

start() function is no longer used to avoid extra tools which
surround mount command to interfer due to concurrency.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: Ic513c82c4fd1395d88144cf1c590a08dfd3c11e5
Reviewed-on: https://review.whamcloud.com/21117
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-6449 mdt: correct status and ChangeLogs for dead objects 77/21077/13
Bruno Faccini [Wed, 29 Jun 2016 17:06:21 +0000 (19:06 +0200)]
LU-6449 mdt: correct status and ChangeLogs for dead objects

This patch is an addon of first patch for LU-6449
(Gerrit change http://review.whamcloud.com/20991) which implements
the feature of broadcasting HSM remove requests, with no/0 archive_id
specified, to all currently registered archives.

hsm_cdt_request_completed() has been fixed to no longer only return
SUCCEED status for HSM requests on dead objects but effective status
and also to create associated ChangeLog records. This last change
has required to also change mdd/ChangeLog interface to allow to
specify a FID, and to use this way extensively.
Error case in retry-mode has also been fixed to allow layout-lock
to be released.

sanity-hsm/test_[220a,222[c,d],224a] have been added to check correct
behavior.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: I5885cc8feb2b3d50bfc691706401c7c19ba78f72
Reviewed-on: https://review.whamcloud.com/21077
Tested-by: Jenkins
Reviewed-by: Hongchao Zhang <hongchao.zhang@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-6449 hsm: handle completions with non-existent objects 12/22212/3
Bruno Faccini [Mon, 29 Aug 2016 13:20:48 +0000 (15:20 +0200)]
LU-6449 hsm: handle completions with non-existent objects

In hsm_cdt_request_completed() release the layout lock for a completed
restore regardless of whether the object existed. Rewrite
hsm_swap_layouts() to accept the already found object rather than its
FID. Add a comment to mdt_object_unlock() that the object passed may
be NULL.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: I571df2dab25822ba5a4e40c60018871051140f93
Reviewed-on: https://review.whamcloud.com/22212
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>
7 years agoLU-7845 obd: add 'network' client mount option 92/19792/24
Sebastien Buisson [Tue, 26 Apr 2016 09:01:00 +0000 (11:01 +0200)]
LU-7845 obd: add 'network' client mount option

Add a 'network' mount option on client side. All connections made by
the client must be on the LNet network specified in the 'network'
option.

This option can be useful in case of several Lustre client mount
points on the same node, with each mount point using a different
network. It is also interesting when running Lustre clients from
containers, by restricting each container to a specific network.

This new option is added by tampering with two config commands:
- setup: add a fourth parameter, which is the net to restrict
  connections to. This parameter will be passed down to
  ptlrpc_uuid_to_peer() so that client only connects to peers on the
  restricted network.
- add_conn: skip this command if uuid to connect to is not on
  restricted network.

Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: Ica7ab6ebe7c2c9e7b0409b615e90d9271c31e92f
Reviewed-on: https://review.whamcloud.com/19792
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-7605 test: Skip sanityn test_78 55/19055/8
Wei Liu [Tue, 25 Oct 2016 21:41:20 +0000 (14:41 -0700)]
LU-7605 test: Skip sanityn test_78

Skip sanityn test_78 if server version is older than 2.7.58

Test-Parameters: trivial testlist=sanityn

Change-Id: Ief602524f72cdab73c39ec1181f99bb27b33da37
Signed-off-by: Wei Liu <wei3.liu@intel.com>
Reviewed-on: https://review.whamcloud.com/19055
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Saurabh Tandan <saurabh.tandan@intel.com>
7 years agoLU-7845 gss: support namespace in lgss_keyring 81/18781/35
Sebastien Buisson [Thu, 14 Jan 2016 16:57:10 +0000 (17:57 +0100)]
LU-7845 gss: support namespace in lgss_keyring

When we want Kerberos authentication for a Lustre client run from
a Docker container, it is necessary that request_key() forwards
to lgss_keyring userland helper sufficient information regarding
the namespace from which mount command was launched. That way,
helper function can bind to caller's namespace, and retrieve
Kerberos credentials of the container.

To achieve this:
- add a lpi_reftask field to struct llog_process_info: this is the
  task_struct of the process initiating the mount;
- use lpi_reftask to put llog_process_thread_daemonize thread in
  same namespace as calling llog_process_or_fork();
- add a reference PID to struct obd_import: this is the PID of
  the init process of the namespace from which the import
  creation was originated;
- use reference PID from struct obd_import as a new 'pid' parameter
  to call-out information sent from kernel space to userspace
  via request-key;
- in lgss_keyring, if necessary perform credentials retrieval
  in caller's namespace, thanks to a call to 'setns'.

For user's credentials, use current PID instead of import's
reference PID to get the reference namespace.

Change-Id: I934ed857fdf323e55a2a5acf06e8799c3a6421f0
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-on: https://review.whamcloud.com/18781
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: Li Xi <lixi@ddn.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-6142 lnet: change lnet selftest UAPI typedefs to proper structure 88/24188/4
James Simmons [Wed, 7 Dec 2016 01:34:43 +0000 (20:34 -0500)]
LU-6142 lnet: change lnet selftest UAPI typedefs to proper structure

The upstream kernel requires proper structures so
convert all the UAPI typdefs in lnetst.h.

Test-Parameters: trivial testlist=lnet-selftest

Change-Id: I6a342e91a5331a946b74a01229deed2bfa6b6441
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: https://review.whamcloud.com/24188
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
7 years agoLU-8832 tests: Generalize check of virtual machine 74/23774/4
James Nunez [Tue, 15 Nov 2016 21:05:49 +0000 (14:05 -0700)]
LU-8832 tests: Generalize check of virtual machine

The patch for LU-8248, commit 39582273a7a52fb, we added a
function, called running_in_vm(), to check if the test is
being run in a VM and, if so, ignore the performance
results. The check for running in a VM needs to be updated
to run correctly in a SLES environment.

Test-Parameters: trivial clientdistro=sles11sp4 mdsdistro=sles11sp4 ossdistro=sles11sp4 testlist=sanity
Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: Iebca20c6be81da7fef18e7d486cb59e3f3877eaa
Reviewed-on: https://review.whamcloud.com/23774
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>
7 years agoLU-8640 tests: relax time check of sanity-hsm test_16 25/22725/2
Chennaiah Palla [Mon, 26 Sep 2016 06:35:41 +0000 (12:05 +0530)]
LU-8640 tests: relax time check of sanity-hsm test_16

If the copytool and test script round clock time in a
different way, a strict time check would causes failure.

Seagate-bug-id: MRP-3436
Signed-off-by: Chennaiah Palla <chennaiah.palla@seagate.com>
Change-Id: Ie30c4366f5f9c4afab64f6825b907bf04d8419ab
Reviewed-on: https://review.whamcloud.com/22725
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-7264 mdd: refactor changelog handling for XATTR ops 97/22697/6
Henri Doreau [Fri, 23 Sep 2016 08:07:40 +0000 (10:07 +0200)]
LU-7264 mdd: refactor changelog handling for XATTR ops

Add a helper function mdd_xattr_changelog_type() to determine the changelog
type to store when setting/deleting an xattr, if applicable.

Change-Id: I2a0d1d524c3a7c33da96ee470fe14ad13fd8638c
Signed-off-by: Henri Doreau <henri.doreau@cea.fr>
Reviewed-on: https://review.whamcloud.com/22697
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
7 years agoLU-8627 test: wait on MDS for ost-pool proc entry to update 53/22653/6
Bhagyesh Dudhediya [Wed, 30 Nov 2016 14:06:04 +0000 (19:36 +0530)]
LU-8627 test: wait on MDS for ost-pool proc entry to update

Many of the ost-pools test cases fail on the setup having
separate MGS and MDS.

The lctl pool commands are ran on MGS. The tests involving the
pools fail if the pool configurations are not updated on client
and/or MDS side.

This patch adds wait for pool configuration propogation on MDS(s)
on various occassions like pool creation, adding targets to the
pool, removing targets from the pool, destroying the pool, etc.

Seagate-Bug-id: MRP-2929
Signed-off-by: Bhagyesh Dudhediya <bhagyesh.dudhediya@seagate.com>
Change-Id: Ib4bde368f8068b0d32f89e905cf80a27032bd41e
Reviewed-on: http://es-gerrit.xyus.xyratex.com:8080/10132
Reviewed-by: Ashish Purkar <ashish.purkar@seagate.com>
Reviewed-by: Ujjwal Lanjewar <ujjwal.lanjewar@seagate.com>
Reviewed-by: Elena V. Gryaznova <elena.gryaznova@seagate.com>
Tested-by: Jenkins
Tested-by: Elena V. Gryaznova <elena.gryaznova@seagate.com>
Reviewed-on: https://review.whamcloud.com/22653
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
7 years agoLU-8619 lbuild: update ZFS to use 0.6.5.8 71/22571/11
Andreas Dilger [Fri, 16 Sep 2016 22:33:28 +0000 (16:33 -0600)]
LU-8619 lbuild: update ZFS to use 0.6.5.8

Load zfs modules during create_zpool and import_zpool since the zfs
modules are no longer autoloaded.

Update lbuild to build against ZFS 0.6.5.8.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I04082cd6cd43c98477100f9fc308666e1b3ebbe5
Reviewed-on: https://review.whamcloud.com/22571
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8596 tests: lnet-selftest test failed. 29/22429/3
Arshad Hussain [Wed, 13 Jul 2016 21:14:25 +0000 (02:44 +0530)]
LU-8596 tests: lnet-selftest test failed.

lnet-selftest saturates the network while it is running.
This patch updates lnet-selftest to unmount client so
that it may not hamper the testing. The clients mount
are restored after the test completes.

Test-Parameters: trivial testlist=lnet-selftest
Signed-off-by: Arshad Hussain <arshad.hussain@seagate.com>
Signed-off-by: Abrarahmed Momin <abrar.habib@seagate.com>
Seagate-bug-id: MRP-2764
Change-Id: I76cda974cada9078e2671e1b505ed1c52f46e9ae
Reviewed-by: Ashish Purkar <ashish.purkar@seagate.com>
Reviewed-by: Elena V. Gryaznova <elena.gryaznova@seagate.com>
Tested-by: Elena V. Gryaznova <elena.gryaznova@seagate.com>
Reviewed-on: https://review.whamcloud.com/22429
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8586 test: Fix failure due to mixed OST size. 43/22343/3
Arshad Hussain [Sat, 2 Jul 2016 02:39:53 +0000 (08:09 +0530)]
LU-8586 test: Fix failure due to mixed OST size.

Test(pios_ssf) was failing intermittently, because during the
setup, OST's were created with different size. This leads to
smaller OST filling up much faster during the pios run. Once
an OST's is full any subsequent write to FS returns ENOSPC.

This patch modifies function space_check() to determine
available space information by calculating
smallest size "OST x OSTCOUNT". Earlier it was returning
"summary" information as reported by "lfs df".

Test-Parameters: trivial testlist=sanity-benchmark
Signed-off-by: Arshad Hussain <arshad.hussain@seagate.com>
Change-Id: Icec25e9857e5ba45f6bec1265c5697ecd92a7751
Seagate-bug-id: MRP-3243
Reviewed-by: Rahul Deshmukh <rahul.deshmukh@seagate.com>
Reviewed-by: Ashish Purkar <ashish.purkar@seagate.com>
Reviewed-by: Vladimir Saveliev <vladimir.saveliev@seagate.com>
Tested-by: Elena V. Gryaznova <elena.gryaznova@seagate.com>
Reviewed-on: https://review.whamcloud.com/22343
Tested-by: Maloo <hpdd-maloo@intel.com>
Tested-by: Jenkins
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Reviewed-by: Elena Gryaznova <elena.gryaznova@seagate.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8515 osc: Send RPCs when extents are full 12/22012/12
Patrick Farrell [Fri, 7 Oct 2016 20:51:19 +0000 (15:51 -0500)]
LU-8515 osc: Send RPCs when extents are full

Currently, Lustre decides to send an RPC under a number of
conditions (such as memory pressure or lock cancellcation);
one of the conditions it looks for is "enough dirty pages
to fill an RPC". This worked fine when only one process
could be dirtying pages at a time, but in newer Lustre
versions, more than one process can write to the same
file (and the same osc object) at once.

In this case, the "count dirty pages method" will see there
are enough dirty pages to fill an RPC, but since the dirty
pages are being created by multiple writers, they are not
contiguous and will not fit in to one RPC. This resulted in
many RPCs of less than full size being sent, despite a
good I/O pattern. (Earlier versions of Lustre usually
send only full RPCs when presented with this pattern.)

Instead, we remove this check and add extents to a special
full extent list when they reach max pages per RPC, then
send from that list. (This is similar to high priority
and urgent extents.)

With a good I/O pattern, like usually used in benchmarking,
it should be possible to send only full size RPCs. This
patch achieves that without degrading performance in other
cases.

In IOR tests with multiple writers to a single file,
this patch improves performance by several times, and
returns performance to equal levels (single striped files)
or much greater levels (very high speed OSTs, files
with many stripes) vs earlier versions.

Supporting data is provided in LU-8515.

Signed-off-by: Patrick Farrell <paf@cray.com>
Change-Id: Icc3c99b953d11f774600996648c9b20ed1f81f89
Reviewed-on: https://review.whamcloud.com/22012
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@seagate.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8491 quota: sleep while holding spinlock 23/21923/7
Niu Yawei [Mon, 15 Aug 2016 08:31:53 +0000 (04:31 -0400)]
LU-8491 quota: sleep while holding spinlock

Revise the memory allocation code in qmt_glimpse_lock() to avoid
sleep while holding spinlock.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I75d5751910906984c31454d4567f58d769af5d51
Reviewed-on: https://review.whamcloud.com/21923
Reviewed-by: Fan Yong <fan.yong@intel.com>
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>
7 years agoLU-8364 ldiskfs: fixes for failover mode. 41/21141/7
Lokesh Nagappa Jaliminche [Fri, 25 Nov 2016 10:47:09 +0000 (16:17 +0530)]
LU-8364 ldiskfs: fixes for failover mode.

when ldiskfs runs in failover mode with read-only disk,
it may loose part of allocation updates and fail while
mounting fs due to group descriptor checks before journal
replay.
don't produce panic's with on disk checks in read-only mode.

Seagate-bug-id: MRP-797
Change-Id: I54bee3a0aeb9a15f5ee2a79f7a2a2a905f19af1a
Signed-off-by: Alexey Lyashkov <alexey_lyashkov@xyratex.com>
Signed-off-by: Lokesh Nagappa Jaliminche <lokesh.jaliminche@seagate.com>
Reviewed-on: https://morpheus.xyus.xyratex.com:8443/gerrit/239
Reviewed-by: Andrew Perepechko <Andrew_Perepechko@xyratex.com>
Reviewed-by: Alexander Zarochentsev <alexander_zarochentsev@xyratex.com>
Tested-by: Alexander Lezhoev <Alexander_Lezhoev@xyratex.com>
Reviewed-by: Vitaly Fertman <Vitaly_Fertman@xyratex.com>
Reviewed-on: https://review.whamcloud.com/21141
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
7 years agoLU-8351 ptlrpc: allow blocking asts to be delayed 65/21065/6
Vladimir Saveliev [Wed, 29 Jun 2016 13:10:24 +0000 (16:10 +0300)]
LU-8351 ptlrpc: allow blocking asts to be delayed

ptlrpc_import_delay_req() refuses to delay blocking asts when import
is not in LUSTRE_IMP_FULL yet. That leads to client eviction assuming
that it failed to respond.

Allow delays for blocking asts being resent.

Signed-off-by: Vladimir Saveliev <vladimir.saveliev@seagate.com>
Seagate-bug-id: MRP-3500
Change-Id: I0e5cde9636afd48cc6cb565f586a59bc7ec01810
Reviewed-on: https://review.whamcloud.com/21065
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8272 ldlm: Use interval tree to update kms 79/20779/10
Patrick Farrell [Tue, 6 Dec 2016 18:38:33 +0000 (12:38 -0600)]
LU-8272 ldlm: Use interval tree to update kms

Currently, ldlm_extent_shift_kms does a linear search of
the list of granted locks on the resource when looking for
the lock to use to update the kms.

This can be avoided by using the interval trees which store
the extents of granted locks.  For PW/write locks, the lock
with the highest start must be the lock with the highest
end as well, so we can walk the interval tree in reverse to
almost immediately find the new 'highest end'.

Since the tree is sorted by 'start' and PR locks can
overlap, we cannot easily use the tree to find the PR lock
with the 'highest end'.  So we cannot optimize this case,
but many PR locks with different extents should be rare, so
this is OK (and it is no worse than what we do now).

Signed-off-by: Patrick Farrell <paf@cray.com>
Change-Id: I9efa4733e691cb2299049ba917325b939be52069
Reviewed-on: https://review.whamcloud.com/20779
Reviewed-by: Vitaly Fertman <vitaly.fertman@seagate.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-6838 llog: limit file size of plain logs 28/18028/12
Alex Zhuravlev [Mon, 18 Jan 2016 06:24:19 +0000 (09:24 +0300)]
LU-6838 llog: limit file size of plain logs

on small filesystems plain log can grow dramatically. especially
given large record sizes produced by DNE and extended chunksize.
I saw >50% of space consumed by a single llog file which was still
in use. this leads to test failures (sanityn, etc).
the patch introduces additional limit on plain llog size, which
is calculated as <free space>/64 (128MB at most) at llog creation
time.

Change-Id: I0eab8177d4e416a32a6aab56d47e4142c81d13de
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: https://review.whamcloud.com/18028
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8813 gss: allow svcgssd to start without "-k" 25/23925/4
Andreas Dilger [Wed, 23 Nov 2016 19:55:40 +0000 (12:55 -0700)]
LU-8813 gss: allow svcgssd to start without "-k"

Previous versions of svcgssd did not require the "-k" option when
running in Kerberos mode (the only mode available).  If none of
the -k, -s, or -z options are given for enabling security flavours
then assume "-k" for compatibility reasons.

This will generate a warning before 3.1 is released, at which point
it will turn into an error.

Make the use of -s an error if SSK is not available.

Test-Parameters: trivial testlist=sanity-sec
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I9b7389bbca56d6717f02b21f57da52adc4602971
Reviewed-on: https://review.whamcloud.com/23925
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@seagate.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8740 lfsck: hold lock when access trace file object 01/23301/2
Fan Yong [Sun, 31 Jul 2016 15:49:36 +0000 (23:49 +0800)]
LU-8740 lfsck: hold lock when access trace file object

There is race condition between lfsck_in_notify() access the trace
file object and the lfsck_namespace_load_sub_trace_files() that may
re-create the trace file. Hold lfsck_sub_trace_obj::lsto_mutex and
check check the validaty of the trace file object to avoid trouble.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I9715524dd7027f5fc8c7078c1a52d099e9e21132
Reviewed-on: https://review.whamcloud.com/23301
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>
7 years agoLU-8590 utils: remove duplicate code in lgss_sk 22/23722/8
Andreas Dilger [Fri, 11 Nov 2016 17:14:00 +0000 (10:14 -0700)]
LU-8590 utils: remove duplicate code in lgss_sk

Remove the code duplication between creating a new keyfile and
modifying an existing keyfile.

Test-Parameters: trivial
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Id8f8ec535eb7e076ce70cd765e5c3c86ae686236
Reviewed-on: https://review.whamcloud.com/23722
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoNew tag 2.9.50 2.9.50 v2_9_50 v2_9_50_0
Oleg Drokin [Wed, 7 Dec 2016 23:36:12 +0000 (18:36 -0500)]
New tag 2.9.50

Starting on 2.10 release development cycle.

Change-Id: Ice84a19037602b4d9041f7d4dd67c21d0c4cd41e
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoNew Lustre release 2.9.0 b2_9 2.9.0 v2_9_0 v2_9_0_0
Oleg Drokin [Wed, 7 Dec 2016 23:33:07 +0000 (18:33 -0500)]
New Lustre release 2.9.0

Change-Id: I8a9dfb3eea3c42419a148e006c1b31a86cd8785b
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoNew tag 2.9.0-RC1 2.9.0-RC1 v2_9_0_RC1
Oleg Drokin [Thu, 24 Nov 2016 04:43:00 +0000 (23:43 -0500)]
New tag 2.9.0-RC1

Change-Id: I9155a8ac38a4038a1958d8f17e0bcda1ec55f5f9
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8590 utils: fix minor issues in lgss_sk usage 91/23691/9
Andreas Dilger [Thu, 10 Nov 2016 05:21:00 +0000 (22:21 -0700)]
LU-8590 utils: fix minor issues in lgss_sk usage

Print warning message if secret keyfile has permissive access mode.
Improve error messages to start with either "error:" or "warning:".

Add "--key-bits" long option for "-k", and "--integrity" for "-i".
Don't print "Prime (p):" field with "-r" if no prime key is stored.
Improve usage message and man page for lgss_sk utility.

Test-Parameters: trivial
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I8c36f0f20a0144b351b51c2d25edad9c8bd0d050
Reviewed-on: http://review.whamcloud.com/23691
Tested-by: Jenkins
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8838 kernel: kernel update RHEL6.8 [2.6.32-642.11.1.el6] 58/23858/4
Bob Glossman [Tue, 15 Nov 2016 20:57:00 +0000 (12:57 -0800)]
LU-8838 kernel: kernel update RHEL6.8 [2.6.32-642.11.1.el6]

Update RHEL6.8 kernel to 2.6.32-642.11.1.el6

Test-Parameters: trivial clientdistro=el6.8 mdsdistro=el6.8 ossdistro=el6.8 \
  mdsfilesystemtype=ldiskfs mdtfilesystemtype=ldiskfs \
  ostfilesystemtype=ldiskfs testgroup=review-ldiskfs

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I37d33dfe09c7579d14692f9695e7042a2a1e2fb3
Reviewed-on: http://review.whamcloud.com/23858
Tested-by: Jenkins
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8861 doc: Update llapi_ladvise man page 01/23901/2
James Nunez [Tue, 22 Nov 2016 18:56:54 +0000 (11:56 -0700)]
LU-8861 doc: Update llapi_ladvise man page

Correct the input parameters for the llapi_ladvise routine
in the llapi_ladvise man page. The struct llapi_ladvise
expects is llapi_lu_ladvise.

Test-Parameters: trivial
Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: I30d55813a02a1d2d8f23db44b1f118f2cf7b6803
Reviewed-on: http://review.whamcloud.com/23901
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>
7 years agoLU-8559 llite: fix ll_create_nd for non HAVE_IOP_ATOMIC_OPEN 58/23758/5
Jinshan Xiong [Mon, 14 Nov 2016 22:51:39 +0000 (14:51 -0800)]
LU-8559 llite: fix ll_create_nd for non HAVE_IOP_ATOMIC_OPEN

Invoke ll_new_node() with LUSTRE_OPC_CREATE for non
HAVE_IOP_ATOMIC_OPEN case so that it can recognize volatile
file name.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: Ia38d353844dc4852dbaa308fe26f450108a009ea
Reviewed-on: http://review.whamcloud.com/23758
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8824 nodemap: load nodemap definitions first 49/23849/2
Kit Westneat [Wed, 16 Nov 2016 16:31:35 +0000 (11:31 -0500)]
LU-8824 nodemap: load nodemap definitions first

ZFS index files return keys in hash order instead of key numerical
order. This means that nodemap definitions could be returned after
the ID mapping and range definitions, causing the load code to break.
This change loads the config in two passes, ensuring that the nodemap
creation would occur first.

Test-Parameters: envdefinitions=SLOW=yes testlist=sanity-sec
Test-Parameters: envdefinitions=SLOW=yes mdtfilesystemtype=zfs mdsfilesystemtype=zfs ostfilesystemtype=zfs testlist=sanity-sec
Signed-off-by: Kit Westneat <kit.westneat@gmail.com>
Change-Id: I97dac2e8fb2e7f2e0a0a6bd07f743d3379178890
Reviewed-on: http://review.whamcloud.com/23849
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8805 tests: fix defect introduced by LU-8226 61/23861/2
Elena Gryaznova [Fri, 18 Nov 2016 19:29:34 +0000 (21:29 +0200)]
LU-8805 tests: fix defect introduced by LU-8226

client loads run_tar.sh, run_dd.sh, etc. are
executed on remote nodes; ps -C does not select them
on main client.

Test-parameters: trivial testlist=recovery-mds-scale

Seagate-bug-id: MRP-4011
Signed-off-by: Elena Gryaznova <elena.gryaznova@seagate.com>
Change-Id: Iaa066298f96b14af148007410f29f5c7b965ee2c
Reviewed-on: http://review.whamcloud.com/23861
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8738 tests: ladvise dontneed test write to single OST 67/23867/2
James Nunez [Fri, 18 Nov 2016 20:49:45 +0000 (13:49 -0700)]
LU-8738 tests: ladvise dontneed test write to single OST

sanity test 255b exercises the ladvise hint 'dontneed' by
checking total cache and cache used on a single OST. Limit
the file striping to a single OST for the file created for
this test.

Test-Parameters: trivial testlist=sanity,sanity,sanity
Test-Parameters: trivial testlist=sanity,sanity,sanity
Test-Parameters: trivial testlist=sanity,sanity,sanity
Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: Iee08576726fc56bc9e7aa961c22819265c31f69b
Reviewed-on: http://review.whamcloud.com/23867
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Wei Liu <wei3.liu@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8774 lprocfs: not use MAX_STRING_SIZE in copy_from_user 62/23462/4
Jian Yu [Mon, 31 Oct 2016 06:26:45 +0000 (14:26 +0800)]
LU-8774 lprocfs: not use MAX_STRING_SIZE in copy_from_user

This patch removes the usage of MAX_STRING_SIZE from
copy_from_user() and just copies enough bytes to cover
count passed in.

Signed-off-by: Jian Yu <jian.yu@intel.com>
Change-Id: I1ac2c779b5cd984f88bb85d4ae8d571f7931091f
Reviewed-on: http://review.whamcloud.com/23462
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8418 libcfs: remove lnet upcall code 40/21440/6
Alexander Zarochentsev [Thu, 10 Sep 2015 06:26:43 +0000 (09:26 +0300)]
LU-8418 libcfs: remove lnet upcall code

Removing lnet upcall infrastructure completely
as nobody uses it anymore. The upcall causes a delay
before calling BUG() and might even cause a hang
making getting a crash dump unreliable or containing
outdated info.

Change-Id: I20af6874116542d16bcc9a9eb75c813a124e346d
Seagate-bug-id: MRP-2939
Signed-off-by: Alexander Zarochentsev <alexander.zarochentsev@seagate.com>
Reviewed-on: http://review.whamcloud.com/21440
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8655 tests: customize run_mdtest() 50/22850/4
Elena Gryaznova [Fri, 30 Sep 2016 17:57:58 +0000 (20:57 +0300)]
LU-8655 tests: customize run_mdtest()

Sometimes it is required to run mdtest with parameters
missing in run_mdtest() cmd.
Now these parameters can be specified by mdtest_custom_params.

Test-Parameters: trivial envdefinitions=ONLY=mdtestssf testlist=parallel-scale
Test-Parameters: trivial envdefinitions=ONLY=mdtestfpp testlist=parallel-scale
Seagate-bug-id: MRP-3376
Signed-off-by: Elena Gryaznova <elena.gryaznova@seagate.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@seagate.com>
Reviewed-by: Alexander Zarochentsev <alexander.zarochentsev@seagate.com>
Change-Id: If07f07ebf11516195843e497c5f97bbdadeb531b
Reviewed-on: http://review.whamcloud.com/22850
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8824 nodemap: properly handle errors loading nodemap conf 78/23778/4
Kit Westneat [Wed, 16 Nov 2016 00:08:13 +0000 (19:08 -0500)]
LU-8824 nodemap: properly handle errors loading nodemap conf

Modifies mgc_process_recover_nodemap_log to properly handle errors
returned by nodemap_process_idx_pages. Previously, these errors were
ignored.

Signed-off-by: Kit Westneat <kit.westneat@gmail.com>
Change-Id: Icf0590eddf45d86a72623aeda863aee064993953
Reviewed-on: http://review.whamcloud.com/23778
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8129 tests: add version check to sanity.sh test_102n 87/23687/3
Emoly Liu [Fri, 18 Nov 2016 07:18:02 +0000 (15:18 +0800)]
LU-8129 tests: add version check to sanity.sh test_102n

We don't support the LFSCK compatibility between Lustre-2.9 and
Lustre-2.6 any more, so this patch is to add version check to
sanity.sh test_102n to make the test interoperate with the clients
that do not have the following change:
Lustre-commit: fd4ab6e6ae877c88e46c35c517349285aa6226d2
Lustre-change: http://review.whamcloud.com/20112

Test-Parameters: trivial
Signed-off-by: Emoly Liu <emoly.liu@intel.com>
Change-Id: Ibf2c72e9b648df5666ed7a87c8372ea81b83a029
Reviewed-on: http://review.whamcloud.com/23687
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8816 utils: Check /etc/hostid instead of failing for ZFS 04/23804/4
Nathaniel Clark [Wed, 16 Nov 2016 16:52:57 +0000 (11:52 -0500)]
LU-8816 utils: Check /etc/hostid instead of failing for ZFS

Since ZFS doesn't check /etc/hostid until a pool is created or
imported.  Check for it's existance instead of just failing after
spl_hostid is checked.

Test-Parameters: trivial

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: Ia00b1e357c629ad6a7a2b636a2fc149036d03546
Reviewed-on: http://review.whamcloud.com/23804
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8796 kernel: kernel upgrade RHEL7.3 [3.10.0-514.el7] 60/23560/3
Bob Glossman [Tue, 25 Oct 2016 23:18:24 +0000 (16:18 -0700)]
LU-8796 kernel: kernel upgrade RHEL7.3 [3.10.0-514.el7]

With this mod we switch our supported el7 version to RHEL 7.3

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I2a50889bd484b33abea721582a6adb2ec6a0b06b
Reviewed-on: http://review.whamcloud.com/23560
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8534 ldiskfs: Add patch series for RHEL7.3 13/22113/5
Christopher J. Morrone [Wed, 24 Aug 2016 17:22:00 +0000 (13:22 -0400)]
LU-8534 ldiskfs: Add patch series for RHEL7.3

Add the new ldiskfs patch series file ldiskfs-3.10-rhel7.3.series which
supports the RHEL7.3 kernel.  Three patch files needed contextual updates
to allow them to apply.

Note that the new RHEL7.3 kernel contains a backport of the
upstream linux kernel commit 923ae0ff9250430133b3310fe62c47538cf1cbc1,
which introduces DAX to ext4.  This adds the flag EXT4_MOUNT_DAX
with value 0x00200.  This conflicted with ext4-data-in-dirent.patch's
EXT4_MOUNT_DIRDATA flag value.  Therefore, for RHEL7.3 the value of the
EXT4_MOUNT_DIRDATA flag is changed to 0x00002.

The ext4-corrupted-inode-block-bitmaps-handling-patches.patch needed
updating for two problems:

In ext4_validate_block_bitmap(), the patch removes the
struct ext4_group_info *grp declaration.  The upstream kernel now
has the following at the beginning of the function:

        if (buffer_verified(bh) || EXT4_MB_GRP_BBITMAP_CORRUPT(grp))
                return;

The declaration/definion of grp is reintroduced to address that
use.

Change-Id: Ia1a2455c1f353b59202b48ce6cdaad801a7f42d2
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/22113
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8778 osd: osd_index_declare_ea_delete() reserve more credits 86/23486/3
Alex Zhuravlev [Sat, 29 Oct 2016 13:20:42 +0000 (16:20 +0300)]
LU-8778 osd: osd_index_declare_ea_delete() reserve more credits

when ".." direntry is being removed, OSD may need to update
local representative (agent inodes). reserve additional
credits for these updates.

Change-Id: I3689239ac9e7859fbb4a7c6edc87aa3d59a6be7e
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: http://review.whamcloud.com/23486
Tested-by: Jenkins
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8829 mgs: fix default secure RPC rule display 56/23756/2
John L. Hammond [Mon, 14 Nov 2016 18:45:08 +0000 (12:45 -0600)]
LU-8829 mgs: fix default secure RPC rule display

In seq_show_srpc_rules() ensure that the default Secure RPC rule is
displayed properly.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ifbb43012e92dfd22bc8caf028ddc9f1658cc5084
Reviewed-on: http://review.whamcloud.com/23756
Tested-by: Jenkins
Reviewed-by: Nathan Lavender <nblavend@iu.edu>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8305 tests: strengthen fileset cleanup in sanity-sec 93/23693/2
Sebastien Buisson [Thu, 10 Nov 2016 10:08:44 +0000 (11:08 +0100)]
LU-8305 tests: strengthen fileset cleanup in sanity-sec

Strengthen fileset cleanup on MGS side in test_27 of
sanity-sec.

Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: I36a79f54d56225bd92c4672c87ebe396a2856035
Reviewed-on: http://review.whamcloud.com/23693
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Kit Westneat <kit.westneat@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8813 utils: l_getidentity compatibility 67/23667/4
Fan Yong [Fri, 12 Aug 2016 08:43:33 +0000 (16:43 +0800)]
LU-8813 utils: l_getidentity compatibility

Allow the new l_getidentity tool to parse old perm.conf which may
contains old 'rmtacl', 'rmtown'. These configurations are obsolete,
will be ignored directly, not error.

This patch also introduces new '-d' option to debug l_getidentity.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Id0c54d0c24f551e93af80a0ab461870aa5037f84
Reviewed-on: http://review.whamcloud.com/23667
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Andrew Perepechko <andrew.perepechko@seagate.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
7 years agoLU-8795 gss: Prevent callout truncation with non-root users 00/23600/2
Jeremy Filizetti [Sat, 5 Nov 2016 23:09:05 +0000 (19:09 -0400)]
LU-8795 gss: Prevent callout truncation with non-root users

The SK changes included an additional svc_type field in the callout
which was initialized to the '0'.  Since the defaulted value is
not changed prior to callout for non-root users this breaks those
kerberos users.  SK is not affected because all users share the same
key context which is limited to the root user.

Signed-off-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Change-Id: I2c906714ee6ad6a0091ac922298aee7b63b9e856
Reviewed-on: http://review.whamcloud.com/23600
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>
7 years agoLU-8791 osd-zfs: hold oo_guard read lock for object write 50/23550/3
Jinshan Xiong [Thu, 3 Nov 2016 00:36:24 +0000 (17:36 -0700)]
LU-8791 osd-zfs: hold oo_guard read lock for object write

In order to avoid the deadlock of changing object block size and
writing the object at the same time.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: Id1c3c7e66e74d4f61e2136311a0723b8da2da3bb
Reviewed-on: http://review.whamcloud.com/23550
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>