Whamcloud - gitweb
fs/lustre-release.git
6 years agoLU-4444 tests: Skip conf-sanity/69 on zfs 41/8841/2
Nathaniel Clark [Tue, 14 Jan 2014 14:36:50 +0000 (09:36 -0500)]
LU-4444 tests: Skip conf-sanity/69 on zfs

Because file creates happen slowly on ZFS and the number of files
required to run the test is 100K, this test cannot run in a
reasonable amount of time.

Also bail out of test if createmany fails (possible if MDS or OST is
too small), this prevents the test from just timing out instead.

Test-Parameters: envdefinitions=SLOW=yes testlist=conf-sanity
Test-Parameters: envdefinitions=SLOW=yes testlist=conf-sanity mdsfilesystemtype=zfs mdtfilesystemtype=zfs ostfilesystemtype=zfs
Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: Ic8286c970332e0c53525e4d89e4c5f0e32cf57cb
Reviewed-on: http://review.whamcloud.com/8841
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Reviewed-by: Jian Yu <jian.yu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
6 years agoLU-4384 target: don't set OBD_INCOMPAT_FID for OST 10/8810/2
Mikhail Pershin [Sat, 11 Jan 2014 20:21:13 +0000 (00:21 +0400)]
LU-4384 target: don't set OBD_INCOMPAT_FID for OST

That cause downgrade to fall, though here is no incompatibility
actually.

Signed-off-by: Mikhail Pershin <mike.pershin@intel.com>
Change-Id: I71de76496441dd4627cf235166f866404edd6cec
Reviewed-on: http://review.whamcloud.com/8810
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
6 years agoLU-1267 lfsck: framework (1) for MDT-OST consistency 46/7146/25
Fan Yong [Thu, 9 Jan 2014 17:35:32 +0000 (01:35 +0800)]
LU-1267 lfsck: framework (1) for MDT-OST consistency

1) New LFSCK component - lfsck_layout, its data structure, tracing
   file, lFSCK APIs, internal shared functions, and so on.

2) Extend the existing LFSCK:
2.1) new flag - LF_INCOMPLETE, for the case of some target (MDT/OST)
     not join the LFSCK or crashed during the LFSCK.
2.2) New status - LS_PARTIAL, corresponding to above LF_INCOMPLETE,
     if some target (MDT/OST) does not join the LFSCK processing or
     crashed during the LFSCK, when it finished, its status will be
     set as LS_PARTIAL.

3) Control the LFSCK speed by each component itself during the
   second-phase scanning.

4) Avoid lfsck engines to access freed lfsck_instance.

5) Some code cleanup.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I6dc7bb881dc831f6c760be14aac2a066ad75ffec
Reviewed-on: http://review.whamcloud.com/7146
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4106 scrub: Trigger OI scrub properly 02/8002/15
Fan Yong [Mon, 13 Jan 2014 07:46:51 +0000 (15:46 +0800)]
LU-4106 scrub: Trigger OI scrub properly

There is the following race case between osd_fid_lookup() and object
unlink/detroy:

Both RPC service thread_1 and RPC service thread_2 try to find the
same obj_A at the same time. At the beginning, the obj_A is not in
cache. The thread_1 is in osd_fid_lookup() and finds the OI mapping
for obj_A. But before the thread_1 finding out related inode_A, the
thread_2 moves faster and finds the inode_A and unlinks the inode_A.
So the thread_1 will fail to find the inode_A. Under such case, the
thread_1 will try to check OI again to make sure whether related OI
mapping is still there or not. If no OI mapping, then it is normal
becuase someone has unlinked the file by race; otherwise, it may be
caused by file-level backup/restore, then thread_1 will trigger OI
scrub to rebuild OI files.

But we ignored a corner case that the thread_1 recheck the OI files
may just between the thread_2 has dropped the inode_A's referene to
zero and will remove related OI mapping from the OI file. Then the
thread_1 is misguided, and will trigger OI scrbu unexpectedly.

More initial OI scrub for the /ROOT/.lustre directory to make sure
the necessary files/directories for mount are ready before used.

This patch also enhances the ls_locate()/dt_locate_at() interface
to allow the caller to pass some hints to low layer, such as flag
LOC_F_NEW for create, to help the low layer to handle efficiently
and properly.

Test-Parameters: mdtcount=4 testlist=sanity-scrub
Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Ia0fa198fc4fa31056f6a32a6d3e75cf905832cd1
Reviewed-on: http://review.whamcloud.com/8002
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
6 years agoLU-4263 osd-zfs: Avoid converting last ID FIDs to OST IDs 01/8301/4
Li Wei [Fri, 30 Aug 2013 07:12:40 +0000 (15:12 +0800)]
LU-4263 osd-zfs: Avoid converting last ID FIDs to OST IDs

When obdfilter-survey first creates an object on a fresh ZFS OST, the
last ID object for FID_SEQ_ECHO has to be created in the first place.
The last ID FID, [FID_SEQ_ECHO:0:0], can not be converted to an OST ID
because the resulting OST ID would be indistinguishable from an
FID_SEQ_OST_MDT0 OST ID and would confuse ostid_id().  This patch
checks for last ID FIDs before converting them to OST IDs in
osd_get_idx_for_ost_obj().

Change-Id: I96cdf85b4725e4882cecabaf90466c7f77a5e0a6
Intel-bug-id: FF-182
Signed-off-by: Li Wei <wei.g.li@intel.com>
Reviewed-on: http://review.whamcloud.com/8301
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4454 libcfs: warn if all HTs in a core are gone 70/8770/3
Liang Zhen [Wed, 8 Jan 2014 06:51:17 +0000 (14:51 +0800)]
LU-4454 libcfs: warn if all HTs in a core are gone

libcfs cpu partition can't support CPU hotplug, but it is safe
when plug-in new CPU or enabling/disabling hyper-threading.
It has potential risk only if plug-out CPU because it may break CPU
affinity of Lustre threads.

Current libcfs will print warning for all CPU notification, this
patch changed this behavior and only output warning when we lost all
HTs in a CPU core which may have broken affinity of Lustre threads.

Signed-off-by: Liang Zhen <liang.zhen@intel.com>
Change-Id: I62267b62871c129beeb1593c4f69e7b81a79999d
Reviewed-on: http://review.whamcloud.com/8770
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
6 years agoLU-4372 gss: Compatibility cache_register_net 2.6.x/3.3 kernel 28/8528/6
Thomas Stibor [Mon, 30 Dec 2013 19:00:32 +0000 (14:00 -0500)]
LU-4372 gss: Compatibility cache_register_net 2.6.x/3.3 kernel

Since 3.4 cache_register/cache_unregister are removed.
This patch provides a compatibility function to support
kernels 2.6.x to 3.3. Note, since 2.6.37
cache_register_net/cache_unregister_net are defined,
but not exported (no EXPORT_SYMBOL) and thus cannot
be loaded by the module loader. In 3.3
cache_register_net/cache_unregister_net
are exported. This patch is related to LU-4012.

Signed-off-by: Thomas Stibor <thomas@stibor.net>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: Iaee5aa7e60e1bd08735c345f413a2344c2850f57
Reviewed-on: http://review.whamcloud.com/8528
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>
6 years agoLU-3834 mdt: handle swap_layouts failures during restore 31/7631/14
Bruno Faccini [Tue, 10 Dec 2013 09:55:59 +0000 (10:55 +0100)]
LU-3834 mdt: handle swap_layouts failures during restore

Actually nothing occur after swap_layouts failures during restore,
this can lead to file being left in incoherent state and thus be
unavailable because HS_RELEASED is clear but LOV_PATTERN_F_RELEASED
is still set.
This patch will allow original layout to be recovered by the use of
SWAP_LAYOUTS_MDS_HSM flag. Additionaly this requires HSM xattr of
the data FID to be set.
Also adds layout-swap failure injection and related test.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: Id0e9a005362e4a3854b33f6ce1888197d20e7dbf
Reviewed-on: http://review.whamcloud.com/7631
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Aurelien Degremont <aurelien.degremont@cea.fr>
Reviewed-by: jacques-Charles Lafoucriere <jacques-charles.lafoucriere@cea.fr>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3963 libcfs: convert DT objects atomic primitives 76/7076/7
Peng Tao [Tue, 17 Dec 2013 19:55:13 +0000 (14:55 -0500)]
LU-3963 libcfs: convert DT objects atomic primitives

This patch convers all cfs_atomic primitives in
ofd, osc, osd-ldiskfs and osd-zfs to the linux
atomic api.

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: I235cd45503115a936cf502e5469daf806cf16078
Reviewed-on: http://review.whamcloud.com/7076
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3963 libcfs: convert md[d/t]/mg[c/s] to linux atomic primitives 74/7074/10
Peng Tao [Tue, 31 Dec 2013 15:22:23 +0000 (10:22 -0500)]
LU-3963 libcfs: convert md[d/t]/mg[c/s] to linux atomic primitives

This patch convers all cfs_atomic primitives in
mdd, mdt, mgc and mgs.

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: I052ca4da80b0cbd36df02a50f2ae0651eec28ea8
Reviewed-on: http://review.whamcloud.com/7074
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
6 years agoLU-3963 libcfs: convert include/lclient/ldlm/lfsck cfs_atomic 72/7072/9
James Simmons [Fri, 10 Jan 2014 17:02:12 +0000 (12:02 -0500)]
LU-3963 libcfs: convert include/lclient/ldlm/lfsck cfs_atomic

This patch converts all cfs_atomic primitives in
lustre/include, lclient, ldlm and lfsck directories.

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: Ie746993b917bd6ea8c2403a47488ef0e5a06d6fb
Reviewed-on: http://review.whamcloud.com/7072
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-2675 lov: remove unused lov obd functions 81/5581/9
John L. Hammond [Wed, 11 Dec 2013 17:28:24 +0000 (11:28 -0600)]
LU-2675 lov: remove unused lov obd functions

Remove the unused liblustre functions llu_extent_lock,
llu_extent_unlock, and llu_glimpse_callback.

Remove the unused lov functions lov_getattr, lov_setattr, lov_brw,
lov_merge_lvb, lov_punch, lov_sync, lov_enqueue, lov_cancel,
lov_cancel_unused, lov_extent_calc, lov_setstripe, lov_setea,
lov_find_pool, and supporting functions.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I59daa224cfedc9e105a3ebe4d3bacecd5a9aa739
Reviewed-on: http://review.whamcloud.com/5581
Tested-by: Jenkins
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
6 years agoLU-3529 osp: init FID client for OSP on MDT. 58/7158/19
wang di [Mon, 12 May 2014 05:33:17 +0000 (22:33 -0700)]
LU-3529 osp: init FID client for OSP on MDT.

1. Initialize FID client for OSP on MDT.
2. Pull out OSP precreate stuff into a separate structure,
so OSP on MDT does not have to allocate precreate.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: I3c4a87e2fbea2a733fc6a4a296a50ba67652aa32
Reviewed-on: http://review.whamcloud.com/7158
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Jenkins
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3772 ptlrpc: fix nrs cleanup 10/7410/4
Niu Yawei [Thu, 14 Nov 2013 04:48:00 +0000 (23:48 -0500)]
LU-3772 ptlrpc: fix nrs cleanup

When service start failed due to short of memory, the cleanup code
could operate on uninitialized structure and cause crash at the end.

This patch fix the nrs_svcpt_cleanup_locked() to perform cleanup only
on the nrs which has been properly initialized.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: Ieafa5b144133490b662f5a80a7b99311a9970de3
Reviewed-on: http://review.whamcloud.com/7410
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>
6 years agoLU-4314 build: no dependency from ldiskfs sources 04/8404/5
Dmitry Eremin [Tue, 26 Nov 2013 20:18:53 +0000 (00:18 +0400)]
LU-4314 build: no dependency from ldiskfs sources

Fix absence dependency modules from ldiskfs sources. Otherwise the
build of modules begins early than actual sources prepared in ldiskfs
directory in case of parallel build (with -j <n> option).

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I24d3630d9132235a2dc5433eb5b8d3379c04acaa
Reviewed-on: http://review.whamcloud.com/8404
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Christopher J. Morrone <chris.morrone.llnl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3289 gss: gssnull security flavor 75/8475/10
Andrew Korty [Tue, 3 Dec 2013 20:07:13 +0000 (12:07 -0800)]
LU-3289 gss: gssnull security flavor

This change implements the gssnull security flavor for the purpose of
testing the Lustre GSS code.  It provides and uses a null GSS
mechanism so this testing doesn't have to involve any code related to
Kerberos or any other authentication method.

Signed-off-by: Andrew Korty <ajk@iu.edu>
Change-Id: Ic8378a052fd2a0f5a84877476a4a29aef7b0412a
Reviewed-on: http://review.whamcloud.com/8475
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Thomas Stibor <thomas@stibor.net>
6 years agoLU-4299 kernel: kernel update [SLES11 SP3 3.0.101-0.8] 62/8762/2
Bob Glossman [Mon, 6 Jan 2014 23:13:37 +0000 (15:13 -0800)]
LU-4299 kernel: kernel update [SLES11 SP3 3.0.101-0.8]

update target and config files for new kernel version

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: Ie8d7078768129bf19ce7dfd129ba509389d8a232
Reviewed-on: http://review.whamcloud.com/8762
Tested-by: Jenkins
Reviewed-by: Yang Sheng <yang.sheng@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>
6 years agoLU-4360 Fix use after free in ksocknal_send 67/8667/3
Oleg Drokin [Sat, 28 Dec 2013 03:31:15 +0000 (22:31 -0500)]
LU-4360 Fix use after free in ksocknal_send

Call to ksocknal_launch_packet might schedule a callback that
might free the just sent message, and so subsequent access to it
via lntmsg->msg_vmflush goes to freed memory.

Instead we'll just remember if we are in the vmflush thread and
only restore if we happened to set mempressure flag.

Change-Id: I2f0f8b27e26e11b37ad60fde4c98e86c39768349
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/8667
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Liang Zhen <liang.zhen@intel.com>
Reviewed-by: Amir Shehata <amir.shehata@intel.com>
6 years agoNew tag 2.5.54 2.5.54 v2_5_54 v2_5_54_0
Oleg Drokin [Sat, 11 Jan 2014 05:42:07 +0000 (00:42 -0500)]
New tag 2.5.54

Change-Id: I6471a15e07373c2cc2c023840ddb31a492eb9d4c

6 years agoLU-2753 lvfs: cleanup lvfs.h and collateral 60/6660/6
John L. Hammond [Mon, 30 Dec 2013 16:05:36 +0000 (11:05 -0500)]
LU-2753 lvfs: cleanup lvfs.h and collateral

Remove the unused struct lvfs_ucred. Remove the ucred pointer argument
from {push,pop}_ctxt() to which all called passed NULL. Remove the now
unused functions {push,pop}_group_info(). Delete lvfs_linux.h. Remove
the cb_ops member from lvfs_run_ctxt which was read but never set.
Remove the unused functions {l,ll}_dentry_open(). Reduce the number
of gratuitous includes of lvfs.h.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: Ia7f61e4c5a6af73381a39740dc76367655d18985
Reviewed-on: http://review.whamcloud.com/6660
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
6 years agoLU-4237 lfs: Include lfs mkdir in lfs man page 21/8221/5
Patrick Farrell [Thu, 2 Jan 2014 15:44:25 +0000 (09:44 -0600)]
LU-4237 lfs: Include lfs mkdir in lfs man page

This patch adds the usage information for lfs mkdir to the lfs
man page.

Signed-off-by: Patrick Farrell <paf@cray.com>
Change-Id: I33a7ad1f48d2a14ad6b0c212a38140622f47c8a7
Reviewed-on: http://review.whamcloud.com/8221
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
6 years agoLU-1422 lnet: eliminate obsolete Cray SeaStar support 69/7469/8
James Simmons [Tue, 31 Dec 2013 15:59:38 +0000 (10:59 -0500)]
LU-1422 lnet: eliminate obsolete Cray SeaStar support

Remove the bulk of code for the no longer supported
SeaStar interconnect found on older Cray systems.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I29d07df9e7a5d33a700f7c9a14a49a9b3bf61dbe
Reviewed-on: http://review.whamcloud.com/7469
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Liang Zhen <liang.zhen@intel.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Reviewed-by: Chuck Fossen <chuckf@cray.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-946 lprocfs: List open files in filesystem 86/6386/22
Girish Shilamkar [Sun, 19 May 2013 08:27:00 +0000 (16:27 +0800)]
LU-946 lprocfs: List open files in filesystem

Added lprocfs file on MDT to list open files in per-export
directory for mdt.

Test-Parameters: testlist=sanity,sanityn
Signed-off-by: Girish Shilamkar <gshilamkar@ddn.com>
Signed-off-by: Emoly Liu <emoly.liu@intel.com>
Change-Id: If8f233d95dca4cd4c4044d85bd117a027dabd80e
Reviewed-on: http://review.whamcloud.com/6386
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Swapnil Pimpale <spimpale@ddn.com>
6 years agoLU-1095 debug: clean up console messages 17/8617/2
Andreas Dilger [Fri, 10 May 2013 04:52:01 +0000 (22:52 -0600)]
LU-1095 debug: clean up console messages

Clean up overly verbose console error messages, improve others.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I480d61dd6febb81ca58709ff939a7807bc3ebbe5
Reviewed-on: http://review.whamcloud.com/8617
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Faccini Bruno <bruno.faccini@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4293 utils: handle lfs migrate failure in lfs_migrate 16/8616/2
Andreas Dilger [Wed, 18 Dec 2013 08:50:56 +0000 (01:50 -0700)]
LU-4293 utils: handle lfs migrate failure in lfs_migrate

If "lfs migrate" returns an error, possibly because it is refusing
to migrate an IGIF FID, fall back to using rsync to copy the file
and rename it.  Print a message in this case so the user knows it
is not a fatal error yet.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I114006afb93d8c8d78923a874f3b914200500c1e
Reviewed-on: http://review.whamcloud.com/8616
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Faccini Bruno <bruno.faccini@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4429 llite: fix open lock matching in ll_md_blocking_ast() 18/8718/2
John L. Hammond [Fri, 3 Jan 2014 23:31:53 +0000 (17:31 -0600)]
LU-4429 llite: fix open lock matching in ll_md_blocking_ast()

In ll_md_blocking_ast() match open locks before all others, ensuring
that MDS_INODELOCK_OPEN is not cleared from bits by another open lock
with a different mode. Change the int flags parameter of
ll_md_real_close() to fmode_t fmode. Clean up verious style issues in
both functions.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I790cbbdbab75b25016c938b5f6340b20e09fc82e
Reviewed-on: http://review.whamcloud.com/8718
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4405 mdc: use ibits_known mask for lock match 36/8636/5
Alexey Lyashkov [Thu, 2 Jan 2014 22:03:26 +0000 (16:03 -0600)]
LU-4405 mdc: use ibits_known mask for lock match

Before revalidating a lock on the client, mask the lock bits against
the lock bits supported by the server (ibits_known), so newer clients
will find valid locks given by older server versions.

Xyratex-bug-id: MRP-1583

Signed-off-by: Patrick Farrell <paf@cray.com>
Signed-off-by: Alexey Lyashkov <alexey_lyashkov@xyratex.com>
Change-Id: I359b87e4bdc7b930e51538a4a854c47e87dd0520
Reviewed-on: http://review.whamcloud.com/8636
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-2524 test: Modify tdir to be single directory 23/8123/5
James Nunez [Sat, 21 Dec 2013 03:13:19 +0000 (20:13 -0700)]
LU-2524 test: Modify tdir to be single directory

Currently, the tdir variable is a directory with a subdirectory.
This requires the '-p' option when calling mkdir. We've made tdir
be a single directory so calls to mkdir and test_mkdir do not
require the '-p' option in most cases.

tdir was changed from d0.${TESTSUITE}/d${base} to
d${testnum}.${TESTSUITE} and tfile was changed from
f.${TESTSUITE}.${testnum} to f${testnum}.${TESTSUITE}. Now tdir and
tfile are consistent in their format and the call to remove files
and directories at the beginning of many test scripts will remove
these files and directories.

Once this patch lands, we can remove the "-p" option from many
of the calls to mkdir.

Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: Ib49d7102a49ff6b5f3ec539a5b2f2f5186231a04
Reviewed-on: http://review.whamcloud.com/8123
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
6 years agoLU-3558 ptlrpc: Add the NRS TBF policy 01/6901/20
Li Xi [Sun, 3 Nov 2013 17:49:54 +0000 (09:49 -0800)]
LU-3558 ptlrpc: Add the NRS TBF policy

The TBF (Token Bucket Filter) policy schedules and throttles all
types of RPCs for traffic control purposes. It divides RPCs into
different types according to their NIDs or job IDs, and enforces
a RPC rate limit on every type. The handling of a RPC will be delayed
until there are enough tokens for the type. Different types are
scheduled according to their deadlines, so that none of them will be
starving even though the service does not have the ability to satisfy
all the RPC rate requirments of types. The RPCs with the the same
types are queued in a FIFO manner.

Signed-off-by: Li Xi <lixi@ddn.com>
Change-Id: I3f73dfbfb451cc44dfe5e0a575ec7ab5b90ac47e
Reviewed-on: http://review.whamcloud.com/6901
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3527 nodemap: add nodemap kernel module 34/8034/16
Joshua Walgenbach [Thu, 28 Nov 2013 20:18:53 +0000 (21:18 +0100)]
LU-3527 nodemap: add nodemap kernel module

The nodemap kernel module manages groups of mounted clients
and allows policies to be applied to them. A nodemap will be
defined as a nodemap name, and id, a tree of NID ranges that
represents the clients that are included in the nodemap, and
values that represent a policy for the behavior of the
filesystem with respect to those clients.

Initially, the policies implemented for nodemap will be static
UID/GID mapping from client IDs to a canonical filesystem IDs.
Additional flags are provided to allow the filesystem to trust
the IDs from the client (apply no mapping) and allow UID 0
(rootsquash applied to an entire nodemap).

A default nodemap is automatically provided which implicitly
contains all the clients not otherwise specified by an NID
range.

Nodemap will allow the unmapped UID/GIDs to be specified on a
case by case basis.

Nodemaps will be managed on the MGS, and configurations pushed
out the the other servers in the filesystem.

This patch adds nodemap to the build system, and defines the
basic operation for managing the addition and deletion of
the nodemap definitions.

The ioctl for management of the nodemaps from userspace was
added. The commands for adding and removing nodemaps were
added to lctl, and the handlers in the mgs.

The data structures for the module were added in
lustre/include/lustre_nodemap.

Additions were made to the make system and the m4 macros
to build nodemap with the rest of lustre.

Unit tests for adding and removing nodemaps were added
to sanity-sec.sh.

Range and idmap management functions will be added in the
two subsquent patches.

Signed-off-by: Joshua Walgenbach <jjw@iu.edu>
Change-Id: I2d34fde7aae3c2b4af512ff2c1ace5115ed40a6a
Reviewed-on: http://review.whamcloud.com/8034
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Andrew Perepechko <andrew_perepechko@xyratex.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
6 years agoLU-3569 ofd: packing ost_idx in IDIF 53/7053/10
Fan Yong [Sun, 24 Nov 2013 08:59:00 +0000 (16:59 +0800)]
LU-3569 ofd: packing ost_idx in IDIF

For a normal FID, we can know on which target the related object
is allocated via querying FLDB; but it is not true for an IDIF.

To locate the OST via the given IDIF, when the IDIF is generated,
we pack the OST index in it. Then for any given FID, in spite of
it is a normal FID or not, we has the method to know which target
it belongs to. That is useful for LFSCK.

For old IDIF, the OST index is not part of the IDIF, means that
different OSTs may have the same IDIFs, that may cause the IFID
in LMA does not match the read FID. Under such case, we need to
make some compatible check to avoid to trigger unexpected.

tgt_validate_obdo() converts the ostid contained in the RPC body
to fid and changes the "struct ost_id" union, then the users can
access ost_id::oi_fid directly without call ostid_to_fid() again.

It also contains some other fixing and cleanup.

Test-Parameters: testlist=sanity-scrub
Signed-off-by: wang di <di.wang@intel.com>
Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I228f2f6cd9310193a1724046cee15e3b2103c8e2
Reviewed-on: http://review.whamcloud.com/7053
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-3467 target: generic hpreq handler in target 83/7383/41
Mikhail Pershin [Sun, 18 Aug 2013 12:53:24 +0000 (16:53 +0400)]
LU-3467 target: generic hpreq handler in target

Make high-priority request handling generic. Each request handler
may initialize now not only generic handler but also high-priority
handler. Move specific OST hp callbacks to the OFD.

Remove rq_recovery_session from ptlrpc_request and use rq_session
always. That additional session was needed when recovery request
was copied, so the normal session might become freed. Now request
is not copied but referenced and only single session is enough.

Signed-off-by: Mikhail Pershin <mike.pershin@intel.com>
Change-Id: Iabf36d0828a86974bfe0638957f6018c919ac13b
Reviewed-on: http://review.whamcloud.com/7383
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
6 years agoLU-3939 tests: sanity-hsm/test_40 needs a local HSM_ARCHIVE 03/7703/7
Bruno Faccini [Wed, 2 Oct 2013 13:39:38 +0000 (15:39 +0200)]
LU-3939 tests: sanity-hsm/test_40 needs a local HSM_ARCHIVE

sanity-hsm/test_40 suffers frequent failures during auto-test due
to remote/NFS-mounted HSM_ARCHIVE causing the 400 archive requests
to take more than 100s to be drained from copytool requests queue.
This patch allows copytool_setup func to allow each sub-test to
specify a non-default hsm-root/HSM_ARCHIVE dir and test_40 uses it.
And for sure, remove test_40 from exception list.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: I00e7df7b3cc5530cb96177a61ca6e07f1c784297
Reviewed-on: http://review.whamcloud.com/7703
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-4430 mdt: check for MDS_FMODE_EXEC in mdt_mfd_open() 19/8719/2
John L. Hammond [Fri, 3 Jan 2014 23:42:08 +0000 (17:42 -0600)]
LU-4430 mdt: check for MDS_FMODE_EXEC in mdt_mfd_open()

In the error path of mdt_mfd_open() check for MDS_FMODE_EXEC rather
than FMODE_EXEC in the open flags.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I04c53eb1af0fdeeb2c2b0c2f2ef1340b247921d8
Reviewed-on: http://review.whamcloud.com/8719
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>
6 years agoLU-3531 llite: move dir cache to MDC layer 43/7043/26
wang di [Thu, 21 Nov 2013 08:00:04 +0000 (00:00 -0800)]
LU-3531 llite: move dir cache to MDC layer

Move directory entries cache from llite to MDC, so client
side dir stripe will use independent hash function(in LMV),
which does not need to be tightly coupled with the backend
storage dir-entry hash function. With striped directory, it
will be 2-tier hash, LMV calculate hash value according to the
name and hash-type in layout, then each MDT will store these
entry in disk by its own hash.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: I14bb6bd81aad6fd59dcc22cf4bcea9d341dca2a1
Reviewed-on: http://review.whamcloud.com/7043
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
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: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4222 mdt: extra checking for getattr RPC. 99/8599/5
wang di [Wed, 18 Dec 2013 08:01:45 +0000 (00:01 -0800)]
LU-4222 mdt: extra checking for getattr RPC.

Check whether getattr RPC can hold layout MD(RMF_MDT_MD),
in case the client sends some invalid RPC, which can
cause panic on MDT.

Client will retrieve cl_max_md_size/cl_default_md_size
from MDS during mount process, so it will initialize
cl_max_md_size/cl_default_md_size before sending getattr
to MDS.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: I43bbe54c37360242bb7a3cd2aa8d90c2b9e0baf1
Reviewed-on: http://review.whamcloud.com/8599
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
6 years agoLU-4343 tests: mkdir failing in sanity-hsm test 228 42/8542/4
James Nunez [Wed, 11 Dec 2013 16:50:21 +0000 (09:50 -0700)]
LU-4343 tests: mkdir failing in sanity-hsm test 228

sanity-hsm test 228 calls mkdir on $tdir. Currently, the tdir
variable is two directories. This is changed in LU-2524. Until
LU-2524 lands, any call to mkdir with the tdir variable needs
the "-p" flag.

Also added removal of two files that the test creates and a new
routine to create small files with dd using the sync flag.

Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: Ic78a14625d8c45f405c013b96c84da909b9b9244
Reviewed-on: http://review.whamcloud.com/8542
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Faccini Bruno <bruno.faccini@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4318 lbuild: build failed if kernel source in command line 21/8421/3
Dmitry Eremin [Wed, 27 Nov 2013 19:24:54 +0000 (23:24 +0400)]
LU-4318 lbuild: build failed if kernel source in command line

For OFED and ZFS builds the function $(find_linux_release) is used.
But it defined in $LBUILD_DIR/lbuild-$DISTRO that is not included
in case of build when kernel source tree was given on the command
line.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I5f7ae64f560c76e745dc7314465c7fa7d9ec275f
Reviewed-on: http://review.whamcloud.com/8421
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-2675 lod: remove lov and lod stuff from obd.h 87/8687/2
John L. Hammond [Tue, 10 Dec 2013 21:21:01 +0000 (15:21 -0600)]
LU-2675 lod: remove lov and lod stuff from obd.h

Remove QOS related data structures from obd.h to the
lod_internal.h. Remove the unused functions lov_stripe_md_cmp() and
lov_lum_lsm_cmp(). Remove the declarations of several functions that
no longer exist. Move lov_lum_swab_if_needed() to the one file that
uses it.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I59874eda50aa333e5e991090fa3ac538ff8dc0f3
Reviewed-on: http://review.whamcloud.com/8687
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
6 years agoLU-2850 ptlrpc: handle sunrpc_cache_pipe_upcall change 96/8396/3
James Simmons [Tue, 31 Dec 2013 16:44:02 +0000 (11:44 -0500)]
LU-2850 ptlrpc: handle sunrpc_cache_pipe_upcall change

Currently the ptlrpc GSS code has a wrapper to call
sunrpc_cache_pipe_upcall which takes three arguments.
The cache_request argument is already stored in the
cache_detail structure which is passed in already. So
for 3.8 the cache_request was removed with commit
21cd1254d3402a72927ed744e8ac1a7cf532f1ea. This patch
enabled Lustre to detect this change and run on newer
kernels.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I2be613d22aab5a0b8aa207a86e99fc63132affa0
Reviewed-on: http://review.whamcloud.com/8396
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Peng Tao <bergwolf@gmail.com>
Reviewed-by: Thomas Stibor <thomas@stibor.net>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3889 osc: Allow lock to be canceled at ENQ time 05/8405/5
Alexander.Boyko [Tue, 3 Dec 2013 06:00:22 +0000 (10:00 +0400)]
LU-3889 osc: Allow lock to be canceled at ENQ time

A cl_lock can be canceled when it's in CLS_ENQUEUED state.
We can't unuse this kind of lock in lov_lock_unuse() because
it will bring this lock into CLS_NEW state and then confuse
osc_lock_upcall().

Add a regression test case by Alexander Boyko.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Signed-off-by: Alexander Boyko <alexander_boyko@xyratex.com>
Change-Id: I2acc7fd0176280062eb0d25dbe929b5d0144db50
Reviewed-on: http://review.whamcloud.com/8405
Tested-by: Jenkins
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-3952 nfs: don't panic NFS server if MDS fails to find FID 59/8459/5
Bobi Jam [Tue, 5 Nov 2013 09:14:40 +0000 (17:14 +0800)]
LU-3952 nfs: don't panic NFS server if MDS fails to find FID

When MDS fails to retrive the parent's fid, we'd handle it without
crashing the NFS server.

Signed-off-by: Bobi Jam <bobijam.xu@intel.com>
Change-Id: Ic15c7f8f99aed38fc77c46d24da7775e1a12b4ff
Reviewed-on: http://review.whamcloud.com/8459
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoNew tag 2.5.53 2.5.53 v2_5_53 v2_5_53_0
Oleg Drokin [Wed, 1 Jan 2014 06:17:18 +0000 (01:17 -0500)]
New tag 2.5.53

Change-Id: I226166f123c0c9b6cc6d655db6a6424b3f4b390b

6 years agoLU-4217 build: bump build warnings to 2.7 development 27/8627/2
Andreas Dilger [Thu, 19 Dec 2013 20:57:08 +0000 (13:57 -0700)]
LU-4217 build: bump build warnings to 2.7 development

The "acl" mount option on the client has been deprecated since
Lustre 1.8 (using ACLs is enforced by the admin on the MDS).
Unfortunately, there are still configs using this option, so
it cannot be removed yet, or it would cause an error at mount time.

The DNE cross-MDT locking depends on cross-MDT rename support, so
is also pushed to 2.6.53, but is expected to be fixed sooner.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Idcfe68eaec12df08538f1479a13c2c208c3ebbe5
Reviewed-on: http://review.whamcloud.com/8627
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4304 tests: fix auster to detect "SKIP" test status 81/8381/3
Jian Yu [Mon, 25 Nov 2013 03:41:28 +0000 (11:41 +0800)]
LU-4304 tests: fix auster to detect "SKIP" test status

This patch fixes run_suite() in auster to detect "SKIP"
test status for one test suite. If all of the sub-tests
in one test suite were skipped, then the status of the
test suite would be "SKIP" instead of "PASS".

Signed-off-by: Jian Yu <jian.yu@intel.com>
Change-Id: Ice971aa4b15675c8a5f70f5b32092db69358565e
Reviewed-on: http://review.whamcloud.com/8381
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Wei Liu <wei3.liu@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3319 procfs: move ost proc handling over to seq_file 28/7928/6
James Simmons [Thu, 14 Nov 2013 14:48:08 +0000 (09:48 -0500)]
LU-3319 procfs: move ost proc handling over to seq_file

Most of the current proc handling of the OST is already
based on seq_file handling except for the reporting of
the UUID of the OST. This patch moves this last piece
so that the OST layer will use strictly proc files with
seq_files.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: Idf2bc014ada9292d545f761aa27c777412a66671
Reviewed-on: http://review.whamcloud.com/7928
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-1095 debug: quiet overly verbose info message 18/7918/3
Andreas Dilger [Thu, 10 Oct 2013 18:19:52 +0000 (12:19 -0600)]
LU-1095 debug: quiet overly verbose info message

The client doesn't need to print a message for every client mount that
the layout lock feature is enabled.  This can be found at runtime via
the "import" proc file.

I also noticed that deleting OST objects logs into the debug log with
D_HA status, which is enabled by default.  Move this over to D_INODE
so it doesn't fill the OST debug logs.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Ibd7b39fdd36020e62cd40883d1eac5cc7a0885dc
Reviewed-on: http://review.whamcloud.com/7918
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>
6 years agoLU-3974 llite: dentry d_compare changes in 3.11 46/7746/5
James Simmons [Wed, 11 Dec 2013 15:29:41 +0000 (10:29 -0500)]
LU-3974 llite: dentry d_compare changes in 3.11

In the linux 3.11 kernel the d_compare function has
removed passing in any struct inode arguments. This
patch provides support to handle this case.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I363057e4d0a119ad43a9907ec26e7e0079f7c305
Reviewed-on: http://review.whamcloud.com/7746
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Peng Tao <bergwolf@gmail.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3762 build: allow longer JIRA ticket letter 38/7338/2
Bobi Jam [Thu, 15 Aug 2013 02:28:53 +0000 (10:28 +0800)]
LU-3762 build: allow longer JIRA ticket letter

Allow a longer leading JIRA ticket letter to 9 characters.

Signed-off-by: Bobi Jam <bobijam.xu@intel.com>
Change-Id: I063ed7dbf6a3f648500463b0478768cc4a684a88
Reviewed-on: http://review.whamcloud.com/7338
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
6 years agoLU-3319 procfs: move ldlm proc handling over to seq_file 93/7293/12
James Simmons [Wed, 18 Dec 2013 00:11:15 +0000 (19:11 -0500)]
LU-3319 procfs: move ldlm proc handling over to seq_file

In order to support 3.10+ kernels for clients we adapt
the ldlm proc handling to using seq_files.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: Iaedae5fe1e1cd2985a6240314810db9bba3cd747
Reviewed-on: http://review.whamcloud.com/7293
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Peng Tao <bergwolf@gmail.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3319 procfs: move lmv proc handling over to seq_file 91/7291/11
James Simmons [Thu, 14 Nov 2013 14:32:29 +0000 (09:32 -0500)]
LU-3319 procfs: move lmv proc handling over to seq_file

In order to support 3.10+ kernels for clients we adapt
the lmv proc handling to using seq_files.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I34f58c3a484ee79b41b59d4a60f6a21726373152
Reviewed-on: http://review.whamcloud.com/7291
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Peng Tao <bergwolf@gmail.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3963 libcfs: convert obdecho,obdclass code to atomics 75/7075/5
James Simmons [Wed, 11 Dec 2013 19:00:56 +0000 (14:00 -0500)]
LU-3963 libcfs: convert obdecho,obdclass code to atomics

This patch converts all cfs_atomic primitives in
target, obdclass and obdecho.

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: I6ab6d7a476f5192e6bdfb39d4956361ce2b3e987
Reviewed-on: http://review.whamcloud.com/7075
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>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3386 lproc: improve osc/mdc "imports" connect data 88/6588/4
Emoly Liu [Wed, 18 Dec 2013 08:15:22 +0000 (16:15 +0800)]
LU-3386 lproc: improve osc/mdc "imports" connect data

Improve /proc/fs/lustre/{osc,mdc}/*/import files to print
the struct obd_connect_data data fields as "connect_data:"
in addition to the "connect_flags:" field.

Signed-off-by: Liu Ying <emoly.liu@intel.com>
Change-Id: If37043ee05c1ab387e0762f9ecb34fbe2602afc4
Reviewed-on: http://review.whamcloud.com/6588
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
6 years agoLU-2675 lov: remove unused lov llog code 39/8539/2
John L. Hammond [Wed, 11 Dec 2013 16:01:03 +0000 (10:01 -0600)]
LU-2675 lov: remove unused lov llog code

Remove the unused functions lov_llog_init(), lov_llog_finish(),
their supporting functions, and the file lov_log.c.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I1eaad74bbea5849cc8b28388112b6bd86b7a9781
Reviewed-on: http://review.whamcloud.com/8539
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
6 years agoLU-2875 mdt: use lu_name for rr_name and rr_tgt 61/7961/4
John L. Hammond [Wed, 16 Oct 2013 14:15:56 +0000 (09:15 -0500)]
LU-2875 mdt: use lu_name for rr_name and rr_tgt

In mdt_reint_record, use a struct lu_name for rr_name and
rr_tgt. Rename the rename target name rr_tgt to rr_tgt_name. Add a
function lu_name_is_valid() to check the validity of names. Remove
various assertions on the validity of names in MDT requests and
replace them with calls to mdt_reint_record() and returns of -EPROTO
on failure.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I6e0e207522a72eb8cec5d7918795c4aed5b9c4c2
Reviewed-on: http://review.whamcloud.com/7961
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-793 ptlrpc: fix ptlrpc_request_change_export() 82/8582/2
Mikhail Pershin [Mon, 16 Dec 2013 06:57:39 +0000 (10:57 +0400)]
LU-793 ptlrpc: fix ptlrpc_request_change_export()

The ptlrpc_request_change_export() is incompatible with recent
changes related to LU-793. It moves requests having rq_exp_list
to the new export exp_hp_req list assuming only hp requests have
rq_exp_list used, but now all requests use it. That may cause
normal requests to be moved to the hp queue.

Patch checks rq_ops instead and move request into proper list.
Second change fixes CFS_FAIL_TIMEOUT define, it uses sec * 1000
but 'sec' can be expression so it must be (sec) * 1000

Signed-off-by: Mikhail Pershin <mike.pershin@intel.com>
Change-Id: I2c385a824453a7cfaeede80180b3a83f72fc0f5b
Reviewed-on: http://review.whamcloud.com/8582
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Johann Lombardi <johann.lombardi@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
6 years agoLU-4364 fld: add error handler in fldb_seq_start 34/8534/5
wang di [Tue, 10 Dec 2013 17:41:55 +0000 (09:41 -0800)]
LU-4364 fld: add error handler in fldb_seq_start

Check return value for load/key in fldb_seq_start,
in case there are no entries in FLDB.

Only insert special entries to the local FLDB in MDT0,
since they are all in MDT0.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: If1281800ad75396c96bd47021742ea21da7abad8
Reviewed-on: http://review.whamcloud.com/8534
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4221 osd: add case LCFG_PARAM to osd_process_config 38/8238/8
Emoly Liu [Mon, 9 Dec 2013 07:46:04 +0000 (15:46 +0800)]
LU-4221 osd: add case LCFG_PARAM to osd_process_config

Some proc parameters were moved from ofd to osd module and only
their symlinks were kept in ofd for interoperability/compatibility.
To process this kind of config params passed by ofd, this patch is
to do the following fixes:
- add case LCFG_PARAM to osd_process_config() to process parameters
  with prefix both PARAM_OSD and PARAM_OST.
- since these parameters are not included by the static lprocfs var
  list, a pre-check is added for them to avoid "unknown param" error
  message confuses the uses. If they are matched in this check, they
  will be passed to the osd directly.
- get rid of lprocfs_osd_init_vars() and use struct lprocfs_vars
  lprocfs_osd_{obd,module}_vars[] instead.
- improve the error messages in class_process_proc_param() and
  class_process_proc_seq_param() a little.
- add conf-sanity.sh test_28a to verify the patch and skip this test
  for ZFS OSTs since ZFS has no such kind of parameters.

Signed-off-by: Emoly Liu <emoly.liu@intel.com>
Change-Id: I8f64dcc29017c3ed9da010ff0a3e40c02327f05c
Reviewed-on: http://review.whamcloud.com/8238
Tested-by: Jenkins
Tested-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
6 years agoLU-3700 tests: zfs: work around blocks check for sanity-hsm/21 75/8575/4
Nathaniel Clark [Fri, 13 Dec 2013 22:23:53 +0000 (17:23 -0500)]
LU-3700 tests: zfs: work around blocks check for sanity-hsm/21

The number of blocks for ZFS reflects the number of blocks
written to disk.  To get an accurate number, the file on the OST needs
to be fully flushed.

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: I99ffac888a80b046b8c446021124e92f0f313f27
Reviewed-on: http://review.whamcloud.com/8575
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
6 years agoLU-4379 procfs: dont always check max_pages_per_rpc alignement 58/8558/3
Sebastien Buisson [Thu, 12 Dec 2013 17:37:51 +0000 (18:37 +0100)]
LU-4379 procfs: dont always check max_pages_per_rpc alignement

If connection is not established yet, cli->cl_chunkbits is
uninitilized so we cannot use it to check max_pages_per_rpc
alignment.

Signed-off-by: Sebastien Buisson <sebastien.buisson@bull.net>
Change-Id: I4c782e2eeb5a2757d79194ee6ab6bff831a283fc
Reviewed-on: http://review.whamcloud.com/8558
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
6 years agoLU-2789 mdt: ensure constant striping during chown() 70/6070/2
John L. Hammond [Tue, 16 Apr 2013 22:00:34 +0000 (17:00 -0500)]
LU-2789 mdt: ensure constant striping during chown()

Prevent concurrent setstripe and chown() operations on a file by
acquiring mot_lov_mutex in mdt_attr_set(). This is needed to maintain
consistency between the ownership of files and their sub-objects and
to ensure that attribute changes on sub-objects are properly declared.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I75fe3476a284dccde5312a5c3f79b3698610ef25
Reviewed-on: http://review.whamcloud.com/6070
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3528 mdt: check object exists for remote directory 71/8371/8
wang di [Tue, 17 Dec 2013 00:06:22 +0000 (16:06 -0800)]
LU-3528 mdt: check object exists for remote directory

Check whether the remote object exists before enqueue and
getattr to avoid LBUG.

Remove unnecssary remote object exist check in mdd_object_lock.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: Ia634a8c7b9cd2810515e854163c5fdd6bdf8716f
Reviewed-on: http://review.whamcloud.com/8371
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>
6 years agoLU-4396 tests: Remove unnecessary skip in sanity test_31n 22/8622/2
Ryan Haasken [Wed, 18 Dec 2013 22:01:51 +0000 (16:01 -0600)]
LU-4396 tests: Remove unnecessary skip in sanity test_31n

Since test_31n now uses the function free_fd to find an unused file
descriptor, it no longer depends on fd 173 being free.  This change
removes that test on whether fd 173 is in use.

Signed-off-by: Ryan Haasken <haasken@cray.com>
Change-Id: I3b68e278d4f3a8af42e57b073ccbe45b80e76ecd
Reviewed-on: http://review.whamcloud.com/8622
Reviewed-by: Chris Horn <hornc@cray.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Patrick Farrell <paf@cray.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
6 years agoLU-3528 osd: check LOCAL sequence file in special directory 54/8354/8
wang di [Mon, 18 Nov 2013 08:51:12 +0000 (00:51 -0800)]
LU-3528 osd: check LOCAL sequence file in special directory

Check Local sequence file in special directory, otherwise
special file like fldb might be missing during upgrade.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: I483151510b943ae9b9d9ba0b13f5ce67c4bfa5bb
Reviewed-on: http://review.whamcloud.com/8354
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4152 mdt: Don't enqueue two locks on the same resource 83/8083/7
Oleg Drokin [Tue, 29 Oct 2013 02:15:03 +0000 (22:15 -0400)]
LU-4152 mdt: Don't enqueue two locks on the same resource

Due to mechanics of ldlm internals, enqueueing two different ibits
lock on the same resource is deadlock prone.
As such change mdt_object_open_lock to release open lock if it becomes
necessary to get exclusive layout lock (to create objects).
It's ok to release the open lock right away as it's never guaranteed to
be issued anyway.

Change-Id: Ib669e68323ea72c75a0a8bea289d8bea079309b0
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/8083
Tested-by: Jenkins
Reviewed-by: Patrick Farrell <paf@cray.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
6 years agoLU-3601 Do not create layout in lease-open 84/8084/4
Oleg Drokin [Tue, 29 Oct 2013 02:20:01 +0000 (22:20 -0400)]
LU-3601 Do not create layout in lease-open

leases are not real opens so it makes no sense to create layouts
when the lease is taken.

Change-Id: Ica2d6a348c360bd20bb7bd27061839df84dae84b
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-on: http://review.whamcloud.com/8084
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
6 years agoLU-3857 osd: cleanup procfs after osd_shutdown 06/8506/2
wangdi [Sun, 8 Dec 2013 08:00:03 +0000 (00:00 -0800)]
LU-3857 osd: cleanup procfs after osd_shutdown

Since osd_procfs_fini will try cleanup all proc entries,
and osd_shutdown/qsd_fini will try to cleanup procfs
itself, so osd_procfs_fini should be done after qsd_fini,
otherwise the qsd entries will be destoryed twice, and
caused panic

Call Trace:
 [<ffffffffa081cc45>] lprocfs_remove+0x25/0x40 [obdclass]
 [<ffffffffa0b23dd0>] qsd_fini+0x80/0x450 [lquota]
 [<ffffffffa0d2ec78>] osd_shutdown+0x38/0xe0 [osd_ldiskfs]
 [<ffffffffa0d36bf9>] osd_device_fini+0x129/0x190 [osd_ldiskfs]
 [<ffffffffa0834913>] class_cleanup+0x573/0xd30 [obdclass]
 [<ffffffffa081233c>] ? class_name2dev+0x7c/0xe0 [obdclass]
 [<ffffffffa083663a>] class_process_config+0x156a/0x1ad0 [obdclass]
 [<ffffffffa06be9b8>] ? libcfs_log_return+0x28/0x40 [libcfs]
 [<ffffffffa082f202>] ? lustre_cfg_new+0x312/0x6e0 [obdclass]
 [<ffffffffa0836d19>] class_manual_cleanup+0x179/0x6e0 [obdclass]
 [<ffffffffa06be9b8>] ? libcfs_log_return+0x28/0x40 [libcfs]
 [<ffffffffa0d378b4>] osd_obd_disconnect+0x174/0x1e0 [osd_ldiskfs]
 [<ffffffffa083926b>] lustre_put_lsi+0x1ab/0xeb0 [obdclass]
 [<ffffffffa08414d8>] lustre_common_put_super+0x5c8/0xbe0 [obdclass]
 [<ffffffffa087081d>] server_put_super+0x1bd/0xed0 [obdclass]
 [<ffffffffa0871bbb>] server_fill_super+0x68b/0x1630 [obdclass]
 [<ffffffffa0840bb8>] lustre_fill_super+0x1d8/0x530 [obdclass]
 [<ffffffffa08409e0>] ? lustre_fill_super+0x0/0x530 [obdclass]

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: If12cebf971583afeeaa031bd24f69bb0fe0cdf1a
Reviewed-on: http://review.whamcloud.com/8506
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>
6 years agoLU-4321 build: Remove make_META.pl 27/8427/2
Christopher J. Morrone [Wed, 27 Nov 2013 23:49:29 +0000 (15:49 -0800)]
LU-4321 build: Remove make_META.pl

This patch is a first pass at cleaning up version_tag.pl.

Primarily, it removes the strange "make_META.pl" symlink behavior.  It
is not at all clear to me why the symlink was being generated on the fly,
and then version_tag.pl changed its behavior based on its name.  Odd.

Instead version_tag.pl now take "--make_META" as the first option on
its command line.

Further, we haven't use CVS in a long time, so this patch removes
the cvs-related file and checks.

The is_git and is_cvs variables weren't even used, so those are removed
as well.

Change-Id: I651234bdf1d2d32db16151f332f2b3785ee123a0
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
Reviewed-on: http://review.whamcloud.com/8427
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4022 hsm: Set agent_actions start index from -1 79/7879/4
Jinshan Xiong [Tue, 8 Oct 2013 00:52:27 +0000 (17:52 -0700)]
LU-4022 hsm: Set agent_actions start index from -1

aai_index was set to start from 0 which will cause the first entry
to be skipped. Set it to -1 instead.

Also take llog lock in proc_show() to avoid it from being changed
during the iteration.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I09013dbf8a85d198496d8470746e773b388d9bee
Reviewed-on: http://review.whamcloud.com/7879
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Faccini Bruno <bruno.faccini@intel.com>
Reviewed-by: Aurelien Degremont <aurelien.degremont@cea.fr>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4365 quota: wait for global lock cancel 83/8583/4
Niu Yawei [Mon, 16 Dec 2013 07:09:13 +0000 (02:09 -0500)]
LU-4365 quota: wait for global lock cancel

In qsd_qtype_fini(), we'd wait for the global lock cancel done.

Test-Parameters: envdefinitions=SLOW=yes,ENABLE_QUOTA=yes  mdtfilesystemtype=zfs mdsfilesystemtype=zfs ostfilesystemtype=zfs  testlist=recovery-small
Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: Ib51dba4e4e4b13693c49560162d53cb28937e253
Reviewed-on: http://review.whamcloud.com/8583
Tested-by: Jenkins
Reviewed-by: Johann Lombardi <johann.lombardi@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
6 years agoLU-4201 llite: clip page correctly for vvp_io_commit_sync 31/8531/3
Jinshan Xiong [Tue, 10 Dec 2013 07:41:26 +0000 (23:41 -0800)]
LU-4201 llite: clip page correctly for vvp_io_commit_sync

The original code was wrong which clipped page incorrectly for
partial pages started with zero.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I66ec542d5282fdfd68fe59f8056aca292b318c00
Reviewed-on: http://review.whamcloud.com/8531
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>
6 years agoLU-4266 build: fix lbuild to work with OFED-3.5-x 51/8451/4
Dmitry Eremin [Mon, 2 Dec 2013 19:04:34 +0000 (23:04 +0400)]
LU-4266 build: fix lbuild to work with OFED-3.5-x

* Remove OFED backport headers for all components except lnet.
* Move all OFED related autoconf testing into lnet/autoconf.
* After OFED built is done, there should only be one -devel rpm.
  We don't really need to filter out any version string.

Change-Id: If983ede2606e4c5c397f676cf16807f6e00318bc
Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-on: http://review.whamcloud.com/8451
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Shuichi Ihara <sihara@ddn.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4287 autoconf: Improve test for proc write and read functions 82/8482/6
James Simmons [Fri, 6 Dec 2013 16:18:46 +0000 (11:18 -0500)]
LU-4287 autoconf: Improve test for proc write and read functions

For newer kernels the proc api has changed to using only
seq_files. To detect this I tested the presence of PDE_DATA
to determine if it was a newer kernel. Now in RHEL6.5 this
macro has been backported but the rest of the changes have
not so it has broken the build. This patch moves from
testing PDE_DATA to testing if you can call write_proc_t
in struct proc_dir_entry. In newer kernels that function
is missing.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I96d21ae5f055d5077da69acdcc4948ec160dd63a
Reviewed-on: http://review.whamcloud.com/8482
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3319 procfs: move configuration layer proc handling over to seq_file 95/7295/15
James Simmons [Mon, 2 Dec 2013 16:36:10 +0000 (11:36 -0500)]
LU-3319 procfs: move configuration layer proc handling over to seq_file

Various Lustre layers have a configuration abstraction for logs
which implements a proc interface. For 3.10+ kernel support we
adapt this proc handling to using seq_files.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: Ie507fd88cdf5193624991f7ab32bdc213a44aebc
Reviewed-on: http://review.whamcloud.com/7295
Reviewed-by: Peng Tao <bergwolf@gmail.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-4136 obdclass: use obd_get_info to report network status 08/8408/4
Bobi Jam [Wed, 27 Nov 2013 04:36:05 +0000 (12:36 +0800)]
LU-4136 obdclass: use obd_get_info to report network status

Use obd_get_info() to report MDT-OST connection status instead of
health_check(), so that /proc/fs/lustre/health_check does not
check MDT's connection status.

Signed-off-by: Bobi Jam <bobijam.xu@intel.com>
Change-Id: I8b4afcfdce3712fff893475b9c5cd44654f3762e
Reviewed-on: http://review.whamcloud.com/8408
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Tested-by: Jenkins
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-4383 osd: fid_is_on_ost should only return 1 or 0 66/8566/3
wang di [Thu, 12 Dec 2013 22:36:20 +0000 (14:36 -0800)]
LU-4383 osd: fid_is_on_ost should only return 1 or 0

fid_is_on_ost should only return 1 or 0 to check whether
the FID is on OST or not.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: Ia9949bc12387d32c94cf993f674bbcca88c260bf
Reviewed-on: http://review.whamcloud.com/8566
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
6 years agoLU-3319 procfs: move FLD proc handling over to seq_file 40/7140/10
James Simmons [Fri, 6 Dec 2013 14:14:08 +0000 (09:14 -0500)]
LU-3319 procfs: move FLD proc handling over to seq_file

In order to support 3.10+ kernels for clients we adapt
the FLD proc handling to using seq_files.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I056d4dcc15b82263880949a0928fc04bd6b2f0b7
Reviewed-on: http://review.whamcloud.com/7140
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3319 procfs: move ptlrpc proc handling over to seq_file 96/7296/18
James Simmons [Fri, 6 Dec 2013 14:45:52 +0000 (09:45 -0500)]
LU-3319 procfs: move ptlrpc proc handling over to seq_file

In order to support 3.10+ kernels for clients we adapt
the ptlrpc proc handling to using seq_files.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: Ib0bf475d62fd632f6eaaad2d2efbcdedc49df3b8
Reviewed-on: http://review.whamcloud.com/7296
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Yang Sheng <yang.sheng@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4336 quota: improper assert in osc_quota_chkdq() 60/8460/2
Niu Yawei [Tue, 3 Dec 2013 01:57:40 +0000 (20:57 -0500)]
LU-4336 quota: improper assert in osc_quota_chkdq()

In osc_quota_chkdq(), we should never try to access oqi found
from hash, since it could have been freed by osc_quota_setdq().

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: Ia73cf89cb5bbd730fa6f0a00e44771f733b2baa6
Reviewed-on: http://review.whamcloud.com/8460
Reviewed-by: Johann Lombardi <johann.lombardi@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
6 years agoLU-4307 kerberos: fix __exit usage and unknown symbol errors 81/8481/3
James Simmons [Wed, 4 Dec 2013 20:03:38 +0000 (15:03 -0500)]
LU-4307 kerberos: fix __exit usage and unknown symbol errors

For linux all functions marked with __exit should not be
called as a cleanup function in the module init functions.
This patch removes __exit from the gss module exit functions
that are being used as cleanup in the module init function.
The second issue addressed is the unknown symbols due to
gss_[init/exit]_keyring being called when HAVE_GSS_KEYRING
is not defined.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I2de7a3ade47f585f5ec1634ee55c1d2ce56f2921
Reviewed-on: http://review.whamcloud.com/8481
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>
Reviewed-by: Thomas Stibor <thomas@stibor.net>
Reviewed-by: Andrew Korty <ajk@iu.edu>
6 years agoLU-3862 misc: delete obsolete config script 03/8403/2
Andreas Dilger [Tue, 26 Nov 2013 19:55:51 +0000 (12:55 -0700)]
LU-3862 misc: delete obsolete config script

The "lustre" and "lnet" config scripts are currently in use for
Lustre/LNET startup/shutdown, but "lustrefs" hasn't been maintained
since it was first introduced.  Delete it.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Idd77c4a60a1128ad95ec5c8af644feb8793ebbe5
Reviewed-on: http://review.whamcloud.com/8403
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Christopher J. Morrone <chris.morrone.llnl@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4278 libcfs: remove LWT 40/8340/3
Peng Tao [Wed, 20 Nov 2013 09:07:24 +0000 (17:07 +0800)]
LU-4278 libcfs: remove LWT

The LWT code has been disabled on all platforms since being merged.
Now that its functionality can be replaces by Systemtap etc, it is
on longer needed.

Signed-off-by: Peng Tao <bergwolf@gmail.com>
Change-Id: I21dc913bfdbbf1bfba5e0d7de3d43b183f0e5b23
Reviewed-on: http://review.whamcloud.com/8340
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
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>
6 years agoLU-4218 tests: fix for facet_host() 94/8194/2
Vladimir Saveliev [Sun, 3 Nov 2013 03:07:55 +0000 (07:07 +0400)]
LU-4218 tests: fix for facet_host()

When ost_HOST is not set (ost1_HOST, ost2_HOST, etc are used),
facet_host() maps ostNfailover facet (when ostNfailover_HOST is not
set) to default value of ost_HOST, etc hostname.
With this change, facet_host() maps ostNfailover facet to value of
ostN_HOST if it is set, otherwise it resorts to $ost_HOST.

Xyratex-bug-id: MRP-1118
Signed-off-by: Vladimir Saveliev <vladimir_saveliev@xyratex.com>
Change-Id: I23dd7cb0d7de02740ab60f9f86442bc92a4a0300
Reviewed-on: http://review.whamcloud.com/8194
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Wei Liu <wei3.liu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3909 tests: sanity test 129 fix 43/8143/4
Vladimir Saveliev [Fri, 22 Nov 2013 13:46:08 +0000 (17:46 +0400)]
LU-3909 tests: sanity test 129 fix

Patch from LU-2479 changed max dir size limit behaviour. Before the
patch last block of a directory which reached its limit was mostly
empty so that creation of new file after limit cancelation caused no
dir size grow. With the patch last block of limited directory gets
full when limit is reached. Therefore dir size increases on file
creation after limit cancellation.
The patch makes sanity test_129 to distinguish these cases.

Xyratex-bug-id: MRP-1444
Signed-off-by: Vladmir Saveliev <vladimir_saveliev@xyratex.com>
Change-Id: I0ea9eee5a0d20f31d9f62e9e5f2af1ee550f3588
Reviewed-on: http://review.whamcloud.com/8143
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-3319 procfs: migrate quota proc handling to seq_files 31/7931/5
James Simmons [Thu, 14 Nov 2013 14:53:50 +0000 (09:53 -0500)]
LU-3319 procfs: migrate quota proc handling to seq_files

For proper 3.10+ kernel support we migrate the quota proc
file handling to use only seq_files.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I50b1e5372dfad4e06f7e4dec95cc3efa83a3f902
Reviewed-on: http://review.whamcloud.com/7931
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Johann Lombardi <johann.lombardi@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
6 years agoLU-3974 client: use standard dentry locking function 41/7741/3
James Simmons [Mon, 2 Dec 2013 16:44:19 +0000 (11:44 -0500)]
LU-3974 client: use standard dentry locking function

Over time the struct dentry reference count have change
its data structure. In the 3.11 kernel it was changed
to a struct lockref. To handle these cases in the past
Lustre implemented a d_refcount wrapper to handle all
these changes. At the same time for 3.11 a d_count()
wrapper was introduced. So this patch moved use to use
this d_count wrapper and if not present we emulate it.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I4c175e789298841f9d599e5195dbd94ccea6216a
Reviewed-on: http://review.whamcloud.com/7741
Reviewed-by: Peng Tao <bergwolf@gmail.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-3319 procfs: move top level proc handling over to seq_file 94/7294/4
James Simmons [Wed, 4 Dec 2013 13:44:24 +0000 (08:44 -0500)]
LU-3319 procfs: move top level proc handling over to seq_file

In the proc tree lustre creates the top level is handled in
the linux module code. For 3.10+ kernel support we adapt
this proc handling to using seq_files.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I19f2b5d14cdbd97f2591ec8f1eaf174c8c6d4553
Reviewed-on: http://review.whamcloud.com/7294
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3319 procfs: move lov proc handling over to seq_file 92/7292/7
James Simmons [Thu, 14 Nov 2013 14:36:41 +0000 (09:36 -0500)]
LU-3319 procfs: move lov proc handling over to seq_file

In order to support 3.10+ kernels for clients we adapt
the lov proc handling to using seq_files.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: Icd19a7c75301e1351d1d116afbc1aa4f7168c2eb
Reviewed-on: http://review.whamcloud.com/7292
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3319 procfs: move FID proc handling over to seq_file 39/7139/11
James Simmons [Mon, 2 Dec 2013 16:20:00 +0000 (11:20 -0500)]
LU-3319 procfs: move FID proc handling over to seq_file

In order to support 3.10+ kernels for clients we adapt
the fid proc handling to using seq_files.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I3dbd102922060576cb57495da73e6d93c117c2e3
Reviewed-on: http://review.whamcloud.com/7139
Reviewed-by: Peng Tao <bergwolf@gmail.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-3335 osd: use local transaction directly inside OSD 45/7145/13
Fan Yong [Sat, 2 Nov 2013 18:42:47 +0000 (02:42 +0800)]
LU-3335 osd: use local transaction directly inside OSD

For OSD internal function, it is unnecessay to call dt_trans_xxx for
transaction operations. Instead, call backend journal APIs directly.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I111c52f76a894e4269ad8ac6aec3ea7747ba4f59
Reviewed-on: http://review.whamcloud.com/7145
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>
6 years agoLU-4196 build: Build support for OFED-3.5 and SLES 11 40/8140/2
Chris Horn [Fri, 1 Nov 2013 18:50:21 +0000 (13:50 -0500)]
LU-4196 build: Build support for OFED-3.5 and SLES 11

CONFIG_COMPATE_SLES_11_SP* needed in EXTRA_LNET_INCLUDE to allow
building against OFED-3.5

Signed-off-by: Chris Horn <hornc@cray.com>
Test-Parameters: serverdistro=sles11sp3 serverarch=x86_64 serveribstack=ofa nettypes=o2ib
Change-Id: I0fcdba12167cd0dc1d7b0e323a46d85df1c96168
Reviewed-on: http://review.whamcloud.com/8140
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3700 tests: skip sanity-hsm/51b for ZFS 03/8503/2
Nathaniel Clark [Fri, 6 Dec 2013 21:26:59 +0000 (16:26 -0500)]
LU-3700 tests: skip sanity-hsm/51b for ZFS

EXCEPT sanity-hsm/51b until a full fix can be found for this issue so
that review-zfs can be enabled.

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: If6b7fb0d6c5ed20c8fb7ce898311f2b3d53a2916
Reviewed-on: http://review.whamcloud.com/8503
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Faccini Bruno <bruno.faccini@intel.com>
6 years agoLU-3321 clio: remove stackable cl_page completely 95/7895/17
Jinshan Xiong [Wed, 6 Nov 2013 05:51:39 +0000 (21:51 -0800)]
LU-3321 clio: remove stackable cl_page completely

From now on, cl_page becomes one to one mapping of vmpage.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I13156d9f10ee43c614d1e43eed6743db1574069a
Reviewed-on: http://review.whamcloud.com/7895
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-4329 tests: initialize $PREV_RESULT in wait_update() 49/8449/2
Emoly Liu [Wed, 27 Nov 2013 09:25:01 +0000 (17:25 +0800)]
LU-4329 tests: initialize $PREV_RESULT in wait_update()

Initialize variable PREV_RESULT in wait_update() to avoid useless
output like "Changed after 0s: from '' to '1'".

Signed-off-by: Emoly Liu <emoly.liu@intel.com>
Change-Id: I2aea8547892a36e92e8d0c54ac541397a102e76c
Reviewed-on: http://review.whamcloud.com/8449
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3726 tests: DNE specific tests for HSM. 71/7571/9
Thomas Leibovici [Wed, 7 Aug 2013 14:09:51 +0000 (16:09 +0200)]
LU-3726 tests: DNE specific tests for HSM.

Add tests in sanity-hsm.sh to check DNE specific
features in HSM code: copytool registration to
several MDTs, HSM request shunting to the right MDT,
and coumpound request splitting.

Test-Parameters: mdtcount=2 mdscount=2 testlist=sanity-hsm
Signed-off-by: Thomas Leibovici <thomas.leibovici@cea.fr>
Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: I6706571c92e4c3e978b2143dd5bdef4b73d2c1e2
Reviewed-on: http://review.whamcloud.com/7571
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>
6 years agoLU-4362 libcfs: wrong parameter to cfs_hash_keycpy 09/8509/2
Liang Zhen [Mon, 9 Dec 2013 12:39:35 +0000 (20:39 +0800)]
LU-4362 libcfs: wrong parameter to cfs_hash_keycpy

cfs_hash_rehash_key() passed wrong parameter to cfs_hash_keycpy,
hnode should be the second parameter not the third one.

Signed-off-by: Liang Zhen <liang.zhen@intel.com>
Change-Id: I44f73e4d2ffdeab5b021d49642598e939ebacee5
Reviewed-on: http://review.whamcloud.com/8509
Tested-by: Jenkins
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Johann Lombardi <johann.lombardi@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
6 years agoLU-4223 utils: fixing loop leaking in utils 09/8409/9
wang di [Sat, 30 Nov 2013 15:40:22 +0000 (07:40 -0800)]
LU-4223 utils: fixing loop leaking in utils

1. If the file is being opened by popen, it should use
pclose instead of fclose to close the file, to make sure
the process created by popen is closed after pclose, then
to avoid loop device is being hold on release.

2. Give another try in loop_cleanup in case there are still
some process going on with the loop.

3. wait loop device to release before continue conf-sanity
32c.

4. Add losetup -a to list loop dev information when the
test(conf-sanity 32) fails.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Signed-off-by: wang di <di.wang@intel.com>
Change-Id: I0051de9b5a39d487fe34554c79773de4635178cc
Reviewed-on: http://review.whamcloud.com/8409
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
6 years agoLU-2139 ofd: Do async commit if SOFT_SYNC is seen 35/5935/8
Prakash Surya [Mon, 22 Oct 2012 23:34:29 +0000 (16:34 -0700)]
LU-2139 ofd: Do async commit if SOFT_SYNC is seen

This change implements the server side portion of the OBD_BRW_SOFT_SYNC
agreement. When this flag is seen on an incoming BRW page, the server
will begin an asynchronous commit operation via dt_commit_async.

The intention is for this operation to commit pages belonging to a
client which has "too many" outstanding unstable pages in its cache.
Upon the commit operation completing, the last_commited value should
percolate out to the client of interest, allowing it to drop some of
its pinned unstable pages.

Unfortunately, there is currently no optimization to proactively send
the last_committed value to the client immediately after the commit
operation succeeds. It must be piggybacked on any future IO or
pings made by the client.

Added fed_soft_sync_count which is set to a limit of 16 SOFT_SYNC
RPCs, and it will be reset as soon as there is a non-SOFT_SYNC RPC.

Added ofd_soft_sync_limit as a tunable proc value for the limit of
fed_soft_sync_count.

Signed-off-by: Prakash Surya <surya1@llnl.gov>
Signed-off-by: Lai Siyao <lai.siyao@intel.com>
Change-Id: I1bac4bc517ab023a5b298f34bb695c7ba8ece896
Reviewed-on: http://review.whamcloud.com/5935
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
6 years agoLU-3906 tests: use df instead of lfs_df in run_compilebench() 29/8429/2
Jian Yu [Thu, 28 Nov 2013 06:47:55 +0000 (14:47 +0800)]
LU-3906 tests: use df instead of lfs_df in run_compilebench()

Since run_compilebench() will be run on NFS client which has no
Lustre filesystem, we need change to use df instead of lfs_df to
get the space usage information.

Test-Parameters: envdefinitions=SLOW=yes,ONLY=compilebench \
testlist=parallel-scale,parallel-scale-nfsv3,parallel-scale-nfsv4

Signed-off-by: Jian Yu <jian.yu@intel.com>
Change-Id: Ia1a9586586b888231952830180157a9e37f08843
Reviewed-on: http://review.whamcloud.com/8429
Tested-by: Jenkins
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-4243 mgs: use proper uuid in mgs_write_log_failnids() 72/8372/3
Niu Yawei [Wed, 4 Dec 2013 04:20:18 +0000 (23:20 -0500)]
LU-4243 mgs: use proper uuid in mgs_write_log_failnids()

This patch revert the changes to mgs_write_log_failnids() in the
commit d9d27cad, which introduced a regression of that when multiple
'--servicenode' or '--failnode' option specified, the uuid from
first option will be wrongly used for all other connections.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: Ibd989de67fe6851cc75569be3f64dadaec5e6f8c
Reviewed-on: http://review.whamcloud.com/8372
Tested-by: Jenkins
Reviewed-by: Erich Focht <efocht@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>