From: Olaf Weber
On NUMA systems, the placement of worker threads relative to the
memory they use greatly affects performance. The CPT mechanism can be
used to constrain a number of Lustre thread types, and this change
makes it possible to configure the placement of ptlrpcd threads in a
similar m
From: James Simmons
Remove the cfs_timer_done function in the libcfs
kernel module since it is not used anywhere.
Signed-off-by: James Simmons
Signed-off-by: frank zago
Reviewed-on: http://review.whamcloud.com/13917
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6245
Reviewed-by: John L.
From: Li Xi
The per-osc request pools consume a lot of memory if there are
hundreds of OSCs on one client. This will be a critical problem
if the client doesn't have sufficient memory for both OSCs and
applications.
This patch replaces per-osc request pools with a global pool
osc_rq_pool. The to
From: Andrew Perepechko
ll_iget_for_nfs() can call unbalanced iput() causing memory
leaks. This patch removes this iput() call.
Also, avoid unhashing disconnected dentries in
d_lustre_invalidate(), which is another source of memory
leaks.
One of the symptoms of the leak is the following crash p
From: Liang Zhen
kiblnd_post_rx() can't refer to rx::rx_conn anymore after
ib_post_recv() because this rx can be polled out by another thread
which may drop this rx and destroy rx::rx_conn.
This patch fixes this issue by taking an extra refcount on connection
before calling ib_post_recv().
Sign
From: Ben Evans
Remove unused MAY_ constants from lustre_idl.h
Signed-off-by: Ben Evans
Reviewed-on: http://review.whamcloud.com/15398
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6450
Reviewed-by: John L. Hammond
Reviewed-by: Dmitry Eremin
Reviewed-by: James Simmons
Signed-off-by: Ol
From: Liang Zhen
ksocknal_push() should break the loop if it can't find matching peer
Signed-off-by: Liang Zhen
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-4423
Reviewed-on: http://review.whamcloud.com/10128
Reviewed-by: James Simmons
Reviewed-by: Doug Oucharek
Reviewed-by: Isaac Huan
From: Niu Yawei
To avoid potential security problems, non-privileged users should
have no permission to run 'lfs changelog' & 'lfs changelog_clear'.
Signed-off-by: Niu Yawei
Reviewed-on: http://review.whamcloud.com/14280
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6415
Reviewed-by: Lai
From: Isaac Huang
The kib_tx_t::tx_nfrags field is the # entries in
the kib_tx_t::tx_frags array, rather than # DMA
mapped entries. So kiblnd_send/kiblnd_recv should
use kib_rdma_desc_t::rd_nfrags instead.
Signed-off-by: Isaac Huang
Reviewed-on: http://review.whamcloud.com/12857
Intel-bug-id: h
From: Frank Zago
Due to some accounting bug, lsb_busy of a hash bucket can become
larger than the total number of objects in said bucket. A busy object
can be counted more than once. When that happens, a negative value is
returned by the shrinker callback.
Instead of trying (and failing) to coun
From: Oleg Drokin
In lmv_disconnect_mdc do procfs removal only if we actually know the name.
Reviewed-on: http://review.whamcloud.com/14605
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-6517
Reviewed-by: James Simmons
Reviewed-by: John L. Hammond
Reviewed-by: Dmitry Eremin
Signed-off-by
From: Oleg Drokin
This batch of changes is for various accumulated fixes since the
last time I had a chance to look at it.
The only "exception" is the last patch in the series - the
CPT-aware ptlrpcd patch. This one is included because
there was a strange code in that area otherwise that was fla
From: Fan Yong
For open case, the client side open handling thread may hit error
after the MDT grant the open. Under such case, the client should
send close RPC to the MDT as cleanup; otherwise, the open handle
on the MDT will be leaked there until the client umount or evicted.
If the LFSCK mark
From: Andreas Dilger
Remove the remains of LUSTRE_MSG_MAGIC_V1 support from ptlrpc.
It has not been supported since 1.8 and is not functional since 2.0.
In lustre_msg_check_version(), return an error for unsupported RPC
versions so that the server will reject such RPCs early. Otherwise
the serv
From: Bruno Faccini
Prior to this patch undefined flags bits and out of range
archive id can be set.
Signed-off-by: Bruno Faccini
Reviewed-on: http://review.whamcloud.com/13337
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5757
Reviewed-by: frank zago
Reviewed-by: Henri Doreau
Signed-of
From: Oleg Drokin
These macros are not used anymore, so let's remove them,
also __OBD_VMALLOC_VEROBSE and OBD_CPT_VMALLOC
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/include/obd_support.h| 29 --
1 file changed, 29 deletions(-)
diff --git a/drivers/staging
From: Oleg Drokin
Since everything is now supposed to use regular kernel alloc and
free functions.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_lib.h | 2 +-
drivers/staging/lustre/lustre/include/lustre_net.h | 2 +-
drivers/staging/lustre/lustre/llite/file.c
From: Oleg Drokin
Remove OBD_CPT_ALLOC_LARGE define and convert the only user to
libcfs_kvzalloc_cpt.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/obd_support.h | 5 -
drivers/staging/lustre/lustre/ptlrpc/service.c | 6 --
2 files changed, 4 insertions(+),
From: Oleg Drokin
Now that we no longer track allocated memory, remove
obd_memory statistics counter and all references to it everywhere
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/obd_support.h| 7 ---
drivers/staging/lustre/lustre/obdclass/class_obd.c |
From: Oleg Drokin
Lustre memory allocation framework has a feature to track amount
of allocated memory, but since it's not being used consistently anymore
and is on the way out in general, just remove it.
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/include/obd_support.h| 60 +-
From: Oleg Drokin
These could only happen on the server, so they make no sense
on the client.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_disk.h | 3 ---
drivers/staging/lustre/lustre/mgc/mgc_request.c | 7 ---
drivers/staging/lustre/lustre/obdclass/obd_
From: Oleg Drokin
Since the client can never be server, this is all dead code.
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/include/lustre_disk.h| 2 -
drivers/staging/lustre/lustre/mgc/mgc_request.c| 37 ++
drivers/staging/lustre/lustre/obdclass/obd_mount.c | 85 +
From: Oleg Drokin
Take initial stab at removing server-disk related defines that
client does not need.
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/include/lustre_disk.h| 137 -
.../staging/lustre/lustre/obdclass/llog_internal.h | 8 --
2 files changed, 14
From: Oleg Drokin
OBD_ALLOC_LARGE is now replaced with libcfs_kvzalloc and
OBD_FREE_LARGE is now replaced with kvfree.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_lib.h | 2 +-
drivers/staging/lustre/lustre/include/obd.h| 8
2 files changed, 5 i
From: Oleg Drokin
The UTILS are userland and I see it's causing confusion
with things being already converted to kmalloc,
so just remove it.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/obd_support.h | 18 --
1 file changed, 18 deletions(-)
diff --git a
From: Oleg Drokin
This removes now unused OBD_ALLOC, OBD_ALLOC_GFP, OBD_ALLOC_PTR,
OBD_ALLOC_LARGE and supporting infrastructure.
Also OBD_FREE, OBD_FREE_PTR, OBD_FREE_LARGE and supporting infrastructure.
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/include/obd_support.h| 52 --
From: Oleg Drokin
Lustre memory allocation wrappers also included a fault injection
framework that's totally redundant, since in-kernel offering is
actually superior to what we had.
So let's remove it.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/obd_support.h | 20 +---
From: Oleg Drokin
Part of effort of getting rid of custom Lustre allocation macros
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_cfg.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/lustre_cfg.h
b/d
From: Oleg Drokin
Part of effort to get rid of custom Lustre allocation macros.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/fld/fld_cache.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/lustre/lustre/fld/fld_cache.c
b/drivers/staging/lust
From: Oleg Drokin
Part of effort of getting rid of custom Lustre alloc/free macros
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/ptlrpc/ptlrpc_internal.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/lustre/lustre/ptlrpc/ptlrpc_internal.h
b
From: Oleg Drokin
Part of getting rid of custom Lustre allocation macros.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/obdclass/cl_page.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/staging/lustre/lustre/obdclass/cl_page.c
b/drivers/staging/lu
From: Oleg Drokin
The remaining users in ll_open_cleanup and obd_mod_alloc
are converted to regular kzalloc/kfree.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/obd.h | 4 ++--
drivers/staging/lustre/lustre/llite/llite_lib.c | 2 +-
2 files changed, 3 insertions(+),
From: Oleg Drokin
These are converted to regular kzalloc/kfree calls.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lu_object.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/lu_object.h
b/drivers/staging/lu
From: Oleg Drokin
OBD_CPT_ALLOC and friends are no longer used, so remove them.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/obd_support.h | 9 -
1 file changed, 9 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/obd_support.h
b/drivers/staging/
From: Oleg Drokin
This bunch of patches removes significant chunks of
Lustre specific allocators which is possible thanks to prior patches
from Julia Lawall.
Also removed are some server-only bits of code that make no sense
to retain in a client.
Please consider.
Oleg Drokin (19):
staging/lus
From: Oleg Drokin
Part of effort of getting rid of custom Lustre allocation macros
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_cfg.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/lustre_cfg.h
b/d
From: Oleg Drokin
The remaining users in ll_open_cleanup and obd_mod_alloc
are converted to regular kzalloc/kfree.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/obd.h | 4 ++--
drivers/staging/lustre/lustre/llite/llite_lib.c | 2 +-
2 files changed, 3 insertions(+),
From: Oleg Drokin
These could only happen on the server, so they make no sense
on the client.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_disk.h | 3 ---
drivers/staging/lustre/lustre/mgc/mgc_request.c | 8
drivers/staging/lustre/lustre/obdclass/obd
From: Oleg Drokin
The UTILS are userland and I see it's causing confusion
with things beging already converted to kmalloc,
so just remove it.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/obd_support.h | 18 --
1 file changed, 18 deletions(-)
diff --git
From: Oleg Drokin
Since the client can never be server, this is all dead code.
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/include/lustre_disk.h| 2 -
drivers/staging/lustre/lustre/mgc/mgc_request.c| 36 ++---
drivers/staging/lustre/lustre/obdclass/obd_mount.c | 85 ++
From: Oleg Drokin
Lustre memory allocation wrappers also included a fault injection
framework that's totally redundant, since in-kernel offering is
actually superior to what we had.
So let's remove it.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/obd_support.h | 20 +---
From: Oleg Drokin
Part of getting rid of custom Lustre allocation macros.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/obdclass/cl_page.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/staging/lustre/lustre/obdclass/cl_page.c
b/drivers/staging/lu
From: Oleg Drokin
Take initial stab at removing server-disk related defines that
client does not need.
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/include/lustre_disk.h| 137 -
.../staging/lustre/lustre/obdclass/llog_internal.h | 8 --
2 files changed, 14
From: Oleg Drokin
This removes now unused OBD_ALLOC, OBD_ALLOC_GFP, OBD_ALLOC_PTR,
OBD_ALLOC_LARGE and supporting infrastructure.
Also OBD_FREE, OBD_FREE_PTR, OBD_FREE_LARGE and supporting infrastructure.
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/include/obd_support.h| 52 --
From: Oleg Drokin
Now that we no longer track allocated memory, remove
obd_memory statistics counter and all references to it everywhere
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/obd_support.h| 7 ---
drivers/staging/lustre/lustre/obdclass/class_obd.c |
From: Oleg Drokin
Lustre memory allocation framework has a feature to track amount
of allocated memory, but since it's not being used consistently anymore
and is on the way out in general, just remove it.
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/include/obd_support.h| 60 +-
From: Oleg Drokin
Part of effort of getting rid of custom Lustre alloc/free macros
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/ptlrpc/ptlrpc_internal.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/lustre/lustre/ptlrpc/ptlrpc_internal.h
b
From: Oleg Drokin
OBD_ALLOC_LARGE is now replaced with libcfs_kvzalloc and
OBD_FREE_LARGE is now replaced with kvfree.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_lib.h | 2 +-
drivers/staging/lustre/lustre/include/obd.h| 8
2 files changed, 5 i
From: Oleg Drokin
Since everything is now supposed to use regular kernel alloc and
free functions.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_lib.h | 2 +-
drivers/staging/lustre/lustre/include/lustre_net.h | 2 +-
drivers/staging/lustre/lustre/llite/file.c
From: Oleg Drokin
Remove OBD_CPT_ALLOC_LARGE define and convert the only user to
libcfs_kvzalloc_cpt.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/obd_support.h | 5 -
drivers/staging/lustre/lustre/ptlrpc/service.c | 6 --
2 files changed, 4 insertions(+),
From: Oleg Drokin
Part of effort to get rid of custom Lustre allocation macros.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/fld/fld_cache.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/lustre/lustre/fld/fld_cache.c
b/drivers/staging/lust
From: Oleg Drokin
These are converted to regular kzalloc/kfree calls.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lu_object.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/lu_object.h
b/drivers/staging/lu
From: Oleg Drokin
OBD_CPT_ALLOC and friends are no longer used, so remove them.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/obd_support.h | 9 -
1 file changed, 9 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/obd_support.h
b/drivers/staging/
From: Oleg Drokin
These macros are not used anymore, so let's remove them,
also __OBD_VMALLOC_VEROBSE and OBD_CPT_VMALLOC
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/include/obd_support.h| 29 --
1 file changed, 29 deletions(-)
diff --git a/drivers/staging
From: Oleg Drokin
This bunch of patches removes significant chunks of
Lustre specific allocators which is possible thanks to prior patches
from Julia Lawall.
Also removed are some server-only bits of code that make no sense
to retain in a client.
Please consider.
The v2 version fixes build erro
From: Oleg Drokin
These generic switch functions appear to be unused as all the
individual ones are called directly.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/lov/lov_internal.h | 2 --
drivers/staging/lustre/lustre/lov/lov_pack.c | 20
drivers/stag
From: Oleg Drokin
Also remove the lmv and mdc infrastructure to query these keys.
In fact this whole "unlink cookies" thing becomes irrelevant
with newer servers, but since we still retain 2.[123] servers
commpatibility, we cannot completely remove all traces of it yet.
Signed-off-by: Oleg Droki
From: Oleg Drokin
This continues the quest for killing unused code in the Lustre client.
Main focus in this set is on Lustre LDLM code - it kills both
outright unused code and code that looks like it's used, but in fact
also unused as various conditions that would lead to it would only
happen on
From: Oleg Drokin
Also ll_ra_read_get_locked that was only used by it.
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/llite/llite_internal.h | 1 -
drivers/staging/lustre/lustre/llite/rw.c | 24 --
2 files changed, 25 deletions(-)
diff --git a/driver
From: Oleg Drokin
These functions are used on the server-only, so get rid of them.
Also get rid of ldlm export hash operations and the struct.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 2 -
drivers/staging/lustre/lustre/ldlm/ldlm_lockd.c| 105 ---
From: Oleg Drokin
Since staging tree code is just the client, ns_is_client is always
true, so change all callers as such and drop all the
dead code for when it's false.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 13 --
drivers/staging/lustre/lus
From: Oleg Drokin
This is only used on the server.
Also while we are at it, remove unused prototypes for
ldlm_server_ast and ldlm_handle_enqueue0() that are not
defined anywhere
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 15 -
drivers/staging/lustre
From: Oleg Drokin
The ioctl for this function was removed, but the function was
forgotten, so kill it now.
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/llite/llite_internal.h | 1 -
drivers/staging/lustre/lustre/llite/namei.c| 28 --
2 files changed,
From: Oleg Drokin
Now that we removed all the lock conversion functions,
also get rid of the converson queue since nothing could ever
get there anyway.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 2 --
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c
From: Oleg Drokin
This was used for a function that's no longer important, but
is no longer used anywhere.
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/llite/llite_internal.h | 2 --
drivers/staging/lustre/lustre/llite/llite_lib.c| 26 --
2 files changed,
From: Oleg Drokin
This particular incarnation is only used on the server.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 3 +-
drivers/staging/lustre/lustre/ldlm/ldlm_lib.c | 36 --
2 files changed, 1 insertion(+), 38 deletions(-)
From: Oleg Drokin
It was directly used only on the server. Client side part
was split into smaller chunks to avoid deadlocks.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 2 --
drivers/staging/lustre/lustre/ldlm/ldlm_resource.c | 27 -
From: Oleg Drokin
It's not used anywhere.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 1 -
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c | 8
2 files changed, 9 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/lustre_dlm.h
From: Oleg Drokin
Since the code we have is Lustre-client only, this function
always returns 0, so drop it and amend all the callsites to
drop dead code.
One of the places also sets LDLM_FL_NS_SRV to indicate a lock
is in a server namespace. This too cannot happen in this code,
so drop all such c
From: Oleg Drokin
Now that ldlm_flock code no longer uses it.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/ldlm/ldlm_internal.h | 2 --
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c | 5 +++--
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/staging/l
From: Oleg Drokin
This is server-side code that cannot work on the client
(vfs would do this check on the local node).
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/ldlm/ldlm_flock.c | 132
1 file changed, 132 deletions(-)
diff --git a/drivers/staging/l
From: Oleg Drokin
This rather large patch prunes all unused EXPORT_SYMBOLS and
marks functions only used locally as static lustre ldlm module.
The only two remaining nonstatic functions that should be static
now are:
ldlm_cancel_lru_local
ldlm_resource_putref_locked
But some bigger code shuffli
From: Oleg Drokin
Server-side scanning is not really used in the client code,
so it's ok to drop it.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 3 -
drivers/staging/lustre/lustre/ldlm/ldlm_pool.c | 348 +
2 files changed, 13 in
From: Oleg Drokin
Since there are no server namespaces, just replace it with
ldlm_cli_inactive_namespace_list pointer.
Also make ldlm_cli_inactive_namespace_list static as it's only
used in ldlm_resource.c
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/ldlm/ldlm_internal.h | 7 --
From: Oleg Drokin
All users are gone, and they were used on the server anyway.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 3 -
drivers/staging/lustre/lustre/ldlm/ldlm_request.c | 70 --
2 files changed, 73 deletions(-)
diff --git
From: Oleg Drokin
This includes ldlm_register_intent(), ns_policy field in the namespace
and all of it's users, as this could only happen on the server.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 8 --
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c
From: Oleg Drokin
It was only used on the server.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/ldlm/ldlm_internal.h | 2 --
drivers/staging/lustre/lustre/ldlm/ldlm_resource.c | 26 --
2 files changed, 28 deletions(-)
diff --git a/drivers/staging/lustre/lus
From: Oleg Drokin
Nothing adds locks into waiting list on the client, so no
point in retaining those.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 2 --
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c | 8
drivers/staging/lustre/lustre/ldlm/
From: Oleg Drokin
Also lov_lsm_addref is only used in the file it is defined,
so make it static
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/lov/lov_cl_internal.h | 3 ---
drivers/staging/lustre/lustre/lov/lov_object.c | 13 +
2 files changed, 1 insertion(+),
From: Oleg Drokin
They are only used on the server.
Also remove helper functions and cleanup callsites.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 2 -
drivers/staging/lustre/lustre/ldlm/ldlm_flock.c| 1 -
drivers/staging/lustre/lustre/ldlm/ldlm_l
From: Oleg Drokin
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 1 -
drivers/staging/lustre/lustre/ldlm/ldlm_pool.c | 13 -
2 files changed, 14 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/lustre_dlm.h
b/drivers/staging
From: Oleg Drokin
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 1 -
drivers/staging/lustre/lustre/ldlm/ldlm_pool.c | 16
2 files changed, 17 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/lustre_dlm.h
b/drivers/stag
From: Oleg Drokin
Only used on the server.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 1 -
drivers/staging/lustre/lustre/ldlm/ldlm_request.c | 28 --
2 files changed, 29 deletions(-)
diff --git a/drivers/staging/lustre/lustre/incl
From: Oleg Drokin
And all supporting export infrastructure. There's no use for it
all on client.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/ldlm/ldlm_flock.c| 102 -
drivers/staging/lustre/lustre/ldlm/ldlm_internal.h | 2 -
2 files changed, 104 delet
From: Oleg Drokin
Lock conversion is not really implemented, so let's stop
pretending here.
This removes ldlm_lock_convert, ldlm_cli_lock_convert
and ldlm_lock_downgrade.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 4 -
drivers/staging/lustre/lustre/ld
From: Oleg Drokin
Not used anywhere
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre_dlm.h | 1 -
drivers/staging/lustre/lustre/ldlm/ldlm_request.c | 21 -
2 files changed, 22 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/lust
From: Oleg Drokin
On client side interval-tree code operations are pretty basic,
so get rid of the code that is only used on the server to figure
out how much to extend the locks and such.
Signed-off-by: Oleg Drokin
---
.../staging/lustre/lustre/include/interval_tree.h | 36 ---
drivers/stag
From: Oleg Drokin
This is only used on the server in case a client gets disconnected.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/ldlm/ldlm_internal.h | 2 -
drivers/staging/lustre/lustre/ldlm/ldlm_lock.c | 50 --
2 files changed, 52 deletions(-)
diff
From: Oleg Drokin
The comment at the top of the function already permits it,
just take out the assetrtion and update __d_add to
be aware of this. Move the BUG_ON to d_add which is the
other user of __d_add and presumably we do not want to
allow hashed dentries as input there.
Signed-off-by: Oleg
From: Oleg Drokin
I noticed that if the logic in fadvise64_64 syscall is incorrect
for partial pages. While first page of the region is correctly skipped
if it is partial, the last page of the region is mistakenly discarded.
This leads to problems for applications that read data in
non-page-align
From: Oleg Drokin
Commit e8d975e73e5f ("fixing infinite OPEN loop in 4.0 stateid recovery")
introduced access to state after it was just potentially freed by
nfs4_put_open_state leading to a random data corruption somewhere.
BUG: unable to handle kernel paging request at 88004941ee40
IP: []
From: Oleg Drokin
It's no longer used and never set anywhere.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/osc/osc_cl_internal.h | 5 -
drivers/staging/lustre/lustre/osc/osc_page.c| 2 +-
2 files changed, 1 insertion(+), 6 deletions(-)
diff --git a/drivers/staging/
From: Oleg Drokin
There was a proper debugging function by that name that's long
gone.
The currently remaining shadow that always returns true is not
really useful so it could be dropped along with all the
asserts it is part of.
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/osc/
From: Jinshan Xiong
In ll_readpage and ll_write_begin, it needs to find out the cl_env
and cl_io, a.k.a ll_cl_context, when the IO is initialized. It used
to call cl_env_get() to figure it out but turned out to be contended
if multiple threads are doing IO.
In this patch, a per open file ll_cl_c
From: Jinshan Xiong
In lov_stripe_pgoff(), it calls lov_stripe_size() to calculate the
file size by ost_size, which will be wrong if the stripe_index
happens to be stripe aligned.
Signed-off-by: Jinshan Xiong
Reviewed-on: http://review.whamcloud.com/14462
Intel-bug-id: https://jira.hpdd.intel.c
From: Oleg Drokin
Here are a few more Lustre fixes and cleanups.
Jinshan Xiong (2):
staging/lustre/lov: calculate file offset correctly
staging/lustre/llite: define per open file cache for ll_cl_context
Oleg Drokin (2):
staging/lustre/osc: Remove ops_temp from osc_page
staging/lustre/os
From: Oleg Drokin
Replace it with direct reference of enum loc_flags
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lu_object.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/lu_object.h
b/drivers/staging/l
From: Oleg Drokin
Replace with enum llog_op_type
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/include/lustre/lustre_idl.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h
b/drivers/staging/lustre/
From: Oleg Drokin
Object update was originally planned to be used for cross-server
updates, so nothing to do with the client. The idea was
later significantly reworked anyway so even wire structs should
not be retained.
This gets rid of update_cmd_t, UPDATE and UPDATE_REPLY rpc and
corresponding
From: Oleg Drokin
Replace it with enum se_stat
Signed-off-by: Oleg Drokin
---
drivers/staging/lustre/lustre/llite/statahead.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/staging/lustre/lustre/llite/statahead.c
b/drivers/staging/lustre/lustre/llite/st
401 - 500 of 1193 matches
Mail list logo