Whamcloud - gitweb
fs/lustre-release.git
5 years agoLU-4862 doc: Update lctl man page for LFSCK phase 2 10/9910/5
James Nunez [Tue, 8 Apr 2014 14:40:26 +0000 (08:40 -0600)]
LU-4862 doc: Update lctl man page for LFSCK phase 2

Update the lctl man page with functionality and options
added by LFSCK phase 2. The lfsck_start and lfsck_stop
options are updated.

Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: I535faf92feb40cd0a58c6532ef7ad2702213fdfb
Reviewed-on: http://review.whamcloud.com/9910
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-4388 io: pass fsync() range through RPC/IO stack 26/8626/15
Andreas Dilger [Thu, 19 Dec 2013 20:11:09 +0000 (13:11 -0700)]
LU-4388 io: pass fsync() range through RPC/IO stack

The Linux VFS and Lustre OST_SYNC RPC are both capable of specifying
fsync() on a sub-extent of the file {start, end} instead of the full
file.  This allows less than the full amount of data to be flushed,
reducing or possibly eliminating the work needed before the syscall
can return.

However, the handling of sub-extent of the file for fsync was lost
with the move to CLIO on the client and OSD API on the server.  They
were ignoring the passed {start, end} and using {0, OBD_OBJECT_EOF}
instead.

Return the ability to pass a sub-extent for fsync() from the client,
to the specific stripes/OSTs that need the sync operation, and pass
it down to the OSD.  The ZFS OSD doesn't handle this yet, but there
is room for improvement in a separate patch.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Id2c3ab7ab5283cdeece6b4986ab2dfbfb03ebbe5
Reviewed-on: http://review.whamcloud.com/8626
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4855 fld: refer to MDT0 for fld lookup in some cases 77/9877/2
wang di [Wed, 2 Apr 2014 16:57:00 +0000 (09:57 -0700)]
LU-4855 fld: refer to MDT0 for fld lookup in some cases

It is possible that when fld client is trying to lookup seq
on one of MDT, but the connection between the client and the MDT
is not being initialized yet, especially during striped dir creation,
because client will only send create req to the master MDT, then
master MDT will distribute the operation to all of other MDT, instead
of client distributing these requests, which will usually trigger
the connection.

In this case, we will send the fld request to MDT0, since it has
all of location information.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: I577ada2a782ecbdc863d05e8d007c0914a1e7837
Reviewed-on: http://review.whamcloud.com/9877
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4808 tests: sanity cleanup to work on Xeon Phi 66/9766/9
Dmitry Eremin [Mon, 24 Mar 2014 18:03:25 +0000 (22:03 +0400)]
LU-4808 tests: sanity cleanup to work on Xeon Phi

* Made the test_74c robust to different platforms.
* Fix an issue with values more than 2^32 (for example 9.36473e+09).
* Fix an integer comparison in case of empty variable.
* Check for tools presents (rsync and getfattr).
* Check for CLIENTONLY mode.
* Remove "-x" options from grep (it's not always supported).
* Coding style cleanup.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I53671f9a6ca2efa0a8f3e5634bfe4d6e8d204078
Reviewed-on: http://review.whamcloud.com/9766
Tested-by: Jenkins
Reviewed-by: Jian Yu <jian.yu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4351 tests: skip loop test in SLES11 clients 55/9955/4
Bob Glossman [Mon, 14 Apr 2014 22:07:10 +0000 (15:07 -0700)]
LU-4351 tests: skip loop test in SLES11 clients

Avoid known failure in test 54c due to SLES specific
incompatible implementation flaw in kernel loop devices.

Test-Parameters: clientdistro=sles11sp3 testlist=sanity
Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: Ia8b33f71ad77418f35db4e4640489d1ba4d3add1
Reviewed-on: http://review.whamcloud.com/9955
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>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoRevert "LU-3333 ptlrpc: Protect request buffer changing" 52/10052/3
Oleg Drokin [Tue, 22 Apr 2014 17:06:19 +0000 (17:06 +0000)]
Revert "LU-3333 ptlrpc: Protect request buffer changing"

It turns out that sec_null message format is is not double wrapped
like sec_plain and sec_gss cases. As such a conversion from rq_buf
to rq_msg is different in those cases.
The older way of doing in-place locking seems to be the way to go
here I think.

This reverts commit b2bb3b247d1dc75e25f1b5c14a333905909b5e70.

Change-Id: Icd84a696aafed17a275d0576dad639b929618190
Reviewed-on: http://review.whamcloud.com/10052
Tested-by: Jenkins
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4687 obdclass: unified flow control interfaces 62/9562/13
Fan Yong [Tue, 25 Mar 2014 14:16:12 +0000 (22:16 +0800)]
LU-4687 obdclass: unified flow control interfaces

Unify the flow control interfaces for MDC RPC, FLD RPC and lfsck
remote update (via OSP). We allow to adjust the maximum inflight
RPCs count via /proc interface.

Rename some variables/functions to make them easily understood.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I096a1de17fe226bac2fe3a3c891365c2e2c51ef3
Reviewed-on: http://review.whamcloud.com/9562
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4927 scrub: rebuild stale OST OI mapping 06/10006/3
Fan Yong [Tue, 25 Mar 2014 14:01:54 +0000 (22:01 +0800)]
LU-4927 scrub: rebuild stale OST OI mapping

If the osd_oi_lookup() which is called by osd_scrub_check_update()
returns -ESTALE for an OST FID, then it means that the target FID
has invalid OI mapping, and should be rebuilt.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I4087da9d3c8e18aff14e314af49637134ee8d4ff
Reviewed-on: http://review.whamcloud.com/10006
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>
5 years agoLU-4919 lfsck: record the first failure position 85/9985/3
Fan Yong [Sun, 23 Mar 2014 00:11:34 +0000 (08:11 +0800)]
LU-4919 lfsck: record the first failure position

The layout LFSCK should set lfsck_layout::ll_pos_first_inconsistent,
then we can know where the first object to be fixed or failed to be
checked, which can save some effort when switch LFSCK from dryrun to
repair mode.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Icd8f4bce6b75c07b1daeac36062b6736bb66c7fc
Reviewed-on: http://review.whamcloud.com/9985
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>
5 years agoLU-4653 fid: only compare non-IDIF seq in lu_fid_diff 60/9560/6
wang di [Fri, 7 Mar 2014 20:30:02 +0000 (12:30 -0800)]
LU-4653 fid: only compare non-IDIF seq in lu_fid_diff

Because it will pack OST index into IDIF FID in 2.6, and
in 2.4/2.5, the OST index in IDIF FID is always 0. So we
only compare non-IDIF sequence in lu_fid_diff.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: I430210819c1cd7257094f51ef364f50d5291361c
Reviewed-on: http://review.whamcloud.com/9560
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-3953 build: cache the results of configure between runs 82/9582/7
Dmitry Eremin [Thu, 6 Mar 2014 07:53:03 +0000 (11:53 +0400)]
LU-3953 build: cache the results of configure between runs

This modification allow configure script cache the results of
heavy (required compilation) configure tests run on this system
so they can be shared between configure scripts and configure
runs, see configure's option --config-cache. This is very useful
for several configurations on the same machine with different
--enable/disable options.

The time of first clean pass:
  time ./configure -C
  real    1m9.879s
  user    0m33.390s
  sys     0m30.392s

The time of second pass with cached results:
  time ./configure -C
  real    0m10.190s
  user    0m2.900s
  sys     0m4.832s

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I41b8091331e8f5260262829ad3e24f34ee34c76b
Reviewed-on: http://review.whamcloud.com/9582
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Brian J. Murrell <brian.murrell@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-2600 osd-zfs: batched object accounting 57/7157/18
Alex Zhuravlev [Sun, 28 Jul 2013 18:12:29 +0000 (22:12 +0400)]
LU-2600 osd-zfs: batched object accounting

using dsl_sync_task_do_nowait() we can schedule the updates
to be executed in a closing txg. this way object accounting
can be done in memory and then updated in ZAPs once per txg.

Test-Parameters: fortestonly envdefinitions=SLOW=yes,ENABLE_QUOTA=yes \
mdtfilesystemtype=zfs mdsfilesystemtype=zfs ostfilesystemtype=zfs testlist=sanity-quota
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Change-Id: Iebe96c9847c6c53b8232295a44fd8044b1ae18b4
Reviewed-on: http://review.whamcloud.com/7157
Tested-by: Jenkins
Reviewed-by: Johann Lombardi <johann.lombardi@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Isaac Huang <he.huang@intel.com>
5 years agoLU-4826 lmv: cleanup req in lmv_getattr_name() 63/9863/3
John L. Hammond [Tue, 1 Apr 2014 19:24:49 +0000 (14:24 -0500)]
LU-4826 lmv: cleanup req in lmv_getattr_name()

In lmv_getattr_name() don't return a freed request in the error path.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I64f3e2b30bebe4dfb5f58651a92a3f08108af17b
Reviewed-on: http://review.whamcloud.com/9863
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-3319 procfs: update ldiskfs proc handling to seq_files 32/8232/13
James Simmons [Tue, 25 Mar 2014 16:37:41 +0000 (12:37 -0400)]
LU-3319 procfs: update ldiskfs proc handling to seq_files

Migrate all ldiskfs proc handling to using strictly
seq_files. Also include a fix with newer gcc complaining
certain variables are uninitialized.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: Ia296a4682e2feda02bcfbe0100de8a89404cd731
Reviewed-on: http://review.whamcloud.com/8232
Tested-by: Jenkins
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@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>
5 years agoLU-3319 procfs: move mgs proc handling to seq_files 35/7935/10
James Simmons [Tue, 4 Mar 2014 15:45:30 +0000 (10:45 -0500)]
LU-3319 procfs: move mgs proc handling to seq_files

With 3.10 linux kernel and above proc handling now only
uses struct seq_files. This patch migrates the mgs
layer proc entries over to using seq_files.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I1a12dd9b1fc8f139116a8f3a684956a5ba88f055
Reviewed-on: http://review.whamcloud.com/7935
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4819 tests: Lustre Sanity test_101b hangs for large OSTCOUNTs 88/9788/2
Parinay Kondekar [Wed, 26 Mar 2014 05:44:20 +0000 (11:14 +0530)]
LU-4819 tests: Lustre Sanity test_101b hangs for large OSTCOUNTs

sanity.sh test_101b hangs during Lustre sanity test. This
is happening especially in cases where the $OSTCOUNT is
greater than 100.

Due to OSTCOUNT of more than 100, the ITERATION parameter
results in '0', which causes the 'reads' utility to run
in infinite 'for' loop. Thus resulting in a hang on such
setups.

This change would make necessary changes in FILE_LENGTH in
test_101b and its related routines(setup_101bc, ra_check)
so that, the test won't hang and would proceed rightly.

Signed-off-by: Parinay Kondekar <parinay_kondekar@xyratex.com>
Change-Id: I0815dfd8777d3055cf5dd6de01b2a18d1bff96bf
Xyratex-bug-id: MRP-1362
Reviewed-on: http://review.whamcloud.com/9788
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4711 libcfs: Always clamp cdls_delay between min and max 03/9503/2
Ryan Haasken [Wed, 5 Mar 2014 15:23:07 +0000 (09:23 -0600)]
LU-4711 libcfs: Always clamp cdls_delay between min and max

In libcfs_debug_vmsg2, cdls_delay is only clamped between the minimum
and the maximum when it is increased by multiplying by the backoff
factor.  It is not clamped when it is decreased by dividing by the
backoff factor.  This allows it to achieve values less than the
minimum, which allows a console message to be printed that should have
been skipped.  This patch moves the clamping outside of the else
statement, ensuring that cdls_delay is always between the min and the
max after the first time through libcfs_debug_vmsg2.

Signed-off-by: Ryan Haasken <haasken@cray.com>
Change-Id: I5e587292b73b4c61ef306908fa10d324da5ce069
Reviewed-on: http://review.whamcloud.com/9503
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Chris Horn <hornc@cray.com>
Reviewed-by: Ann Koehler <amk@cray.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-3498 kernel: remove uses of IS_ERR_VALUE() 59/6759/8
John L. Hammond [Mon, 24 Jun 2013 20:39:51 +0000 (15:39 -0500)]
LU-3498 kernel: remove uses of IS_ERR_VALUE()

Remove most uses of IS_ERR_VALUE(). This macro was often given an int
argument coming from PTR_ERR(). This invokes implementation defined
behavior since the long value gotten by applying PTR_ERR() to a kernel
pointer will usually not be representable as an int. Moreover it may
be just plain wrong to do this since the expressions IS_ERR(p) and
IS_ERR_VALUE((int) PTR_ERR(p)) are not equivalent for a general
pointer p.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ib76592a1fc491539d28a51668c7f06347e988f9f
Reviewed-on: http://review.whamcloud.com/6759
Reviewed-by: Andreas Dilger <andreas.dilger@intel.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>
5 years agoLU-4619 llite: prevent buffer overflow in fiemap 34/9834/5
Bobi Jam [Fri, 18 Apr 2014 05:58:36 +0000 (13:58 +0800)]
LU-4619 llite: prevent buffer overflow in fiemap

lov_fiemap() does not take consider its @vallen parameter, which is
the max buffer size the caller can hold for the fiemap extents.

This patch fixes this and limits the max mapped fiemap extent count
to fit in the preallocted buffer.

This patch also fixes a memory out of bound write issue when the
fiemap call is only for detecting the number of existing extent.

Signed-off-by: Bobi Jam <bobijam.xu@intel.com>
Change-Id: I3a786837fbfec7d5b3f848c5d357b28b9967be85
Reviewed-on: http://review.whamcloud.com/9834
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Jenkins
Reviewed-by: Patrick Farrell <paf@cray.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4872 build: warn on LASSERT and CERROR in checkpatch.pl 14/9914/2
John L. Hammond [Tue, 8 Apr 2014 20:44:01 +0000 (15:44 -0500)]
LU-4872 build: warn on LASSERT and CERROR in checkpatch.pl

In contrib/scripts/checkpatch.pl emit a warning on new LASSERT
statements and new LCONSOLE*() messages. Also ask the submitter to
think hard before adding new CERROR, CWARN, CEMERG messages.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I8ebcde6af64cdf1c0669bdc5fd0b0a9abeae6066
Reviewed-on: http://review.whamcloud.com/9914
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Prakash Surya <surya1@llnl.gov>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoNew tag 2.5.58 2.5.58 v2_5_58 v2_5_58_0
Oleg Drokin [Sat, 19 Apr 2014 07:39:38 +0000 (03:39 -0400)]
New tag 2.5.58

Change-Id: I3c640d9bd1e413971f5b97ac14b1414e87e0d63f

5 years agoLU-4669 ldiskfs: do not export static inline functions 01/9401/9
Jian Yu [Thu, 27 Mar 2014 09:57:18 +0000 (17:57 +0800)]
LU-4669 ldiskfs: do not export static inline functions

In ldiskfs/ldiskfs_extents.h, both ldiskfs_ext_store_pblock()
and ldiskfs_ext_pblock() are defined as static inline functions.
However, commit 49b06fba39e (http://review.whamcloud.com/4804)
exported these two functions in ldiskfs/extents.c, which is not
allowed by gcc and causes the following compile errors:

error: __ksymtab_ldiskfs_ext_pblock causes a section type conflict
error: __ksymtab_ldiskfs_ext_store_pblock causes a section type conflict

This patch fixes the above errors by not exporting the two functions.

Signed-off-by: Jian Yu <jian.yu@intel.com>
Change-Id: I8969f95f144a59d5ae8033667136abd958dfe2ab
Reviewed-on: http://review.whamcloud.com/9401
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>
5 years agoLU-2675 mdt: refactor mdt_getattr_name_lock() 61/9861/3
John L. Hammond [Tue, 1 Apr 2014 16:34:55 +0000 (11:34 -0500)]
LU-2675 mdt: refactor mdt_getattr_name_lock()

In mdt_getattr_name_lock(), concentrate the cross reference handling
code into one block. Remove assertions about the remoteness of parent.
Remove some set but unused local variables in mdt_handler.c. Declare
functions static where possible. Remove the unused structures
mdt_handler and mdt_opc_slice.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I3468e200130259cf7c760bb080c1bdff9e03fd8e
Reviewed-on: http://review.whamcloud.com/9861
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-3254 llite: Update layout_gen only if layout change succeed 58/9858/2
Jinshan Xiong [Sun, 30 Mar 2014 02:14:05 +0000 (19:14 -0700)]
LU-3254 llite: Update layout_gen only if layout change succeed

Move layout generation update to ll_layout_conf() so that it will
change layout at LLITE only if layout update has succeeded.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I407d617be184b1c888d6b16b11f7e33bf10add80
Reviewed-on: http://review.whamcloud.com/9858
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4816 tests: Customer Wizard seems to be stuck on test 116 78/9778/4
Parinay Kondekar [Tue, 25 Mar 2014 15:56:34 +0000 (21:26 +0530)]
LU-4816 tests: Customer Wizard seems to be stuck on test 116

Due to large OST  size, the execution of test 116 takes huge time to
complete. In such cases it would be good to skip this tests execution.

The test attempts to write 2% above the qos_threshold_rr_level.
In scenarios where OST size is huge, during the first round of write
the count of 2MB file to be created is big, causing testt to take time
to comeplete the same.

This change checks to see if more space is available than expected,
and if so skips the test.

Signed-off-by: Parinay Kondekar <parinay_kondekar@xyratex.com>
Change-Id: Ifa101de2fffcaa3c182582496abd68ab6244d3a0
Xyratex-bug-id: MRP-1747
Reviewed-on: http://review.whamcloud.com/9778
Tested-by: Jenkins
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4131 mdd: Changelog not logging file truncate. 23/9723/2
rahul.deshmukh [Wed, 19 Mar 2014 05:37:15 +0000 (11:07 +0530)]
LU-4131 mdd: Changelog not logging file truncate.

Use of truncate(2) does not produce any change log entries,
and the action is invisible. This patch introduces CL_TRUNC
event and adds the corresponding changelog record when the
size has changed.

Signed-off-by: Rahul Deshmukh <rahul_deshmukh@xyratex.com>
Change-Id: I6621e726a82a8105a959b77b4f505f42990f5d64
Reviewed-on: http://review.whamcloud.com/9723
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4762 lctl: set_param should return error when value is null 38/9638/3
Emoly Liu [Thu, 20 Mar 2014 06:28:38 +0000 (14:28 +0800)]
LU-4762 lctl: set_param should return error when value is null

"lctl set_param" should return error when the parameter value is null.
For example: "lctl set_param debug_mb" or "lctl set_param fail_loc="

Signed-off-by: Emoly Liu <emoly.liu@intel.com>
Change-Id: I5572c7a16803f1c4ba4449056b4dd2c476106bde
Reviewed-on: http://review.whamcloud.com/9638
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-3868 osc: Update inode timestamp for lockless IO as well 97/8797/2
Swapnil Pimpale [Fri, 10 Jan 2014 12:15:27 +0000 (17:45 +0530)]
LU-3868 osc: Update inode timestamp for lockless IO as well

Removed the checks for oi_lockless from osc_io_read_start() and
osc_io_write_start(). This patch also removes the unnecessary call to
cl_object_attr_get() in osc_io_write_start() before calling
cl_object_attr_set()

Signed-off-by: Swapnil Pimpale <spimpale@ddn.com>
Change-Id: Ic96694e84444cd19fafe0af72848250e5b1a3d14
Reviewed-on: http://review.whamcloud.com/8797
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>
5 years agoLU-3319 procfs: fix symlink handling 38/9038/13
James Simmons [Fri, 28 Mar 2014 15:19:07 +0000 (11:19 -0400)]
LU-3319 procfs: fix symlink handling

While working on symlink handling for seq files I noticed a
long outstanding bug. Code was developed to link osc obds
to target_obds of the lov layer. The target_obds directory
was never created for the symlinks. This patch enables this
long forgotten feature. Also addressed is the race condition
experinced with server side code ported to seq_files that
used symlinks. To avoid the race the handle obd_proc_private
was moved from struct obd_device to struct obd_type which
now allows earlier registeration that only happens once.
The second problem addressed is the module loading race.
Several modules share the same top proc directory entry which
can become a issue if a client exist on a server node since
the linux proc system allows multiple directories of the same
name. Original Lustre had a lprocfs_srch but that doesn't
work if you use the kernels internal cache for the proc
system so you need to keep track of who grabs the proc root
first and then use the first one registered for when the
next module loads.

Change-Id: Ib158ec4444ed7abc0f3c3e820ee4a333631a58d1
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Reviewed-on: http://review.whamcloud.com/9038
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
5 years agoLU-4397 utils: fix lfs_df loop for disconnected client 49/8949/3
Andreas Dilger [Tue, 21 Jan 2014 21:25:56 +0000 (14:25 -0700)]
LU-4397 utils: fix lfs_df loop for disconnected client

If the client is disconnected from the MDT on which "lfs df" is
run (typically MDT0 for the mountpoint), then the file open can
fail with -ESHUTDOWN, causing mntdf() to loop forever trying to
find other MDTs or OSTs to get statfs data from.

The caller of llapi_obd_statfs() cannot tell the difference between
an error from open() and ioctl(IOC_OBD_STATFS), so llapi_obd_statfs()
should return a fatal error if the open failed since all of the
later opens will fail as well.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I05d48d5b6680c382c9e05c02fd82a9a200500c1e
Reviewed-on: http://review.whamcloud.com/8949
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
Reviewed-by: Faccini Bruno <bruno.faccini@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4915 kernel: kernel update [SLES11 SP3 3.0.101-0.21] 81/9981/2
Bob Glossman [Wed, 16 Apr 2014 17:08:11 +0000 (10:08 -0700)]
LU-4915 kernel: kernel update [SLES11 SP3 3.0.101-0.21]

update target and config files for new version

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I09a9837b5338250da8b3dea548ef15d873e313a9
Reviewed-on: http://review.whamcloud.com/9981
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>
5 years agoLU-4199 libcfs: remove assertion of spin_is_locked() 44/8144/20
Li Xi [Thu, 10 Apr 2014 13:30:54 +0000 (09:30 -0400)]
LU-4199 libcfs: remove assertion of spin_is_locked()

spin_is_locked() is always false when the platform is
uniprocessor and CONFIG_DEBUG_SPINLOCK is not enabled.
This patch replaces its assertion by assert_spin_locked().

Signed-off-by: Li Xi <lixi@ddn.com>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: Id8a7207b6fb08f10ccd4447263fec805df31ed67
Reviewed-on: http://review.whamcloud.com/8144
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alexey Lyashkov <alexey_lyashkov@xyratex.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-4917 lfsck: dump layout lfsck correctly 84/9984/3
Fan Yong [Sun, 23 Mar 2014 00:10:59 +0000 (08:10 +0800)]
LU-4917 lfsck: dump layout lfsck correctly

We used the phase1 statistics by wrong for the phase2 status.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I61565c22218728f3e8507f8850a2ed7970146046
Reviewed-on: http://review.whamcloud.com/9984
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>
5 years agoLU-4879 lfsck: avoid check exp_connect_flags before connected 45/9945/2
Fan Yong [Thu, 20 Mar 2014 13:48:41 +0000 (21:48 +0800)]
LU-4879 lfsck: avoid check exp_connect_flags before connected

It is possible that the connection among some MDTs and OSTs are not
ready yet when the LFSCK wants to start the scanning globally. Under
such case, the LFSCK RPC should trigger related initial connection or
recovery connection, but not check the exp_connect_flags() directly.

On the other hand, it is not important to check whether the remote
server to support the OBD_CONNECT_LFSCK or not, because if the peer
does not support the LFSCK, the lfsck_start RPC will get failure.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I3b881dea23ccb7695d57ec422538f731fc77e657
Reviewed-on: http://review.whamcloud.com/9945
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-2675 llite: remove dead code 67/9767/4
John L. Hammond [Mon, 24 Mar 2014 20:24:35 +0000 (15:24 -0500)]
LU-2675 llite: remove dead code

In llite remove unused declarations, parameters, types, and unused,
get-only, or set-only structure members. Add static and const
qualifiers to declarations where possible.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: If710247d11debd748d2efe80e400f208066cbafa
Reviewed-on: http://review.whamcloud.com/9767
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4860 lov: Handle the case of stripe size is not power 2 82/9882/3
Jinshan Xiong [Fri, 21 Mar 2014 18:49:41 +0000 (11:49 -0700)]
LU-4860 lov: Handle the case of stripe size is not power 2

Calculate the end of current stripe correctly when the stripe size
is not power 2.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: Ic250298b668d3bc32ed14d8390b897578a9c89a2
Reviewed-on: http://review.whamcloud.com/9882
Tested-by: Jenkins
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4838 osd: object iterator in zfs to sync before iteration 38/9838/4
Alex Zhuravlev [Fri, 28 Mar 2014 06:39:52 +0000 (10:39 +0400)]
LU-4838 osd: object iterator in zfs to sync before iteration

The issue with dmu_object_next() is that it doesn't expose
non-committed blocks in the metadnode. Therefore the iterator
doesn't find dnodes allocated in the current (non-committed)
txg which breaks testing and may affect LFSCK. As a short-term
solution, osd_zfs_otable_it_init() ensures the current txg
is committed.

Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Change-Id: I639f37ced5790d1e1514c3e24594e360fcd6c1a8
Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-on: http://review.whamcloud.com/9838
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-4847 mdc: use cl_max_mds_md to pack getattr RPC 62/9862/5
wang di [Tue, 1 Apr 2014 10:19:31 +0000 (03:19 -0700)]
LU-4847 mdc: use cl_max_mds_md to pack getattr RPC

In some cases, cl_default_mds_easize might be zero, especially for
MDC connected to non-MDT0, then mdc might pack getattr RPC with
zero eadatasize.

If client is trying to access remote striped directory with
zero eadatasize, MDT will not return layout information of the
striped direcotry, which will be mis-regarded as non-striped
directory.

So we should use cl_max_mds_easize if cl_default_mds_easize is zero.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: Ia2939a6c8a724c37303eeeda46a4e3d94360353c
Reviewed-on: http://review.whamcloud.com/9862
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>
5 years agoLU-4558 clio: Solve a race in cl_lock_put 81/9881/3
Jinshan Xiong [Thu, 3 Apr 2014 00:35:45 +0000 (17:35 -0700)]
LU-4558 clio: Solve a race in cl_lock_put

It's not atomic to check the last reference and state of cl_lock
in cl_lock_put(). This can cause a problem that an using lock is
freed, if the process is preempted between atomic_dec_and_test()
and (lock->cll_state == CLS_FREEING).

This problem can be solved by holding a refcount by coh_locks. In
this case, it can be sure that if the lock refcount reaches zero,
nobody else can have any chance to use it again.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I08b81bcd6a4040ea9608db97d60aa6706405ee8c
Reviewed-on: http://review.whamcloud.com/9881
Tested-by: Jenkins
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-3963 Remove unused lvfs_callback_ops 79/9979/3
Oleg Drokin [Wed, 16 Apr 2014 18:41:14 +0000 (14:41 -0400)]
LU-3963 Remove unused lvfs_callback_ops

This was acidentally reintroduced back by commit
001b8dbfacb747f1649a2eb047a5f118ce32fdc7

Change-Id: I26fc2ea7b330b9b69dfc5693c4d5c16f5aede194
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/9979
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alexey Lyashkov <alexey_lyashkov@xyratex.com>
5 years agoLU-3333 ptlrpc: Protect request buffer changing 67/6467/5
Oleg Drokin [Mon, 27 May 2013 18:06:09 +0000 (14:06 -0400)]
LU-3333 ptlrpc: Protect request buffer changing

*_enlarge_reqbuf class of functions can change request body location
for a request that's already in replay list, as such a parallel
traverser of the list (after_reply -> ptlrpc_free_committed) might
access freed and scrambled memory causing assertions.

Separate out the common code in ptlrpc_enlarge_req_buffer and
protect the buffer replacement by imp_lock since all users
that can get to this request must be holding this lock themselves
first.

Change-Id: I051d96196b44faafc15c58e0b2127856929f0ba7
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/6467
Tested-by: Jenkins
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alexey Lyashkov <alexey_lyashkov@xyratex.com>
5 years agoLU-3963 Revert bitops changes 78/9978/3
Oleg Drokin [Wed, 16 Apr 2014 18:37:53 +0000 (14:37 -0400)]
LU-3963 Revert bitops changes

This reverts bitops portions of http://review.whamcloud.com/7803
commit 001b8dbfacb747f1649a2eb047a5f118ce32fdc7

The uncovered problem is such that previously used fls returned 0
for the case of no bits set where as __fls return value
for such a case is undefined in the case of at least Linux kernel.

Change-Id: I993674161b08791157781a2b1da0872b12358bb1
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/9978
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
5 years agoLU-4803 ofd: skip orphan cleanup when inject OI error 59/9759/4
Fan Yong [Mon, 10 Mar 2014 04:16:51 +0000 (12:16 +0800)]
LU-4803 ofd: skip orphan cleanup when inject OI error

When inject OI error for simulating some failure cases, the object
may be mapped to invalid local target (inode for ldiskfs), so skip
the orphan cleanup in OSP to avoid unexpected warning or destroy.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I8e0a8a9bb4ae584fc8f40f894a19e8f10aa24c10
Reviewed-on: http://review.whamcloud.com/9759
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4873 llite: avoid a deadlock in page write 28/9928/2
Jinshan Xiong [Thu, 10 Apr 2014 15:40:49 +0000 (11:40 -0400)]
LU-4873 llite: avoid a deadlock in page write

For a partial page write, it will have to issue a READ RPC firstly
to get a full uptodate page. If another page is already locked by
this thread it can easily cause deadlock.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I3bf01b51c8842666dfb923b9df073acbcc533950
Reviewed-on: http://review.whamcloud.com/9928
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4796 osd: NOT inject OBD_FAIL_FID_LOOKUP on dotdot 48/9748/3
Fan Yong [Sat, 8 Mar 2014 15:55:51 +0000 (23:55 +0800)]
LU-4796 osd: NOT inject OBD_FAIL_FID_LOOKUP on dotdot

The namespace LFSCK may cannot rebuild the FID-in-dirent for dotdot
entry after the MDT restored from file-level backup, because there
is not enough space in the directory head area.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I06e8a56dc0a6522e12fd0dfd5b513c1dbf0a80f4
Reviewed-on: http://review.whamcloud.com/9748
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4008 mdt: Use actual size for layout lock intents 71/9571/6
Matt Ezell [Tue, 25 Mar 2014 12:31:56 +0000 (08:31 -0400)]
LU-4008 mdt: Use actual size for layout lock intents

The intent for layout looks up the size of the lov xattr. That size
should be used for the reply buffer instead of the maximum size ever
seen.

Signed-off-by: Matt Ezell <ezellma@ornl.gov>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I9550aa47313502288b018f5cac0d59931ce76d21
Reviewed-on: http://review.whamcloud.com/9571
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
5 years agoLU-4008 mdt: Shrink default LOVEA reply buffers 22/9322/10
Oleg Drokin [Thu, 20 Feb 2014 05:00:15 +0000 (00:00 -0500)]
LU-4008 mdt: Shrink default LOVEA reply buffers

Instead of allocating maximum possible LOVEA for intent requests,
allocate a sane default to fit up to 100 stripes, should the size
be bigger, the buffer reallocation code will kick in.

Additionally, since quite awhile ago we no longer send
unlink cookies or EA data to the clients from unlinks/renames,
so we no longer need to allocate reply buffer for them in
mdt_close() and other such places.
Also clean up unused fields related to these buffers in
md_attr structure.

Change-Id: I4c5bfb5f2d39653d5612c90967d5e1ac83d441e6
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/9322
Tested-by: Jenkins
Reviewed-by: Matt Ezell <ezellma@ornl.gov>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
5 years agoLU-4707 build: Don’t deploy the "lustre" init script on clients 35/9535/9
Dmitry Eremin [Thu, 6 Mar 2014 17:52:40 +0000 (21:52 +0400)]
LU-4707 build: Don’t deploy the "lustre" init script on clients

Don’t deploy init scripts if they are not supported,
for example on none RedHat systems.

Don’t deploy the "lustre" and "ha.d" init scripts on clients.

Fix typo in lustre/scripts/lnet script.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I10be8e9e27ecfd2426d3e1ae8f40e1f7bf6d725d
Reviewed-on: http://review.whamcloud.com/9535
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-3963 cleanup: C89 and build cleanups 03/7803/29
Alexey Lyashkov [Mon, 30 Sep 2013 10:38:10 +0000 (13:38 +0300)]
LU-3963 cleanup: C89 and build cleanups

use C99 initialization for a types, remove some platform depended code
and use POSIX compatible instead.
don't build a lhsmtool is none utils allowed.

Signed-off-by: Alexey Lyashkov <alexey_lyashkov@xyratex.com>
Change-Id: I6e2837953902520240e9ceb251c92329d328d715
Reviewed-on: http://review.whamcloud.com/7803
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4423 o2iblnd: use is_vmalloc_addr to check for vmalloc address 53/8953/4
Oleg Drokin [Wed, 22 Jan 2014 02:10:47 +0000 (21:10 -0500)]
LU-4423 o2iblnd: use is_vmalloc_addr to check for vmalloc address

Instead of manually checking the bounds of VMALLOC_START and
VMALLOC_END, just use is_vmalloc_addr. That's what the function
was designed for.

Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: Ic12fbac092305900d51f29569a079eea747cea34
Reviewed-on: http://review.whamcloud.com/8953
Tested-by: Jenkins
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
5 years agoLU-3963 libcfs: convert llite/lmv/lod/lov cfs_atomic primitive 73/7073/13
Peng Tao [Fri, 4 Apr 2014 12:13:57 +0000 (08:13 -0400)]
LU-3963 libcfs: convert llite/lmv/lod/lov cfs_atomic primitive

This patch convers all cfs_atomic primitives in
llite, lmv, lod and lov.

Signed-off-by: Liu Xuezhao <xuezhao.liu@emc.com>
Signed-off-by: Peng Tao <tao.peng@emc.com>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I24db8a4c9ee6e7e05ccb63bf3d278a2df9125510
Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-on: http://review.whamcloud.com/7073
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
5 years agoLU-4818 kernel: kernel update [RHEL6.5 2.6.32-431.11.2.el6] 97/9797/3
Bob Glossman [Wed, 26 Mar 2014 19:20:08 +0000 (12:20 -0700)]
LU-4818 kernel: kernel update [RHEL6.5 2.6.32-431.11.2.el6]

update RHEL6.5 kernel to 2.6.32-431.11.2.el6

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I0114e8988dfe51a596e9b84fbcc3d6daa07c75da
Reviewed-on: http://review.whamcloud.com/9797
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4863 lloop: avoid panic during blockdev_info 88/9888/2
Bob Glossman [Fri, 4 Apr 2014 21:21:28 +0000 (14:21 -0700)]
LU-4863 lloop: avoid panic during blockdev_info

Change the LL_IOC_LLOOP_INFO ioctl in the lustre lloop
device driver to return an error instead of causing
panics with LASSERT().

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: Ib50afa94960dee6fb580038d6e96ea648252d9ea
Reviewed-on: http://review.whamcloud.com/9888
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>
6 years agoLU-4659 mdd: rename forgets updating target linkea 45/9745/3
Lai Siyao [Mon, 24 Feb 2014 10:13:35 +0000 (18:13 +0800)]
LU-4659 mdd: rename forgets updating target linkea

MDD rename forgets updating target LinkEA if target is not unlinked,
which will cause LinkEA inconsistency.

Signed-off-by: Lai Siyao <lai.siyao@intel.com>
Change-Id: I9d42960da2d07d551ce08baed925bc25218fc0a4
Reviewed-on: http://review.whamcloud.com/9745
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@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>
6 years agoLU-4853 ldiskfs: fix race in ldiskfs_ext_new_extent_cb 68/9868/3
Niu Yawei [Wed, 2 Apr 2014 12:44:00 +0000 (08:44 -0400)]
LU-4853 ldiskfs: fix race in ldiskfs_ext_new_extent_cb

In ldiskfs_ext_calc_credits_for_insert(), we should use the 'depth'
stored in the 'path' instead from inode, because the extent tree
could have been changed when ldiskfs_ext_calc_credits_for_insert()
is called (by ldiskfs_ext_new_extent_cb()).

It was fixed in LU-2555, but the fix is missed in
sles11sp2/ext4-misc.patch

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I9ca349ba52060f10fc980721317ba47e10572473
Reviewed-on: http://review.whamcloud.com/9868
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4826 lmv: Ensure lmv_intent_lookup cleans up reqp 41/9841/2
Nathaniel Clark [Fri, 28 Mar 2014 13:03:23 +0000 (09:03 -0400)]
LU-4826 lmv: Ensure lmv_intent_lookup cleans up reqp

Ensure there aren't invalid pointers hanging around after
ptlrpc_req_finished is called.

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: Ieb16e70958d899a2d9320491dfd6276143accc55
Reviewed-on: http://review.whamcloud.com/9841
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4799 llite: Do not rate limit dirty page discard warning 52/9752/2
Ryan Haasken [Fri, 21 Mar 2014 17:02:07 +0000 (12:02 -0500)]
LU-4799 llite: Do not rate limit dirty page discard warning

Messages which are printed by ll_dirty_page_discard_warn() should not
be rate limited.  If they are rate limited, some files which may be
corrupted on client eviction will not be reported to the user.

This patch changes the CWARN to a CDEBUG to disable console message
rate limiting for this message.  The dirty page discard warnings are
already limited on a per-file basis by the function vvp_vmpage_error
which calls ll_dirty_page_discard_warn only if the ccc_object's
cob_discard_page_warned == 0.

Signed-off-by: Ryan Haasken <haasken@cray.com>
Change-Id: Ia8a13c7add89c890014170254e462ae861de0fc5
Reviewed-on: http://review.whamcloud.com/9752
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Cory Spitz <spitzcor@cray.com>
Reviewed-by: Ann Koehler <amk@cray.com>
Reviewed-by: Chris Horn <hornc@cray.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4791 lod: subtract xattr overhead when calculate max EA size. 35/9835/4
wang di [Thu, 27 Mar 2014 21:18:21 +0000 (14:18 -0700)]
LU-4791 lod: subtract xattr overhead when calculate max EA size.

1. It needs to subtract the xattr overhead when calculate the max
EA size, otherwise, it might get oversize stripe_count, which cause
ENOSPC error in the following xattr_set.
2. Release stripe information, if xattr set fails.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: Ibe46b8cbc161f151eae4eb14878af4406fc78d41
Reviewed-on: http://review.whamcloud.com/9835
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4815 lfsck: pause LFSCK before server stack fini 74/9774/3
Fan Yong [Sat, 8 Mar 2014 15:53:22 +0000 (23:53 +0800)]
LU-4815 lfsck: pause LFSCK before server stack fini

To avoid the LFSCK to access the devices/objects during
the targets stopping.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Ifd8c1b1f878ac00a3c92ab6f2ab11e46003f584c
Reviewed-on: http://review.whamcloud.com/9774
Tested-by: Jenkins
Reviewed-by: Niu Yawei <yawei.niu@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>
6 years agoLU-4813 lfsck: reuse OUT_PORTAL for orphan iteration 72/9772/3
Fan Yong [Sat, 8 Mar 2014 15:52:18 +0000 (23:52 +0800)]
LU-4813 lfsck: reuse OUT_PORTAL for orphan iteration

It is unnecessary to use independent request portal for LFSCK
orphan iteration, which will cause trouble for UT work in the
future and also may cause interoperability issues. So we will
reuse the existing OUT_PORTAL for the same purpose.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I721977adb58ef35651775bacab6b5f9e325eb26a
Reviewed-on: http://review.whamcloud.com/9772
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>
6 years agoLU-4699 libcfs: unify ERR_PTR definitions 19/9519/4
John L. Hammond [Thu, 6 Mar 2014 01:08:24 +0000 (19:08 -0600)]
LU-4699 libcfs: unify ERR_PTR definitions

Add libcfs/err.h which either includes linux/err.h or defines
equiavlent functions (including ERR_CAST()) for use by userspace or
any of Lustre's other imaginary platforms. Modify the definition of
__container_of() to remove the pre-call explicit cast. Remove two
unused function that used container_of0() on an already dereferenced
pointer.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I26b454f835b51f1fb17b94eec7cf184f0a82071e
Reviewed-on: http://review.whamcloud.com/9519
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4476 kernel: support process namespace containers 17/8817/7
James Simmons [Wed, 12 Feb 2014 21:27:17 +0000 (16:27 -0500)]
LU-4476 kernel: support process namespace containers

PID namespace was introduce to linux to allow the
migration of containers between hosts. This way running
processes could be migrated to a new machine without
interruption due to pid collisions. User namespace creates
a new enviroment for a exist process where in this new
namespace it will have different uid/gid. Outside that
namespace the default uid/gid. For example a unprivileged
application can create user namespace for itself which has
root privilages. Those privilages don't exist outside of
the created namespace. Both of these changed the traditonal
one to one kernel mapping for pids/gids has changed. Since
userland can now have multiple PID namespaces this means that
each namespace in userland could have the same pid assigned.
This is possible since each namespace will be isolated from
each other. In the case of User namespace the application can
report to the kernel its namespace uid/gid instead of its real
uid/gid. Since the same running kernel is used between all
namespaces on a host the pid/gid data that is pushed into a
kernel context will have to map to a unique pid/gid in kernel
space to avoid collisions. This very similar to Lustre using
FIDs to avoid inode collisions. An example of where the mapping
needs to take place are when pid/gid data is pushed via a ioctl.
Also the internal structures of the kernel store uid/gid in the
kernel internal format. Lastly even with lustre userland uid/gid
namespace being consistant to applications the transmitted
uid/gid will be represented in the kernel differently from
server to server. Lustre wire protocols transmitting uid/gid
must handle these cases.

Change-Id: I207492b9a8a762e43ac2dd8fd1fb1b7397505304
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Reviewed-on: http://review.whamcloud.com/8817
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4257 clio: replace semaphore with mutex 95/9095/2
Dmitry Eremin [Mon, 3 Feb 2014 16:07:27 +0000 (20:07 +0400)]
LU-4257 clio: replace semaphore with mutex

According https://www.kernel.org/doc/Documentation/mutex-design.txt:
 - the mutex subsystem is slightly faster and has better scalability
   for contended workloads. In terms of 'ops per CPU cycle', the
   semaphore kernel performed 551 ops/sec per 1% of CPU time used,
   while the mutex kernel performed 3825 ops/sec per 1% of CPU time
   used - it was 6.9 times more efficient.
 - there are no fastpath tradeoffs, the mutex fastpath is just as
   tight as the semaphore fastpath. On x86, the locking fastpath is
   2 instructions.
 - 'struct mutex' semantics are well-defined and are enforced if
   CONFIG_DEBUG_MUTEXES is turned on. Semaphores on the other hand
   have virtually no debugging code or instrumentation.

One more benefit of mutex is optimistic spinning. It try to spin for
acquisition when there are no pending waiters and the lock owner is
currently running on a (different) CPU. The rationale is that if the
lock owner is running, it is likely to release the lock soon.

This significantly reduce amount of context switches when locked
region is small and we have high contention.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: Ic13179ab7e5ee628f550e5dfd251af31ac6d4211
Reviewed-on: http://review.whamcloud.com/9095
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
6 years agoLU-4805 lmv: lookup remote migrating object in LMV 06/9806/3
wang di [Wed, 26 Mar 2014 20:47:02 +0000 (13:47 -0700)]
LU-4805 lmv: lookup remote migrating object in LMV

If remote object is being found in a migrating directory,
it should continue to lookup the object in remote MDT,
instead of return.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: Ib3309e255e2e1fe5789854f47e470f3085d6f6e6
Reviewed-on: http://review.whamcloud.com/9806
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>
6 years agoLU-4063 tests: use $DIR to check file at agent host 69/7869/3
Jinshan Xiong [Thu, 14 Nov 2013 17:39:04 +0000 (09:39 -0800)]
LU-4063 tests: use $DIR to check file at agent host

12a used to use DIR2 which is not mounted at agent host.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I5cea35c5e20f8c1064902d6b116dbddb1096c150
Reviewed-on: http://review.whamcloud.com/7869
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: jacques-Charles Lafoucriere <jacques-charles.lafoucriere@cea.fr>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3319 lprocfs: update nodemap lproc to newer kernel 65/9465/2
James Simmons [Mon, 3 Mar 2014 23:13:24 +0000 (18:13 -0500)]
LU-3319 lprocfs: update nodemap lproc to newer kernel

The PDE macro no longer exist in newer kernels. This
patch moves the PDE usage in the nodemap layer to use
PDE_DATA which is support across all kernels.

Change-Id: Idcfb918e0d4e203ff0f9c6d838a68b1a204ee3bd
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Reviewed-on: http://review.whamcloud.com/9465
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Jenkins
Reviewed-by: Peng Tao <bergwolf@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4588 code: replace semaphores with mutexes 94/9294/5
Dmitry Eremin [Tue, 18 Feb 2014 20:08:20 +0000 (00:08 +0400)]
LU-4588 code: replace semaphores with mutexes

It's just optimization. The mutex subsystem is slightly faster
and has better scalability for contended workloads.

Remove the lustre_lock and it's accessor functions l_lock(),
l_unlock(), l_lock_init(), and l_has_lock() since they have
not been used by the code since Lustre 1.6.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I1b6defe7bdea2f7b33638a98c73277290c10bea1
Reviewed-on: http://review.whamcloud.com/9294
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
6 years agoLU-4199 libcfs: add wrapper of PAGE_SIZE 77/8877/4
Li Xi [Wed, 5 Mar 2014 01:27:39 +0000 (09:27 +0800)]
LU-4199 libcfs: add wrapper of PAGE_SIZE

PAGE_SIZE should not be used from userspace. It is not a
constant on all architectures and new kernels do not export
it to userspace anymore.

Signed-off-by: Li Xi <lixi@ddn.com>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: Ib66534c31c7134833bf4768d3cc8bbc067b1bab4
Reviewed-on: http://review.whamcloud.com/8877
Tested-by: Jenkins
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
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>
6 years agoLU-4199 libcfs: add CPU table functions for uniprocessor 73/8873/3
Li Xi [Tue, 4 Feb 2014 13:41:49 +0000 (08:41 -0500)]
LU-4199 libcfs: add CPU table functions for uniprocessor

Some CPU table functions for uniprocessor architecture is
missing.

Signed-off-by: Li Xi <lixi@ddn.com>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I2b41af63ebb5e4a1362e026d75b87855c1e7e2fa
Reviewed-on: http://review.whamcloud.com/8873
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Liang Zhen <liang.zhen@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3963 libcfs: convert ptlrpc,quota plus others to linux atomics 77/7077/11
Peng Tao [Thu, 27 Feb 2014 13:59:46 +0000 (08:59 -0500)]
LU-3963 libcfs: convert ptlrpc,quota plus others to linux atomics

This patch converts all cfs_atomic primitives in
liblustre, osp, ptlrpc and quota.

Signed-off-by: Liu Xuezhao <xuezhao.liu@emc.com>
Signed-off-by: Peng Tao <tao.peng@emc.com>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: If21fdd31441d4b2a23df8cbd9db8187bb827ab2f
Reviewed-on: http://review.whamcloud.com/7077
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
6 years agoLU-4086 tests: strengthen sanity-hsm/test_33 00/9600/8
Bruno Faccini [Wed, 12 Mar 2014 13:12:33 +0000 (14:12 +0100)]
LU-4086 tests: strengthen sanity-hsm/test_33

Instead of waiting+checking both Restore and Cancel HSM operations
sequentially, wait for both to be finished and then check each
results. This will allow to handle conditions where Restore
terminates before the Cancel is started.

Also added to wait_all_done() the capability to only work on
requests for a specific fid.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: I480ce074513d6829ecb3078c273bac1fdffa6256
Reviewed-on: http://review.whamcloud.com/9600
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Aurelien Degremont <aurelien.degremont@cea.fr>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4759 build: Remove obsolete file. Documentation was removed from the tree FDL... 70/9770/3
Cliff White [Mon, 24 Mar 2014 22:01:04 +0000 (15:01 -0700)]
LU-4759  build: Remove obsolete file. Documentation was removed from the tree FDL needs to be removed also.

Signed-off-by: Cliff White <cliff.white@intel.com>
Change-Id: I7c57491416460af6bbce4c355b4b16888427e73c
Reviewed-on: http://review.whamcloud.com/9770
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4679 liblustre: remove dead code and clean headers 29/9429/5
John L. Hammond [Thu, 27 Feb 2014 23:43:08 +0000 (17:43 -0600)]
LU-4679 liblustre: remove dead code and clean headers

In liblustre, remove statically unused functions, varaibles and
macros. Also ensure that the headers needed by the c and h files are
included at top level. Prune unneeded includes. In libsysio, include
sys/queue.h in fs.h.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I878b442b6d0ae17d8d5d33375ca7596618323c52
Reviewed-on: http://review.whamcloud.com/9429
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4585 out: memset(ta, 0) will cause memory leak 04/9804/2
wang di [Wed, 26 Mar 2014 16:01:58 +0000 (09:01 -0700)]
LU-4585 out: memset(ta, 0) will cause memory leak

thandle_exec_args should not be memset to 0 in
out_trans_start or out_handle, otherwise ta_args
will never be released.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: I3b6a8dc8c62af743015f6022afdeda14264574c8
Reviewed-on: http://review.whamcloud.com/9804
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-2675 lustre: remove lustre/include/ioctl.h 57/9757/2
John L. Hammond [Sun, 23 Mar 2014 18:34:15 +0000 (13:34 -0500)]
LU-2675 lustre: remove lustre/include/ioctl.h

Remove the nowhere included header lustre/include/ioctl.h.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ie059084c0e4ffb946694fc0a170f9200f12dda89
Reviewed-on: http://review.whamcloud.com/9757
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>
6 years agoLU-4462 mdt: don't apply mdt_object_fid() to ERR_PTRs 88/8788/3
John L. Hammond [Thu, 9 Jan 2014 19:09:49 +0000 (13:09 -0600)]
LU-4462 mdt: don't apply mdt_object_fid() to ERR_PTRs

In mdt_reconstruct_open(), mdt_reconstruct_create(), and
mdt_reconstruct_setattr() print the FID from the request rather than
applying mdt_object_fid() to a known ERR_PTR.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ifb9365dbef1492d8fb5c7ff27d00f5155b0e7525
Reviewed-on: http://review.whamcloud.com/8788
Tested-by: Jenkins
Reviewed-by: Dmitry Eremin <dmitry.eremin@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>
6 years agoLU-4655 libcfs: properly (un)define CDEBUG_ENTRY_EXIT 17/9517/2
John L. Hammond [Wed, 5 Mar 2014 22:06:55 +0000 (16:06 -0600)]
LU-4655 libcfs: properly (un)define CDEBUG_ENTRY_EXIT

In lustre-libcfs.m4 we defined CDEBUG_ENTRY_EXIT to 1 or 0 according
to whether libcfs-trace was enabled. But in libcfs_debug.h we tested
CDEBUG_ENTRY_EXIT using #ifdef and enabled the trace macros
accrodingly. Fix this and use CDEBUG_ENTRY_EXIT to control GOTO()
tracing as well. The ability to properly disable these macros will
make some static analyses easier.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ia016b4ddd45f8c39704a84908665757aa17bd3d2
Reviewed-on: http://review.whamcloud.com/9517
Tested-by: Jenkins
Reviewed-by: Dmitry Eremin <dmitry.eremin@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>
6 years agoLU-4747 tests: Call get_param from MDS 81/9581/2
James Nunez [Tue, 11 Mar 2014 15:07:03 +0000 (09:07 -0600)]
LU-4747 tests: Call get_param from MDS

In sanity tests 120a, b, c, d, e, f and g,
"lctl get_param ldlm.services.ldlm_canceld.stats" is
called from the client, but these stats are only
on the MDS.

Adding do_facet to the MDS gets the necessary stats.

Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: I6b8434960bf5ec5e1220460612a583f2ab763980
Reviewed-on: http://review.whamcloud.com/9581
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
6 years agoLU-4742 mdd: improve error messages in obf_lookup() 94/9594/2
Niu Yawei [Wed, 12 Mar 2014 06:06:04 +0000 (02:06 -0400)]
LU-4742 mdd: improve error messages in obf_lookup()

To make user able to understand that's just an invalid operation
in .lustre/fid, but not a serious error.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I928cdf61ae6a70c0ff5bbe1133338c54cd997aa2
Reviewed-on: http://review.whamcloud.com/9594
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4065 mdt: missing NL in CERROR format 97/9597/2
Bruno Faccini [Wed, 12 Mar 2014 08:36:20 +0000 (09:36 +0100)]
LU-4065 mdt: missing NL in CERROR format

Add a missing 'n' at the end of the CERROR format parameter to
avoid annoying "format at mdt_coordinator.c:977:mdt_hsm_cdt_start
doesn't end in newline" msg in syslog and the consequence of 2
merged lines/traces in Lustre debug-log.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: Ic8baf81886b5be3de32ee595be99e20428729f6d
Reviewed-on: http://review.whamcloud.com/9597
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>
6 years agoLU-4674 endianness: Fix __{LITTLE,BIG}_ENDIAN macro usage 41/9641/4
Swapnil Pimpale [Thu, 13 Mar 2014 11:11:07 +0000 (16:41 +0530)]
LU-4674 endianness: Fix __{LITTLE,BIG}_ENDIAN macro usage

Fixed the userspace code where __{LITTLE,BIG}_ENDIAN is tested
with #ifdef. This patch replaces those checks
with #if __BYTE_ORDER == __{LITTLE,BIG}_ENDIAN

Signed-off-by: Swapnil Pimpale <spimpale@ddn.com>
Change-Id: I92d4cf0c880d8032ea5023cb47ccfe7236dd03ab
Reviewed-on: http://review.whamcloud.com/9641
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>
6 years agoLU-4738 lmv: access lum_stripe_offset as little endian 71/9671/2
John L. Hammond [Fri, 14 Mar 2014 16:01:32 +0000 (11:01 -0500)]
LU-4738 lmv: access lum_stripe_offset as little endian

By the time that a struct lmv_user_md reaches lmv_placement_policy()
it has already been converted to little endian. Therefore use the
appropriate macros around accesses to this this field. This issue was
found by rewriting the definition of struct lmv_user_md to use the
__leXX typedefs and running sparse.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: If641375eabd22cc3e935a2e8f1327c48081c6ed1
Reviewed-on: http://review.whamcloud.com/9671
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Swapnil Pimpale <spimpale@ddn.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4780 lnet: NI shutdown may loop forever 06/9706/2
Liang Zhen [Tue, 18 Mar 2014 12:55:28 +0000 (20:55 +0800)]
LU-4780 lnet: NI shutdown may loop forever

lnet_shutdown_lndnis() may enter endless loop if there is a busy NI,
this is injected by LNet SMP improvements. It's fixed in this patch.

Signed-off-by: Liang Zhen <liang.zhen@intel.com>
Change-Id: I612ab9ff15aa40c05d6bd4cfee7cd107715f41b4
Reviewed-on: http://review.whamcloud.com/9706
Tested-by: Jenkins
Reviewed-by: Isaac Huang <he.huang@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-2982 build: make AC check for linux arch sandbox friendly 58/9458/2
Dmitry Eremin [Mon, 3 Mar 2014 15:06:04 +0000 (19:06 +0400)]
LU-2982 build: make AC check for linux arch sandbox friendly

I didn't found any usage of LINUXARCH definition in sources now.
But this check is problematic in sandbox. Therefore, I removed
it from sources at all.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: Ibdf0a3c26950a59d7f9cc51687d725d9c8835374
Reviewed-on: http://review.whamcloud.com/9458
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alexey Shvetsov <alexxy@gentoo.org>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4629 libcfs: fix issues found by Klocwork Insight tool 00/9400/7
Dmitry Eremin [Wed, 26 Feb 2014 08:20:03 +0000 (12:20 +0400)]
LU-4629 libcfs: fix issues found by Klocwork Insight tool

sscanf format specification '%u' expects type 'unsigned int *'
for 'u', but parameter 3 has a different type 'int*'.

Pointer 'cfs_crypto_hash_type(d->hd_hash->ha_id)' returned from
call to function 'cfs_crypto_hash_type' at line 261 may be NULL
and will be dereferenced at line 261.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I9945a7e5d44329aa6417946106212cb269395290
Reviewed-on: http://review.whamcloud.com/9400
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4629 obdclass: fix use after release 88/9388/3
Dmitry Eremin [Tue, 25 Feb 2014 20:17:24 +0000 (00:17 +0400)]
LU-4629 obdclass: fix use after release

Pointer 'type->typ_name' checked for NULL at line 195 will be passed
to function and may be dereferenced there by passing argument 1 to
function 'lprocfs_try_remove_proc_entry' at line 246.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I697ffab97a5bd1ab55339722d87a3dfca5c1e173
Reviewed-on: http://review.whamcloud.com/9388
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4629 mdc: fix issue found by Klocwork Insight tool 87/9387/4
Dmitry Eremin [Tue, 25 Feb 2014 18:41:26 +0000 (22:41 +0400)]
LU-4629 mdc: fix issue found by Klocwork Insight tool

Pointer 'mod' checked for NULL at line 160 may be dereferenced at line 208.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I130de2f5b2066b8797e2454d4a603f53b3ffcbef
Reviewed-on: http://review.whamcloud.com/9387
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4629 lnet: fix issues found by Klocwork Insight tool 86/9386/5
Dmitry Eremin [Tue, 25 Feb 2014 18:44:09 +0000 (22:44 +0400)]
LU-4629 lnet: fix issues found by Klocwork Insight tool

Null pointer 'cp' that comes from line 2544 may be dereferenced
at line 2618.

Pointer 'ni' checked for NULL at line 1569 may be passed to
function and may be dereferenced there by passing argument 1 to
function 'lnet_ni_notify_locked' at line 1621.

Null pointer 'best_iface' that comes from line 802 may be
dereferenced at line 832.

Buffer overflow of string buffer due to non null terminated string.

sscanf format specification '%lx' expects type 'unsigned long int *'
for 'x', but parameter 4 has a different type 'long int*'.

Pointer 'tsc' returned from call to function 'sfw_find_test_case'
at line 571 may be NULL and will be dereferenced at line 572.

sscanf format specification '%i' expects type 'int *' for 'i',
but parameter 3 has a different type 'unsigned int*'.

Local variable 'hash' is never used.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I2a942735cd93906453b92dcc711a956b7adf5615
Reviewed-on: http://review.whamcloud.com/9386
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Isaac Huang <he.huang@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4629 ldlm: fix NULL pointer dereference 23/9323/4
Dmitry Eremin [Thu, 20 Feb 2014 08:39:30 +0000 (12:39 +0400)]
LU-4629 ldlm: fix NULL pointer dereference

Pointer '*exp' returned from call to function 'class_conn2export'
at line 523 may be NULL and may be dereferenced at line 543.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I084ae2ae76861aef4fd93477551bc9d0dd5f4478
Reviewed-on: http://review.whamcloud.com/9323
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4496 build: enable RPMs build with --disable-modules 06/9306/4
Dmitry Eremin [Wed, 19 Feb 2014 11:42:38 +0000 (15:42 +0400)]
LU-4496 build: enable RPMs build with --disable-modules

Enable the following RPMs build:
  ./configure --disable-modules
  make rpms

Addition to commit c92afbcd4a8234994affa444d59645b80fa19ec5
(Reviewed-on: http://review.whamcloud.com/6020)

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I7b26fac928404a75e974b414085bf1a584ad8bb9
Reviewed-on: http://review.whamcloud.com/9306
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Christopher J. Morrone <chris.morrone.llnl@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4614 llite: remove lustre_generic_file_{read,write} 30/9230/2
Jinshan Xiong [Tue, 11 Feb 2014 19:58:32 +0000 (11:58 -0800)]
LU-4614 llite: remove lustre_generic_file_{read,write}

It looks like lustre_generic_file_{read,write} are a holdover from
2.6.19 where generic_file_aio_read() replaced generic_file_readv()
and cross-kernel interoperability was required for some period of
time. Lustre has since removed support for those older kernels, but
it looks like the wrappers were not deleted at that time. This patch
will delete them.

Pass &iocb->ki_pos as the last argument for these functions instead
of crw_pos, since this is the convention for other callers.  Verify
that this is the same as the current crw_pos argument.  This code can
likely be cleaned up further in a later patch.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: Id19edacf93ee2538634feb95580ab885f6069ee7
Reviewed-on: http://review.whamcloud.com/9230
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
6 years agoLU-3059 lu: shrink lu_object_header by 8 bytes on x86_64 85/9185/2
Andreas Dilger [Sat, 8 Feb 2014 03:33:02 +0000 (20:33 -0700)]
LU-3059 lu: shrink lu_object_header by 8 bytes on x86_64

Locate the loh_flags and loh_ref fields together in lu_object_header
to avoid holes and shrink the structure by 8 bytes.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I36b6132a819b6557d6d1688adb3e1f7d282d22b5
Reviewed-on: http://review.whamcloud.com/9185
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Liang Zhen <liang.zhen@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4596 lprocfs: mdt/*/exports/*/uuid is empty after remount 71/9171/4
Andriy Skulysh [Thu, 6 Feb 2014 22:50:08 +0000 (00:50 +0200)]
LU-4596 lprocfs: mdt/*/exports/*/uuid is empty after remount

need to assign exp_nid_stats even if old stats are present

Change-Id: I9b0ac4c7ccee6cbd457827b20123bf40d91aaf33
Xyratex-bug-id: MRP-1641
Signed-off-by: Andriy Skulysh <Andriy_Skulysh@xyratex.com>
Reviewed-on: http://review.whamcloud.com/9171
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3254 llite: access layout version under a lock 89/8689/2
Jinshan Xiong [Tue, 31 Dec 2013 21:49:33 +0000 (13:49 -0800)]
LU-3254 llite: access layout version under a lock

We used to access layout version under the protection of ldlm
lock, this introduces extra overhead for dlm lock matching.

In this patch, lli_layout_lock is introduced to access the layout
version. Also, when a layout lock is losing, we should tear down
mmap of the correspoding inode to avoid stale data accessing in the
future.

This is part of technical verification of replication.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I657c6a8b27f2cdaf468dc208c43c1d92f3843705
Reviewed-on: http://review.whamcloud.com/8689
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-1538 tests: unmount /sbin/mount.lustre bind mount 12/8912/4
Andreas Dilger [Sat, 18 Jan 2014 05:30:16 +0000 (22:30 -0700)]
LU-1538 tests: unmount /sbin/mount.lustre bind mount

If the lustre/utils/mount.lustre file has changed since it was bind
mounted on /sbin/mount.lustre, unmount it and mount the new one
there, to avoid strange problems when testing from a local tree

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Ie5360dae9f33553acb914c8ce549e848c1500c1e
Reviewed-on: http://review.whamcloud.com/8912
Tested-by: Jenkins
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4446 tests: block on layout lock fix up on sanityn:51c 89/8789/4
Jinshan Xiong [Thu, 9 Jan 2014 20:32:13 +0000 (12:32 -0800)]
LU-4446 tests: block on layout lock fix up on sanityn:51c

Fixed two problems: set fail_loc on MDS and block at layout lock
by writing the test file.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I8028e855aad5882981a313fb28ec5b87f593832b
Reviewed-on: http://review.whamcloud.com/8789
Tested-by: Jenkins
Reviewed-by: Jian Yu <jian.yu@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>
6 years agoLU-3373 osd-ldiskfs: readdir replace by iterate 31/8231/11
yangsheng [Thu, 27 Feb 2014 14:19:21 +0000 (22:19 +0800)]
LU-3373 osd-ldiskfs: readdir replace by iterate

Use iterate instead of readdir callback in iop.

Signed-off-by: yang sheng <yang.sheng@intel.com>
Change-Id: Icb08292009c965ca693814e854ae2e77b3e7a4f0
Reviewed-on: http://review.whamcloud.com/8231
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Peng Tao <bergwolf@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4167 tests: update version check to conf-sanity test_32 32/8132/11
Emoly Liu [Sun, 2 Mar 2014 19:06:56 +0000 (03:06 +0800)]
LU-4167 tests: update version check to conf-sanity test_32

This patch updates version check codes to skip running LFSCK on an
OST for versions >= 2.5.0 in conf-sanity.sh test_32.

Test-Parameters: testlist=conf-sanity envdefinitions=SLOW=yes, ONLY=32 ossjob=lustre-b2_4 mdsjob=lustre-b2_4 ossbuildno=71 mdsbuildno=71 clientdistro=el6 ossdistro=el6 mdsdistro=el6 clientarch=x86_64 ossarch=x86_64 mdsarch=x86_64
Signed-off-by: Emoly Liu <emoly.liu@intel.com>
Change-Id: Ibc0c34a0c15f4882a0dd06dae75d1f1fe10b6f16
Reviewed-on: http://review.whamcloud.com/8132
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>
6 years agoLU-4585 out: remove OBJECT_UPDATE_PER_RPC_MAX limit. 90/9590/4
wang di [Tue, 11 Mar 2014 15:38:24 +0000 (08:38 -0700)]
LU-4585 out: remove OBJECT_UPDATE_PER_RPC_MAX limit.

Extend tx_args if the update inside 1 RPC is more than
the count of tx_args count in tgt_thread_info.

And also for create remote object, the remote RPC might
happen in trans stop, so we need to add return value
for mdd_trans_stop to track the error.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: Ibb87181d87dfb6c3ed7e6757592bccd4a836a98a
Reviewed-on: http://review.whamcloud.com/9590
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>
6 years agoLU-4108 tests: decrease load for zfs in performance-sanity/4 25/9725/2
Nathaniel Clark [Wed, 19 Mar 2014 14:33:32 +0000 (10:33 -0400)]
LU-4108 tests: decrease load for zfs in performance-sanity/4

Given the poor performance of metadata on ZFS (cf LU-2600), this patch
decreases the number of files created (similar to what happens in
perforamnce-scale.sh).

Test-Parameters: mdtfilesystemtype=zfs ostfilesystemtype=zfs  mdsfilesystemtype=zfs testlist=performance-sanity
Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: I998c8525bf218dacad07d98ac842f4c12102cd9a
Reviewed-on: http://review.whamcloud.com/9725
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>