Whamcloud - gitweb
fs/lustre-release.git
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 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>
3 years agoLU-8763 ldlm: do not dump update recovery list 44/23444/2
Olaf Faaland [Thu, 27 Oct 2016 19:18:30 +0000 (12:18 -0700)]
LU-8763 ldlm: do not dump update recovery list

Do not dump the update recovery list when recovery is aborted
or when checking whether recovery is complete.  The output
is not useful and is high volume on production systems.

Change-Id: I7f3cd71165475570353cb264b5587749ec252855
Signed-off-by: Olaf Faaland <faaland1@llnl.gov>
Reviewed-on: http://review.whamcloud.com/23444
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: wangdi <di.wang@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-8700 build: dkms do not install llite_lloop 28/23228/7
Bruno Faccini [Tue, 18 Oct 2016 11:57:16 +0000 (13:57 +0200)]
LU-8700 build: dkms do not install llite_lloop

Do not build/install llite_lloop.ko module in DKMS.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: I61b3455ae35477a83193ef2afca5815135db21cd
Reviewed-on: http://review.whamcloud.com/23228
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
3 years agoLU-8634 quota: fix return code of intent quota lock 51/22751/3
Niu Yawei [Mon, 26 Sep 2016 03:19:11 +0000 (23:19 -0400)]
LU-8634 quota: fix return code of intent quota lock

Intent quota operation should return error code in lock_policy_res2
like other intent operations, otherwise, it'll be confused with the
error code returned by intent locking.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I99fd04f72eeb6d10380ebd30da928b5749e74443
Reviewed-on: http://review.whamcloud.com/22751
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Jenkins
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 agoNew tag 2.8.60 2.8.60 v2_8_60 v2_8_60_0
Oleg Drokin [Thu, 3 Nov 2016 04:20:49 +0000 (00:20 -0400)]
New tag 2.8.60

Change-Id: Id8cdb79c3377385f1ae53f18e0969c99e52be59a
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8246 ldlm: Do not grant a lock twice in a race 39/20839/7
Oleg Drokin [Thu, 16 Jun 2016 20:22:28 +0000 (16:22 -0400)]
LU-8246 ldlm: Do not grant a lock twice in a race

This leads to wrong ldlm pool accounting of granted locks.
Also handle the case of a destroyed lock.

Change-Id: Ied262d6688766e37f71304e6ee6659b48124e7ad
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/20839
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
3 years agoLU-8573 lnet: Revert LU-7650 patches 39/23439/3
Alex Zhuravlev [Thu, 27 Oct 2016 18:59:03 +0000 (21:59 +0300)]
LU-8573 lnet: Revert LU-7650 patches

These patches are causing LU-8573

Revert "LU-7650 o2iblnd: Put back work queue check previously removed"

This reverts commit bde1da1ec098450f40887587b0a46c9eb86a4f6c.

Revert "LU-7650 o2iblnd: handle mixed page size configurations."

This reverts commit 399a5ac1fc73343c69e0fd737032adf5329df1b2.

Change-Id: I4517fab64ac5b1023e615874f58b1bb4902e8c43
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: http://review.whamcloud.com/23439
Tested-by: Jenkins
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8707 build: fix lbuild-sles for kernel_module_package 66/23166/6
Minh Diep [Thu, 13 Oct 2016 21:10:33 +0000 (14:10 -0700)]
LU-8707 build: fix lbuild-sles for kernel_module_package

kernel_module_package macro also checking for
/boot/symsets-$kver-$flavor.tag.gz
in case of lbuild, we need to point it to lbuild
kernel-source directory

Change-Id: I3cf9c1f43fe9ea543f67967773fc8715325a47e9
Signed-off-by: Minh Diep <minh.diep@intel.com>
Reviewed-on: http://review.whamcloud.com/23166
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8731 utils: propagate errors in lfs df 86/23286/3
John L. Hammond [Thu, 20 Oct 2016 16:52:44 +0000 (11:52 -0500)]
LU-8731 utils: propagate errors in lfs df

Add llapi_obd_fstatfs() which does the same thing as
llapi_obd_statfs() but takes an open file descriptor instead of a
path. Refector the handler for 'lfs df' to use llapi_obd_fstatfs(),
thereby avoiding opening the mount point for each target and making
the error conditions easier to understand. Propagate errors from
llapi_obd_fstatfs() as the exit status of 'lfs df'.

In conf-sanity.sh test_64() allow 'lfs df' to fail when a target is
offline.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Iabfc92a65571b1a277de7fd42431f5b7e45ad440
Reviewed-on: http://review.whamcloud.com/23286
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Hongchao Zhang <hongchao.zhang@intel.com>
3 years agoLU-8723 llapi: correct open() handling in llapi_obd_statfs() 85/23285/3
John L. Hammond [Thu, 20 Oct 2016 14:47:00 +0000 (09:47 -0500)]
LU-8723 llapi: correct open() handling in llapi_obd_statfs()

In llapi_obd_statfs() remove a spurious errno test and retry after
open().

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I1667f1f0acf0e1f0d700049bc39a5e6c462b9df6
Reviewed-on: http://review.whamcloud.com/23285
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>
3 years agoLU-8748 osd-zfs: set block size of echo object 23/23323/3
Niu Yawei [Mon, 24 Oct 2016 04:38:39 +0000 (00:38 -0400)]
LU-8748 osd-zfs: set block size of echo object

Set block size for zfs echo object.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I6efab645181ab3de6686bf82f4ecbf9ea3384b1b
Reviewed-on: http://review.whamcloud.com/23323
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8311 doc: add NIDs examples to mkfs.lustre and mount.lustre 55/23355/4
Jian Yu [Tue, 25 Oct 2016 11:19:20 +0000 (19:19 +0800)]
LU-8311 doc: add NIDs examples to mkfs.lustre and mount.lustre

This patch adds examples of how NIDs can be specified on
mkfs.lustre and mount command lines.

Test-Parameters: trivial

Signed-off-by: Jian Yu <jian.yu@intel.com>
Change-Id: I93a8f843755582f94844504f604409dd43b617f9
Reviewed-on: http://review.whamcloud.com/23355
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Zhiqi Tao <zhiqi.tao@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8775 osd: do not report special writes in brw stats 63/23363/3
Alex Zhuravlev [Tue, 25 Oct 2016 14:24:51 +0000 (17:24 +0300)]
LU-8775 osd: do not report special writes in brw stats

do not report special writes (e.g. last_rcvd, etc) made with
copying write in brw_stats.

Change-Id: Id92ed13a8d241e6489731d51a546c3583a2156b8
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: http://review.whamcloud.com/23363
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Zhiqi Tao <zhiqi.tao@intel.com>
Tested-by: Zhiqi Tao <zhiqi.tao@intel.com>
Tested-by: Jenkins
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8755 kernel: kernel update [SLES12 SP1 3.12.62-60.64.8] 64/23364/2
Bob Glossman [Tue, 25 Oct 2016 01:22:44 +0000 (18:22 -0700)]
LU-8755 kernel: kernel update [SLES12 SP1 3.12.62-60.64.8]

Update target and kernel_config files for new version

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

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I52ab5a1ecff81e470b965af536fd0f638a120546
Reviewed-on: http://review.whamcloud.com/23364
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: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8751 kernel: kernel update RHEL7.2 [3.10.0-327.36.3.el7] 35/23335/3
Bob Glossman [Mon, 24 Oct 2016 15:36:09 +0000 (08:36 -0700)]
LU-8751 kernel: kernel update RHEL7.2 [3.10.0-327.36.3.el7]

update RHEL7.2 kernel to 3.10.0-327.36.3.el7

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I0c6c457a6e48c4166508572d91e7b98f9ed4ad86
Reviewed-on: http://review.whamcloud.com/23335
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: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8749 osd-ldiskfs: inherit S_ISGID correctly 29/23329/3
Lai Siyao [Mon, 24 Oct 2016 08:37:04 +0000 (16:37 +0800)]
LU-8749 osd-ldiskfs: inherit S_ISGID correctly

For remote directory S_ISGID is inherited on agent, not where file
resides, and also the group inherited from parent.

Update sanity 6g to test this.

Signed-off-by: Lai Siyao <lai.siyao@intel.com>
Change-Id: I159b2687ad00fdc7c35f60a18668a015240a1953
Reviewed-on: http://review.whamcloud.com/23329
Tested-by: Jenkins
Reviewed-by: Niu Yawei <yawei.niu@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-8733 gnilnd: Remove read capability of cksum_test procfile 55/23255/5
Chris Horn [Wed, 19 Oct 2016 16:17:58 +0000 (11:17 -0500)]
LU-8733 gnilnd: Remove read capability of cksum_test procfile

When the old create proc interface was deprecated cksum_test was
updated  to use the new file operations table. Inadvertantly read
was left as a capability without actually defining a function
that the file would use when someone tried to read the file.
This causes a kernel crash when cksum_test is read, though it can
only be done by the root user.

The fix is to remove the .read op from the fops table for the
cksum_test proc entry

Test-Parameters: trivial
Signed-off-by: Chris Horn <hornc@cray.com>
Change-Id: I406b076f1b66b6d991694c69a9b748ed42c09f39
Reviewed-on: http://review.whamcloud.com/23255
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-7206 mdd: stop orphan cleanup before finish FLD 29/23029/3
Di Wang [Sun, 2 Oct 2016 12:51:07 +0000 (08:51 -0400)]
LU-7206 mdd: stop orphan cleanup before finish FLD

Stop orphan cleanup thread in PRE_CLEANUP phase.
Because orphan cleanup threads might need lookup
FLD, (__mdd_orphan_cleanup()->mdd_object_init()->
lod_object_alloc() ->lod_fld_lookup()), so let's
stop orphan cleanup threads before FLD cleanup.

Signed-off-by: Di Wang <di.wang@intel.com>
Change-Id: I8df9832c633017e2fca866579b497f8215054d31
Reviewed-on: http://review.whamcloud.com/23029
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-8347 ldlm: granting conflicting locks 59/21059/5
Andriy Skulysh [Wed, 29 Jun 2016 11:07:23 +0000 (14:07 +0300)]
LU-8347 ldlm: granting conflicting locks

Postpone lock reprocess during lock replay stage.
Reprocess is needed during request replay stage
beacause local locks are still in use until
client ACK.

Change-Id: I250d22fee471db643f12a900fdfc51eacfa94aa2
Seagate-bug-id: MRP-3516
Signed-off-by: Andriy Skulysh <andriy.skulysh@seagate.com>
Reviewed-on: http://review.whamcloud.com/21059
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Patrick Farrell <paf@cray.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8633 llite: do not clear uptodate bit in page delete 27/22827/3
Jinshan Xiong [Thu, 29 Sep 2016 21:31:01 +0000 (14:31 -0700)]
LU-8633 llite: do not clear uptodate bit in page delete

Otherwise, if the race between page fault and truncate occurs, it
will cause the page fault routine to return an EIO error.

In filemap_fault() {
    page_not_uptodate:
...
        ClearPageError(page);
        error = mapping->a_ops->readpage(file, page);
        if (!error) {
                wait_on_page_locked(page);
                if (!PageUptodate(page))
                        error = -EIO;
}
...
}

However, I tend to think this is a defect in kernel implementation,
because it assumes PageUptodate shouldn't be cleared but file read
routine doesn't make the same assumption.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: Ic4a919607a6121098e41eaf56b8ce3200f778ecf
Reviewed-on: http://review.whamcloud.com/22827
Tested-by: Maloo <hpdd-maloo@intel.com>
Tested-by: Jenkins
Reviewed-by: Li Dongyang <dongyang.li@anu.edu.au>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8680 osc: soft lock - osc_makes_rpc() 26/23326/6
Bobi Jam [Mon, 24 Oct 2016 05:11:25 +0000 (13:11 +0800)]
LU-8680 osc: soft lock - osc_makes_rpc()

It is possible that an osc_extent contains more than 256 chunks, and
the IO engine won't add this extent in one RPC
(try_to_add_extent_for_io) so that osc_check_rpcs() run into a loop
upon this extent and never break.

This patch changes osc_max_write_chunks() to make sure the value
can cover all possible osc_extent, so that all osc_extent will be
added into one RPC.

This patch also add another field erd_max_extents in extent_rpc_data
to make sure not to add too many fragments in a single RPC.

Signed-off-by: Bobi Jam <bobijam.xu@intel.com>
Change-Id: Icf58a6bd04655bb9aa5589dd002e118c21ed932d
Reviewed-on: http://review.whamcloud.com/23326
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.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>
3 years agoLU-930 doc: move DLC doc to Documentation dir 31/22931/3
Andreas Dilger [Tue, 4 Oct 2016 17:10:25 +0000 (11:10 -0600)]
LU-930 doc: move DLC doc to Documentation dir

Move DLC documentation to top-level Documentation/ directory instead
of in the lustre/doc directory where man pages are kept.

Test-Parameters: trivial
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I4e5c01a9ee796e099dbfcfb73a315c8187931cf0
Reviewed-on: http://review.whamcloud.com/22931
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Joseph Gmitter <joseph.gmitter@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8590 gss: Move DH parameter generation out of upcall 22/23322/5
Jeremy Filizetti [Sun, 2 Oct 2016 19:40:24 +0000 (15:40 -0400)]
LU-8590 gss: Move DH parameter generation out of upcall

This change adds the Diffie-Hellman parameter generation to the
lgss_sk utility prior to key loading.  The parameters are now
persistent to prevent long DH parameter generation times which
can cause mount command and connection timeouts.

This is based on recommendations from Matt Wood at Intel's
security review.

Signed-off-by: Jeremy Filizetti <jeremy.filizetti@gmail.com>
Change-Id: Iba840168da533662ed8ec78004be9e4dc5369c68
Reviewed-on: http://review.whamcloud.com/23322
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: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8186 llite: Typo in ll_rw_extents_stats_pp_seq_show 48/23248/4
Steve Guminski [Tue, 18 Oct 2016 19:38:13 +0000 (15:38 -0400)]
LU-8186 llite: Typo in ll_rw_extents_stats_pp_seq_show

Add a missing quote character to ll_rw_extents_stats_pp_seq_show. Also
correct leading whitespace to match coding guidelines.

This corrects the text displayed on clients in
/proc/fs/lustre/llite/.../extents_stats_per_process

Test-Parameters: trivial
Signed-off-by: Steve Guminski <stephenx.guminski@intel.com>
Change-Id: I3046836372182925ea0f3b0f5909ae7f8dc5efd1
Reviewed-on: http://review.whamcloud.com/23248
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: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8124 osd-zfs: fix statfs small blocksize inode estimate 23/20123/7
Andreas Dilger [Tue, 10 May 2016 17:33:22 +0000 (11:33 -0600)]
LU-8124 osd-zfs: fix statfs small blocksize inode estimate

When a small recordsize is specified for the MDT dataset (e.g. 4KB)
the current statfs estimate for the total number of dnodes available
is constrained to assume one dnode per 4KB block.  However, if the
ZFS sector size is 4KB (ashift=12) then the SA (xattr) spill block
will also be allocated in 4KB units and ditto'd, consuming 8.5KB per
dnode plus extra overhead (OI, directory ZAP, etc).  If lots of
directories are created, there will be up to 64KB of space consumed
per dnode.  This throws off the dnode estimations significantly.

Instead, do not constrain the statfs dnode calculation by the small
recordsize and use the actual average space per dnode when estimating
the total number of dnodes the filesystem can hold.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I5403a855a0bd3d9077ef0e661d2f262ffa2cab07
Reviewed-on: http://review.whamcloud.com/20123
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8250 mdd: move linkea prepare out of transaction. 96/23096/5
Di Wang [Tue, 11 Oct 2016 19:30:53 +0000 (15:30 -0400)]
LU-8250 mdd: move linkea prepare out of transaction.

Move linkea prepare out of transaction to avoid reading
linkea remotely inside the transaciton.

Signed-off-by: Di Wang <di.wang@intel.com>
Change-Id: I10f0979c0c496fdcc5349f36ac5cca123d42c8a5
Reviewed-on: http://review.whamcloud.com/23096
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8378 all: remove set but unused variables 21/23221/2
Yang Sheng [Tue, 18 Oct 2016 04:50:22 +0000 (12:50 +0800)]
LU-8378 all: remove set but unused variables

Remove set but unused variables as report list.

Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Change-Id: If9120ec088a2dd0b65564330bc295c08a1e579b7
Reviewed-on: http://review.whamcloud.com/23221
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8189 osc: osc_match_base prototype differs from declaration 67/23167/2
Steve Guminski [Fri, 14 Oct 2016 15:25:36 +0000 (11:25 -0400)]
LU-8189 osc: osc_match_base prototype differs from declaration

The patch updates the prototype in osc_internal.h to match the
enums used in the declaration.

The osc_match_base declaration in lustre/osc/osc_request.c uses
enums for stricter checking on the type and mode parameters:

int osc_match_base(struct obd_export *exp,
   ...
-->    enum ldlm_type type,
   union ldlm_policy_data *policy,
-->    enum ldlm_mode mode,
   ... int unref)

The prototype in lustre/osc/osc_internal.h instead used unsigned ints:

int osc_match_base(struct obd_export *exp,
   ...
-->    __u32 type,
   union ldlm_policy_data *policy,
-->    __u32 mode,
   ... int unref);

Test-Parameters: trivial
Signed-off-by: Steve Guminski <stephenx.guminski@intel.com>
Change-Id: I7ccc6383e0e12bf4fe5b5c3bad822f3322aaa1ff
Reviewed-on: http://review.whamcloud.com/23167
Tested-by: Jenkins
Reviewed-by: Frank Zago <fzago@cray.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-6303 osc: remove handling cl_avail_grant less than zero 55/23155/2
James Simmons [Thu, 13 Oct 2016 23:13:58 +0000 (19:13 -0400)]
LU-6303 osc: remove handling cl_avail_grant less than zero

Earlier cl_avail_grant was changed to an unsigned int. Juila
Lawall reported for the upstream client the following which
affects the Intel branch as well:

drivers/staging/lustre/lustre/osc/osc_request.c:1045:5-24: WARNING: Unsigned
     expression compared with zero: cli -> cl_avail_grant < 0

Since cl_avail_grant can never be negative we can remove the
code handling the negative value case.

Change-Id: I10f7ac3aaab7ebf03a7f7ac0717b60134f09cddf
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: http://review.whamcloud.com/23155
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Jenkins
Reviewed-by: Frank Zago <fzago@cray.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8697 llite: remove IS_ERR(master_inode) check 51/23151/2
James Simmons [Thu, 13 Oct 2016 22:32:51 +0000 (18:32 -0400)]
LU-8697 llite: remove IS_ERR(master_inode) check

The kernel function ilookup5_nowait never returns
IS_ERR so we can remove the IS_ERR check in the
ll_md_blocking_ast() function.

Change-Id: I5e72a8f70857f178a2377e9db80b2e2139c56ec3
Signed-off-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-on: http://review.whamcloud.com/23151
Tested-by: Jenkins
Reviewed-by: Frank Zago <fzago@cray.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8705 tests: do not skip lnet-selftest for DNE 38/23138/2
Elena Gryaznova [Thu, 13 Oct 2016 18:11:44 +0000 (21:11 +0300)]
LU-8705 tests: do not skip lnet-selftest for DNE

Patch removes the skip added by LU-4181.

Test-Parameters: mdtfilesystemtype=ldiskfs mdsfilesystemtype=ldiskfs ostfilesystemtype=ldiskfs mdscount=2 mdtcount=4 testlist=lnet-selftest
Seagate-bug-id: MRP-3912
Signed-off-by: Elena Gryaznova <elena.gryaznova@seagate.com>
Reviewed-by: Vladimir Saveliev <vladimir.saveliev@seagate.com>
Reviewed-by: Alexander Lezhoev <alexander.lezhoev@seagate.com>
Tested-by: Alexander Lezhoev <alexander.lezhoev@seagate.com>
Change-Id: Id78ef3909896325d55569ea948f75906cf0b7c87
Reviewed-on: http://review.whamcloud.com/23138
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
3 years agoLU-7593 target: take ted_lcd_lock after transaction started 29/23129/3
Fan Yong [Wed, 27 Jul 2016 14:55:00 +0000 (22:55 +0800)]
LU-7593 target: take ted_lcd_lock after transaction started

Otherwise the thread1 may be blocked during the transaction start
in tgt_client_data_update() with 'ted_lcd_lock' held because another
thread2 may be blocked by such lock in tgt_txn_stop_cb() but with
transaction handle started. That is deadlock.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Id623d171e43beaa54ae4a9718fb4dc52c474df01
Reviewed-on: http://review.whamcloud.com/23129
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Tested-by: Jenkins
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8692 kernel: kernel update RHEL7.2 [3.10.0-327.36.2.el7] 02/23102/3
Bob Glossman [Tue, 11 Oct 2016 13:39:16 +0000 (06:39 -0700)]
LU-8692 kernel: kernel update RHEL7.2 [3.10.0-327.36.2.el7]

Update RHEL7.2 kernel to 3.10.0-327.36.2.el7

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I936a4d6f73913d64af76fdbaf51964d7ad2c7e8f
Reviewed-on: http://review.whamcloud.com/23102
Tested-by: Jenkins
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
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-8695 target: use -1 as an offset to declare write 82/23082/3
Alex Zhuravlev [Tue, 11 Oct 2016 16:15:38 +0000 (19:15 +0300)]
LU-8695 target: use -1 as an offset to declare write

at the end of recovery or filesystem setup the number of clients
may increase significantly. this can lead to underestimated space
or credits reserved.

Change-Id: Id4f3755dc481f8a29a1a2a673c26d64d12f7dbf0
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: http://review.whamcloud.com/23082
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: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8685 kernel: jbd2: fix incorrect unlock on j_list_lock 50/23050/2
Bruno Faccini [Mon, 10 Oct 2016 13:10:47 +0000 (15:10 +0200)]
LU-8685 kernel: jbd2: fix incorrect unlock on j_list_lock

This patch has been back-ported to avoid kernel Oopses/BUG()s
due to j_list_lock found unlocked when expected to be locked!

In jbd2_journal_get_create_access(),
when 'jh->b_transaction == transaction' (asserted by below)

  J_ASSERT_JH(jh, (jh->b_transaction == transaction || ...

'journal->j_list_lock' will be incorrectly unlocked, since
the the lock is aquired only at the end of if / else-if
statements (missing the else case).

This bug has been introduced by an earlier change named
"jbd2: minimize region locked by j_list_lock in
journal_get_create_access()".

Signed-off-by: Taesoo Kim <tsgatesv@gmail.com>
Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: Ifb8b038333e523caa1b274f53f49317182895de5
Reviewed-on: http://review.whamcloud.com/23050
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Wang Shilong <wshilong@ddn.com>
3 years agoLU-8683 readahead: update ras window correctly 32/23032/3
Bobi Jam [Sat, 19 Dec 2015 02:10:29 +0000 (10:10 +0800)]
LU-8683 readahead: update ras window correctly

When stride-RA hit case miss, we only reset normal sequential
read-ahead window, but not reset the stride IO to avoid the overhead
of re-detecting stride IO. While when the normal RA window is set
to not insect with the stride-RA window, when we try to increase
the stride-RA window length later, the presumption does not hold.

This patch resets the stride IO as well in this case.

Lustre-change: http://review.whamcloud.com/17343
Lustre-commit: 88ef5af0bed93c88984c226db755d07601aef60f

Signed-off-by: Bobi Jam <bobijam.xu@intel.com>
Change-Id: Iba6e51f12ac4d00548cc99b7bd423502b754db13
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/23032
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
3 years agoLU-8631 quota: better error message for 'lfs quota' 21/23021/4
Niu Yawei [Sat, 8 Oct 2016 02:56:23 +0000 (22:56 -0400)]
LU-8631 quota: better error message for 'lfs quota'

'lfs quota' should return useful error message when it's being
issued on a non-Lustre fs.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I9dd08982077132756c8684b44430251da53cbb90
Reviewed-on: http://review.whamcloud.com/23021
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
3 years agoLU-8492 ptlrpc: Correctly calculate hrp->hrp_nthrs 06/19106/6
Amir Shehata [Wed, 23 Mar 2016 20:14:37 +0000 (13:14 -0700)]
LU-8492 ptlrpc: Correctly calculate hrp->hrp_nthrs

cpu_pattern can specify exactly 1 cpu in a partition:
"0[0]". That means CPT0 will have CPU 0. CPU 0 can have
hyperthreading enabled. This combination would result in

weight = cfs_cpu_ht_nsiblings(0);
hrp->hrp_nthrs = cfs_cpt_weight(ptlrpc_hr.hr_cpt_table, i);
hrp->hrp_nthrs /= weight;

evaluating to 0. Where
cfs_cpt_weight(ptlrpc_hr.hr_cpt_table, i) == 1
weight == 2

Therefore, if hrp_nthrs becomes zero, just set it to 1.

Signed-off-by: Amir Shehata <amir.shehata@intel.com>
Change-Id: Id89d381436b2c61354d925420f2efce8d9a54864
Reviewed-on: http://review.whamcloud.com/19106
Tested-by: Jenkins
Reviewed-by: Liang Zhen <liang.zhen@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>