LU-1305 osd: new index flag DT_IND_RANGE

introduced in orion to recognize whether the index support
range lookups (used by fldb)

Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I40efa613697ebe8394557d5f687132ca9f542859
Reviewed-on: http://review.whamcloud.com/2883
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
LU-1305 osd: lnb_file_offset in struct niobuf_local

introduced in orion so that every buffer can be marked
with a specific offset.

Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Ic8c69fd401300107d589a093023ffe41c0f0eddd
Reviewed-on: http://review.whamcloud.com/2884
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
LU-1406 ofd: add DLM and LVB code

OFD dlm and lvb functions

Signed-off-by: Mikhail Pershin <tappro@whamcloud.com>
Change-Id: Ieddd2b16129f62c6e380d007aaa1f2de70e8a9ca
Reviewed-on: http://review.whamcloud.com/2892
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
LU-1406 ofd: IO operations

add IO functions to OFD

Signed-off-by: Mikhail Pershin <tappro@whamcloud.com>
Change-Id: Ie78e92f5f770ff07c94bf87b2d5ee8300673d271
Reviewed-on: http://review.whamcloud.com/2893
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
LU-1406 ofd: add OBD methods to handle OST requests

Finally add OBD handlers to process incoming requests.
Add stub for quota functions, quota is non-functional in OFD.
Fix couple minor issues:
- slot checking in ofd_last_rcvd_update() must check lr_idx
- remove osd_write_locked() assertion from __osd_xattr_set(),
  it is too excessive there

Signed-off-by: Mikhail Pershin <tappro@whamcloud.com>
Change-Id: Iab270cdf5f2ad41df86845190c5c6db3436279c8
Reviewed-on: http://review.whamcloud.com/2894
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
LU-1305 defs: zfs definitions

couple definitions required for osd-zfs

Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: I994ab7353edef7f4ccc39707534e7c262e635af3
Reviewed-on: http://review.whamcloud.com/2962
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
LU-1305 osd: quota support for osd-zfs

export of accouting information and enforcement

Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Iac5100960a5107277ccd628ba3a682cb9b03c0ed
Reviewed-on: http://review.whamcloud.com/2970
Reviewed-by: Johann Lombardi <johann@whamcloud.com>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
LU-1014 mountconf: Revert "MGS should process parameter config"

This reverts commit 6cde8692384a1d3a6d0e8114629fa943c951fe40.

Previous commit is wrong, will fix it in another patch.

Signed-off-by: Lai Siyao <laisiyao@whamcloud.com>
Change-Id: I5868cb1908f9b123db5b8bd7be9e364ae9a51d6a
Reviewed-on: http://review.whamcloud.com/2843
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>
LU-1030 osc: new IO engine implementation

New IO engine to manage dirty pages with osc_extent.

Osc_extent is a data structure to manage a series of contiguous
blocks; however, the pages in an extent is not required to be
contiguous. An extent must be written out in one RPC.

The purpose of introducing extents are:
1. make grants work for extent-based OSD;
2. form better IO by picking up contiguous pages to compose RPC;
3. reimplement ll_writepages() with CIT_FSYNC.

Signed-off-by: Jinshan Xiong <jinshan.xiong@whamcloud.com>
Change-Id: I3ef619c1f07eefd201236ab55e5fd858791d41e0
Reviewed-on: http://review.whamcloud.com/2270
Reviewed-by: Johann Lombardi <johann@whamcloud.com>
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
LU-1305 libcfs: S_OSD subsystem

new definition for osd components

Signed-off-by: Alex Zhuravlev <bzzz@whamcloud.com>
Change-Id: Ia224dbd09caecb5cc31488627bb6a958b680377a
Reviewed-on: http://review.whamcloud.com/3088
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
LU-988 ost: add debugging for inode timestamps

Intermittent test failures for sanity.sh test_39j are showing the
inode timestamps going backward. Add internal debugging to track the
LVB timestamps to see where the old timestamps are coming from, to
determine if this is a problem with the VM environment being used for
testing, or if it is a genuine problem in the Lustre code.

Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: I590d8b28b7a37010af6a43d329917022b840d074
Reviewed-on: http://review.whamcloud.com/3069
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Lai Siyao <laisiyao@whamcloud.com>
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
LU-1518 mdd: Fixup mdd_{obf,dot_lustre}_obj_ops.

Define several missing md_object ops for .lustre/fid.  Unify
attribute handling for .lustre with that of normal md_objects.

Change-Id: I892904af4ef01b3687e60a41250b018d67c86734
Signed-off-by: John L. Hammond <jhammond@tacc.utexas.edu>
Reviewed-on: http://review.whamcloud.com/3103
Tested-by: Hudson
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: wangdi <di.wang@whamcloud.com>
Reviewed-by: Lai Siyao <laisiyao@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
LU-1371 ldiskfs: fix osd_it_iam_rec() to support binary keys

osd_it_iam_rec() assumes a string key and does not support binary key.

Signed-off-by: Johann Lombardi <johann@whamcloud.com>
Change-Id: I1a09c9b9ad53e593cad642b6ae8a7d417ea83c9d
Reviewed-on: http://review.whamcloud.com/2647
Tested-by: Hudson
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Liang Zhen <liang@whamcloud.com>
Reviewed-by: wangdi <di.wang@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
LU-1518 mdd: Revert "Fixup mdd_{obf,dot_lustre}_obj_ops."

This reverts commit cf0d73004a20923c690591c1f3f61a8c872ad86e

Reverting this patch due to build failure (moo_version_get not defined).

Change-Id: I7cac5c6d6de2924d46c3a74ed4aa138f50501a16
Reviewed-on: http://review.whamcloud.com/3137
Reviewed-by: Johann Lombardi <johann@whamcloud.com>
Tested-by: Johann Lombardi <johann@whamcloud.com>
LU-1428 ldlm: fix a race in ldlm_lock_destroy_internal

ldlm_lock::l_exp_hash should be protected by internal lock of
cfs_hash, but we called cfs_hlist_unhashed(lock::l_exp_hash)
w/o holding cfs_hash lock in ldlm_lock_destroy_internal,
which means if someone called ldlm_lock_cancel on a lock while
export::exp_lock_hash is in progress of rehashing (thread context of
cfs_workitem), there could be tiny window between deleting this lock
from bucket[A] and re-adding it to bucket[B] of l_exp_hash, and
cfs_hlist_unhashed(lock::l_exp_hash) will return 1 in this window,
then we destroyed a lock but left it on l_exp_hash forever because
lock::l_destroyed has been set to 1 and ldlm_lock_destroy_internal()
wouldn't be able to remove the lock from l_exp_hash even it's called
infinite times in ldlm_cancel_locks_for_export_cb().

This patch also added some debug information to
ldlm_cancel_locks_for_export_cb in case this patch can't fix this
problem.

Signed-off-by: Liang Zhen <liang@whamcloud.com>
Change-Id: Ia0932658b3f085a55535e36bee4fb833e74fa242
Reviewed-on: http://review.whamcloud.com/3028
Tested-by: Hudson
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Lai Siyao <laisiyao@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
2.2.57 tag

Change-Id: I75ef5cf27c4cd7c0c4dd4b1885f4838b5da39002