LU-3467 mdt: call MDT handlers via unified request handler

Move MDT to the unified request handler. All MDT-specific handlers
are swtched to use tgt_session_info instead of mdt_thread_info.
To minimize amount of changes the mdt_thread_info is initialized
just from tgt_session_info in most cases for now.

Signed-off-by: Mikhail Pershin <mike.pershin@intel.com>
Change-Id: I72e342cc900dc3dd34ca709542ad67de5015dd1f
Reviewed-on: http://review.whamcloud.com/6973
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
LU-3626 tests: More time to allow mds-ost sync being finished

Because mds-ost unlink log synchronization is not enforced by any
timeout, so we will add more time to allow mds-ost sync being
finished in replay-single test_20b. And also add more information
in the tests to help us understand which MDT slow down the
synchronziation.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: I5f63540e602ad29cd221de6dac0c22546629a9cd
Reviewed-on: http://review.whamcloud.com/7676
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
LU-2887 tests: Reduce performance expectatiomn for zfs

Drop ZFS Performance expectation to below observed values.  This is a
temporary measure until ZFS performance issues are dealt with.

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: I86c025e15ba67e86269344faa2ea56be0966a873
Reviewed-on: http://review.whamcloud.com/7848
Tested-by: Hudson
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Niu Yawei <yawei.niu@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-4072 tests: Decrease load on MDT for ZFS in sanity/24v

Due to performance of ZFS, reduce the number of file creates until
LU-2887/LU-4072 are resolved.

Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Change-Id: I15bc5b69d8ff114bf3cd7fa874c238ecbe29f6f9
Reviewed-on: http://review.whamcloud.com/7870
Tested-by: Hudson
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-2800 autoconf: remove LIBCFS_FUNC_DUMP_TRACE test

dump_trace has been upstream since v2.6.23. The reliable argument was
added in v2.6.25. The other bits were added in v2.6.19.
We can remove the test and dead code.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I3b998f62ce4908adf377acd395725493dd717c3a
Reviewed-on: http://review.whamcloud.com/5403
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
LU-2800 autoconf: remove LN_5ARGS_SYSCTL_PROC_HANDLER test

ctl_table.proc_handler has taken 5 arguments since v2.6.32.

We remove the test and dead code. Also eliminate the ll_* prefixed
compatibility shims and empty macros. I've left the LL_PROC_PROTO
macro because it definitely simplifies the appearance of the handler
definitions.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I8c5fc509e1c8bc52705090f5eedf8fb10d549cf5
Reviewed-on: http://review.whamcloud.com/5411
Tested-by: Hudson
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-1199 rpm: remove SLES10 support

SLES10 is out of scope for Lustre 2.4 so we can drop
the spec file hacks.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: I94ea2164a4b339ab26825058678b54859d2617a8
Reviewed-on: http://review.whamcloud.com/5490
Tested-by: Hudson
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-2158 lvfs: remove the fsfilt and lvfs layer

The fsfilt/lvfs layer has been obsoleted by the osd
layer. This patch moves the remaining fsfilt code
related to ldiskfs to osd-ldiskfs where it belongs.
The remaining bits of the lvfs code it moved to the
ptlrpc layer where it is used. The last of the procfs
code is integrated into the obdclass layer as well.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Signed-off-by: Mikhail Pershin <mike.pershin@intel.com>
Change-Id: Ie72103639fbcbbcedd0f810ac68044b38a0f0b65
Reviewed-on: http://review.whamcloud.com/5512
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.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>
LU-1538 tests: clean up runtests code style

Use $(...) instead of `...` for sub-shells.
Improve some error messages and code style.
Use $DIR/$tdir for tests instead of $MOUNT/$$.

Test-Parameters: envdefinitions=SLOW=yes  testlist=runtests
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I4f3eb4a3e288c6fc45ae6ef1fb2008e8e6babe84
Reviewed-on: http://review.whamcloud.com/5739
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.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>
LU-3963 lnet: convert cfs_atomic primitives

This patch convers all cfs_atomic primitives in lnet/
directory.

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: I81426bd7a8a1a97ea5f198d99193649fbbf5389a
Reviewed-on: http://review.whamcloud.com/7070
Tested-by: Hudson
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-3815 tests: HSM sanity test suites

Reevaluate the exception list.
Enable all sanity-hsm tests except #34, #35, #36 and #40.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I66dbf6f5119fc75b379752a33a8d5e44562ff985
Reviewed-on: http://review.whamcloud.com/7374
Tested-by: Hudson
Reviewed-by: Aurelien Degremont <aurelien.degremont@cea.fr>
Reviewed-by: jacques-Charles Lafoucriere <jacques-charles.lafoucriere@cea.fr>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-3790 tests: test_pios_ssf failed with 24

Wrong param to get free space in space_check () function

Signed-off-by: Konstantin Sandalov <konstantin_sandalov@xyratex.com>
Change-Id: I34abf6d63f081a515aaf95248bf5c4fc0896e024
Reviewed-on: http://review.whamcloud.com/7397
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Jian Yu <jian.yu@intel.com>
Reviewed-by: Emoly Liu <emoly.liu@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-3624 iokit: fix mds-survey for multiple MDT

The mds-survey script has several issues when called with multiple
MDT targets. This patch fixes the issues.

- make echo_client devices attached to different MDTs work in
  different directories
- correctly compute global statistics from each MDT stats
- fix mds-survey output so that number of field displayed is
  constant. This allows parsing the output for future plotting.
- fix lctl test_xxx commands to correctly handle specified
  parent directory

Signed-off-by: Gregoire Pichon <gregoire.pichon@bull.net>
Change-Id: I3ef0b82b59124f2246db535b074be94c7235936a
Reviewed-on: http://review.whamcloud.com/7558
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Tested-by: Hudson
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-3692 api: More flexible logging API.

Allow applications to register their own logging callback instead of
writing every log message to stderr/stdout. Registered callbacks are
global to the process, just like the log level.

Signed-off-by: Henri Doreau <henri.doreau@cea.fr>
Change-Id: I5ccfd1e24f1786408ce67b2cd87d53443bcd028a
Reviewed-on: http://review.whamcloud.com/7572
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-3806 obdclass: add LCT_SERVER_SESSION for server session

Add LCT_SERVER_SESSION for server session, and separate the
server session flag from LCT_SESSION, so to avoid allocating
session info for client stack for each server request, if
client and server are on the same node.

Signed-off-by: Wang Di <di.wang@intel.com>
Change-Id: I808c3f58cd7a03ebc166e51fe1e32ea34ae0e3e8
Reviewed-on: http://review.whamcloud.com/7412
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-3936 ldlm: ldlm_cancel_stale_locks()) ASSERTION( count > 0 ) failed

number of granted locks can be really huge.
Use 64bit math to calculate amount of locks to cancel

Change-Id: Iac0b52dd578baf9955b50597d0832ac8715895f1
Xyratex-bug-id: MRP-1296
Signed-off-by: Andriy Skulysh <Andriy_Skulysh@xyratex.com>
Reviewed-by: Alexey Lyashkov <Alexey_Lyashkov@xyratex.com>
Reviewed-by: Alexander Boyko <Alexander_Boyko@xyratex.com>
Reviewed-by: Vitaly Fertman <Vitaly_Fertman@xyratex.com>
Reviewed-on: http://review.whamcloud.com/7626
Tested-by: Hudson
Reviewed-by: Alexander Boyko <alexander_boyko@xyratex.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-3616 mdt: deny write on executed file during restore

After commit c42b426c87c3d3b1dc9eda612cc831293dc80d68, from Gerrit
patch/Change-Id Ic8f82ddc9a56206307c2e5be2523fb7ce42b8638
(at http://review.whamcloud.com/3035) for LU-1338 (now HSM-5), it
is allowed to write in a file being executed during it is restored.
This patch revert to expected behavior (ETXTBSY).
Also added test_30c in sanity-hsm to verify this behavior.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: Id1e2f624dd02c2bec18ffe6cb1ae9198c1cfd23a
Reviewed-on: http://review.whamcloud.com/7636
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: jacques-Charles Lafoucriere <jacques-charles.lafoucriere@cea.fr>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-3055 libcfs: remove page_collection::pc_lock

page_collection::pc_lock is supposed to protect race between
functions called by smp_call_function(), however we don't have
this use-case for ages and page_collection only lives in stack
of thread, so it is safe to remove it.

Signed-off-by: Liang Zhen <liang.zhen@intel.com>
Change-Id: I89ca46e6593838d85fc0b91d1ff7c35cc28cf4ce
Reviewed-on: http://review.whamcloud.com/7660
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Bobi Jam <bobijam@gmail.com>
Reviewed-by: Sebastien Buisson <sebastien.buisson@bull.net>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-2800 autoconf: remove LIBCFS_CPUMASK_SIZE

The function cpumask_size has been in the linux kernel
since 2.6.28. Also HAVE_CPUMASK_SIZE is not even used
anywhere in the source tree. We can remove this obsolete
test.

Signed-off-by: James Simmons <uja.ornl@gmail.com>
Change-Id: Ie6090055105dcaa55fc031bf52e5a25cd7bcf321
Reviewed-on: http://review.whamcloud.com/7693
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Minh Diep <minh.diep@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-3996 mgs: Don't close llog that we failed to open

Attempting to do so leads to a crash:
LustreError: 8136:0:(llog_osd.c:241:llog_osd_read_header()) MGS-osd: error reading log header from [0xa:0xa:0x0]: rc = -14
LustreError: 8136:0:(mgs_llog.c:1386:record_start_log()) MGS: can't start log lustre-params: rc = -14
BUG: unable to handle kernel NULL pointer dereference at 00000000000000b8
IP: [<ffffffffa07f9e99>] llog_handle_put+0x9/0x70 [obdclass]
PGD 8120c8067 PUD 7b8c65067 PMD 0
Oops: 0000 [#1] SMP
...
Call Trace:
 [<ffffffffa07f9f5d>] llog_close+0x5d/0x190 [obdclass]
 [<ffffffffa0e98e8d>] mgs_write_log_direct_all+0x28d/0x7a0 [mgs]
 [<ffffffffa06c8951>] ? libcfs_debug_msg+0x41/0x50 [libcfs]
 [<ffffffffa0e99d3d>] mgs_write_log_param+0x99d/0x2980 [mgs]
 [<ffffffff81167610>] ? cache_alloc_refill+0x1c0/0x240
 [<ffffffffa0ea00b0>] mgs_setparam+0xde0/0x11a0 [mgs]
 [<ffffffffa0e8c7e2>] mgs_iocontrol+0x10c2/0x16e0 [mgs]
 [<ffffffffa07f70a7>] ? obd_ioctl_getdata+0x477/0x1120 [obdclass]
 [<ffffffffa080e344>] class_handle_ioctl+0x12e4/0x1e70 [obdclass]
 [<ffffffffa06c8951>] ? libcfs_debug_msg+0x41/0x50 [libcfs]
 [<ffffffffa07f62ab>] obd_class_ioctl+0x4b/0x190 [obdclass]
 [<ffffffff81195352>] vfs_ioctl+0x22/0xa0
 [<ffffffff811954f4>] do_vfs_ioctl+0x84/0x580
 [<ffffffff81195a71>] sys_ioctl+0x81/0xa0
 [<ffffffff8100b072>] system_call_fastpath+0x16/0x1b

Change-Id: I2bd72c130a0530cc9d218556b5b6cc9c14efc2ea
Signed-off-by: Oleg Drokin <oleg.drokin@intel.com>
Reviewed-on: http://review.whamcloud.com/7742
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>