LU-1581 mount: kernel do not parse ldd

all ldd parsing is done by mount.lustre utility now.

Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Ice15cf4fa8e411144713d0276d006f8cfe9c56f1
Reviewed-on: http://review.whamcloud.com/3613
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
LU-1425 build: make Lustre build ready for gcov

gcov requires profiled code to be built with compiler options
-fprofile-arcs -ftest-coverage. To profile all project this
options should be passed during every source file compilation.
This option enable debug logging. No all Lustre parts are ready
for debug logging now.

To patch adds debug librarias where needed and resolve
linking conflicts. Do not influence when no
-fprofile-arcs -ftest-coverage compile options are
passed.

Xyratex-bug-id: MRP-526
Reviewed-by: Alexey Lyashkov <alexey_lyashkov@xyratex.com>
Reviewed-by: Alexander Boyko <alexander_boyko@xyratex.com>
Signed-off-by: Artem Blagodarenko <artem_blagodarenko@xyratex.com>
Change-Id: If5c1742f3263faf48c2c5d8457c1af36a29408d4
Reviewed-on: http://review.whamcloud.com/2844
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Brian J. Murrell <brian@whamcloud.com>
LU-1304 mdt: cache statfs in mdt_device

... and save few cycles

Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Ib3727c7419cfdfa393a2c1c72770ef960b1d05e6
Reviewed-on: http://review.whamcloud.com/3780
Tested-by: Hudson
Reviewed-by: Jinshan Xiong <jinshan.xiong@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
LU-1304 mdt: use slab for mdt_objects

should save a bit of memory and cpu

Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I13601aba3c2cdb5e7c0f4c3a45ff5fb6e428b38f
Reviewed-on: http://review.whamcloud.com/3781
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@whamcloud.com>
LU-1735 ptlrpc: cleanup jobid code

Some cleanups for the jobid code:
- if obd_jobid_var is too large, only print an error message once
- in linux cfs_get_environ():
-- cache strlen(key) since it doesn't change and is used often
-- remove unnecessary typecasts of void pointers
-- use "rc" instead of "ret"
-- balance ENTRY and RETURN/GOTO calls
- add cfs_get_environ() for liblustre and remove inline #ifdef
- use strcmp() to compare strings that are known NUL-terminated
- use strlcpy() to ensure NUL-terminated strings in target buffer
-- add strlcpy() wrapper for liblustre, it isn't in Glibc on RHEL5

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I22c3d5c1755c1d6aab666a769df38218b954cab0
Reviewed-on: http://review.whamcloud.com/3713
Tested-by: Hudson
Reviewed-by: Niu Yawei <niu@whamcloud.com>
Reviewed-by: Jinshan Xiong <jinshan.xiong@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
LU-1779 tests: fix run_one_logged() to log SKIP status

In the current test framework, only those tests which are in the
$ALWAYS_EXCEPT list are logged with SKIP status, other skipped
tests are all logged with PASS status.

This patch fixes the above issue by setting the SKIP status in
pass() and logging the status in run_one_logged().

Signed-off-by: Yu Jian <yujian@whamcloud.com>
Change-Id: Ia4e8f51040034abdec9c67aaf0a128b63baaa688
Reviewed-on: http://review.whamcloud.com/3810
Tested-by: Hudson
Reviewed-by: Minh Diep <mdiep@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
LU-1678 mdd: don't create LOV EA by going thru .lustre path

When a file is created with O_LOV_DELAY_CREAT, we should not create
its LOV EA data by going through .lustre path.

Add a test to sanity.sh open by fid test suite (test_154).

Signed-off-by: jc lafoucriere <jacques-charles.lafoucriere@cea.fr>
Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: Ib223da44d16bf3a541269d5cfb60826e43345493
Reviewed-on: http://review.whamcloud.com/3483
Tested-by: Hudson
Reviewed-by: Lai Siyao <laisiyao@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
LU-1755 osc: solve a race between fsync and truncate

If an OSC extent is being truncated when fsync is called, it will
have oe_fsync_wait set but no oe_urgent or oe_hp set. This causes
problem because when the extent changes OES_CACHE later, it won't
be written out immediately because urgent bit is not set.

This problem can be fixed by checking oe_fsync_wait bit and set urgent
bit correspondingly when changing osc extent's state from OES_TRUNC to
OES_CACHE at the end of truncate.

Signed-off-by: Jinshan Xiong <jinshan.xiong@intel.com>
Change-Id: I755baac066375a92730b14de1c470c66baad5320
Reviewed-on: http://review.whamcloud.com/3699
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Niu Yawei <niu@whamcloud.com>
Reviewed-by: Johann Lombardi <johann@whamcloud.com>
LU-1804 tests: skip OI scrub speed test under UP env

The OI scrub speed depends on CPU/RAM schedule. There may be more
schedule delay under UP environment. So skip related test cases.

Signed-off-by: Fan Yong <yong.fan@whamcloud.com>
Change-Id: Iebc514857c6d88601598a7da58a340296655dcf1
Reviewed-on: http://review.whamcloud.com/3846
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Yu Jian <yujian@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
LU-1816 scrub: OI scrub skips new created objects for once

For accelerating OI scrub, it will skip the objects which are new
created after the latest MDT mount and marked as I_LUSTRE_NOSCRUB.
But if the object with I_LUSTRE_NOSCRUB is used/cached in RAM for
very long time, then OI scrub has no chance to process it even if
there has been inconsistency happened until the MDT remount.

So as compromise, the OI scrub will skip the new created objects
for once only when the first accessing.

Signed-off-by: Fan Yong <yong.fan@whamcloud.com>
Change-Id: I560d7d851e3430326d24ec74154bb2a99f80b737
Reviewed-on: http://review.whamcloud.com/3848
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Mike Pershin <tappro@whamcloud.com>
LU-1203 mdt: map old params to new ones by using an array

This patch improves mdt_process_config() to use an array for
mapping old params to new ones.

The patch also adds a common function class_find_old_param()
to check whether a proc param is an old one or not, and return
new one if it's an old one.

Signed-off-by: Yu Jian <yujian@whamcloud.com>
Change-Id: I122e4e83a3f4e84a3fdbd3fe6a69b7c1b5e08d3f
Reviewed-on: http://review.whamcloud.com/3836
Tested-by: Hudson
Reviewed-by: Niu Yawei <niu@whamcloud.com>
Reviewed-by: Liang Zhen <liang@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
LU-812 llite: O_LOV_DELAY_CREATE conflicts with FMODE_NONOTIFY

Kernel 2.6.36 introduces FMODE_NONOTIFY and defines it as 0x1000000
(commit 12ed2e36c98aec6c41559222e311f4aa15d254b6), this causes the
confliction with O_LOV_DELAY_CREATE which is now defined as octal
0100000000.
This confliction causes kernel remove this flag in build_open_flags,
then "lfs setstripe" a new file will fail with -EEXIST(stripe
already set).

This patch changes O_LOV_DELAY_CREATE to 0120000000(0x1400000)
to make it works for new kernel and compatible with old version
statically linked binary.

Another change is starting to build dynamic linked version of
liblustreapi.so.

Signed-off-by: Liu Xuezhao <xuezhao.liu@emc.com>
Change-Id: I643d3734cfdc2f45099fc6be663a370c2dcc8ea3
Reviewed-on: http://review.whamcloud.com/3779
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Iurii Golovach <Iurii_Golovach@xyratex.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
LU-812 utils: remove obsolete jt_dbg_modules_2_4 code

jt_dbg_modules_2_4 is for 2.4 kernel and it breaks "lctl modules"
for 3.x kernel.

Signed-off-by: Liu Xuezhao <xuezhao.liu@emc.com>
Change-Id: If2953c71707ae200a4095786150b1dee05547fff
Reviewed-on: http://review.whamcloud.com/3778
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>