Whamcloud - gitweb
fs/lustre-release.git
5 years agoLU-5568 lnet: fix kernel crash when network failed to start 18/11718/11
Wang Shilong [Mon, 1 Sep 2014 20:44:38 +0000 (16:44 -0400)]
LU-5568 lnet: fix kernel crash when network failed to start

When loading Lustre modules without proper network configuration,
it always hit the following kernel panic:

LNetError: 105-4: Error -100 starting up LNI tcp
LNetError: 2145:0:(api-ni.c:823:lnet_unprepare())
 ASSERTION( list_empty(&the_lnet.ln_nis) ) failed:
LNetError: 2145:0:(api-ni.c:823:lnet_unprepare()) LBUG
Pid: 2145, comm: modprobe
x0aCall Trace:
[<ffffffffa044f853>] libcfs_debug_dumpstack+0x53/0x80 [libcfs]
[<ffffffffa044fdf5>] lbug_with_loc+0x45/0xc0 [libcfs]
[<ffffffffa04f3267>] lnet_unprepare+0x297/0x340 [lnet]
[<ffffffffa04f3b5c>] LNetNIInit+0x25c/0x3e0 [lnet]
[<ffffffff81061bc6>] ? put_online_cpus+0x56/0x80
[<ffffffffa0983000>] ? init_module+0x0/0x1000 [ptlrpc]
[<ffffffffa081310c>] ptlrpc_ni_init+0x2c/0x1a0 [ptlrpc]
[<ffffffffa0983000>] ? init_module+0x0/0x1000 [ptlrpc]
[<ffffffffa0813291>] ptlrpc_init_portals+0x11/0xf0 [ptlrpc]
[<ffffffffa0983000>] ? init_module+0x0/0x1000 [ptlrpc]
[<ffffffffa09831c4>] init_module+0x1c4/0x1000 [ptlrpc]
[<ffffffff810020e2>] do_one_initcall+0xe2/0x190
[<ffffffff810ca7fb>] load_module+0x129b/0x1a90
[<ffffffff812da590>] ? ddebug_dyndbg_module_param_cb+0x0/0x60
[<ffffffff810c7133>] ? copy_module_from_fd.isra.43+0x53/0x150
[<ffffffff810cb1a6>] SyS_finit_module+0xa6/0xd0
[<ffffffff815f2119>] system_call_fastpath+0x16/0x1b
...

This is because in lnet_startup_lndnis(), we may add list items to
@the_lnet.ln_nis and @the_lnet.ln_nis_cpt before it failed. But in
lnet_startup_lndis() failure path,it did not cleanup list thus
causing assertion in lnet_unprepare().

Fix this problem by:
1) move lnet_shutdown_lndnis() back to lnet_startup_lndnis() so
that lnet_startup_lndnis() will cleanup itself.

2) move codes in lnet_startup_lndnis() that starts a single
NI into a new function called lnet_startup_lndni().

3)make lnet_dyn_add_ni() call lnet_startup_lndni() instead of
lnet_startup_lndnis().

This patch also fix problem LU-5734 addressed since they are
closely related.

Signed-off-by: Wang Shilong <wshilong@ddn.com>
Change-Id: I1082361626881e798fca49981fe92b4082769ecf
Reviewed-on: http://review.whamcloud.com/11718
Tested-by: Jenkins
Reviewed-by: Amir Shehata <amir.shehata@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>
5 years agoLU-5756 hsm: add missing return code in llapi_hsm_copytool_register 14/12314/6
Frank Zago [Thu, 16 Oct 2014 16:49:49 +0000 (11:49 -0500)]
LU-5756 hsm: add missing return code in llapi_hsm_copytool_register

llapi_hsm_copytool_register() returns a bogus error code on one error
path.

Removed a never true "if" case.

If the LL_IOC_HSM_CT_START fails, then we have to go to out_kuc,
not out_err.

Change-Id: I738078392f98d4616f6451beece4f0d97bc8051d
Signed-off-by: frank zago <fzago@cray.com>
Reviewed-on: http://review.whamcloud.com/12314
Reviewed-by: Henri Doreau <henri.doreau@cea.fr>
Tested-by: Jenkins
Reviewed-by: James Nunez <james.a.nunez@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>
5 years agoLU-5743 build: Update to zfs/spl 0.6.3-1.1 73/12273/3
Nathaniel Clark [Fri, 10 Oct 2014 21:19:18 +0000 (17:19 -0400)]
LU-5743 build: Update to zfs/spl 0.6.3-1.1

Update ZFS and SPL version to the latest released patch version of
0.6.3-1.1

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: I19ec6da5c431b41e741b469e43f5373502d43130
Reviewed-on: http://review.whamcloud.com/12273
Tested-by: Maloo <hpdd-maloo@intel.com>
Tested-by: Jenkins
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5641 tests: ensure user daemon is in group bin 44/12044/4
Bob Glossman [Wed, 24 Sep 2014 19:09:53 +0000 (12:09 -0700)]
LU-5641 tests: ensure user daemon is in group bin

sanity test_103a assumes user daemon is a member of group bin.
This addition makes that so even in el7 where it's
not true by default.

Test-Parameters: clientdistro=el7 mdsfilesystemtype=ldiskfs mdtfilesystemtype=ldiskfs ostfilesystemtype=ldiskfs
Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I180479e80d4da5f1bfec98c25676feaae85c29d7
Reviewed-on: http://review.whamcloud.com/12044
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
5 years agoLU-5287 export: hold exp_lock when modify exp_flags 71/11871/3
Niu Yawei [Thu, 11 Sep 2014 10:57:52 +0000 (06:57 -0400)]
LU-5287 export: hold exp_lock when modify exp_flags

There are few places that changing the exp_flags without holding
exp_lock, that could overwrite other concurrent exp_flags updating.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I9c0421ffeacd6bf6feaa31dca9f9fc0e7963bc8b
Reviewed-on: http://review.whamcloud.com/11871
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5674 test: print spl debug info 80/11580/18
Minh Diep [Thu, 25 Sep 2014 05:30:54 +0000 (22:30 -0700)]
LU-5674 test: print spl debug info

Print /proc/spl files in case of tests fail

Signed-off-by: Minh Diep <minh.diep@intel.com>
Change-Id: I33890eedb9e5a2f87ae94cddd1db346c3c17c06d
Reviewed-on: http://review.whamcloud.com/11580
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Jenkins
Reviewed-by: Isaac Huang <he.huang@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>
5 years agoLU-4942 at: per-export lock callback timeout 36/9336/9
Vitaly Fertman [Fri, 10 Oct 2014 14:45:45 +0000 (18:45 +0400)]
LU-4942 at: per-export lock callback timeout

The lock callback timeout is calculated as an average per namespace.
This does not reflect individual client behavior.
Instead, we should calculate it on a per-export basis.

Signed-off-by: Vitaly Fertman <vitaly_fertman@xyratex.com>
Change-Id: I12e3fc5f8d261cce252fcf13f22193273dc054ee
Tested-by: Elena Gryaznova <Elena_Gryaznova@xyratex.com>
Reviewed-by: Andriy Skulysh <Andriy_Skulysh@xyratex.com>
Reviewed-by: Alexey Lyashkov <Alexey_Lyashkov@xyratex.com>
Xyratex-bug-id: MRP-417
Reviewed-on: http://review.whamcloud.com/9336
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
5 years agoLU-5626 ldiskfs: update non-htree dotdot in rename 39/11939/11
Patrick Farrell [Tue, 23 Sep 2014 15:14:24 +0000 (10:14 -0500)]
LU-5626 ldiskfs: update non-htree dotdot in rename

In 2.4+, when renaming a directory, its old dotdot entry will
be removed firstly, then the new dotdot entry is inserted, and
ldiskfs tries to append FID-in-dirent to the new entry.
But the space for dotdot entry may not be enough to hold
the new dotdot with FID-in-dirent, such as an MDT device
restored from file-level backup, or a device upgraded from 1.8.

In that case, for non-HTree directories, the ".." entry
will be written in the next available space in the directory
block.  This is invalid, as the ".." entry must be the
second entry in the block.

The same bug was fixed for HTree directories in LU-2638.
As Fan Yong said then: we do not want to introduce
complex logic to handle directory data moving, instead, in
such case, ignore the FID-in-dirent for the new dotdot entry,
and just insert the new dotdot entry.

There is one known flaw: This patch, like the one for
LU-2638, skips the entire data section rather than just
the FID.  This could cause trouble if something else ever
uses this section with ".." entries.

Signed-off-by: Patrick Farrell <paf@cray.com>
Change-Id: I57fc492e694973f5020191e4e2c79c74c7c4f18c
Reviewed-on: http://review.whamcloud.com/11939
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
5 years agoLU-5675 quota: correctly set II_FL_NONUNQ in dt_index_read() 74/12074/3
Johann Lombardi [Fri, 26 Sep 2014 19:19:13 +0000 (21:19 +0200)]
LU-5675 quota: correctly set II_FL_NONUNQ in dt_index_read()

Fix regression introduced by 60e07b972114df24105a3a1bfa7365892f72a4a7
II_FL_NONUNQ should be set in the index information only when the
backend index supports DT_IND_NONUNQ.
This mistake triggers the following warning in the qsd code:

Lustre: 25029:0:(qsd_reint.c:237:qsd_reint_index()) lustre-MDT0000:
II_FL_NONUNQ is set on index transfer for fid
[0x200000005:0x1011:0x0], it shouldn't be

Signed-off-by: Johann Lombardi <johann.lombardi@intel.com>
Change-Id: I42a9c70666c741064b356ffd253b49e5ed7b3e93
Reviewed-on: http://review.whamcloud.com/12074
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5519 lfsck: LFSCK code framework adjustment (2) 45/11845/13
Fan Yong [Wed, 27 Aug 2014 15:44:02 +0000 (23:44 +0800)]
LU-5519 lfsck: LFSCK code framework adjustment (2)

Enhance LFSCK code framework for striped directory verification,
including:

1) New lfsck component APIs: lfsck_operations::lfsck_open_dir()
   and lfsck_operations::lfsck_close_dir().
1.1) The namespace LFSCK uses lfsck_open_dir() to initialize the
     LMV EA verification environment.
1.2) The namespace LFSCK uses lfsck_close_dir() to indicate the
     end of the scanning the striped directory.

2) When create orphan parent, the LMV EA should be considered.

3) Data structure definition and extention.

4) Other code cleanup.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I01e14645796c3fa3269c5f3cdcbb755ccb455d7e
Reviewed-on: http://review.whamcloud.com/11845
Tested-by: Jenkins
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5518 lfsck: recover orphans from backend lost+found 36/11536/25
Fan Yong [Wed, 27 Aug 2014 15:38:30 +0000 (23:38 +0800)]
LU-5518 lfsck: recover orphans from backend lost+found

Some local filesystem consistency verification tools, such as
e2fsck for ldiskfs, will add the orphan objects under backend
special /lost+found directory. Such directory is invisible to
clients. The namespace LFSCK will scan such directory, and for
the objects that were visible to clients originally (according
to the FID), the namespace LFSCK will move them back to the
normal namespace (according to the linkEA) or to the global
visible .lustre/lost+found/MDTxxxx/ directory.

The namespace LFSCK will insert the orphan (that is under the
backend /lost+found directory) FID into the namespace LFSCK
tracing file for further processing (via the subsequent namespace
LFSCK second-stage scanning). At the same time, remove the orphan
name entry from backend /lost+found directory. There is an interval
between the orphan name entry removed from the backend /lost+found
directory and the orphan FID in the LFSCK tracing file handled. In
such interval, the LFSCK can be reset, then all the FIDs recorded
in the namespace LFSCK tracing file will be dropped. To guarantee
that the orphans can be found when LFSCK run next time without
e2fsck again, when remove the orphan name entry, the LFSCK will
set the orphan's ctime attribute as 1. Since normal applications
cannot change the object's ctime attribute as 1. Then when LFSCK
run next time, it can record the object (that ctime is 1) in the
namespace LFSCK tracing file during the first-stage scanning. Once
the FID in the LFSCK tracing file has been handled successfully,
then the object's ctime attribute will be changed to normal time.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I2f8e23801a868f2c99c630face4bbfe08ece8844
Reviewed-on: http://review.whamcloud.com/11536
Tested-by: Jenkins
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@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-5517 lfsck: repair invalid nlink count 16/11516/29
Fan Yong [Wed, 27 Aug 2014 15:12:44 +0000 (23:12 +0800)]
LU-5517 lfsck: repair invalid nlink count

If the namespace LFSCK has verified all the known name entries during
the first-stage scanning, then the MDT-object's linkEA is trustable.
So if the non-directory MDT-object's nlink attribute does not match
the MDT-object linkEA entries count, then the LFSCK will repair the
MDT-object's nlink attribute according to its linkEA entries count.

One exception is that: the linkEA space is limited, if there are too
much hard links on the MDT-object and exceeds the object's linkEA
space limitation, then some name entries cannot be recorded in the
linkEA. Under such case, we will add some flags (LLF_SKIP_NLINK)
in the LFSCK tracing file for related MDT-objects. Then the LFSCK
can skip the nlink attribute verification for the marked MDT-objects
during the second-stage scanning.

This patch also cleanup the LFSCK environment when current LFSCK
scanning exits (completed/stopped/failed) to avoid some stale to
misguide the next LFSCK scanning.

This patch also makes some code adjustment for the former landed
LFSCK patches according to the inspection feedback.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Iedc676e8cc06a52f55e82372e6dc8b30008e20f4
Reviewed-on: http://review.whamcloud.com/11516
Tested-by: Jenkins
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@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-5727 ldlm: revert changes to ldlm_cancel_aged_policy() 48/12448/3
Niu Yawei [Tue, 28 Oct 2014 02:20:07 +0000 (22:20 -0400)]
LU-5727 ldlm: revert changes to ldlm_cancel_aged_policy()

The changes to ldlm_cancel_aged_policy() intrdouced from LU-4300
(bfae5a) was incorrect. This patch revert this part of changes.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: Ic04f894c8bf54dbbdfb0e3bada5f6e4a367711a5
Reviewed-on: http://review.whamcloud.com/12448
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: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5777 quota: reserve enough credits for setattr 61/12361/3
Niu Yawei [Tue, 21 Oct 2014 11:07:30 +0000 (07:07 -0400)]
LU-5777 quota: reserve enough credits for setattr

On chown/chgrp operation, the file to be changed could be the
last file of owner/group, and the user/group ID entry could be
removed from the quota file in this setattr operation. We'd
reserve enough journal credits for such case.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: Ida22092739a6380cca0d6eccc45e1f06f5e82adb
Reviewed-on: http://review.whamcloud.com/12361
Tested-by: Jenkins
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5606 tests: add version check codes to conf-sanity test 41c 76/12376/2
Jian Yu [Wed, 22 Oct 2014 06:39:09 +0000 (23:39 -0700)]
LU-5606 tests: add version check codes to conf-sanity test 41c

This patch adds Lustre version check codes into conf-sanity test
41c to make the test interoperate with servers that do not have
commit 166c5ba95cb2a4771317e030a3649e4480c8cbad.

Test-Parameters: alwaysuploadlogs envdefinitions=ONLY=41c \
ossjob=lustre-b2_5 mdsjob=lustre-b2_5 ossbuildno=86 mdsbuildno=86 \
testlist=conf-sanity

Signed-off-by: Jian Yu <jian.yu@intel.com>
Change-Id: Ifa02e9ef1a137257790a399d75cce1f703fb0d6b
Reviewed-on: http://review.whamcloud.com/12376
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-1996 lustre: Flexible changelog format. 60/4060/25
Henri Doreau [Fri, 19 Sep 2014 13:39:56 +0000 (15:39 +0200)]
LU-1996 lustre: Flexible changelog format.

Added jobid fields to Changelog records (and extended records). The
CLF_JOBID flags allows to check if the field is present or not (old
format) when reading an entry. Jobids are expressed as 32 chars long,
zero-terminated strings. Updated test_205 in sanity.sh.

Signed-off-by: Henri Doreau <henri.doreau@cea.fr>
Change-Id: Iacfe7099aa520e012535ac48c44793a1b86870a9
Reviewed-on: http://review.whamcloud.com/4060
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Aurelien Degremont <aurelien.degremont@cea.fr>
5 years agoLU-5624 tests: ignore bad lfsck performance for ZFS backend 22/12322/2
Fan Yong [Mon, 18 Aug 2014 16:40:44 +0000 (00:40 +0800)]
LU-5624 tests: ignore bad lfsck performance for ZFS backend

Currently, the LFSCK performance has only been verified against
ldiskfs-based backend. The ZFS-based backend may hit bad performance
in sanity-lfsck test_9. Ignore the slow performance for ZFS-based
backend until we resolved the ZFS performance issues.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Ic70e33b1e10c1798b3df01039c34ac8f00d14375
Reviewed-on: http://review.whamcloud.com/12322
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>
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
5 years agoLU-2675 llog: remove obd_llog_init() and obd_llod_finish() 81/11781/2
John L. Hammond [Fri, 5 Sep 2014 17:23:14 +0000 (12:23 -0500)]
LU-2675 llog: remove obd_llog_init() and obd_llod_finish()

Since the OBD methods obd_llog_init() and obd_llod_finish() are only
called from MDC we remove them and just call mdc_llog_init() and
mdc_llog_finish() directly. Also simplify the prototypes the latter
functions according to their uses.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I56f906eacedaa4e2f90742fb129b4d578751a524
Reviewed-on: http://review.whamcloud.com/11781
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-2675 osc: remove obsolete llog handling 74/11774/4
John L. Hammond [Fri, 5 Sep 2014 15:48:05 +0000 (10:48 -0500)]
LU-2675 osc: remove obsolete llog handling

In osc_disconnect() LLOG_SIZE_REPL_CTXT was never setup so remove the
code to sync and put the content. In osc_precleanup() remove the no-op
call to obd_llog_finish().

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I41ce7effbd017862aa216d4a09c15694ec11d597
Reviewed-on: http://review.whamcloud.com/11774
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-2675 lustre: remove linux/obd_support.h 31/11931/3
John L. Hammond [Mon, 15 Sep 2014 22:38:38 +0000 (17:38 -0500)]
LU-2675 lustre: remove linux/obd_support.h

Remove the unnecessary header lustre/include/linux/obd_support.h. In
lustre/include/obd_support.h assume a kernel build.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I3bead5495b7f4a08183653f2e1eb06d429543091
Reviewed-on: http://review.whamcloud.com/11931
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-4075 osd: handle getxattr for trusted.version 49/11649/2
John L. Hammond [Fri, 29 Aug 2014 13:25:36 +0000 (08:25 -0500)]
LU-4075 osd: handle getxattr for trusted.version

In the ldiskfs osd_xattr_get() remove an assertion on the size of the
supplied buffer and add normal handling.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ie4d3b4ab6dd1e8328404d1f8e5b403130b62e64a
Reviewed-on: http://review.whamcloud.com/11649
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-5054 llite: enforce pool name length limit 06/10306/11
Li Xi [Thu, 2 Oct 2014 23:43:02 +0000 (07:43 +0800)]
LU-5054 llite: enforce pool name length limit

The pool related codes have some inconsistency about the length
of pool name. Creating and setting a pool name of lenght 16
to a directory will succeed. However, creating a file under
that directory will fail.

This patch disables any pool name which is longer or equal to
16. And it changes LOV_MAXPOOLNAME from 16 to 15 which might
cause some invalid LLOG records of OST pools with 16 byte names.
It is not a problem since invalid LLOG records are just ignored.
And OST pools with 16 byte names won't work well anyway on the
old versions. There will be problem of inconsistency if part of
the servers have this patch and part of the servers don't. But
it would be safe to assume that this is not a normal
configuration.

Signed-off-by: Li Xi <lixi@ddn.com>
Change-Id: I3672fb5414662120c3e6b8641002a6b76994cc77
Reviewed-on: http://review.whamcloud.com/10306
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
5 years agoLU-5352 dt: correct if condition in dt_index_read() 21/11121/6
John L. Hammond [Wed, 16 Jul 2014 20:35:33 +0000 (15:35 -0500)]
LU-5352 dt: correct if condition in dt_index_read()

In dt_index_read() return -EPROTO if rdpg->rp_count is zero or is not
divisible by LU_PAGE_SIZE.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ib4f884bf0759b81978336d68fea45cf7a5d8a70f
Reviewed-on: http://review.whamcloud.com/11121
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-2675 mgc: remove libmgc.c 72/11772/4
John L. Hammond [Fri, 5 Sep 2014 14:30:40 +0000 (09:30 -0500)]
LU-2675 mgc: remove libmgc.c

Remove the liblustre specific file lustre/mgc/libmgc.c.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I4412c9d27108f4230fb351f24d6a05b2cb98fa19
Reviewed-on: http://review.whamcloud.com/11772
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Nathan Rutman <nathan.rutman@seagate.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-2675 libcfs: add libcfs/byteorder.h 86/11986/2
John L. Hammond [Wed, 17 Sep 2014 19:24:01 +0000 (14:24 -0500)]
LU-2675 libcfs: add libcfs/byteorder.h

Move the byte swapping macros out of libcfs/posix/libcfs.h and into a
new header libcfs/byteorder.h which includes asm/byteorder.h for
kernel code or defines the equivalent macros for userspace code.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I298e4d1dd224ffbb395e0df531b382a8c9e2082f
Reviewed-on: http://review.whamcloud.com/11986
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-2675 libcfs: remove LUSTRE_{,SRV_}LNET_PID 85/11985/2
John L. Hammond [Wed, 17 Sep 2014 12:56:47 +0000 (07:56 -0500)]
LU-2675 libcfs: remove LUSTRE_{,SRV_}LNET_PID

Remove LUSTRE_LNET_PID (12354) and LUSTRE_SRV_LNET_PID (12345) from
the libcfs headers and replace their uses with a new macro
LNET_PID_LUSTRE (also 12345) in lnet/types.h.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ib92e1eaa8237c998d04ee0110907dac2dbffdc5e
Reviewed-on: http://review.whamcloud.com/11985
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-5779 test: wait for CT registration in sanity-hsm test_70 67/12367/2
John L. Hammond [Tue, 21 Oct 2014 20:57:35 +0000 (15:57 -0500)]
LU-5779 test: wait for CT registration in sanity-hsm test_70

In sanity-hsm test_70 wait for the copytool to register before
shutting it down (via SIGINT) so that the desired events may be
emitted.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ibc3fa26c119cebd10566b9ac3b4d1a754da1aaf2
Reviewed-on: http://review.whamcloud.com/12367
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Tested-by: Jenkins
Reviewed-by: frank zago <fzago@cray.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-5706 tests: Ensure preconditions in conf-sanity/57 36/12236/6
Nathaniel Clark [Wed, 8 Oct 2014 13:17:53 +0000 (09:17 -0400)]
LU-5706 tests: Ensure preconditions in conf-sanity/57

The modules need to be loaded to read any data, but the system does
not need to be mounted.  Loading modules prevents any skipped tests
causing this one to fail.

Test-Parameters: mdsfilesystemtype=zfs mdtfilesystemtype=zfs ostfilesystemtype=zfs testlist=conf-sanity envdefinitions="CONF_SANITY_EXCEPT=56"
Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: Idf7003067c6ea9f33203f219f5b370008a43fafd
Reviewed-on: http://review.whamcloud.com/12236
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-2675 libcfs: ignore CDEBUG_ENTRY_EXIT for userspace 81/12281/2
John L. Hammond [Sat, 11 Oct 2014 17:17:01 +0000 (12:17 -0500)]
LU-2675 libcfs: ignore CDEBUG_ENTRY_EXIT for userspace

In userspace define GOTO() and RETURN() to not call libcfs_log_goto()
or libcfs_log_return(). Remove the definition of uses of the obsolete
__arch_lib__ symbol.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I55411d57e0cb00e3e742b011317244b452c23f6a
Reviewed-on: http://review.whamcloud.com/12281
Tested-by: Jenkins
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.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>
5 years agoLU-2456 lnet: lnetctl utility man page 59/11859/10
Amir Shehata [Tue, 9 Sep 2014 21:10:38 +0000 (14:10 -0700)]
LU-2456 lnet: lnetctl utility man page

Added the man page for the lnetctl utility

Signed-off-by: Amir Shehata <amir.shehata@intel.com>
Change-Id: Id3b0345b29d8cd891d89283632a1cb66eb2d400a
Reviewed-on: http://review.whamcloud.com/11859
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Tested-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-2456 lnet: configure lnet on startup 98/11798/11
Amir Shehata [Fri, 5 Sep 2014 18:48:15 +0000 (11:48 -0700)]
LU-2456 lnet: configure lnet on startup

This is the ninth patch of a set of patches that enables DLC.

Modified lustre/scripts/lnet to look for a default config file
/etc/sysconfig/lnet.conf.  If it's found and the lnetctl utility
is installed, then call lnetctl with that file as a parameter.

This file is expected to be in YAML format and it defines
LNET configuration items.

Signed-off-by: Amir Shehata <amir.shehata@intel.com>
Change-Id: I32252abfddeaefd43359c7055a5476b2bc8eda92
Reviewed-on: http://review.whamcloud.com/11798
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-2456 lnet: DLC user space Configuration utility 26/8026/65
Amir Shehata [Tue, 15 Oct 2013 21:47:43 +0000 (14:47 -0700)]
LU-2456 lnet: DLC user space Configuration utility

This is the eighth patch of a set of patches that enables DLC.

This patch adds an lnet configuration utility, lnetctl,
which provides a way for sys admins to configure LNET
parameters.  This utility has been added to the /lnet/utils
directory

The utility is built only if libyaml is installed on the
system.

For SLES libyaml is not available, so if DLC is to be
built libyaml has to be installed manually.

Signed-off-by: Amir Shehata <amir.shehata@intel.com>
Change-Id: I81e8eef3452af0e7a246ca78213dd1a2d4b59775
Reviewed-on: http://review.whamcloud.com/8026
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-2456 lnet: DLC user space Configuration library 25/8025/63
Amir Shehata [Tue, 15 Oct 2013 20:12:54 +0000 (13:12 -0700)]
LU-2456 lnet: DLC user space Configuration library

This is the seventh patch of a set of patches that enables DLC.

This patch adds a user space library liblnetconfig, which provides
an API to add/delete/show LNET parameters.  This library has been
added to the /lnet/utils/lnetconfig directory.

There are two sets of APIs which are presented.  There are the
APIs which configure a specific parameter such as routes, and
there are a set of APIs which take in a YAML block of entities
which are then added/deleted/showed.  The latter is intended for
use by IML or other similar tools.

All APIs return a cYAML error block, and the show APIs return a
cYAML show block as well.  The cYAML block is a structural
represenation of a YAML block.  This can be stored/queried/printed
and deleted by the caller of the API.  A cYAML API is provided
to facilitate these operations

DLC can be enabled via --enable-dlc or disabled via --disable-dlc
parameters passed to configure.  DLC is by default enabled.
If the yaml library is installed and --enable-dlc is set then
dlc is added to the build, otherwise if libyaml is not installed
or --disable-dlc is set then dlc is not added to the build.

When building the rpm, this configure options are used to decide
to add the Require and BuildRequire conditions or not.

Currently SLES doesn't include libyaml package so it will need
to be installed manually if users want to build DLC

Signed-off-by: Amir Shehata <amir.shehata@intel.com>
Change-Id: Id6f7eeff8c63ab3f3b27fca92dc31066f7b87968
Reviewed-on: http://review.whamcloud.com/8025
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-5506 lfsck: skip orphan MDT-object handling for failed MDTs 44/11444/23
Fan Yong [Fri, 8 Aug 2014 19:16:14 +0000 (03:16 +0800)]
LU-5506 lfsck: skip orphan MDT-object handling for failed MDTs

The namespace LFSCK will record the failed MDTs in the LFSCK tracing
file (lfsck_namespace) during the first-stage scanning, then when it
moves to the second-stage scanning, it can know which (the failed)
MDT(s) contain the MDT-objects that may have un-verified name entries
on other MDTs. Then the LFSCK will skip the orphan MDT-objects
handling on those ever failed MDTs. But other MDTs can be handled as
normal case without affected by the failed MDTs.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Ic53d2fa24f81fb918d130dbc27694d3b68dc19d6
Reviewed-on: http://review.whamcloud.com/11444
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: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-5516 lfsck: repair orphan parent MDT-object 91/11391/29
Fan Yong [Fri, 8 Aug 2014 12:54:06 +0000 (20:54 +0800)]
LU-5516 lfsck: repair orphan parent MDT-object

When the namespace LFSCK tries to repair the missing name entry,
means inserting the lost name entry back to its parent directory,
it may find that the parent MDT-object is also lost. Under such
case, the namespace LFSCK will firstly create the missing parent
MDT-object as an orphan and insert into the
.lustre/lost+found/MDTxxxx/ directory with the name:
${FID}-P-${conflict_version}.

Then insert the lost name entry into the orphan parent according
to the MDT-object's linkEA.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Ie9c585f08fa9f371fa3ed1281c9c814606c4a2ea
Reviewed-on: http://review.whamcloud.com/11391
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: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-5079 ptlrpc: fix early reply timeout for recovery 13/11213/11
Alexander.Boyko [Thu, 24 Jul 2014 14:35:44 +0000 (18:35 +0400)]
LU-5079 ptlrpc: fix early reply timeout for recovery

Commit 8b2f9c0e408 http://review.whamcloud.com/9100 changed
the deadline calculation from current time to request arrival.
During recovery, the new deadline could be less than calculated
at request arrival time. And even worse, the deadline may be
in past. For the first case unneeded early reply would be sent
to client. For the second, client requests would be dropped by
timeout and client reconnect happend.

Do at_measured() for recovery in the same way like general early
reply base on the current time. And set new timeout to the end
of recovery.

Test to check recovery deadline bug.

Signed-off-by: Alexander Boyko <alexander_boyko@xyratex.com>
Change-Id: I29327cb962d1c1a3cd8a6181d27a29593d1d8fc4
Xyratex-bug-id: MRP-1988
Reviewed-on: http://review.whamcloud.com/11213
Tested-by: Jenkins
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Chris Horn <hornc@cray.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-5752 doc: Added missing manpages to Makefile.am 08/12308/2
Henri Doreau [Thu, 16 Oct 2014 11:17:53 +0000 (13:17 +0200)]
LU-5752 doc: Added missing manpages to Makefile.am

Make sure all manpages are added to Makefile.am so that they can get
installed.

Signed-off-by: Henri Doreau <henri.doreau@cea.fr>
Change-Id: I8927531a50bc41fc53b21959ce003b8acfd1ce50
Reviewed-on: http://review.whamcloud.com/12308
Tested-by: Jenkins
Reviewed-by: Cliff White <cliff.white@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4976 osp: add doxygen comments for osp_object.c functions 99/10799/12
Fan Yong [Mon, 18 Aug 2014 08:12:55 +0000 (16:12 +0800)]
LU-4976 osp: add doxygen comments for osp_object.c functions

Add introductory comment block for the osp_object.c file. And add
function comment blocks to all functions in the osp_object.c file.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Id228c3612df3391f9307e39c6dcb30e60cf1665d
Reviewed-on: http://review.whamcloud.com/10799
Reviewed-by: Ned Bass <bass6@llnl.gov>
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-4298 utils: do not create file with no striping info 75/8375/8
James Nunez [Fri, 18 Jul 2014 15:06:36 +0000 (09:06 -0600)]
LU-4298 utils: do not create file with no striping info

'lfs setstripe' should not create a file with no striping
information if bad values are given. The input parameter
check in llapi_file_open_pool is moved before the file open
to catch bad parameters before the file is created.

A check is added to sanity test 27f to make sure
'lfs setstripe -s' does not create a file with no
striping information.

Signed-off-by: Sebastien Buisson <sebastien.buisson@bull.net>
Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: I19beef973dc3a62bf2cb443e02195896772702fc
Reviewed-on: http://review.whamcloud.com/8375
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-4974 lod: documentation for lod_object.c 22/11022/10
Alex Zhuravlev [Tue, 8 Jul 2014 13:52:30 +0000 (17:52 +0400)]
LU-4974 lod: documentation for lod_object.c

Comments in Doxygen markup.

Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Signed-off-by: Richard Henwood <richard.henwood@intel.com>
Change-Id: Ib60ae4eb89aeef5c3118f43c0fb640d5820b8b62
Reviewed-on: http://review.whamcloud.com/11022
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Ned Bass <bass6@llnl.gov>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-5516 lfsck: repair the lost name entry 49/12249/3
Fan Yong [Sun, 17 Aug 2014 07:58:21 +0000 (15:58 +0800)]
LU-5516 lfsck: repair the lost name entry

If the MDT-object has a linkEA entry that back references a name
entry under some parent directory, but such parent directory has
no the claimed name entry. On the other hand, if the MDT-object's
linkEA entries count is not larger than the MDT-object's hard links
count. Under such case, it is quite possible that the name entry is
lost. So the object may be an orphan. Then the LFSCK should add the
missed name entry back to the namespace according to the linkEA entry.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I88ae352e4b14cb810b98f2b9956aeafcc005082b
Reviewed-on: http://review.whamcloud.com/12249
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-5515 lfsck: repair bad file type in name entry 48/12248/3
Fan Yong [Sun, 17 Aug 2014 07:58:04 +0000 (15:58 +0800)]
LU-5515 lfsck: repair bad file type in name entry

If the file type stored in the name entry does not match the file
type claimed by the object, then trust the object and update the
file type in the name entry.

At the same time, if the object does not recognize the name entry
(via the linkEA), then it is quite possible that the name entry is
corrupted. Then remove the bad name entry from namespace.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I616b482005f6379dd10bcd17f656b0ea3dd98111
Reviewed-on: http://review.whamcloud.com/12248
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-5513 lfsck: repair multiple referenced name entry 47/12247/5
Fan Yong [Sun, 17 Aug 2014 23:50:56 +0000 (07:50 +0800)]
LU-5513 lfsck: repair multiple referenced name entry

If more than one MDT-objects back reference the same name entry via
their each own linkEA entry, but the name entry only references one
MDT-object of them. Then for those non-recognized MDT-objects, the
namespace LFSCK will remove the non-recognized linkEA entries when
double scan them. And if the MDT-object has no linkEA entries left
after the cleanup, then it will be regarded as orphan and inserted
into .lustre/lost+found/MDTxxxx/ directory with the name:
${FID}-${infix}-${type}-${conflict_version}

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: Ie50711c3c17861bd2c0f491052caa9dcea0e02f2
Reviewed-on: http://review.whamcloud.com/12247
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-2675 libcfs: remove {ENTRY,EXIT}_NESTING macros 84/11984/5
John L. Hammond [Wed, 17 Sep 2014 12:42:23 +0000 (07:42 -0500)]
LU-2675 libcfs: remove {ENTRY,EXIT}_NESTING macros

Remove the unnecessary macros ENTRY_NESTING_SUPPORT, ENTRY_NESTING,
EXIT_NESTING, and __current_nesting_level().

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I12c3c9a253b1dc0929a78c2f807b2a94434d3496
Reviewed-on: http://review.whamcloud.com/11984
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Tested-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-951 test: re-enable replay-single test_73a 27/12227/3
Yang Sheng [Wed, 8 Oct 2014 04:08:52 +0000 (12:08 +0800)]
LU-951 test: re-enable replay-single test_73a

Enable replay-single test_73a as bug resolved.

LU-2840 test: re-enabel sanityn test_21

Enable sanityn test_21 as bug resolved.

LU-1867 test: re-enable test_89

Enable replay-single test_89 as bug resolved.

Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Change-Id: I78d8e21e2f454af07503d96c510beb9090b23ace
Reviewed-on: http://review.whamcloud.com/12227
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>
5 years agoNew tag 2.6.54 2.6.54 v2_6_54 v2_6_54_0
Oleg Drokin [Sat, 11 Oct 2014 04:11:59 +0000 (00:11 -0400)]
New tag 2.6.54

Change-Id: Ie342c882a0d7034fc129df4ad973c78ddba6ba13

5 years agoLU-5573 obdclass: strengthen against concurrent server mounts 14/12114/4
Bruno Faccini [Mon, 29 Sep 2014 17:53:23 +0000 (19:53 +0200)]
LU-5573 obdclass: strengthen against concurrent server mounts

This patch is an add-on to previous fix for LU-5299, against same
issues/races scenarios during concurrent server devices mounts.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: Ib12332e9758f4a64fb8d7bdf60464100b4fd6c00
Reviewed-on: http://review.whamcloud.com/12114
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4943 obdclass: detach MGC dev on error 29/10129/14
Bobi Jam [Mon, 28 Apr 2014 15:40:27 +0000 (23:40 +0800)]
LU-4943 obdclass: detach MGC dev on error

lustre_start_mgc() creates MGC device, if error happens later on
ll_fill_super(), this device is still attached, and later mount
fails by keep complaining that the MGC device's already in the
client node.

It turns out that the device was referenced by mgc config llog data
which is arranged in the mgc lock requeue thread re-trying to get its
mgc lock, and in normal case, this llog reference only released in
mgc_blocking_ast() when the system is umount.

This patch make mgc_precleanup() to wake up requeue thread to handle
the config llog data.

This patch also makes mgc_setup() wait for mgc_requeue_thread() start
before moving on.

Signed-off-by: Bobi Jam <bobijam.xu@intel.com>
Change-Id: I83df8c68c1dbe4ef4ee879e04ab20df46fea9062
Reviewed-on: http://review.whamcloud.com/10129
Tested-by: Jenkins
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Ryan Haasken <haasken@cray.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4839 utils: fix bandwidth ctl in lhsmtool 93/12093/7
Nathaniel Clark [Sat, 27 Sep 2014 18:22:55 +0000 (14:22 -0400)]
LU-4839 utils: fix bandwidth ctl in lhsmtool

Use nanosleep for bandwidth control because usleep fails
for times of a second or longer (usleep(2) EINVAL return value). Add
loop in case sleep is woken by signal.

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: Ib58676b878678eb399bf58bb9873d8fb411b3316
Reviewed-on: http://review.whamcloud.com/12093
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5530 mdt: Properly match open lock and unlock 41/11841/2
Oleg Drokin [Wed, 10 Sep 2014 01:38:35 +0000 (21:38 -0400)]
LU-5530 mdt: Properly match open lock and unlock

It seems that when request resend with a corresponding lock match is
in play (thanks to large striping + llnl patch for the client to send
small requests only), after all the suffering and fixing coming from
LU-2827, here is another casualty in in open/lease locking.
mdt_reint_open() and mdt_open_by_fid_lock() might match the lock
on resend and not call mdt_object_open_lock(), yet call
mdt_object_open_unlock() before exit.
Since mdt_object_open_lock/unlock also plays with a semaphore,
hilarity ensues usually most visible as a rw_sem lockup
in mdt_object_open_lock.

This patch adds tracking whenever we actually called mdt_object_open_lock
or not and only calls mdt_object_open_unlock if we did.

Change-Id: I73c529229acec98cac4ad73f7b487e759ad9a763
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/11841
Tested-by: Jenkins
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Faccini Bruno <bruno.faccini@intel.com>
5 years agoLU-5579 ldlm: re-sent enqueue vs lock destroy race 39/11839/4
Vitaly Fertman [Thu, 9 Oct 2014 15:18:34 +0000 (11:18 -0400)]
LU-5579 ldlm: re-sent enqueue vs lock destroy race

Upon lock enqueue re-send, lock is pinned by ldlm_handle_enqueue0,
however it may race with client eviction or even lock cancel (if
a reply for the original RPC finally reached the client) and the
lock cannot be found by cookie anymore:

ASSERTION( lock != NULL ) failed: Invalid lock handle

Signed-off-by: Vitaly Fertman <vitaly_fertman@xyratex.com>
Change-Id: I9d8156bf78a1b83ac22ffaa1148feb43bef37b1a
Xyratex-bug-id: MRP-2094
Reviewed-on: http://review.whamcloud.com/11839
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5711 tests: add version check for recovery-small subtest 09/12209/3
Bob Glossman [Tue, 7 Oct 2014 15:51:06 +0000 (08:51 -0700)]
LU-5711 tests: add version check for recovery-small subtest

version check added for recovery-small, test 10b.
needed to avoid interop failures.

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: Idb579576d412150d06be20e14ca3517abeb89b31
Reviewed-on: http://review.whamcloud.com/12209
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Tested-by: Jenkins
Reviewed-by: Jian Yu <jian.yu@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-2872 tests: Reenable sanity-quota/1 for ZFS 57/12157/2
Nathaniel Clark [Wed, 1 Oct 2014 16:18:14 +0000 (12:18 -0400)]
LU-2872 tests: Reenable sanity-quota/1 for ZFS

Because of performance improvements on ZFS this should now pass
consistantly.

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: I5fe3f2062cfa3cdf6ff92e4b214019bc907ce448
Reviewed-on: http://review.whamcloud.com/12157
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5141 hsm: Only regular files should be archived 36/12036/3
vinayak_clogeny [Wed, 24 Sep 2014 06:37:11 +0000 (12:07 +0530)]
LU-5141 hsm: Only regular files should be archived

It is currently possible to ask lfs to hsm_archive a directory,
although this doesn't appear to make any sense, and the posix
copytool rejects it.

Ideally this should be caught early and not being forwarded to
the copytool at all.

So adding regular file check in
lustre/utils/lfs.c
which will report error if the file provided for hsm_archive
is not a regular file

Signed-off-by: vinayakswami hariharmath <vinayakswami.hariharmath@clogeny.com>
Change-Id: Ie6cdc05a8517853675167640d76d4d7b5ea9dccf
Reviewed-on: http://review.whamcloud.com/12036
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: frank zago <fzago@cray.com>
Reviewed-by: Faccini Bruno <bruno.faccini@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-2675 libcfs: remove {linux,posix}-tracefile.h 83/11983/3
John L. Hammond [Tue, 7 Oct 2014 01:11:33 +0000 (21:11 -0400)]
LU-2675 libcfs: remove {linux,posix}-tracefile.h

Move the definition of the trace buffer type enum in
libcfs/libcfs/tracefile.h.  Remove the then unneeded headers
libcfs/libcfs/linux/linux-tracefile.h and
libcfs/libcfs/posix/posix-tracefile.h.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ied6fe04e98ba4d91197956ecf6566f73eabb7114
Reviewed-on: http://review.whamcloud.com/11983
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
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-5700 llite: handle concurrent use of cob_transient_pages 79/12179/3
Stephen Champion [Fri, 3 Oct 2014 13:08:49 +0000 (06:08 -0700)]
LU-5700 llite: handle concurrent use of cob_transient_pages

With the lockless __generic_file_aio_write introduced in LU-1669,
ll_direct_IO_26 is no longer protected by the inode i_isem.

This renders obsoltete checks that all transient pages have been
handled before and after entry, and requires atomic access to their
counter.

Signed-off-by: Stephen Champion <schamp@sgi.com>
Change-Id: Ie1545b2123a5ca7d9a8cac130ff387fc06955629
Reviewed-on: http://review.whamcloud.com/12179
Tested-by: Jenkins
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-2610 tests: Reenable sanity/40 for ZFS 53/12153/2
Nathaniel Clark [Wed, 1 Oct 2014 13:39:20 +0000 (09:39 -0400)]
LU-2610 tests: Reenable sanity/40 for ZFS

Due to fix by LU-2804 change c8d5aa14e50be2a85491783f169a8f4e646b9594
This test should no longer be skipped for ZFS and should pass.

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: I1e464b8874b0968f038ec4c88c7b24d2fb03207b
Reviewed-on: http://review.whamcloud.com/12153
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@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>
5 years agoLU-5654 osd-ldiskfs: Handle holes in osd_ldiskfs_read() 45/12145/3
Li Wei [Wed, 24 Sep 2014 04:12:37 +0000 (12:12 +0800)]
LU-5654 osd-ldiskfs: Handle holes in osd_ldiskfs_read()

Current osd_ldiskfs_read() incorrectly returns zero and leaves the
corresponding portion of the buffer untouched when a block to be read
is not allocated.

Test-Parameters: testlist=conf-sanity,conf-sanity,conf-sanity,conf-sanity,conf-sanity
Change-Id: I3044f771fccfdddf1fee0c931e8996cbdd8df0c8
Signed-off-by: Li Wei <wei.g.li@intel.com>
Reviewed-on: http://review.whamcloud.com/12145
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Johann Lombardi <johann.lombardi@intel.com>
Tested-by: Jenkins
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-2675 lustre: remove linux/obd_class.h 05/11505/3
John L. Hammond [Mon, 18 Aug 2014 18:42:51 +0000 (13:42 -0500)]
LU-2675 lustre: remove linux/obd_class.h

Move some obdo handling declarations from
lustre/include/linux/obd_class.h to lustre/include/obd_class.h. Remove
lustre/include/linux/obd_class.h.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I1e04c97ec7f4bb97b23f57298f52f5efd2c576a2
Reviewed-on: http://review.whamcloud.com/11505
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: frank zago <fzago@cray.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
5 years agoLU-2675 lustre: remove linux/lustre_quota.h 04/11504/2
John L. Hammond [Mon, 18 Aug 2014 18:35:43 +0000 (13:35 -0500)]
LU-2675 lustre: remove linux/lustre_quota.h

Remove the (mostly) empty header lustre/include/linux/lustre_quota.h.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: If550ac07e442c640c11f7d23b38f2ec6c166f194
Reviewed-on: http://review.whamcloud.com/11504
Reviewed-by: frank zago <fzago@cray.com>
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>
5 years agoLU-2675 lustre: remove linux/lustre_net.h 03/11503/6
John L. Hammond [Mon, 18 Aug 2014 18:33:29 +0000 (13:33 -0500)]
LU-2675 lustre: remove linux/lustre_net.h

Remove the (mostly) empty header lustre/include/linux/lustre_net.h.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I6ad41b94cf21803ac2f6602c5befea511d02937a
Reviewed-on: http://review.whamcloud.com/11503
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4974 doc: comments to lprocfs_lod.c 59/11159/4
Alex Zhuravlev [Mon, 21 Jul 2014 13:19:57 +0000 (17:19 +0400)]
LU-4974 doc: comments to lprocfs_lod.c

comments to the functions in lod/lprocfs_lod.c.

Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Change-Id: I8722347aae3262db187b4a6fc30d83d18fee2978
Reviewed-on: http://review.whamcloud.com/11159
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Richard Henwood <richard.henwood@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5474 hsm: Add test 90 to ALWAYS_EXCEPT list 36/12136/3
James Nunez [Tue, 30 Sep 2014 18:30:08 +0000 (12:30 -0600)]
LU-5474 hsm: Add test 90 to ALWAYS_EXCEPT list

Disable sanity-hsm test 90 from executing with the
ALWAYS_EXCEPT parameter.

Test 90 should be enabled in the patch that fixes
the issues with test.

Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: Ia0ed9925a311f3e24510e62842de88cf9c824f7a
Reviewed-on: http://review.whamcloud.com/12136
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoLU-2675 libcfs: remove unused libcfs.a code 68/10668/7
John L. Hammond [Mon, 6 Oct 2014 13:40:12 +0000 (09:40 -0400)]
LU-2675 libcfs: remove unused libcfs.a code

Remove unused code from libcfs.a. Delete the files:

  libcfs/libcfs/posix/posix-adler.c
  libcfs/libcfs/posix/posix-crc32.c
  libcfs/libcfs/posix/posix-debug.c
  libcfs/libcfs/posix/posix-proc.c
  libcfs/libcfs/posix/rbtree.c
  libcfs/libcfs/user-bitops.c
  libcfs/libcfs/user-crc32pclmul.c
  libcfs/libcfs/user-crypto.c
  libcfs/libcfs/user-lock.c
  libcfs/libcfs/user-mem.c
  libcfs/libcfs/user-prim.c
  libcfs/libcfs/user-tcpip.c

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ic7b6539147fc66a3cefa0caddfc995474014e098
Reviewed-on: http://review.whamcloud.com/10668
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4976 doc: comments to osp_precreate.c 52/11152/6
Alex Zhuravlev [Sun, 20 Jul 2014 08:13:39 +0000 (12:13 +0400)]
LU-4976 doc: comments to osp_precreate.c

comments to the functions in osp/osp_precreate.c

Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Change-Id: I657661ea13f1e455f8a01b15f5262049e9764521
Reviewed-on: http://review.whamcloud.com/11152
Tested-by: Jenkins
Reviewed-by: Richard Henwood <richard.henwood@intel.com>
Reviewed-by: Doug Oucharek <doug.s.oucharek@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5396 lnet: add sparse annotation __user wherever needed 19/11819/8
Frank Zago [Wed, 23 Jul 2014 21:32:32 +0000 (16:32 -0500)]
LU-5396 lnet: add sparse annotation __user wherever needed

This fixes sparse warnings such as:

  .../api-ni.c:1639:33: warning: incorrect type in argument 3
                             (different address spaces)
  .../api-ni.c:1639:33:    expected struct lnet_process_id_t
                             [noderef] [usertype] <asn:1>*ids
  .../api-ni.c:1639:33:    got struct lnet_process_id_t
                             [usertype] *<noident>

There is no code change.

Change-Id: Iff822b1e6036709e3bd660fe14d8faa58b308995
Signed-off-by: frank zago <fzago@cray.com>
Reviewed-on: http://review.whamcloud.com/11819
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@gmail.com>
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-5396 libcfs: add sparse annotation __user wherever needed 17/11817/4
Frank Zago [Wed, 23 Jul 2014 21:03:30 +0000 (16:03 -0500)]
LU-5396 libcfs: add sparse annotation __user wherever needed

This fixes sparse warnings such as:

  .../api-ni.c:1639:33: warning: incorrect type in argument 3
                             (different address spaces)
  .../api-ni.c:1639:33:    expected struct lnet_process_id_t
                             [noderef] [usertype] <asn:1>*ids
  .../api-ni.c:1639:33:    got struct lnet_process_id_t
                             [usertype] *<noident>

There is no code change.

Change-Id: I07a40b3e2f5bf179923c57d9eda86b4921cd7699
Signed-off-by: frank zago <fzago@cray.com>
Reviewed-on: http://review.whamcloud.com/11817
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5659 hsm: add timestamps to lhsmtool log messages 42/12042/3
John L. Hammond [Wed, 24 Sep 2014 17:33:10 +0000 (12:33 -0500)]
LU-5659 hsm: add timestamps to lhsmtool log messages

Add epoch timestamps (secs.usecs) to the log messages emitted by
lhsmtool_posix. Change the single use of CT_DEBUG() to
CT_TRACE(). Remove the unused macro CT_PRINTF().

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I227d00c97f93a09ac9322213d255102b8a3cf612
Reviewed-on: http://review.whamcloud.com/12042
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Reviewed-by: Faccini Bruno <bruno.faccini@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5557 mdt: track reint operations in MDS service stats 24/11924/2
John L. Hammond [Mon, 15 Sep 2014 20:50:33 +0000 (15:50 -0500)]
LU-5557 mdt: track reint operations in MDS service stats

In mdt_reint_rec() tally the appropriate ptlrpc service stat
(MDS_REINT_{CREATE,SETATTR,...}) for the requested operation.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Idda44baa5720b1b3d7d38402c9abe322f3645b7f
Reviewed-on: http://review.whamcloud.com/11924
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-991 lmv: remove dead code 80/11880/3
Dmitry Eremin [Thu, 11 Sep 2014 19:25:56 +0000 (23:25 +0400)]
LU-991 lmv: remove dead code

The member lmv_obd->server_timeout and function lmv_set_timeouts()
are not used.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: I61f8a59d72244ca41e76c277002bce3e2c850f0a
Reviewed-on: http://review.whamcloud.com/11880
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: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5587 lustre: require HAVE_SERVER_SUPPORT in md_object.h 56/11756/4
John L. Hammond [Thu, 4 Sep 2014 20:03:30 +0000 (15:03 -0500)]
LU-5587 lustre: require HAVE_SERVER_SUPPORT in md_object.h

Move the definition of struct seq_server_site from md_object.h to
lustre_fid.h. Uninclude md_object.h from files that don't need it. In
md_object.h generate a preprocessor error if HAVE_SERVER_SUPPORT is
not defined.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Ie3fd464ef4a71f09ccaffae409901cb48705301b
Reviewed-on: http://review.whamcloud.com/11756
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5432 fld: don't loop forever on bogus FID sequences 05/11605/2
John L. Hammond [Tue, 26 Aug 2014 16:28:30 +0000 (11:28 -0500)]
LU-5432 fld: don't loop forever on bogus FID sequences

In fld_client_rpc() if the FLD query RPC returns -ENOENT then break
the retry loop and return -ENOENT.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: Id70a5d8f6c2105509149e72e8910fcb6c51732f0
Reviewed-on: http://review.whamcloud.com/11605
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5458: libcfs: protect kkuc_groups from write access 55/11355/4
Frank Zago [Wed, 6 Aug 2014 20:03:42 +0000 (15:03 -0500)]
LU-5458: libcfs: protect kkuc_groups from write access

Since reg->kr_fp can be changed inside the foreach loop,
kkuc_groups must be write protected, and not just read protected.

This should fix the following oops, which could happen if two different
threads simultaneously execute the function, and EPIPE is returned.

PID: 24385  TASK: ffff88012da5f500  CPU: 1   COMMAND: "ldlm_cb00_056"
 #0 [ffff88012db55810] machine_kexec at ffffffff81038f3b
 #1 [ffff88012db55870] crash_kexec at ffffffff810c59f2
 #2 [ffff88012db55940] oops_end at ffffffff8152b7f0
 #3 [ffff88012db55970] no_context at ffffffff8104a00b
 #4 [ffff88012db559c0] __bad_area_nosemaphore at ffffffff8104a295
 #5 [ffff88012db55a10] bad_area_nosemaphore at ffffffff8104a363
 #6 [ffff88012db55a20] __do_page_fault at ffffffff8104aabf
 #7 [ffff88012db55b40] do_page_fault at ffffffff8152d73e
 #8 [ffff88012db55b70] page_fault at ffffffff8152aaf5
    [exception RIP: fput+9]
    RIP: ffffffff8118a509  RSP: ffff88012db55c20  RFLAGS: 00010246
    RAX: 00000000ffffffe0  RBX: ffff8800a8ea4fc0  RCX: 0000000000000000
    RDX: ffffffffa03c9eb0  RSI: 0000000000000000  RDI: 0000000000000000
    RBP: ffff88012db55c20   R8: 00000000ffffff0a   R9: 00000000fffffffc
    R10: 0000000000000001  R11: 282064656c696166  R12: ffffffffa03c9c60
    R13: ffff88005df240f8  R14: 0000000000000000  R15: ffff88013b4ca000
    ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018
 #9 [ffff88012db55c28] libcfs_kkuc_group_put at ffffffffa0388044 [libcfs]
[ptlrpc]

Change-Id: Ifaa861c0778e745f262cba5ab5f5661a3ad4fa9f
Signed-off-by: frank zago <fzago@cray.com>
Reviewed-on: http://review.whamcloud.com/11355
Reviewed-by: Patrick Farrell <paf@cray.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4976 doc: comments to osp_sync.c 50/11150/5
Alex Zhuravlev [Sat, 19 Jul 2014 19:46:09 +0000 (23:46 +0400)]
LU-4976 doc: comments to osp_sync.c

comments to the functions in osp/osp_sync.c

Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Change-Id: Ia261c8d4412f7cdfcb9938be132c53f5f5ba45cd
Reviewed-on: http://review.whamcloud.com/11150
Tested-by: Jenkins
Reviewed-by: Richard Henwood <richard.henwood@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>
5 years agoLU-3703 tests: skip test for getfattr 2.4.44-6 or less 67/10867/3
Andreas Dilger [Fri, 27 Jun 2014 06:15:27 +0000 (00:15 -0600)]
LU-3703 tests: skip test for getfattr 2.4.44-6 or less

Non-SLES distros may also have an older version of getfattr,
so sanity.sh test_234 should also be skipped on those systems.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I012554dd840715d336d3286cc46c56f53d500c1e
Reviewed-on: http://review.whamcloud.com/10867
Tested-by: Jenkins
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5666 llapi: LLAPI helpers for group lock. 53/12053/4
Henri Doreau [Thu, 25 Sep 2014 06:50:20 +0000 (08:50 +0200)]
LU-5666 llapi: LLAPI helpers for group lock.

Introduced llapi_group_{lock,unlock} functions to abstract the ioctl
implementation to manipulate group lock. Updated lfs accordingly.

Signed-off-by: Henri Doreau <henri.doreau@cea.fr>
Change-Id: I9c0c75029cd0d159e353a2c925cecc9b4ba9a6de
Reviewed-on: http://review.whamcloud.com/12053
Tested-by: Jenkins
Reviewed-by: frank zago <fzago@cray.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4821 osd: cleanups in osd-zfs 21/9721/16
Alex Zhuravlev [Wed, 19 Mar 2014 08:20:16 +0000 (12:20 +0400)]
LU-4821 osd: cleanups in osd-zfs

many small changes to get rid of udmu wrappers.

Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Change-Id: Ic8746345da1e6695149bacf066be10bf284aecdf
Reviewed-on: http://review.whamcloud.com/9721
Tested-by: Jenkins
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@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>
5 years agoLU-5003 llog: do not fix remote llogs 55/11955/3
Alexander Zarochentsev [Tue, 16 Sep 2014 15:41:46 +0000 (19:41 +0400)]
LU-5003 llog: do not fix remote llogs

prevent llog_process_thread() from trying to fix
remote llog by a direct write to the header.

Xyratex-bug-id: MRP-2076
Change-Id: I4f8b758a38ce3f51c24fa7397ad5c4b341e27ed0
Signed-off-by: Alexander Zarochentsev <alexander.zarochentsev@seagate.com>
Reviewed-on: http://review.whamcloud.com/11955
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: James Nunez <james.a.nunez@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5613 lustre: unused variable in tgt_brw_read() 88/11888/2
Isaac Huang [Fri, 12 Sep 2014 03:24:42 +0000 (21:24 -0600)]
LU-5613 lustre: unused variable in tgt_brw_read()

Local variable niocount in tgt_brw_read() is assigned a value
but never used again, and thus can be removed.

Signed-off-by: Isaac Huang <he.huang@intel.com>
Change-Id: Ide032596e6877a7bc6d3cbd6eaf3cfd7e582eb23
Reviewed-on: http://review.whamcloud.com/11888
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-4768 tests: Update ost-survey script 71/11971/4
James Nunez [Wed, 17 Sep 2014 20:40:14 +0000 (14:40 -0600)]
LU-4768 tests: Update ost-survey script

Currently, ost-survey hangs due to calling
'lfs setstripe' in an old (positional) style and
setting max_cached_mb to zero.

The call to 'lfs setstripe' is updated to use the
'-S', '-i' and '-c' flags. max_cached_mb is now
set to pagesize * 256 (in MB). The patch also gets
parameters for the correct file system if more
than one Lustre file system is mounted, and
corrects a few typos in comments.

In ll_max_cached_mb_seq_write(), the number of
pages requested is set to the max of pages requested
or PTLRPC_MAX_BRW_PAGES to allow the client to make
well formed RPCs.

Signed-off-by: James Nunez <james.a.nunez@intel.com>
Change-Id: Ib0adb0dc363a3b885d1566fda2ac3b9da013c238
Reviewed-on: http://review.whamcloud.com/11971
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: Cliff White <cliff.white@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoRevert "LU-5521 grant: quiet message on grant waiting timeout"
Oleg Drokin [Wed, 1 Oct 2014 01:12:48 +0000 (21:12 -0400)]
Revert "LU-5521 grant: quiet message on grant waiting timeout"

This is causing problems with LU-5656 and a lot of dmesg spam about
unterminated strings like
format at osc_cache.c:1524:osc_enter_cache doesn't end in newline

This reverts commit 150246e73c925d628ce9cbbd8184c0b0eefc9a16.

Conflicts:
lustre/osc/osc_cache.c

Change-Id: Ie6dee548a8984b5cb51effcfa9427ffcfbf31f74

5 years agoRevert "LU-5654 osd-ldiskfs: Handle holes in osd_ldiskfs_read()"
Oleg Drokin [Wed, 1 Oct 2014 01:09:05 +0000 (21:09 -0400)]
Revert "LU-5654 osd-ldiskfs: Handle holes in osd_ldiskfs_read()"

Adds problems dcocumented in LU-5684

This reverts commit b5485d307568af92e1a940fa4a7859e6db5b7a97.

5 years agoLU-5512 lfsck: repair dangling name entry 30/11330/29
Fan Yong [Wed, 6 Aug 2014 07:02:54 +0000 (15:02 +0800)]
LU-5512 lfsck: repair dangling name entry

If the MDT-object referenced by the name entry is lost, then the
namespace LFSCK needs to repair the inconsistency as required:

1) Keep the inconsistency there and report the inconsistency case,
   then give the chance to the application to find related issues,
   and the users can make the decision about how to handle it with
   more human knownledge. (by default)

2) Re-create the missed MDT-object with the FID (in the name entry)

The LFSCK will allow the administrator to specify how to handle the
dangling name entry via a new option "-C" when trigger the LFSCK:

[-Coff] or [--create_mdtobj=off]:
Report the inconsistency via log, but keep the dangling name entry
there without repairing. (by default)

-C[on] or --create_mdtobj[=on]:
Create the lost MDT-object.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I78231914023b8d02daf4f6cde6176c1ef655f862
Reviewed-on: http://review.whamcloud.com/11330
Tested-by: Jenkins
Reviewed-by: Andreas Dilger <andreas.dilger@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>
5 years agoLU-5511 lfsck: repair unmatched parent-child pairs 86/11486/22
Fan Yong [Mon, 4 Aug 2014 12:33:58 +0000 (20:33 +0800)]
LU-5511 lfsck: repair unmatched parent-child pairs

If the parent directry_A reference the child directory_B via the
name entry_C, but the child directory_B back references another
parent directory_D via its ".." name entry, then the namespace
LFSCK should can find out such inconsistency in the second-stage
scanning and repair it by trusting the name entry_B basically.

Usually, for local filesystem or Lustre backend system, such as
ldiskfs, the local filesystem consistency verification tools,
such as e2fsck can guarantee such consistency. So the namespace
LFSCK will mainly focus on the corss-MDTs parent-child pairs
consistency verification.

Lustre does not support hardlink on directory object. So if the
directory contains multiple linkEA entries or bad linkEA entry,
then the namespace LFSCK should can find out and repair related
inconsistency.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: If8cb02f76329fe04fe3a6c280e6926d014654322
Reviewed-on: http://review.whamcloud.com/11486
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>
5 years agoLU-4975 ofd: documenting ofd_io.c 56/11156/5
Mikhail Pershin [Mon, 21 Jul 2014 10:30:41 +0000 (14:30 +0400)]
LU-4975 ofd: documenting ofd_io.c

Fix up GPL header block to reference proper GPLv2 license URL.
Remove mention of contacting Sun, since they don't exist anymore.
Add introductory comment block for the ofd_io.c file and add
function comment blocks to all functions in it.

Signed-off-by: Mikhail Pershin <mike.pershin@intel.com>
Change-Id: Ic45e8a53f6df127c815f332ef2f5e219506727aa
Reviewed-on: http://review.whamcloud.com/11156
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>
5 years agoLU-4974 doc: comments to lod_qos.c 38/11138/5
Alex Zhuravlev [Fri, 18 Jul 2014 10:00:19 +0000 (14:00 +0400)]
LU-4974 doc: comments to lod_qos.c

The comments to the functions in doxygen style.

Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Change-Id: I2224170759b9bfb852b467c4950a6d0c73374d53
Reviewed-on: http://review.whamcloud.com/11138
Reviewed-by: Richard Henwood <richard.henwood@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
5 years agoNew tag 2.6.53 2.6.53 v2_6_53 v2_6_53_0
Oleg Drokin [Fri, 26 Sep 2014 23:20:03 +0000 (19:20 -0400)]
New tag 2.6.53

Change-Id: Ia13f23d3ffdafa88be9aab5642347ec370b470c8

5 years agoLU-5396 lnet/klnds: add sparse annotation __user wherever needed 24/11824/5
frank zago [Mon, 1 Sep 2014 15:39:14 +0000 (10:39 -0500)]
LU-5396 lnet/klnds: add sparse annotation __user wherever needed

This fixes sparse warnings such as:

  .../api-ni.c:1639:33: warning: incorrect type in argument 3
                             (different address spaces)
  .../api-ni.c:1639:33:    expected struct lnet_process_id_t
                             [noderef] [usertype] <asn:1>*ids
  .../api-ni.c:1639:33:    got struct lnet_process_id_t
                             [usertype] *<noident>

There is no code change.

Change-Id: I34620392863d622ea419e777f9e4110f26135853
Signed-off-by: frank zago <fzago@cray.com>
Reviewed-on: http://review.whamcloud.com/11824
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Jenkins
Reviewed-by: Dmitry Eremin <dmitry.eremin@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.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>
5 years agoLU-5396 obd: add sparse annotation __user wherever needed 21/11821/2
frank zago [Fri, 29 Aug 2014 23:49:15 +0000 (18:49 -0500)]
LU-5396 obd: add sparse annotation __user wherever needed

This fixes sparse warnings such as:

  .../api-ni.c:1639:33: warning: incorrect type in argument 3
                             (different address spaces)
  .../api-ni.c:1639:33:    expected struct lnet_process_id_t
                             [noderef] [usertype] <asn:1>*ids
  .../api-ni.c:1639:33:    got struct lnet_process_id_t
                             [usertype] *<noident>

There is no code change.

Change-Id: I9040163eedf5ee89be58d78aa7c8d374ed22b981
Signed-off-by: frank zago <fzago@cray.com>
Reviewed-on: http://review.whamcloud.com/11821
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
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: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5396 ioctl: add sparse annotation __user wherever needed 20/11820/2
frank zago [Fri, 29 Aug 2014 23:49:01 +0000 (18:49 -0500)]
LU-5396 ioctl: add sparse annotation __user wherever needed

This fixes sparse warnings such as:

  .../api-ni.c:1639:33: warning: incorrect type in argument 3
                             (different address spaces)
  .../api-ni.c:1639:33:    expected struct lnet_process_id_t
                             [noderef] [usertype] <asn:1>*ids
  .../api-ni.c:1639:33:    got struct lnet_process_id_t
                             [usertype] *<noident>

There is no code change.

Change-Id: I5dae6291e4d22353973088f440083b197010528b
Signed-off-by: frank zago <fzago@cray.com>
Reviewed-on: http://review.whamcloud.com/11820
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
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: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5396: ni: make local functions static 06/11306/4
Frank Zago [Thu, 31 Jul 2014 21:22:19 +0000 (16:22 -0500)]
LU-5396: ni: make local functions static

This reduces the code size by about 400 bytes.

Change-Id: I158c3b2c5c68f92938c29090faab1c0153d19e2e
Signed-off-by: frank zago <fzago@cray.com>
Reviewed-on: http://review.whamcloud.com/11306
Tested-by: Jenkins
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Patrick Farrell <paf@cray.com>
Reviewed-by: Amir Shehata <amir.shehata@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>
5 years agoLU-5647 kernel: kernel update RHEL7 [3.10.0-123.8.1.el7] 24/12024/2
Bob Glossman [Mon, 22 Sep 2014 22:43:31 +0000 (15:43 -0700)]
LU-5647 kernel: kernel update RHEL7 [3.10.0-123.8.1.el7]

Update RHEL7 kernel to 3.10.0-123.8.1.el7

Signed-off-by: Bob Glossman <bob.glossman@intel.com>
Change-Id: I0483fa61ff675158f6c367cb4845dd7480162bdf
Reviewed-on: http://review.whamcloud.com/12024
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-5547 mdt: handle NULL parent in mdt_getattr_name_lock() 10/11610/2
John L. Hammond [Tue, 26 Aug 2014 22:11:22 +0000 (17:11 -0500)]
LU-5547 mdt: handle NULL parent in mdt_getattr_name_lock()

In mdt_getattr_name_lock() if the parent object (from mti_object) is
NULL then return -ENOENT rather than asserting.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I081cb54068bba7825e2a5593f293f48cb2eda874
Reviewed-on: http://review.whamcloud.com/11610
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5654 osd-ldiskfs: Handle holes in osd_ldiskfs_read() 35/12035/3
Li Wei [Wed, 24 Sep 2014 04:12:37 +0000 (12:12 +0800)]
LU-5654 osd-ldiskfs: Handle holes in osd_ldiskfs_read()

Current osd_ldiskfs_read() incorrectly returns zero and leaves the
corresponding portion of the buffer untouched when a block to be read
is not allocated.

Change-Id: Idfd441656b99aa039a6bb4f7141b5407553855da
Signed-off-by: Li Wei <wei.g.li@intel.com>
Reviewed-on: http://review.whamcloud.com/12035
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Liang Zhen <liang.zhen@intel.com>
Reviewed-by: Johann Lombardi <johann.lombardi@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-4539 mdt: return errors from mdt_unpack_req_pack_rep() 50/11650/2
John L. Hammond [Fri, 29 Aug 2014 14:02:03 +0000 (09:02 -0500)]
LU-4539 mdt: return errors from mdt_unpack_req_pack_rep()

In mdt_intent_opc() if mdt_unpack_req_pack_rep() fails then return its
return value rather than -EPROTO. Also convert mdt_intent_opc()
to the usual error handling style.

Signed-off-by: John L. Hammond <john.hammond@intel.com>
Change-Id: I20189171a0d31b6264b680344a8290e604371fe4
Reviewed-on: http://review.whamcloud.com/11650
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5584 llite: call truncate_inode_page_final() in evict_inode 09/12009/3
Yang Sheng [Mon, 22 Sep 2014 18:12:11 +0000 (02:12 +0800)]
LU-5584 llite: call truncate_inode_page_final() in evict_inode

In evict_inode we should invoke truncate_inode_pages_final()
as inode will cleanup.

Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Change-Id: Ifba1014cf997475a248bf3d0898ae373bd3a7f9c
Reviewed-on: http://review.whamcloud.com/12009
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>
5 years agoLU-4856 misc: Reduce exposure to overflow on page counters. 37/10537/8
Stephen Champion [Tue, 26 Aug 2014 12:12:40 +0000 (05:12 -0700)]
LU-4856 misc: Reduce exposure to overflow on page counters.

When the number of an object in use or circulation is tied to memory
size of the system, very large memory systems can overflow 32 bit
counters.  This patch addresses overflow on page counters in the osc LRU
and obd accounting.

Signed-off-by: Stephen Champion <schamp@sgi.com>
Change-Id: I8deff55d7cc9774722f3dc38a2c7b15877e698f0
Reviewed-on: http://review.whamcloud.com/10537
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-3963 libcfs: remove proc handler wrappers 63/11963/3
James Simmons [Wed, 17 Sep 2014 21:50:16 +0000 (17:50 -0400)]
LU-3963 libcfs: remove proc handler wrappers

Libcfs has wrappers to handle other platforms proc
handling  which is no longer needed. This patch unwinds
those wrappers.

Change-Id: I529a5c3ac0fe6eed9e967782d9d24e40215d3840
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Reviewed-on: http://review.whamcloud.com/11963
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5633 ptlrpc: hold rq_lock when modify rq_flags 57/11957/2
Niu Yawei [Wed, 17 Sep 2014 08:00:01 +0000 (04:00 -0400)]
LU-5633 ptlrpc: hold rq_lock when modify rq_flags

In after_reply(), take the rq_lock for changing the rq_resend.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: Id2025f0d5c6e7b0991f9ced031433a4d69dd1a16
Reviewed-on: http://review.whamcloud.com/11957
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Johann Lombardi <johann.lombardi@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
5 years agoLU-5577 lmv: change type of lmv_obd->tgts_size to __u32 81/11881/2
Dmitry Eremin [Thu, 11 Sep 2014 19:39:44 +0000 (23:39 +0400)]
LU-5577 lmv: change type of lmv_obd->tgts_size to __u32

tgts_size is used as unsigned.

Signed-off-by: Dmitry Eremin <dmitry.eremin@intel.com>
Change-Id: Ia910f034605a787b45539952a9d1f0c0d04e8891
Reviewed-on: http://review.whamcloud.com/11881
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>