Whamcloud - gitweb
fs/lustre-release.git
3 years agoLU-8241 ofed: fix compilation with MOFED 3.3 44/20644/3
Dmitry Eremin [Mon, 6 Jun 2016 17:52:07 +0000 (20:52 +0300)]
LU-8241 ofed: fix compilation with MOFED 3.3

Add OFED compat rdma header file during autoconf checks also.

Test-Parameters: trivial

Change-Id: Ib280311fa1565cda3c7322308f33575159218e42
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-on: http://review.whamcloud.com/20644
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Jenkins
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-7428 osd: set device read-only correctly 86/20586/4
Hongchao Zhang [Sat, 28 May 2016 18:52:18 +0000 (02:52 +0800)]
LU-7428 osd: set device read-only correctly

Freeze the journal before setting device read-only to prevent
starting a new handle or commit a transaction in that time.

Seagate-bug-id: MRP-2135

Some of the patch is from http://review.whamcloud.com/20535

Change-Id: Iadcb0a7ccf9189e8bb564aa4783bae9a2ef86a76
Signed-off-by: Alexey Lyashkov <alexey.lyashkov@seagate.com>
Signed-off-by: vinayakswami hariharmath <vinayakswami.hariharmath@seagate.com>
Signed-off-by: Gu Zheng <gzheng@ddn.com>
Signed-off-by: Hongchao Zhang <hongchao.zhang@intel.com>
Reviewed-on: http://review.whamcloud.com/20586
Reviewed-by: Wang Shilong <wshilong@ddn.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-8216 ldiskfs: fix journal quota files 03/20503/3
Wang Shilong [Mon, 30 May 2016 13:55:06 +0000 (22:55 +0900)]
LU-8216 ldiskfs: fix journal quota files

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

Problems are we don't journal quota updates properly,
and with current codes quota files will be only
journaled when syncing filesystem,
that only happen by sync call or unmounting.

Signed-off-by: Wang Shilong <wshilong@ddn.com>
Change-Id: I94c148a6b48f2464e96320bbadc88a3c234eacb0
Reviewed-on: http://review.whamcloud.com/20503
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>
3 years agoLU-8179 libcfs: Do not include libcfs/util/ioctl.h in kernel code 75/20375/5
Oleg Drokin [Sun, 22 May 2016 17:01:46 +0000 (13:01 -0400)]
LU-8179 libcfs: Do not include libcfs/util/ioctl.h in kernel code

lustre/include/lustre_ioctl.h included libcfs/include/libcfs/util/ioctl.h
by mistake during kernel compiles, but it's strictly a user-space header
so move it into appropriate ifdef.

Test-Parameters: trivial
Change-Id: I598ef54ad2cf8bab9788eefe487adddeb73f90c1
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/20375
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: Frank Zago <fzago@cray.com>
3 years agoLU-8019 llite: Restore proper opencache operations 54/20354/3
Oleg Drokin [Fri, 20 May 2016 16:16:46 +0000 (12:16 -0400)]
LU-8019 llite: Restore proper opencache operations

Just returning 0 from revalidate for all opens broke open cache
because when we enter ll_lookup_nd, we have no inode and need to
do an RPC to get there which defeats the purpose.

Instead allow returning 1 for non-creating opens,
mark all dentries passing via ll_iget_for_nfs as such
so that ll_file_open would know where did we
come from and request the open lock with the handle.

Change-Id: Id8a0ade892bc26cee96a9ba2b1498cc3199255f0
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/20354
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Li Xi <lixi@ddn.com>
3 years agoLU-8146 osd-zfs: Build against SPL/ZFS 0.6.5.7 19/20219/3
Nathaniel Clark [Mon, 16 May 2016 11:01:21 +0000 (07:01 -0400)]
LU-8146 osd-zfs: Build against SPL/ZFS 0.6.5.7

Build against SPL/ZFS 0.6.5.7.

ZFS Changelogs since 0.6.5.6:
https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.6.5.7

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: Icdde350e4f7fee6e72f2eab2548ef07b44f0dacb
Reviewed-on: http://review.whamcloud.com/20219
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-6245 libcfs: remove types abstraction from libcfs/LNet code 04/20204/9
James Simmons [Tue, 7 Jun 2016 15:02:27 +0000 (11:02 -0400)]
LU-6245 libcfs: remove types abstraction from libcfs/LNet code

Originally when lustre code was built for userland we needed
a proper way to handle 32 bit and 64 bit platforms when
reporting unsigned longs. Now that this code is only built
for kernel space and the kernel has it own special string
handling functions we don't need this abstraction anymore.
The libcfs types.h is not removed yet so not to break
any other patches ready to land. Had checkpatch.pl updated
to report to developers to not use the LP* abstraction.
This patch only updates the LNet/libcfs layers.

Change-Id: I0a338b4eb181d86b9c7d0f535d8c12c9f7045fb3
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: http://review.whamcloud.com/20204
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: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8044 mgs: Only add OSP for registered MDT 58/19658/5
Di Wang [Wed, 13 Apr 2016 21:40:43 +0000 (17:40 -0400)]
LU-8044 mgs: Only add OSP for registered MDT

Only add OSP for those really registered MDT,
by checking if its llog is empty, otherwise
it will incorrectly add "setup OSP" record in
the begining of config log, which will cause
setup failure.

Signed-off-by: Di Wang <di.wang@intel.com>
Change-Id: I9df26a5e6653b4ac0413dad01ea2abfda6f1c1fb
Reviewed-on: http://review.whamcloud.com/19658
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7997 obd: RCU stalls in lu_cache_shrink_count() 90/19390/5
Ann Koehler [Mon, 18 Apr 2016 21:35:46 +0000 (16:35 -0500)]
LU-7997 obd: RCU stalls in lu_cache_shrink_count()

The algorithm for counting freeable objects in the lu_cache shrinker
does not scale with the number of cpus. The LU_SS_LRU_LEN counter
for each cpu is read and summed at shrink time while holding the
lu_sites_guard mutex. With a large number of cpus and low memory
conditions, processes bottleneck on the mutex.

This mod reduces the time spent counting by using the kernel's percpu
counter functions to maintain the length of a site's lru. The summing
occurs when a percpu value is incremented or decremented and a
threshhold is exceeded. lu_cache_shrink_count() simply returns the
last such computed sum.

This mod also replaces the lu_sites_guard mutex with a rw semaphore.
The lock protects the lu_site list, which is modified when a file
system is mounted/umounted or when the lu_site is purged.
lu_cache_shrink_count simply reads data so it does not need to wait
for other readers. lu_cache_shrink_scan, which actually frees the
unused objects, is still serialized.

Signed-off-by: Ann Koehler <amk@cray.com>
Change-Id: I62d006d8047db99d8bbe3ee4edd9d4489bd3739f
Reviewed-on: http://review.whamcloud.com/19390
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-5969 lustreapi: replace llapi_get_version() 21/16721/11
Andreas Dilger [Tue, 17 May 2016 20:15:30 +0000 (16:15 -0400)]
LU-5969 lustreapi: replace llapi_get_version()

The existing llapi_get_version() helper has an awkward calling
style, requiring a temporary input buffer, as well as an output
pointer.

Replace this with llapi_get_version_string() which returns the
the simple version string.  Mark llapi_get_version() deprecated.
Update "lctl lustre_build_version" to use llapi_version_string().

These versions are extracted from {/proc,/sys}/fs/lustre/version
instead of an ioctl, to avoid the messiness that is Lustre ioctls.

Update the "version" file to only print the "lustre:" version,
since the "build:" version is now identical, and the "kernel:"
version has been "patchless_client" for many years already.

Print out the build version at the start of each test so it is
logged in the test results for convenience.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I681a353e6f65fd1ec2d1434fe38dfa55ed3ebbe5
Reviewed-on: http://review.whamcloud.com/16721
Tested-by: Jenkins
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-8006 ptlrpc: cleanup codes of TBF command 99/19499/13
Li Xi [Wed, 13 Apr 2016 03:57:14 +0000 (11:57 +0800)]
LU-8006 ptlrpc: cleanup codes of TBF command

The codes of parsing TBF command are improved so as to make it
easier to add new commands. And command format has been changed
to:
For NRS "tbf nid" policy:
lctl set_param ost.OSS.ost_io.nrs_tbf_rule=
"start $RULE_NAME nid={$NID} rate=$RATE"
For NRS "tbf jobid" policy:
lctl set_param ost.OSS.ost_io.nrs_tbf_rule=
"start $RULE_NAME jobid={$JOBID} rate=$RATE"

lctl set_param ost.OSS.ost_io.nrs_tbf_rule=
"change $RULE_NAME rate=$RATE"

Signed-off-by: Li Xi <lixi@ddn.com>
Signed-off-by: Qian Yingjin <qian@ddn.com>
Change-Id: Id9861f4c3d894bea614288089622c11124e7f4de
Reviewed-on: http://review.whamcloud.com/19499
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Wang Shilong <wshilong@ddn.com>
Reviewed-by: Gu Zheng <gzheng@ddn.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-6861 scrub: only trigger full OI scrub when necessary 51/16951/6
Fan Yong [Wed, 21 Oct 2015 02:43:49 +0000 (10:43 +0800)]
LU-6861 scrub: only trigger full OI scrub when necessary

Generally, scanning the whole device for OI scrub routine check may
takes some long time. If the whole system only contains several bad
OI mappings, then it is not worth to trigger OI scrub automatically
with full speed when some bad OI mapping is auto-detected. Instead,
we can make the OI scrub to fix the found bad OI mappings only, and
if more and more bad OI mappings are found as to exceeds some given
threshold that can be adjusted via some proc interface, then the OI
scrub will run with full speed to scan whole device.

Our current OI scrub auto-trigger control mechanism can avoid most
of unnecessary whole-device based scanning. But it missed one case
that the FID lookup for remote MDT-object and may cause unexpected
whole-device based OI scrub. This patch is for handle such corner.

Fix the sanity-scrub.sh test_4a, test_4b, and test_4c to search for
"prior_updated" and not "updated_prior" in the scrub status file.

Signed-off-by: James Nunez <james.a.nunez@intel.com>
Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I776c44b1dbc7357817d42d9b1ff6011226fe292b
Reviewed-on: http://review.whamcloud.com/16951
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8057 ko2iblnd: Replace sg++ with sg = sg_next(sg) 42/19342/12
Amitoj Kaur Chawla [Wed, 1 Jun 2016 13:16:25 +0000 (09:16 -0400)]
LU-8057 ko2iblnd: Replace sg++ with sg = sg_next(sg)

With scatterlist chaining, simply incrementing the array does not
work. sg_next macro was thus introduced to follow the chain links
when necessary. So replace sg++ with sg_next.

This change was made with the help of the following Coccinelle
semantic patch:
//<smpl>
@@
 struct scatterlist *sg;
@@
 -sg++
 +sg = sg_next(sg)
//</smpl>

In my test of the upstream client this change exposed a long
standing issues where we have a offset that is not page aligned
would cause us to access memory beyond the scatter gather list
which was causing memory corruption when all 256 fragments were
in use.

Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Change-Id: I5bc140645b841aa2a92da434ffa65795112c6cec
Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-on: http://review.whamcloud.com/19342
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7418 tests: cancel all locks in sanity test_29 41/20741/4
Andreas Dilger [Mon, 13 Jun 2016 04:13:39 +0000 (22:13 -0600)]
LU-7418 tests: cancel all locks in sanity test_29

Cancel both MDC and OSC locks in sanity.sh test_29, since any
background writeout of dirty pages under OSC locks will request
a layout lock from the MDS, causing the test to fail.

Test-Parameters: trivial testlist=sanity,sanity,sanity,sanity
Test-Parameters: testlist=sanity,sanity,sanity,sanity
Test-Parameters: testlist=sanity,sanity,sanity,sanity
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Ie2cc1b241d5fac5b439509a3d01384f6a531e654
Reviewed-on: http://review.whamcloud.com/20741
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-3289 gss: Add two additional security flavors for sk 73/18773/8
Jeremy Filizetti [Thu, 3 Mar 2016 03:01:48 +0000 (22:01 -0500)]
LU-3289 gss: Add two additional security flavors for sk

This patch adds shared key null (skn) and shared key auth (ska)
flavors to make shared key consistent with the kerberos
implementation.  Shared key null requires a key to establish the
security context but does not use integrity or privacy outside of
the SEC_CTX_INIT RPC.  Shared key auth enables integrity for normal
service but not bulk.

Signed-off-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Change-Id: I55fa52dfe1089f3dc9a40ffad28997a0b08aadec
Reviewed-on: http://review.whamcloud.com/18773
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-3289 gss: Cleanup gss print statements and comments 02/17602/11
Jeremy Filizetti [Mon, 14 Dec 2015 05:33:44 +0000 (00:33 -0500)]
LU-3289 gss: Cleanup gss print statements and comments

Some minor cleanup of GSS messages and comments.

Signed-off-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Change-Id: I9cf4e7d7189142b47c2fb9ab13428cb65bc08754
Reviewed-on: http://review.whamcloud.com/17602
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-3289 gss: Add option for loading keys during mount 01/17601/16
Jeremy Filizetti [Mon, 14 Dec 2015 05:19:56 +0000 (00:19 -0500)]
LU-3289 gss: Add option for loading keys during mount

This adds functionality for loading GSS shared keys using
mount.lustre (mount) command.  The --skpath option has been
added which supports a directory or file of keys to load.
The context from which the mount occurs is used to determine
which type of key to load (MGS, MDT/OST, or client).

Signed-off-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Change-Id: I4ffbfb9ea76d32ed69f94da93f82e90e161cb99d
Reviewed-on: http://review.whamcloud.com/17601
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-3289 gss: Add userspace support for GSS null and sk 00/17600/13
Jeremy Filizetti [Mon, 14 Dec 2015 05:17:01 +0000 (00:17 -0500)]
LU-3289 gss: Add userspace support for GSS null and sk

Add the support to lgss_keyring (client) and lsvcgssd (server) for GSS
null and shared key.  This includes the common functionality for the
creation of the session key in privacy mode and shared key for
integrity and privacy mode.

A new utility lgss_sk has been added for key management.

Signed-off-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Change-Id: Id2574b940d344d18f793113f61e69a393b6df4f0
Reviewed-on: http://review.whamcloud.com/17600
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-3289 gss: Return GSS major and minor status 99/17599/12
Jeremy Filizetti [Mon, 14 Dec 2015 04:52:46 +0000 (23:52 -0500)]
LU-3289 gss: Return GSS major and minor status

Return the major and minor status codes back from the server side
userspace component (lsvcgssd) instead of defaulting to
GSS_S_FAILURE for the major and 0 for the minor.

Signed-off-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Change-Id: I14d1a4b4ab6fb982e3c6c9c062d585865aa77ca0
Reviewed-on: http://review.whamcloud.com/17599
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-3289 osp: osp_precreate_thread does not check for errors 98/17598/14
Jeremy Filizetti [Mon, 14 Dec 2015 04:39:11 +0000 (23:39 -0500)]
LU-3289 osp: osp_precreate_thread does not check for errors

If servers do not have a valid key for GSS the call to
osp_statfs_update() can fail.  This patch breaks the loop in the
event of a failure from osp_statfs_update().

Signed-off-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Change-Id: I576cff86d285c4263e8d98cccb9b3c6943af6f75
Reviewed-on: http://review.whamcloud.com/17598
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-3289 gss: Add Shared key and GSS Null functionality 97/17597/15
Jeremy Filizetti [Mon, 14 Dec 2015 03:17:38 +0000 (22:17 -0500)]
LU-3289 gss: Add Shared key and GSS Null functionality

Update the GSS null and SK mechanisms framework with the actual
implementation for wrapping and signing of RPCs.

Signed-off-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Change-Id: I050944ccc2413d398442351d8615c08ef48e3500
Reviewed-on: http://review.whamcloud.com/17597
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-3289 gss: Interface and code changes for shared key 28/16728/17
Jeremy Filizetti [Tue, 6 Oct 2015 01:41:28 +0000 (21:41 -0400)]
LU-3289 gss: Interface and code changes for shared key

This patch moves and modifies some of the kerberos code to
be more general so it can be utilized by the sk and null
gss implementations.  This includes the userspace portion
for lsvcgssd and the kernel pipefs interface.  Since the gss
interface has changed the version has also been incremented.

Signed-off-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Change-Id: Ib46b74c9b0e01c4f71f16d288eae83c5c1567bfb
Reviewed-on: http://review.whamcloud.com/16728
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7372 tests: disable replay-dual test_26 69/20669/3
Andreas Dilger [Tue, 7 Jun 2016 18:40:05 +0000 (12:40 -0600)]
LU-7372 tests: disable replay-dual test_26

This test is continually failing, preventing replay-dual from being
re-enabled during normal review testing.  Disable it for now so that
we can return replay-dual to normal review test coverage.

Test-Parameters: trivial
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Ib7129ccbf48197a31bedd8f37ea63fd9038cab07
Reviewed-on: http://review.whamcloud.com/20669
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
3 years agoLU-4257 test: Correct error_ignore message 47/20647/3
James Nunez [Mon, 6 Jun 2016 19:29:35 +0000 (13:29 -0600)]
LU-4257 test: Correct error_ignore message

The error_ignore routine requires a bug number to indicate why an
error should be ignored. In sanity test 248, there is no ticket
indicating why the test results should be ignored, but, due to running
the test in a VM, the performance numbers may not be what is
expected and, thus, the results can be ignored.

Add a reason to ignore the error to the call to error_ignore.

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

Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: Ieda9d06facd3e1519ac6a84e15505bc4c74aa60a
Reviewed-on: http://review.whamcloud.com/20647
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
3 years agoNew tag 2.8.54 2.8.54 v2_8_54 v2_8_54_0
Oleg Drokin [Tue, 7 Jun 2016 01:40:54 +0000 (21:40 -0400)]
New tag 2.8.54

Change-Id: Idb98285ba26f15117a1b569064e3491826b194f5
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7352 tests: conf-sanity 78 don't check missing files 58/20558/2
Andreas Dilger [Wed, 1 Jun 2016 21:50:40 +0000 (15:50 -0600)]
LU-7352 tests: conf-sanity 78 don't check missing files

Commit b666d02e13e stopped conf-sanity test_78 failing if all of
the required files could not be created.  However, the test also
checks later whether those files are still available after the
filesystem resize.  Reduce $num_files to match the number of
files actually created.

Test-Parameters: trivial envdefinitions=ONLY=78 testlist=conf-sanity,conf-sanity,conf-sanity,conf-sanity
Test-Parameters: trivial envdefinitions=ONLY=78 testlist=conf-sanity,conf-sanity,conf-sanity,conf-sanity
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I0ccfbd3f6597167c937e75cf9b5d0892cb5cab07
Reviewed-on: http://review.whamcloud.com/20558
Reviewed-by: Wang Shilong <wshilong@ddn.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-4257 llite: fast read implementation 55/20255/7
Jinshan Xiong [Sat, 28 May 2016 03:37:38 +0000 (20:37 -0700)]
LU-4257 llite: fast read implementation

For read operation, if a page is already in cache, it must be covered
by a DLM lock. We can take advantage of this by reading cached page
without interacting with Lustre. Traditional read will go on if fast
read fails.

This patch can improve small read performance significantly.
These are the performance data I collected:

+------------+----------------+-----------------+
|            | read bs=4k     | read bs=1M      |
+------------+----------------+-----------------+
| w/o patch  | 257 MB/s       | 1.1 GB/s        |
+------------+----------------+-----------------+
| w/ patch   | 1.2 GB/s       | 1.4 GB/s        |
+------------+----------------+-----------------+

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I2ebac609a6c80b135ee64ba001f75fa2cc80faf2
Reviewed-on: http://review.whamcloud.com/20255
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>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-4257 llite: fix up iov_iter implementation 56/20256/6
Jinshan Xiong [Fri, 27 May 2016 23:13:18 +0000 (16:13 -0700)]
LU-4257 llite: fix up iov_iter implementation

Clean up and fix up the usage of iov_iter in client.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I331b48a0978dd3258946ee7bae8362e60026b037
Reviewed-on: http://review.whamcloud.com/20256
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-4257 obdclass: Get rid of cl_env hash table 54/20254/6
Jinshan Xiong [Mon, 16 May 2016 20:27:17 +0000 (13:27 -0700)]
LU-4257 obdclass: Get rid of cl_env hash table

cl_env hash table is under heavy contention when there are lots of
processes doing IO at the same time;
reduce lock contention by replacing cl_env cache with percpu array;
remove cl_env_nested_get() and cl_env_nested_put();
remove cl_env_reenter() and cl_env_reexit();

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I04137c93e2d48f21298fe954a1c2afe1006f44d5
Reviewed-on: http://review.whamcloud.com/20254
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8068 osd-zfs: large dnode support 67/20367/4
Brian Behlendorf [Fri, 20 May 2016 22:57:09 +0000 (15:57 -0700)]
LU-8068 osd-zfs: large dnode support

In ZFS 0.7.x support for large dnode has been added.  This allows
Lustre to optionally specify the size of a dnode which ZFS will
then use to store metadata such as xattrs.

The default dnode size specified by the 'dnodesize' property on the
dataset will be used unless a specific value is provided.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Ned Bass <bass6@llnl.gov>
Change-Id: Iaa7211ca50e7089af4b1fabcccdaa6e16477e641
Reviewed-on: http://review.whamcloud.com/20367
Tested-by: Jenkins
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@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>
3 years agoLU-8136 tests: allow CT to registers with all MDTs 58/20258/4
Bruno Faccini [Tue, 17 May 2016 09:47:53 +0000 (11:47 +0200)]
LU-8136 tests: allow CT to registers with all MDTs

With DNE, CT must register with all MDTs and thus need
additional time to do so.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: Id2342f6d2060649d08d423703173a70b3407ee8d
Reviewed-on: http://review.whamcloud.com/20258
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Sebastien Buisson <sebastien.buisson@bull.net>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8132 tests: do not truncate fsname from paths to ost/mdt 88/20188/4
Quentin Bouget [Fri, 13 May 2016 07:57:55 +0000 (09:57 +0200)]
LU-8132 tests: do not truncate fsname from paths to ost/mdt

Previously the default path for ost/mdt, while defined in cfg/local.sh
to contain the filesystem name ("/mnt/<fsname>"), was truncated
(to "/mnt"). This lead the paths of two different filesystems to
overlapse.
This patch fixes this by keeping the fsname in the path to ost/mdt
(default path now look like "/mnt/<fsname>-<component><id>").

Signed-off-by: Quentin Bouget <quentin.bouget.ocre@cea.fr>
Change-Id: Icf0baab4a9ceee42116bb12f64c0a07999b10551
Reviewed-on: http://review.whamcloud.com/20188
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Henri Doreau <henri.doreau@cea.fr>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8116 build: Cleanup GSS configure script messages 56/20056/3
Christopher J. Morrone [Sat, 7 May 2016 01:53:07 +0000 (18:53 -0700)]
LU-8116 build: Cleanup GSS configure script messages

Some of the GSS configure warning are unnecessarily multi-line,
and also redundant.  For instance:

  checking for keyctl_search in -lkeyutils... no
  configure: WARNING:

  libkeyutils is not found, which is required by gss keyring backend

  configure: WARNING:

  Cannot enable gss keyring. See above for details.

Why so many lines?  Why the double warning?

Also, there is a bug in the "for Kerberos v5" check where it
fails to use AC_MSG_RESULT in the negative case.  A completely
different function winds up appending an AC_MSG_WARN:

  checking for Kerberos v5... configure: WARNING: not found!

This patch addresses those minor issues.

Change-Id: Ic9fb8b5687849688d965cc67b394e4eb569204be
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/20056
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7918 mdd: no need to declare attr_set at create 32/19132/4
Alex Zhuravlev [Thu, 24 Mar 2016 20:55:49 +0000 (23:55 +0300)]
LU-7918 mdd: no need to declare attr_set at create

as dt_create() will set the attributes we need. also, we can save
couple dt_record_write() in tgt_txn_start_cb() as one is not needed
with multislot enabled while another is not needed at all.
these changes decrease disk/memory reservation from ~33MB to 6MB.

Change-Id: I65e537dd053eb7b4e4d2cccab41973096072b1db
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: http://review.whamcloud.com/19132
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-7846 mdt: mount with fileset info from nodemap 84/18784/11
Sebastien Buisson [Fri, 5 Feb 2016 16:29:20 +0000 (17:29 +0100)]
LU-7846 mdt: mount with fileset info from nodemap

Enforce subdir mount if client is in a nodemap for
which fileset information is set.

Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: Ibf1077389dac66fce7c2e88ab64573619545119b
Reviewed-on: http://review.whamcloud.com/18784
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Wang Shilong <wshilong@ddn.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7846 nodemap: add fileset info to nodemap 83/18783/14
Sebastien Buisson [Fri, 5 Feb 2016 15:44:40 +0000 (16:44 +0100)]
LU-7846 nodemap: add fileset info to nodemap

Give the ability to set a fileset information on a nodemap.
When set, a client pertaining to this nodemap will be allowed to
mount only the subdirectory represented by this fileset.

Fileset info of nodemap is stored permanently by using
'lctl set_param -P' commands. It means MDS and OSS will be able to
retrieve fileset info of nodemap after a restart (when they read
params llog).
MGS will not see fileset info after restart, but this does not prevent
the feature from working.

Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Signed-off-by: Kit Westneat <kit.westneat@gmail.com>
Change-Id: Ic16abaeb0b2fe583a9a4745258a82bbd23fc259e
Reviewed-on: http://review.whamcloud.com/18783
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7064 obd: detect errors from llog_declare_destroy() 99/17999/8
Parinay Kondekar [Thu, 14 Jan 2016 13:55:29 +0000 (19:25 +0530)]
LU-7064 obd: detect errors from llog_declare_destroy()

The return value from llog_declare_destroy() in
llog_cancel_rec() is not used. This patch adds the same check.

Change-Id: I31c09d426e9e4ae5418531acd73a6428927e9bd3
Signed-off-by: Parinay Kondekar <parinay.kondekar@seagate.com>
Reviewed-on: http://review.whamcloud.com/17999
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-4017 quota: redefine LL_MAXQUOTAS for Lustre 43/19843/10
Wang Shilong [Thu, 28 Apr 2016 07:44:36 +0000 (03:44 -0400)]
LU-4017 quota: redefine LL_MAXQUOTAS for Lustre

Lustre code should similarly be patched to use LL_MAXQUOTAS
like EXT4_MAXQUOTAS so that it is independent of the kernel
MAXQUOTAS value.

Signed-off-by: Wang Shilong <wshilong@ddn.com>
Change-Id: I95c894600e6b9fa4932b367a1ef10635a9aa222d
Reviewed-on: http://review.whamcloud.com/19843
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
3 years agoLU-6518 obd: Unhandled possible allocation failure in lustre_start_mgc 93/17493/8
Parinay Kondekar [Sun, 6 Dec 2015 18:03:17 +0000 (23:33 +0530)]
LU-6518 obd: Unhandled possible allocation failure in lustre_start_mgc

Patch to handle un-handled possible allocation failure
of struct obd_uuid.

Change-Id: Ib19d4c53a6dae5e2f6a80e0fdf755fa7aac81fd1
Signed-off-by: Parinay Kondekar <parinay.kondekar@seagate.com>
Reviewed-on: http://review.whamcloud.com/17493
Tested-by: Jenkins
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Frank Zago <fzago@cray.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8210 osd-ldiskfs: fix setting pages PageUptodate state 78/20478/6
Wang Shilong [Fri, 27 May 2016 12:40:26 +0000 (21:40 +0900)]
LU-8210 osd-ldiskfs: fix setting pages PageUptodate state

In our VM autotest
sanity:156 test failed in rhel7 plataform for writecache
disable and readcache enabled.

After debugging this is because of we miss to set PageUptodate
after reading bio finish, this will make read cache total
unusable for rhel7, because osd_read_prep() will think pages
always not uptodate and triger bio submitting for every reading
request.

Problems come from pages iterating, since bio_for_each_segment_all
introduced, bio_for_each_segment will no longer work right
for pages interating anymore, we should use new interface
for rhel7.

So this problems only exist for some specific Drivers:
From Documentation/block/biodoc.txt

-------------------------------
Drivers which can't process a large bio in one shot can
use the bi_idx field to keep track of the next bio_vec entry
to process.(e.g a 1MB bio_vec needs to be handled in max 128kB
chunks for IDE) [TBD: Should preferably also have a bi_voffset
and bi_vlen to avoid modifying bi_offset an len fields]
-------------------------------

This might explain why intel autotest could not reproduce it
but our clustered can always reproduce the problem.

Signed-off-by: Wang Shilong <wshilong@ddn.com>
Change-Id: I5d3de5bf5facbee8d9450c15b8ab7189d7f2fbfe
Reviewed-on: http://review.whamcloud.com/20478
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
3 years agoLU-8100 lmv: Correctly generate target_obd 36/20336/4
Giuseppe Di Natale [Thu, 12 May 2016 20:39:36 +0000 (13:39 -0700)]
LU-8100 lmv: Correctly generate target_obd

The target_obd proc file was not being generated correctly
in cases where nonconsecutive MDT indices were used when
generating a filesystem.

Signed-off-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Change-Id: I4bd3aaffd56707ea29b9b2d4366de5e20b3d3760
Reviewed-on: http://review.whamcloud.com/20336
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8126 kernel: new kernel RHEL 6.8 [2.6.32-642.el6] 06/20106/10
Bob Glossman [Tue, 10 May 2016 17:08:59 +0000 (10:08 -0700)]
LU-8126 kernel: new kernel RHEL 6.8 [2.6.32-642.el6]

Changes to support new kernel version in new el6.8 release distro
New kernel-config and target files.
Revised base kernel and ldiskfs patches.
Small adjustments to lbuild and autoconf.

Test-Parameters: clientdistro=el6.8 mdsdistro=el6.8 ossdistro=el6.8

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I94c0c06f43ca2973133a1dabb0184079290dbc6a
Reviewed-on: http://review.whamcloud.com/20106
Tested-by: Jenkins
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8071 ldiskfs: handle system freeze protection 62/20062/8
Fan Yong [Sun, 24 Apr 2016 06:28:02 +0000 (14:28 +0800)]
LU-8071 ldiskfs: handle system freeze protection

For RHEL6 2.6.32, or kernel 3.6 or newer, it supports wrapped
functions for filesystem freeze protection, such as sb_{start,
stop}_write(). Usually, they are called by VFS. Since Lustre
uses ldiskfs backend bypass VFS layer, it is the OSD's duty to
handle filesystem freeze protection by calling related wrapped
filesystem freeze protection functions. As for other kernel,
such as 3.0.101, related logic has been handled inside ldiskfs
via vfs_check_frozen().

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Idb2b4ca02d569ec818a06b534e857b6ee44f89a2
Reviewed-on: http://review.whamcloud.com/20062
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Wang Shilong <wshilong@ddn.com>
3 years agoLU-7185 ldlm: Restore connect flags on failure 50/16950/5
Jeremy Filizetti [Mon, 26 Oct 2015 23:47:38 +0000 (19:47 -0400)]
LU-7185 ldlm: Restore connect flags on failure

Restore connect flags on failure of ptlrpc_connect_import()
to prevent an LBUG due to flags mismatch.

Signed-off-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Change-Id: I9149c8d2f512c1f920b3bdfa8f3435b03dc72ab2
Reviewed-on: http://review.whamcloud.com/16950
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Reviewed-by: Sebastien Buisson <sebastien.buisson@bull.net>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-8147 osd-zfs: fix osd_mount error path 09/20309/3
Yang Sheng [Wed, 18 May 2016 15:52:29 +0000 (23:52 +0800)]
LU-8147 osd-zfs: fix osd_mount error path

The osd_oi_fini will grab osl_seq_list_lock for cleanup.
But this lock is not initilized if osd_mount return and
failed before osd_oi_init.

Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Change-Id: I8f76a87e22d131e6ab9034d8ecc42b47e301ff25
Reviewed-on: http://review.whamcloud.com/20309
Tested-by: Jenkins
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-5092 nodemap: transfer nodemaps between MGS, MDTs, and OSTs 30/11830/48
Kit Westneat [Sat, 20 Feb 2016 22:11:25 +0000 (17:11 -0500)]
LU-5092 nodemap: transfer nodemaps between MGS, MDTs, and OSTs

This creates a new config lock on the MGS for transferring the
nodemaps.  The target MGCs can enqueue this lock, which is then
revoked by the MGS when the nodemaps are modified. The MGCs then
issue a read config RPC on the nodemap config lock, which causes
the MGS to transfer the nodemap index file to the MGCs. The MGCs
then process the index file, similarly to the way the MGS
processes it on start.

Signed-off-by: Kit Westneat <kit.westneat@gmail.com>
Change-Id: I99a34773298484f70a912761f5831b75196d41d8
Reviewed-on: http://review.whamcloud.com/11830
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.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-7906 osd: no blocksize on non-OST objects 86/19286/4
Alex Zhuravlev [Fri, 1 Apr 2016 11:22:53 +0000 (14:22 +0300)]
LU-7906 osd: no blocksize on non-OST objects

osd-zfs should not set blocksize on non-OST objects.

Change-Id: Idafe2236a49ffcb86bf06971d3687c8fceb516a2
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: http://review.whamcloud.com/19286
Tested-by: Jenkins
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-7728 osp: soft lockup in osp_precreate_reserve() 44/18244/3
Andriy Skulysh [Mon, 1 Feb 2016 09:54:57 +0000 (11:54 +0200)]
LU-7728 osp: soft lockup in osp_precreate_reserve()

LU-4313 commit 3a2073d3bf9fab33fa26c5c5f0da2b0821185131
treats -ENOTCONN as recoverable error, so it is needed
to add it to osp_precreate_ready_condition() to wait
for an event instead of busy-looping.

Seagate-bug-id: MRP-3247
Change-Id: I8a0a77a7369be0325fbeb9d0a2c321950905afbb
Signed-off-by: Andriy Skulysh <andriy.skulysh@seagate.com>
Reviewed-on: http://review.whamcloud.com/18244
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-4330 lnet: Allocate MEs and small MDs in own kmem_caches 86/18586/12
Bruno Faccini [Tue, 23 Feb 2016 19:38:47 +0000 (20:38 +0100)]
LU-4330 lnet: Allocate MEs and small MDs in own kmem_caches

As part of LU-3848 and LU-4330, it has been discovered that LNET
MEs and small MDs (<=128 Bytes) are allocated in <size-128> kmem_cache
and thus can suffer quite frequent corruptions, from other modules or
Kernel parts, that occur there. To avoid this, MEs and small-MDs
specific kmem_cache have been created.

Also, lnet_libmd struct fields have been re-ordered to optimize its
memory foot-print.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: I6cfbed0c3f0a4c2447fe22b2d0d30dba8e3f3173
Reviewed-on: http://review.whamcloud.com/18586
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7975 lod: fix delayed stripe error path & Client resend 02/19302/2
Bruno Faccini [Fri, 1 Apr 2016 22:11:36 +0000 (00:11 +0200)]
LU-7975 lod: fix delayed stripe error path & Client resend

This patch is a follow-on to LU-4260/LU-4971/LU-5346 to fix
cleanup in error path during layout/stripe creation.
It is intended to fix special case when layout creation has been
delayed and will be with a non-0 size (ie truncate).

Problem has been unveiled due to the current limitation where a
delayed layout creation with a non-0 size/truncate will not be
resent if connection with OST is down, but is rather returning
-EAGAIN/-EWOULDBLOCK upon next open, and finally MDS will crash for
"(lod_object.c:700:lod_ah_init()) ASSERTION( lc->ldo_stripenr == 0 )"
LBUG.

Thus, patch also fixes this limitation by instead returning
-EINPROGRESS,this to avoid using costly resend operation from MDS
(will keep a ptlrpc thread busy) but offload this responsibility to
Client side (in after_reply()) which will handle this process in a
much less agressive way.

Specific sanity/test_27F sub-test has been created to test both
layout creation error path correct cleanup and Client resend.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: Ibc1734f52c071c66cb5974e3fe21d8819d725c2a
Reviewed-on: http://review.whamcloud.com/19302
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8141 tests: fix for acl test 98/20198/3
Bob Glossman [Tue, 10 Mar 2015 17:28:36 +0000 (10:28 -0700)]
LU-8141 tests: fix for acl test

Replace earlier fix for LU-3227 with a better version.
The old fix still allows some failures on sanity, test 103a

Lustre-commit: 30ee7bf159e53fc5b19a4a4605387d09191436e6
Lustre-change: http://review.whamcloud.com/14036

Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Change-Id: I4d240eefc4f5d5364edd776aef76397202c36f51
Reviewed-on: http://review.whamcloud.com/20198
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
3 years agoLU-8030 hsm: prevent duplicated HSM requests 35/19635/8
Frank Zago [Mon, 18 Apr 2016 17:53:00 +0000 (13:53 -0400)]
LU-8030 hsm: prevent duplicated HSM requests

It is possible to insert identical HSM requests in the HSM action
list. The following command

  lfs hsm-archive foo foo foo foo

results in 4 new archive requests in the "actions" list for the same
file.

Identify such requests and suppress the duplicates.

Signed-off-by: frank zago <fzago@cray.com>
Change-Id: If83d2855948578b94babca96dc72c33f96ae4f71
Reviewed-on: http://review.whamcloud.com/19635
Tested-by: Jenkins
Reviewed-by: jacques-Charles Lafoucriere <jacques-charles.lafoucriere@cea.fr>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7134 utils: Ensure hostid set for ZFS during mkfs 11/16611/12
Nathaniel Clark [Tue, 15 Sep 2015 19:26:53 +0000 (15:26 -0400)]
LU-7134 utils: Ensure hostid set for ZFS during mkfs

Ensure import protection in ZFS.  spl_hostid must be set to a
non-zero value for it to work correctly.  Error out during mkfs and
tunefs unless override is passed.  Also print error during mount.

Ensure hostid is set in conf-sanity.sh

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: If37318c20e4502a643992e6bc21ac4bc4ad20ed7
Reviewed-on: http://review.whamcloud.com/16611
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-5092 nodemap: users of ted_nodemap should take ref 74/19674/16
Kit Westneat [Wed, 20 Apr 2016 14:12:42 +0000 (10:12 -0400)]
LU-5092 nodemap: users of ted_nodemap should take ref

In order to quickly map clients, the client's assigned nodemap is
saved on the export data struct. When mapping occurs, a reference to
that nodemap is used for mapping. If no reference is taken during
mapping and the nodemap is put elsewhere, then the nodemap could be
destroyed before the mapping is finished. This patch ensures that a
reference is taken before mapping.

Signed-off-by: Kit Westneat <kit.westneat@gmail.com>
Change-Id: I5c4d707970b1a86fb061a501240182ff3dc7be51
Reviewed-on: http://review.whamcloud.com/19674
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.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-8193 ptlrpc: set proper mbits for EINPROGRESS resend 77/20377/2
Niu Yawei [Mon, 23 May 2016 05:49:26 +0000 (01:49 -0400)]
LU-8193 ptlrpc: set proper mbits for EINPROGRESS resend

Set mbits for EINPROGRESS resend in ptl_send_rpc().

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: If9db4a67530371ce5c2504c60ea79f9c9db6ce15
Reviewed-on: http://review.whamcloud.com/20377
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Liang Zhen <liang.zhen@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7422 llite: don't panic when fid is insane 85/17985/3
Sergey Cheremencev [Mon, 16 Nov 2015 12:54:25 +0000 (15:54 +0300)]
LU-7422 llite: don't panic when fid is insane

LASSERT should never be done on data that is
received to over the network. Return EINVAL
when server returns invalid fid despite of
it_status == 0.

Change-Id: I4341d1002761ab4c86bd7af4d0ca5718fe2a3623
Signed-off-by: Sergey Cheremencev <sergey.cheremencev@seagate.com>
Seagate-bug-id: MRP-3073
Reviewed-on: http://review.whamcloud.com/17985
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-8022 lnet: Don't access NULL NI on failure path 14/19614/4
Doug Oucharek [Fri, 15 Apr 2016 18:37:54 +0000 (11:37 -0700)]
LU-8022 lnet: Don't access NULL NI on failure path

In kiblnd_passive_connect(), if we are failing the connection
attempt because we cannot find a valid NI (we have a NULL NI),
we were coring after the "goto fail" because the failure
path was assuming non-NULL NI.

This patch ensures we don't dereference a NULL NI on that
failure path.

Signed-off-by: Doug Oucharek <doug.s.oucharek@intel.com>
Change-Id: I4f3deb78b4d3e9d81551ba915ceee852ec3b0792
Reviewed-on: http://review.whamcloud.com/19614
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: Matt Ezell <ezellma@ornl.gov>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7848 target: Do not fail MDT-MDT connection 00/18800/5
Di Wang [Fri, 4 Mar 2016 18:01:48 +0000 (13:01 -0500)]
LU-7848 target: Do not fail MDT-MDT connection

When one MDT restarts, and try to connect to another
MDT with the new cookie, let's do not fail it, otherwise
it might cause eviction between MDT.

Signed-off-by: Di Wang <di.wang@intel.com>
Change-Id: I3d2e0712ee0ed05bdf46c7781e190206a6dcfb1c
Reviewed-on: http://review.whamcloud.com/18800
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-4781 test: wait for dbench to stop 71/20471/2
John L. Hammond [Thu, 26 May 2016 19:34:42 +0000 (14:34 -0500)]
LU-4781 test: wait for dbench to stop

In lustre-rsync-test.sh after sending a SIGSTOP to dbench, wait for
all dbench processes to show a stopped state.

Test-Parameters: testlist=lustre-rsync-test,lustre-rsync-test,lustre-rsync-test,lustre-rsync-test,lustre-rsync-test,lustre-rsync-test
Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I22767b5002ca4e1b5b1d596380591dc5130ee11d
Reviewed-on: http://review.whamcloud.com/20471
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
3 years agoLU-8155 tests: Fix timing of sanity-hsm/16 71/20271/4
Nathaniel Clark [Tue, 17 May 2016 15:46:22 +0000 (11:46 -0400)]
LU-8155 tests: Fix timing of sanity-hsm/16

sanity-hsm/16 occationally fails due to a timing issue.
The measured duration is 19s when the expected duration
is 20s, this is most likely due to rounding of half seconds.

Test-Parameters: trivial testlist=sanity-hsm

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: Iff8b4dec6d9d562b1560cc0101f251bf4b039508
Reviewed-on: http://review.whamcloud.com/20271
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Sebastien Buisson <sbuisson@ddn.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-7352 tests: don't fail conf-sanity test_78 on ENOSPC 66/20166/7
Andreas Dilger [Fri, 13 May 2016 03:38:45 +0000 (21:38 -0600)]
LU-7352 tests: don't fail conf-sanity test_78 on ENOSPC

Add debugging to conf-sanity.sh test_78 to see why this test is
regularly reporting ENOSPC creating 100x 1MB test files, when
there should be many GB of space available during the test.

Don't fail the test if the OST runs out of space, or if the MDS
refuses to create more files when OST has no available blocks,
since the main goal of this test is to verify ldiskfs resizing.

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

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Id5a7049aa434c794a5a8f8aa5398bf7ca9bcab07
Reviewed-on: http://review.whamcloud.com/20166
Tested-by: Jenkins
Reviewed-by: Wang Shilong <wshilong@ddn.com>
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
3 years agoLU-8049 obdclass: use __BIG_ENDIAN to detect local endianness 12/19812/3
Fan Yong [Fri, 8 Apr 2016 13:12:33 +0000 (21:12 +0800)]
LU-8049 obdclass: use __BIG_ENDIAN to detect local endianness

Originally, we used LUSTRE_MSG_MAGIC to detect the local endianness
as "if (LUSTRE_MSG_MAGIC != cpu_to_le32(LUSTRE_MSG_MAGIC))". But it
is not a good way. It is gratuitously confusing for no reason not
only because it has nothing specific to do with LUSTRE_MSG_MAGIC,
but also because this is a compile-time check but looks like runtime
check. This patch fixes it by checking "__BIG_ENDIAN".

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I7fc15890119b15c178da22b6dc6eebe102403734
Reviewed-on: http://review.whamcloud.com/19812
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
3 years agoLU-8134 kernel: kernel update RHEL7.2 [3.10.0-327.18.2.el7] 06/20206/4
Bob Glossman [Thu, 12 May 2016 14:00:08 +0000 (07:00 -0700)]
LU-8134 kernel: kernel update RHEL7.2 [3.10.0-327.18.2.el7]

Update RHEL7.2 kernel to 3.10.0-327.18.2.el7

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I3b587d11e9ad8051665f38c879c45f1ec5727213
Reviewed-on: http://review.whamcloud.com/20206
Reviewed-by: Minh Diep <minh.diep@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-8014 hsm: remove invalid kuc_free in coordinator 69/19869/3
Frank Zago [Thu, 28 Apr 2016 21:07:16 +0000 (17:07 -0400)]
LU-8014 hsm: remove invalid kuc_free in coordinator

Commit 9091a934fc ("LU-8014 hsm: remove kuc_ispayload") moved the KUC
allocation in mdt_hsm_agent_send() and I left a kuc_free in an error
path in mdt_coordinator(). The HAL is no longer a KUC and it is freed
outside the for loop. That kuc_free is incorrect.

Signed-off-by: frank zago <fzago@cray.com>
Change-Id: If0894d1a8bcbc7960b728e33a34bddb95806acf8
Reviewed-on: http://review.whamcloud.com/19869
Tested-by: Jenkins
Reviewed-by: Henri Doreau <henri.doreau@cea.fr>
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-8080 utils: Replace calls to signal with sigaction 55/19855/10
Quentin Bouget [Fri, 13 May 2016 07:47:33 +0000 (09:47 +0200)]
LU-8080 utils: Replace calls to signal with sigaction

The man page for signal (2) states that sigaction should replace
signal for portability. It also states:
"The effects of signal() in a multithreaded process are unspecified."

This patch affects utils/lhsmtool_posix.c for the second reason and
utils/liblustreapi_hsm.c for completeness even though: "The only
portable use of signal() is to set a signal’s disposition to
SIG_DFL or SIG_IGN." (which is what is done in liblustreapi_hsm.c)

Signed-off-by: Quentin Bouget <quentin.bouget.ocre@cea.fr>
Change-Id: Ib247fab937e3aac514f418c7260cdd67fc9e442c
Reviewed-on: http://review.whamcloud.com/19855
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Henri Doreau <henri.doreau@cea.fr>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8078 iokit: correct obdfilter-survey output data format 41/19841/6
Emoly Liu [Thu, 28 Apr 2016 03:11:48 +0000 (11:11 +0800)]
LU-8078 iokit: correct obdfilter-survey output data format

A space is needed between min and max status numbers in the
obdfilter-survey script, otherwise plot-obdfilter can't parse
the summary file correctly, so that the related .dat files and
graphs can't be generated correctly.

Test-Parameters: trivial testlist=obdfilter-survey
Signed-off-by: Emoly Liu <emoly.liu@intel.com>
Change-Id: I5bf4790f2db1ee11cb6a7cc95d5527cb0d68e35a
Reviewed-on: http://review.whamcloud.com/19841
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7905 osd: pin OI objects 03/19103/8
Alex Zhuravlev [Wed, 23 Mar 2016 19:30:03 +0000 (22:30 +0300)]
LU-7905 osd: pin OI objects

so that corresponing dnodes are kept in memory.

Change-Id: Ic312bfc57e3adc1032cefdd97efcf8f819418dc8
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: http://review.whamcloud.com/19103
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7795 quota: tuneable soft least qunit 96/18896/9
Niu Yawei [Mon, 14 Mar 2016 07:01:09 +0000 (03:01 -0400)]
LU-7795 quota: tuneable soft least qunit

Introduce a tuneable least qunit for soft block quota, which is
used when soft limit is exceeded to retain an acceptable write
performance.

Remove the stale declarations of quota proc function.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I172d1d08494418a6f7bc261f022c587da34b784d
Reviewed-on: http://review.whamcloud.com/18896
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Wang Shilong <wshilong@ddn.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-5810 tests: add client hostname to lctl mark 13/13113/4
Andreas Dilger [Tue, 16 Dec 2014 02:32:37 +0000 (19:32 -0700)]
LU-5810 tests: add client hostname to lctl mark

Improve debug messages to include the originating hostname.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I441bf8294c38135276a5a0f0853dbebf4358c563
Reviewed-on: http://review.whamcloud.com/13113
Tested-by: Jenkins
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-6215 lnet: split struct ib_send_wr 68/19168/10
Dmitry Eremin [Tue, 17 May 2016 13:22:15 +0000 (09:22 -0400)]
LU-6215 lnet: split struct ib_send_wr

In v4.4 Linux kernel split up struct ib_send_wr so that all non-trivial
verbs use their own structure which embeds struct ib_send_wr.

Linux-commit: e622f2f4ad2142d2a613a57fb85f8cf737935ef5
Change-Id: Iea2599ea57a576a4c061841be47a989aba097cc6
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-on: http://review.whamcloud.com/19168
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Li Dongyang <dongyang.li@anu.edu.au>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7469 test: add missing init to lustre-rsync-test:test_1a 55/17355/4
HemaHarish [Wed, 25 Nov 2015 11:25:54 +0000 (16:55 +0530)]
LU-7469 test: add missing init to lustre-rsync-test:test_1a

Target directory was not created for first time, so failed to write to
target location.

Seagate-bug-id: MRP-2382
Signed-off-by: Hema Yarramilli <hema.yarramilli@seagate.com>
Change-Id: I1192c413c8c173abdea3929dbaec19f1f5d20c92
Reviewed-on: http://review.whamcloud.com/17355
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Saurabh Tandan <saurabh.tandan@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoRevert "LU-5050 libcfs: default CPT matches NUMA topology" 76/20376/2
Oleg Drokin [Mon, 23 May 2016 01:58:05 +0000 (01:58 +0000)]
Revert "LU-5050 libcfs: default CPT matches NUMA topology"

This causes rhel7 to crash on start in libcfs init
100% of the time.

This reverts commit 6b929502063ac0fa8e75a3e09259e9b2b0d0ee6e.

Change-Id: I9b6276380b580e9d76ae21bf389f5e7edc1a4f18
Reviewed-on: http://review.whamcloud.com/20376
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7346 tests: Reintroduce SLOW tests to review process 43/17143/9
Saurabh Tandan [Thu, 12 Nov 2015 19:41:26 +0000 (12:41 -0700)]
LU-7346 tests: Reintroduce SLOW tests to review process

Tests running for five minutes and more are considered to
be eligible to be marked as SLOW. After running tests
multiple times it was found, there are certain tests
which take under five minutes and hence can be
reintroduced in the normal review process.

Signed-off-by: Saurabh Tandan <saurabh.tandan@intel.com>
Change-Id: If638e41a8bf6c9418d69257b00cad964d0810a02
Reviewed-on: http://review.whamcloud.com/17143
Tested-by: Jenkins
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Wei Liu <wei3.liu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8116 build: Shrink multi-line pclmulqdq warnings 54/20054/2
Christopher J. Morrone [Sat, 7 May 2016 01:53:07 +0000 (18:53 -0700)]
LU-8116 build: Shrink multi-line pclmulqdq warnings

The multi-line pclmulqdq warning in the configure script
are excessive.  Reduce them to a single line each.

Change-Id: Ifb92d257e41099204bda1392fa6fcfd044f4a5c1
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/20054
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Alexander Boyko <alexander.boyko@seagate.com>
3 years agoLU-7667 tests: Write to unique files in $TMP 61/18261/4
James Nunez [Tue, 2 Feb 2016 17:50:47 +0000 (10:50 -0700)]
LU-7667 tests: Write to unique files in $TMP

sanity uses $TMP/files to store the output of 'lfs getstripe'
and does not clean up the $TMP directory. When conf-sanity tries
to create $TMP/files, it fails. These tests need to use a unique
file, $tfile, or directory, $tdir, name in $TMP and should
clean $TMP out before test exits.

Tests should use $TMP instead of /tmp. $TMP defaults to /tmp.

Remove sanity test 51d from the ALWAYS_EXCEPT list.

Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: I09a0a2be1d88c3f4a0042e3956bbc54f9df61f55
Reviewed-on: http://review.whamcloud.com/18261
Tested-by: Jenkins
Reviewed-by: Wei Liu <wei3.liu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Saurabh Tandan <saurabh.tandan@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-5050 libcfs: default CPT matches NUMA topology 24/17824/3
Liang Zhen [Fri, 29 Apr 2016 17:45:39 +0000 (13:45 -0400)]
LU-5050 libcfs: default CPT matches NUMA topology

Change default value of CPT pattern and make it match NUMA topology

Signed-off-by: Liang Zhen <liang.zhen@intel.com>
Change-Id: Ia837ee4b1c52046fcac4a5c05d1c159001fbe810
Reviewed-on: http://review.whamcloud.com/17824
Reviewed-by: Andreas Dilger <andreas.dilger@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-7403 dlm: const qualify struct lustre_handle * params 71/17071/3
John L. Hammond [Fri, 6 Nov 2015 17:17:54 +0000 (11:17 -0600)]
LU-7403 dlm: const qualify struct lustre_handle * params

Add a const qualifier to several struct lustre_handle * parameters in
the LDLM interface.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I65bc949af4ee78118ce9118801434b906dddf49b
Reviewed-on: http://review.whamcloud.com/17071
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>
3 years agoLU-7403 llite: change it_data to it_request 70/17070/5
John L. Hammond [Fri, 6 Nov 2015 16:43:37 +0000 (10:43 -0600)]
LU-7403 llite: change it_data to it_request

Change the void *it_data member of struct lookup_intent to struct
ptlrpc_request *it_request.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: If3eb215620dfd376a18e4b15d7ab9f346468add0
Reviewed-on: http://review.whamcloud.com/17070
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>
3 years agoLU-8097 mdt: remove assertion for lock resent 74/19974/2
Di Wang [Mon, 25 Apr 2016 21:34:39 +0000 (17:34 -0400)]
LU-8097 mdt: remove assertion for lock resent

Do not assert for missing lock for resent, because the lock
might be destroyed by other thread in the mean time.

Signed-off-by: Di Wang <di.wang@intel.com>
Change-Id: If184684ec734e7162e570d3044d9ece5f3ac3567
Reviewed-on: http://review.whamcloud.com/19974
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
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-8098 doc: add "lfs mdts" to lfs main man page 80/20080/4
Emoly Liu [Thu, 12 May 2016 01:57:15 +0000 (09:57 +0800)]
LU-8098 doc: add "lfs mdts" to lfs main man page

Add "lfs mdts" to lfs.1.

Test-Parameters: trivial
Signed-off-by: Emoly Liu <emoly.liu@intel.com>
Change-Id: I0da79a56025b58bd32bdcee35c36e7021d69194f
Reviewed-on: http://review.whamcloud.com/20080
Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Jenkins
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8139 tests: skip sanity test 101g until fix is landed 41/20241/2
Andreas Dilger [Mon, 16 May 2016 17:46:00 +0000 (11:46 -0600)]
LU-8139 tests: skip sanity test 101g until fix is landed

The landing of 16MB RPC and lprocfs value parsing were tested
independently, but had conflicting changes that are causing
sanity.sh test_101g to fail continuously.  Disable the test
until a fix is made.

Test-Parameters: trivial
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I93e82cb5606400f39b6da7a6e35c580826c2d106
Reviewed-on: http://review.whamcloud.com/20241
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8091 mount: error out properly in server_lsi2mti() 33/19933/2
Niu Yawei [Tue, 3 May 2016 07:37:41 +0000 (03:37 -0400)]
LU-8091 mount: error out properly in server_lsi2mti()

server_lsi2mti() should return an error if no proper NID is
initialized, otherwise, target will register successfully with
an invalid empty NID.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: Ia5fd78e4df6344764109486ce1082099054ebf1e
Reviewed-on: http://review.whamcloud.com/19933
Tested-by: Jenkins
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8079 llog: Remove llog_cat_init_and_process 50/19850/4
Henri Doreau [Thu, 28 Apr 2016 11:01:16 +0000 (13:01 +0200)]
LU-8079 llog: Remove llog_cat_init_and_process

Unlike name suggests, this function does no longer process
the log but only initialize it. Replace it by direct calls
to the function it wraps.

Signed-off-by: Henri Doreau <henri.doreau@cea.fr>
Change-Id: Ib48e7d4cb15a2433cc07c6760e25450a9aa0a3b3
Reviewed-on: http://review.whamcloud.com/19850
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-6215 o2iblnd: port to new fast reg API introduced in 4.4 86/19186/5
Li Dongyang [Wed, 4 May 2016 17:11:15 +0000 (13:11 -0400)]
LU-6215 o2iblnd: port to new fast reg API introduced in 4.4

Remove the allocation of fastreg page list, as the page
vector is now private to the provider. Just pass tx_frags
to ib_map_mr_sg() and construct ib_reg_wr.
Defer the conversion of tx_frags to tx_pages and only do
it when the new API is not available.

Linux-commit: 4c67e2bfc8b7121d51434362fa7c2d012f8bcf1b
Linux-commit: 39bfc271bd687be2c8e396e976c0fb9a97963400

Signed-off-by: Li Dongyang <dongyang.li@anu.edu.au>
Change-Id: I5c62b0370ad6ddcc93102a29343491968e4446d0
Reviewed-on: http://review.whamcloud.com/19186
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7888 obdclass: not hold global lock when lwp callback 34/19034/5
Fan Yong [Wed, 13 Apr 2016 09:37:18 +0000 (17:37 +0800)]
LU-7888 obdclass: not hold global lock when lwp callback

Originally, the lwp_notify_main() thread handled the every
registered lwp callback in turn with holding the global
lwp_register_list_lock. Because some lwp callback, such as
mdt_register_lwp_callback() may be blocked, then it will
cause others to be blocked when try to obtain such lock for
lustre_register_lwp_item(), and then block the mount.

This patch introduces reference count on the lwp_register_item
that will prevent the lwp item being freed during the callback,
so allow the lwp_notify_main() thread to do the real callback
without holding the global lock lwp_register_list_lock.

Intel-bug-Id: LDEV-323

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I1061205d5781e0699478d293e223567a0ebea286
Reviewed-on: http://review.whamcloud.com/19034
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: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7733 ptlrpc: print times in microseconds 35/18335/5
Bob Glossman [Fri, 5 Feb 2016 20:47:48 +0000 (12:47 -0800)]
LU-7733 ptlrpc: print times in microseconds

report times and time diffs in seconds.microseconds instead of seconds

Signed-off-by: Bob Glosman <bob.glossman@intel.com>
Change-Id: I272626012a7162072fb3ad73912a56403afb6b39
Reviewed-on: http://review.whamcloud.com/18335
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8010 mdt: fix orphan layout_lock cases for restore 10/19710/7
Bruno Faccini [Thu, 21 Apr 2016 13:56:28 +0000 (15:56 +0200)]
LU-8010 mdt: fix orphan layout_lock cases for restore

Previously to this patch layout was not unlocked when a restore
was failed before being sent to CT, leading to a situation where
other requestors hang and also to an orphan restore_handle to be
kept on CDT's list of registered restore actions.
Only way to clear situation then, was to stop CDT.
This situation could at least occur if a restore was canceled
but the CT does not handle cancel operation, allowing the restore
to complete but also to have new restore requests to be
registered in the mean time and then to be failed due to
incompatible (no longer released) file state.

Also fix similar deadlock cases where layout lock was taken for
previously started restore requests upon CDT restart, by forcing
their replay/restart. This should also strengthen overall HSM
recovery process.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: Ib1ba9156793a230d256ff80d74372813f10b0321
Reviewed-on: http://review.whamcloud.com/19710
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: jacques-Charles Lafoucriere <jacques-charles.lafoucriere@cea.fr>
Reviewed-by: Aurelien Degremont <aurelien.degremont@cea.fr>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8127 lfsck: remove XATTR_NAME_LFSCK_NAMESPACE_OLD 12/20112/4
Fan Yong [Tue, 19 Apr 2016 06:12:00 +0000 (14:12 +0800)]
LU-8127 lfsck: remove XATTR_NAME_LFSCK_NAMESPACE_OLD

We do not support the LFSCK compatibility between Lustre-2.9
and Lustre-2.6 any more. So drop related conditional compile
logic for XATTR_NAME_LFSCK_NAMESPACE_OLD.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I3374ed357fc675b382fbb6703d0ba65c2d1420d9
Reviewed-on: http://review.whamcloud.com/20112
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8093 kernel: kernel update RHEL 6.7 [2.6.32-573.26.1.el6] 84/19984/2
Bob Glossman [Wed, 4 May 2016 15:17:02 +0000 (08:17 -0700)]
LU-8093 kernel: kernel update RHEL 6.7 [2.6.32-573.26.1.el6]

Update RHEL 6.7 kernel to 2.6.32-573.26.1.el6

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I1ff675f734cb651d10860956c9d2a7edf191cbf2
Reviewed-on: http://review.whamcloud.com/19984
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Tested-by: Jenkins
Reviewed-by: Minh Diep <minh.diep@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8094 ldlm: restore missing newlines 60/19960/2
Bob Glossman [Wed, 4 May 2016 01:27:04 +0000 (18:27 -0700)]
LU-8094 ldlm: restore missing newlines

Recent commit f28cc2 landed for LU-7521 removed too many newlines
in debug messages, leading to lots of noise in syslog.
This mod puts some back in.

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I4d3eb59a5db3ed548b03aa29ec036b4b2f899a86
Reviewed-on: http://review.whamcloud.com/19960
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@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>
3 years agoLU-8041 mdd: increasing only atime update on close 32/19932/3
Niu Yawei [Tue, 3 May 2016 07:18:17 +0000 (03:18 -0400)]
LU-8041 mdd: increasing only atime update on close

The atime update on close should be increasing only, otherwise,
the atime could be overwritten by stale client's atime.

This patch also changed client to clear out the ATTR_ATIME
flag fro close RPC when atime == 0, so that patch client won't
overwrite the unpatched server with 0 atime.

A test case sanity 39p is added to verify that close won't
overwrite atime with zero, and sanity 39l is adjusted as well.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I40d1103ddfea184d82170a6795f89ce303a5c14e
Reviewed-on: http://review.whamcloud.com/19932
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-8035 obd: rename md_getstatus() to md_get_root() 24/19824/3
John L. Hammond [Fri, 29 Apr 2016 12:00:33 +0000 (07:00 -0500)]
LU-8035 obd: rename md_getstatus() to md_get_root()

Finish the partial renaming of the the OBD MD method md_getstatus() to
md_get_root().

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Iadd785ce774377d3dba40f64dbddaaf68cfc8087
Reviewed-on: http://review.whamcloud.com/19824
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Wang Shilong <wshilong@ddn.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-8027 llite: ensure obd is effective in onu_upcall 97/19597/3
Yang Sheng [Thu, 14 Apr 2016 20:05:24 +0000 (04:05 +0800)]
LU-8027 llite: ensure obd is effective in onu_upcall

The watched obd device may still not setup while onu_upcall
invoked. So we need verify it in cl_ocd_update.

Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Change-Id: Iddda6837127f1066ede8430f355d8fd04ed3b71c
Reviewed-on: http://review.whamcloud.com/19597
Tested-by: Jenkins
Reviewed-by: Niu Yawei <yawei.niu@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>
3 years agoLU-7870 osd-zfs: Build against SPL/ZFS 0.6.5.6 20/18920/9
Nathaniel Clark [Tue, 15 Mar 2016 15:37:32 +0000 (11:37 -0400)]
LU-7870 osd-zfs: Build against SPL/ZFS 0.6.5.6

Build against SPL/ZFS 0.6.5.6.

Fix issue with rpm's debugedit, where it can't account for path
canonicalization causes the path to shrink by only one characater.  So
a trailing slash will cause it choke.

ZFS Changelogs since 0.6.4.3:
https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.6.5.6
https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.6.5.5
https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.6.5.4
https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.6.5.3
https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.6.5.2
https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.6.5.1
https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.6.5

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: I26569a038df605b7b6a37e2806d477029d68fca0
Reviewed-on: http://review.whamcloud.com/18920
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7656 tests: tar fix for replay-single/70c 32/18732/3
Noopur Maheshwari [Tue, 1 Mar 2016 08:25:13 +0000 (13:55 +0530)]
LU-7656 tests: tar fix for replay-single/70c

The tar process runs in an infinite loop, and the removal/cleanup
of files interferes in the process and causes tar to fail.

The code flow could take two paths:
1. Mdt recovery has completed, catch exit signal.
In this case, put a check and confirm if the mdt recovery has
completed, if yes, then exit and perform cleanup
commands (remove files).

2. Main process code flow.
Wait for tar process to complete and then perform cleanup commands.

Also, instead of removing files within the tar process, keep the
removal of files in the cleanup part.

Seagate-bug-id: MRP-2925
Signed-off-by: Noopur Maheshwari <noopur.maheshwari@seagate.com>
Change-Id: Ia1c840dde554a2f1487aa9aebb70e5dcea29b806
Reviewed-on: http://review.whamcloud.com/18732
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Ujjwal Lanjewar <ujjwal@yahoo.com>
Reviewed-by: Wei Liu <wei3.liu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7334 lprocfs: Refactored string to value helpers 30/16930/13
Giuseppe Di Natale [Thu, 1 Oct 2015 22:51:19 +0000 (15:51 -0700)]
LU-7334 lprocfs: Refactored string to value helpers

Refactored the string parsing helpers to correct
inconsistent behavior and added handling for s64
overflow/underflow. Removed the old helper
functions and refactored functions that called
them.

Signed-off-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Change-Id: I84f3b5d46d4e20bd09fe223589e1be96dc8f7468
Reviewed-on: http://review.whamcloud.com/16930
Reviewed-by: Christopher J. Morrone <morrone2@llnl.gov>
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8048 mgc: use the same lu_env for mgc_fs_{set,clean}up 92/19692/2
Fan Yong [Sun, 3 Apr 2016 13:10:48 +0000 (21:10 +0800)]
LU-8048 mgc: use the same lu_env for mgc_fs_{set,clean}up

Originally, the mgc_fs_setup() and mgc_fs_cleanup use each own
lu_env. Sometimes the mgc_fs_cleanup() may fail to prepare the
lu_env. Such failure will cause local_oid_storage_fini() to be
skipped as to object leak found when osd_device_free().

This patch prepares the lu_env before calling mgs_fs_setup(),
then mgc_fs_setup() and mgc_fs_cleanup() can share the lu_env
and no need to worry about the failures in mgc_fs_cleanup().

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I7062abd670c53e93f456a8d8f1f6131d7ee92320
Reviewed-on: http://review.whamcloud.com/19692
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8127 lfsck: compile XATTR_NAME_LFSCK_NAMESPACE_OLD 09/20109/2
Fan Yong [Mon, 18 Apr 2016 10:45:02 +0000 (18:45 +0800)]
LU-8127 lfsck: compile XATTR_NAME_LFSCK_NAMESPACE_OLD

The logic related with XATTR_NAME_LFSCK_NAMESPACE_OLD is only
compiled for the version less than OBD_OCD_VERSION(2, 8, 53, 0).

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Ie0f9c0901e69465fe73051c16fa5e7f5997ef082
Reviewed-on: http://review.whamcloud.com/20109
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
3 years agoNew tag 2.8.53 2.8.53 v2_8_53 v2_8_53_0
Oleg Drokin [Wed, 11 May 2016 02:48:18 +0000 (22:48 -0400)]
New tag 2.8.53

Change-Id: I3f5aa724e3c629a97f51bdd885ca9b28db5de6ae
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-6937 test: use ps in get_agent_uuid() 93/20093/2
John L. Hammond [Tue, 10 May 2016 14:36:42 +0000 (09:36 -0500)]
LU-6937 test: use ps in get_agent_uuid()

Use 'ps -C $HSMTOOL_BASE -o args=' rather than 'pgrep -fl
$HSMTOOL_BASE' to get the copytool command line.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Idb1238966de1a8bea5d5c225632936d8c0a88529
Reviewed-on: http://review.whamcloud.com/20093
Reviewed-by: Minh Diep <minh.diep@intel.com>
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>