LU-2613 recovery: free open/close request promptly

- For the non-create open or committed open, the open request
  should be freed along with the close request as soon as the
  close done, despite that the transno of open/close is
  greater than the last committed transno known by client or not.

- Move the committed open request into another dedicated list,
  that will avoid scanning a huge replay list on receiving each
  reply (when there are many open files).

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Signed-off-by: Hongchao Zhang <hongchao.zhang@intel.com>
Change-Id: I1a25a35fe7a16681368d92d16964680b6209b3ee
Reviewed-on: http://review.whamcloud.com/6665
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
LU-4179 mdt: skip open lock enqueue during resent

Skip open lock enqueue, if the open lock has been
acquired(mdt_intent_fixup_resent) during resent.

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: I625ca438e28520416ee2af884d0a9f9e6f21cf2e
LU-2619 quota: add debug message in osd_acct_index_lookup()

Added debug messages in osd_acct_index_lookup().

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I6d7a1a55c0772255f8d4f4ec0f36cd69f73165ec
LU-4194 ldlm: Make OBD_[ALLOC|FREE]_LARGE use consistent

struct ldlm_lock's l_lvb_data field is freed in ldlm_lock_put()
using OBD_FREE.  However, some other code paths can attach
a buffer to l_lvb_data that was allocated using OBD_ALLOC_LARGE.
This can lead to a kfree() of a vmalloc()ed buffer, which can
trigger a kernel Oops.

Change-Id: Ic75a67530862eeb4d065c14bbbac80939bff5731
Signed-off-by: Christopher J. Morrone <morrone2@llnl.gov>
LU-4194 ldlm: set l_lvb_type coherent when layout is returned

In case layout has been packed into server reply when not
requested, lock l_lvb_type must be set accordingly.

Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: Iaf54c9ba27785e529f4f2fb967d2fad4fc1dfbcb
LU-4222 mdt: extra checking for getattr RPC.

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

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

Signed-off-by: wang di <di.wang@intel.com>
Change-Id: Ic12f281d574e7138ee0e1d5aae6161b7607837cc