is requeued or discarded, all blocked requests are
woken.
- When deadlock-detection looks for the lock which blocks a
given request, we follow the chain of ->fl_blocker all
the way to the top.
Tested-by: kernel test robot
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/lock
using flock_make_lock(), and changing it to
allow a file_lock to be passed in, so memory allocation isn't
always needed.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/locks.c | 28 ++--
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/fs
-and-tested-by: Martin Wilck
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/locks.c | 69 +++-
1 file changed, 63 insertions(+), 6 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
index 91fc29912151..7a55d6feb12a 100644
--- a/fs
.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/cifs/file.c |2 +-
fs/lockd/svclock.c |2 +-
fs/locks.c | 36 +---
fs/nfsd/nfs4state.c |6 +++---
include/linux/fs.h |4 ++--
5 files changed, 20 insertions(+), 30 deletions
-and-tested-by: Martin Wilck
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/locks.c | 69 +++-
1 file changed, 63 insertions(+), 6 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
index 91fc29912151..7a55d6feb12a 100644
--- a/fs
.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/cifs/file.c |2 +-
fs/lockd/svclock.c |2 +-
fs/locks.c | 36 +---
fs/nfsd/nfs4state.c |6 +++---
include/linux/fs.h |4 ++--
5 files changed, 20 insertions(+), 30 deletions
- spaces before tabs,
- spaces at the end of lines,
- multiple blank lines,
- blank lines before EXPORT_SYMBOL,
can all go.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/locks.c | 33 -
1 file changed, 12 insertions(+), 21 deletions(-)
diff
- spaces before tabs,
- spaces at the end of lines,
- multiple blank lines,
- blank lines before EXPORT_SYMBOL,
can all go.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/locks.c | 33 -
1 file changed, 12 insertions(+), 21 deletions(-)
diff
to the new lock, though when merged with a
pre-exiting lock, this might not happen.
In all cases we don't want blocked locks to remain
attached, so we remove them to be safe.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
Tested-by: syzbot+a4a3d526b4157113e...@syzkaller.appspotmail.com
Tested
Rather than assuming all-zeros is sufficient, use the available API to
initialize the file_lock structure use for unlock. VFS-level changes
will soon make it important that the list_heads in file_lock are
always properly initialized.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/nfs/nfs4proc.c |6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index 867457d6dfbe..0ba2b0fb8ff3 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -6311,7 +6311,8 @@ static
Rather than assuming all-zeros is sufficient, use the available API to
initialize the file_lock structure use for unlock. VFS-level changes
will soon make it important that the list_heads in file_lock are
always properly initialized.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
.
And convert some
return (foo);
to
return foo;
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/locks.c | 27 +++
1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
index 2814662ecfe6..91fc29912151 100644
--- a/fs/locks.c
-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/nfs/nfs4proc.c |6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index 867457d6dfbe..0ba2b0fb8ff3 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -6311,7 +6311,8 @@ static
Rather than assuming all-zeros is sufficient, use the available API to
initialize the file_lock structure use for unlock. VFS-level changes
will soon make it important that the list_heads in file_lock are
always properly initialized.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
.
And convert some
return (foo);
to
return foo;
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/locks.c | 27 +++
1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
index 2814662ecfe6..91fc29912151 100644
--- a/fs/locks.c
to the new lock, though when merged with a
pre-exiting lock, this might not happen.
In all cases we don't want blocked locks to remain
attached, so we remove them to be safe.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
Tested-by: syzbot+a4a3d526b4157113e...@syzkaller.appspotmail.com
Tested
Rather than assuming all-zeros is sufficient, use the available API to
initialize the file_lock structure use for unlock. VFS-level changes
will soon make it important that the list_heads in file_lock are
always properly initialized.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
This functionality will be useful in future patches, so
split it out from locks_wake_up_blocks().
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/locks.c | 27 ---
1 file changed, 16 insertions(+), 11 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
This functionality will be useful in future patches, so
split it out from locks_wake_up_blocks().
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/locks.c | 27 ---
1 file changed, 16 insertions(+), 11 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
that a tracepoint is changed to report fl_blocker instead
of fl_next.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/cifs/file.c |2 +
fs/locks.c | 59 ---
include/linux/fs.h |9 +-
include
that a tracepoint is changed to report fl_blocker instead
of fl_next.
Signed-off-by: NeilBrown
Reviewed-by: J. Bruce Fields
---
fs/cifs/file.c |2 +
fs/locks.c | 59 ---
include/linux/fs.h |9 +-
include
This series has the fixes for the recently reported performance
regressions merged into the patches which caused them.
It also has a couple of little fixes that have been mentioned on the
list, and that Jeff had merged into his copy.
Thanks,
NeilBrown
---
NeilBrown (12):
fs/locks: rename
This series has the fixes for the recently reported performance
regressions merged into the patches which caused them.
It also has a couple of little fixes that have been mentioned on the
list, and that Jeff had merged into his copy.
Thanks,
NeilBrown
---
NeilBrown (12):
fs/locks: rename
but as there are no users it is probably best to discard it.
I discovered this because lustre uses (or rather "used") it.
NeilBrown
From: NeilBrown
Date: Wed, 28 Nov 2018 12:38:30 +1100
Subject: [PATCH] iov_iter: discard iov_for_each()
iov_for_each has no users and cannot compile
as
but as there are no users it is probably best to discard it.
I discovered this because lustre uses (or rather "used") it.
NeilBrown
From: NeilBrown
Date: Wed, 28 Nov 2018 12:38:30 +1100
Subject: [PATCH] iov_iter: discard iov_for_each()
iov_for_each has no users and cannot compile
as
The kernel test robot reported two performance regressions
caused by recent patches.
Both appear to related to the global spinlock blocked_lock_lock
being taken more often.
This patch avoids taking that lock in the cases tested.
Reported-by: kernel test robot
Signed-off-by: NeilBrown
---
Hi
The kernel test robot reported two performance regressions
caused by recent patches.
Both appear to related to the global spinlock blocked_lock_lock
being taken more often.
This patch avoids taking that lock in the cases tested.
Reported-by: kernel test robot
Signed-off-by: NeilBrown
---
Hi
king a file that is only used
> by that thread.
Thanks for identifying that Bruce.
This would certainly be a case where locks_delete_block() is now being
called when it wasn't before.
>
> By the way, what's the X-axis on these graphs? (Or the y-axi
king a file that is only used
> by that thread.
Thanks for identifying that Bruce.
This would certainly be a case where locks_delete_block() is now being
called when it wasn't before.
>
> By the way, what's the X-axis on these graphs? (Or the y-axi
o_apbridgea_register_cport(
data->connection,
i2s_port, cportid,
AUDIO_APBRIDGEA_DIRECTION_TX);
but checkpatch doesn't like the '(' at the end of the line.
Do you know why that is?
Thanks,
NeilBrown
>
> But if you are going to do this for multiple li
o_apbridgea_register_cport(
data->connection,
i2s_port, cportid,
AUDIO_APBRIDGEA_DIRECTION_TX);
but checkpatch doesn't like the '(' at the end of the line.
Do you know why that is?
Thanks,
NeilBrown
>
> But if you are going to do this for multiple li
nd the "#endif /* end of --- */" at the end?
Thanks,
NeilBrown
signature.asc
Description: PGP signature
nd the "#endif /* end of --- */" at the end?
Thanks,
NeilBrown
signature.asc
Description: PGP signature
On Thu, Nov 15 2018, Dmitry Vyukov wrote:
> On Wed, Nov 14, 2018 at 2:36 AM, Jeff Layton wrote:
>> On Wed, 2018-11-14 at 07:40 +1100, NeilBrown wrote:
>>> On Tue, Nov 13 2018, Jeff Layton wrote:
>>>
>>> > On Mon, 2018-11-12 at 12:34 -0800, syzbot wrote
On Thu, Nov 15 2018, Dmitry Vyukov wrote:
> On Wed, Nov 14, 2018 at 2:36 AM, Jeff Layton wrote:
>> On Wed, 2018-11-14 at 07:40 +1100, NeilBrown wrote:
>>> On Tue, Nov 13 2018, Jeff Layton wrote:
>>>
>>> > On Mon, 2018-11-12 at 12:34 -0800, syzbot wrote
down in the mandatory locking code. This is with Neil's set
> from last week. I haven't merged the series he sent the other day yet,
> but they don't seem to be different in this regard.
>
> Looks like the fl_blocked list might have had an entry on it that was
> freed without being rem
down in the mandatory locking code. This is with Neil's set
> from last week. I haven't merged the series he sent the other day yet,
> but they don't seem to be different in this regard.
>
> Looks like the fl_blocked list might have had an entry on it that was
> freed without being rem
- spaces before tabs,
- spaces at the end of lines,
- multiple blank lines,
- blank lines before EXPORT_SYMBOL,
can all go.
Signed-off-by: NeilBrown
---
fs/locks.c | 33 -
1 file changed, 12 insertions(+), 21 deletions(-)
diff --git a/fs/locks.c b/fs
- spaces before tabs,
- spaces at the end of lines,
- multiple blank lines,
- blank lines before EXPORT_SYMBOL,
can all go.
Signed-off-by: NeilBrown
---
fs/locks.c | 33 -
1 file changed, 12 insertions(+), 21 deletions(-)
diff --git a/fs/locks.c b/fs
-and-tested-by: Martin Wilck
Signed-off-by: NeilBrown
---
fs/locks.c | 69 +++-
1 file changed, 63 insertions(+), 6 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
index 74b24191d6e6..1006b566ddf5 100644
--- a/fs/locks.c
+++ b/fs/locks.c
.
Signed-off-by: NeilBrown
---
fs/cifs/file.c |2 +-
fs/lockd/svclock.c |2 +-
fs/locks.c | 36 +---
fs/nfsd/nfs4state.c |6 +++---
include/linux/fs.h |4 ++--
5 files changed, 20 insertions(+), 30 deletions(-)
diff --git a/fs/cifs/file.c
-and-tested-by: Martin Wilck
Signed-off-by: NeilBrown
---
fs/locks.c | 69 +++-
1 file changed, 63 insertions(+), 6 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
index 74b24191d6e6..1006b566ddf5 100644
--- a/fs/locks.c
+++ b/fs/locks.c
.
Signed-off-by: NeilBrown
---
fs/cifs/file.c |2 +-
fs/lockd/svclock.c |2 +-
fs/locks.c | 36 +---
fs/nfsd/nfs4state.c |6 +++---
include/linux/fs.h |4 ++--
5 files changed, 20 insertions(+), 30 deletions(-)
diff --git a/fs/cifs/file.c
is requeued or discarded, all blocked requests are
woken.
- When deadlock-detection looks for the lock which blocks a
given request, we follow the chain of ->fl_blocker all
the way to the top.
Signed-off-by: NeilBrown
---
fs/locks.c | 36 ++--
1 file changed,
to the new lock, though when merged with a
pre-exiting lock, this might not happen.
In all cases we don't want blocked locks to remain
attached, so we remove them to be safe.
Signed-off-by: NeilBrown
---
fs/locks.c | 24 +---
1 file changed, 9 insertions(+), 15 deletions
.
And convert some
return (foo);
to
return foo;
Signed-off-by: NeilBrown
---
fs/locks.c | 27 +++
1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
index 8d9d79e7a565..74b24191d6e6 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -795,47
is requeued or discarded, all blocked requests are
woken.
- When deadlock-detection looks for the lock which blocks a
given request, we follow the chain of ->fl_blocker all
the way to the top.
Signed-off-by: NeilBrown
---
fs/locks.c | 36 ++--
1 file changed,
to the new lock, though when merged with a
pre-exiting lock, this might not happen.
In all cases we don't want blocked locks to remain
attached, so we remove them to be safe.
Signed-off-by: NeilBrown
---
fs/locks.c | 24 +---
1 file changed, 9 insertions(+), 15 deletions
.
And convert some
return (foo);
to
return foo;
Signed-off-by: NeilBrown
---
fs/locks.c | 27 +++
1 file changed, 15 insertions(+), 12 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
index 8d9d79e7a565..74b24191d6e6 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -795,47
e - I made
a few little changes
- flock_make_lock() now properly initialized a lock - using
the code from Jeff
- code actually compiles for ocfs2 and gfs2
Thanks,
NeilBrown
---
NeilBrown (12):
fs/locks: rename some lists and pointers.
fs/locks: split out __locks_wake
e - I made
a few little changes
- flock_make_lock() now properly initialized a lock - using
the code from Jeff
- code actually compiles for ocfs2 and gfs2
Thanks,
NeilBrown
---
NeilBrown (12):
fs/locks: rename some lists and pointers.
fs/locks: split out __locks_wake
that a tracepoint is changed to report fl_blocker instead
of fl_next.
Signed-off-by: NeilBrown
---
fs/cifs/file.c |2 +
fs/locks.c | 59 ---
include/linux/fs.h |9 +-
include/trace/events/filelock.h | 16
using flock_make_lock(), and changing it to
allow a file_lock to be passed in, so memory allocation isn't
always needed.
Signed-off-by: NeilBrown
---
fs/locks.c | 28 ++--
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
index
-by: NeilBrown
---
fs/nfs/nfs4proc.c |6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index 867457d6dfbe..0ba2b0fb8ff3 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -6311,7 +6311,8 @@ static struct nfs4_unlockdata
Rather than assuming all-zeros is sufficient, use the available API to
initialize the file_lock structure use for unlock.
VFS-level changes will soon make it important that the
list_heads in file_lock are always properly initialized.
Signed-off-by: NeilBrown
---
fs/ocfs2/locks.c | 10
Rather than assuming all-zeros is sufficient, use the available API to
initialize the file_lock structure use for unlock.
VFS-level changes will soon make it important that the
list_heads in file_lock are always properly initialized.
Signed-off-by: NeilBrown
---
fs/gfs2/file.c | 10
This functionality will be useful in future patches, so
split it out from locks_wake_up_blocks().
Signed-off-by: NeilBrown
---
fs/locks.c | 27 ---
1 file changed, 16 insertions(+), 11 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
index c6df0c8b3d13..6adb22a21a92
-by: NeilBrown
---
fs/nfs/nfs4proc.c |6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index 867457d6dfbe..0ba2b0fb8ff3 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -6311,7 +6311,8 @@ static struct nfs4_unlockdata
Rather than assuming all-zeros is sufficient, use the available API to
initialize the file_lock structure use for unlock.
VFS-level changes will soon make it important that the
list_heads in file_lock are always properly initialized.
Signed-off-by: NeilBrown
---
fs/ocfs2/locks.c | 10
Rather than assuming all-zeros is sufficient, use the available API to
initialize the file_lock structure use for unlock.
VFS-level changes will soon make it important that the
list_heads in file_lock are always properly initialized.
Signed-off-by: NeilBrown
---
fs/gfs2/file.c | 10
This functionality will be useful in future patches, so
split it out from locks_wake_up_blocks().
Signed-off-by: NeilBrown
---
fs/locks.c | 27 ---
1 file changed, 16 insertions(+), 11 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
index c6df0c8b3d13..6adb22a21a92
using flock_make_lock(), and changing it to
allow a file_lock to be passed in, so memory allocation isn't
always needed.
Signed-off-by: NeilBrown
---
fs/locks.c | 28 ++--
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/fs/locks.c b/fs/locks.c
index
that a tracepoint is changed to report fl_blocker instead
of fl_next.
Signed-off-by: NeilBrown
---
fs/cifs/file.c |2 +
fs/locks.c | 59 ---
include/linux/fs.h |9 +-
include/trace/events/filelock.h | 16
On Thu, Nov 08 2018, J. Bruce Fields wrote:
> On Fri, Nov 09, 2018 at 11:38:19AM +1100, NeilBrown wrote:
>> On Thu, Nov 08 2018, J. Bruce Fields wrote:
>>
>> > On Mon, Nov 05, 2018 at 12:30:48PM +1100, NeilBrown wrote:
>> >> When we find an existing
On Thu, Nov 08 2018, J. Bruce Fields wrote:
> On Fri, Nov 09, 2018 at 11:38:19AM +1100, NeilBrown wrote:
>> On Thu, Nov 08 2018, J. Bruce Fields wrote:
>>
>> > On Mon, Nov 05, 2018 at 12:30:48PM +1100, NeilBrown wrote:
>> >> When we find an existing
that's an argument in favor of building creds on demand
> rather than keeping them in a hash table, isn't it. :-)
I think it is. Thanks!!!
NeilBrown
>
>
>>> In addition, the comment near unx_marshal suggests we should
>>> cache the marshaled on-the-wire vers
that's an argument in favor of building creds on demand
> rather than keeping them in a hash table, isn't it. :-)
I think it is. Thanks!!!
NeilBrown
>
>
>>> In addition, the comment near unx_marshal suggests we should
>>> cache the marshaled on-the-wire vers
On Thu, Nov 08 2018, J. Bruce Fields wrote:
> On Mon, Nov 05, 2018 at 12:30:48PM +1100, NeilBrown wrote:
>> When we find an existing lock which conflicts with a request,
>> and the request wants to wait, we currently add the request
>> to a list. When the lock is removed, th
On Thu, Nov 08 2018, J. Bruce Fields wrote:
> On Mon, Nov 05, 2018 at 12:30:48PM +1100, NeilBrown wrote:
>> When we find an existing lock which conflicts with a request,
>> and the request wants to wait, we currently add the request
>> to a list. When the lock is removed, th
On Thu, Nov 08 2018, J. Bruce Fields wrote:
> On Mon, Nov 05, 2018 at 12:30:47PM +1100, NeilBrown wrote:
>> struct file lock contains an 'fl_next' pointer which
>> is used to point to the lock that this request is blocked
>> waiting for. So rename it to fl_blocker.
On Thu, Nov 08 2018, J. Bruce Fields wrote:
> On Mon, Nov 05, 2018 at 12:30:47PM +1100, NeilBrown wrote:
>> struct file lock contains an 'fl_next' pointer which
>> is used to point to the lock that this request is blocked
>> waiting for. So rename it to fl_blocker.
On Wed, Nov 07 2018, Chuck Lever wrote:
> Hi Neil-
>
>
>> On Nov 6, 2018, at 11:12 PM, NeilBrown wrote:
>>
>> 1/ discard 'struct unx_cred'. We don't need any data that
>> is not already in 'struct rpc_cred'.
>> 2/ Don't keep these creds in a hash t
On Wed, Nov 07 2018, Chuck Lever wrote:
> Hi Neil-
>
>
>> On Nov 6, 2018, at 11:12 PM, NeilBrown wrote:
>>
>> 1/ discard 'struct unx_cred'. We don't need any data that
>> is not already in 'struct rpc_cred'.
>> 2/ Don't keep these creds in a hash t
_after_hwframe+0x49/0xbe
>> > > [ 42.063639] RIP: 0033:0x7f31c39fe250
>> > > [ 42.064798] Code: 73 01 c3 48 8b 0d 58 7d 20 00 f7 d8 64 89 01 48 83
>> > > c8 ff c3 66 0f 1f 44 00 00 83 3d 79 c1 20 00 00 75 10 b8 03 00 00 00 0f
>> > > 05 <48&
_after_hwframe+0x49/0xbe
>> > > [ 42.063639] RIP: 0033:0x7f31c39fe250
>> > > [ 42.064798] Code: 73 01 c3 48 8b 0d 58 7d 20 00 f7 d8 64 89 01 48 83
>> > > c8 ff c3 66 0f 1f 44 00 00 83 3d 79 c1 20 00 00 75 10 b8 03 00 00 00 0f
>> > > 05 <48&
table.
As the lookup can happen during write-out, use a mempool
to ensure forward progress.
This means that we cannot compare two credentials for
equality by comparing the pointers, but we never do that anyway.
Signed-off-by: NeilBrown
---
net/sunrpc/auth.c |1
net/sunrpc
This now always just does get_rpccred(), so we
don't need an operation pointer to know to do that.
Signed-off-by: NeilBrown
---
include/linux/sunrpc/auth.h|2 --
net/sunrpc/auth.c | 12 +---
net/sunrpc/auth_gss/auth_gss.c |2 --
net/sunrpc/auth_null.c
which is statically allocated and recognized where needed as
having a special meaning. A look-up of a low-level cred will
map this to a machine credential.
Signed-off-by: NeilBrown
---
fs/lockd/clntproc.c |6 +
fs/nfs/blocklayout/blocklayout.c |2
Just use ->cr_cred->fsuid directly.
Signed-off-by: NeilBrown
---
include/linux/sunrpc/auth.h|2 --
net/sunrpc/auth.c |1 -
net/sunrpc/auth_gss/auth_gss.c | 12 ++--
3 files changed, 6 insertions(+), 9 deletions(-)
diff --git a/include/linux/sunrpc/au
This is no longer used.
Signed-off-by: NeilBrown
---
include/linux/sunrpc/auth.h |6 -
net/sunrpc/Makefile |2
net/sunrpc/auth.c | 18
net/sunrpc/auth_generic.c | 199 ---
net/sunrpc/auth_null.c |2
5 files
table.
As the lookup can happen during write-out, use a mempool
to ensure forward progress.
This means that we cannot compare two credentials for
equality by comparing the pointers, but we never do that anyway.
Signed-off-by: NeilBrown
---
net/sunrpc/auth.c |1
net/sunrpc
This now always just does get_rpccred(), so we
don't need an operation pointer to know to do that.
Signed-off-by: NeilBrown
---
include/linux/sunrpc/auth.h|2 --
net/sunrpc/auth.c | 12 +---
net/sunrpc/auth_gss/auth_gss.c |2 --
net/sunrpc/auth_null.c
which is statically allocated and recognized where needed as
having a special meaning. A look-up of a low-level cred will
map this to a machine credential.
Signed-off-by: NeilBrown
---
fs/lockd/clntproc.c |6 +
fs/nfs/blocklayout/blocklayout.c |2
Just use ->cr_cred->fsuid directly.
Signed-off-by: NeilBrown
---
include/linux/sunrpc/auth.h|2 --
net/sunrpc/auth.c |1 -
net/sunrpc/auth_gss/auth_gss.c | 12 ++--
3 files changed, 6 insertions(+), 9 deletions(-)
diff --git a/include/linux/sunrpc/au
This is no longer used.
Signed-off-by: NeilBrown
---
include/linux/sunrpc/auth.h |6 -
net/sunrpc/Makefile |2
net/sunrpc/auth.c | 18
net/sunrpc/auth_generic.c | 199 ---
net/sunrpc/auth_null.c |2
5 files
ave
rpcauth_bindcred() notice it and bind it in place.
Credit to kernel test robot for finding
a bug in earlier version of this patch.
Signed-off-by: NeilBrown
---
include/linux/sunrpc/sched.h |2 ++
net/sunrpc/auth.c|6 +-
net/sunrpc/clnt.c|2 +-
ic 'struct rpc_cred'
pointer is used. rpcauth_bindcred() recognizes this, finds the
principal from the client, and binds the correct credential.
Signed-off-by: NeilBrown
---
fs/nfs/client.c | 11 ++-
fs/nfs/nfs4_fs.h|9 +
fs/nfs/nfs4state.c
cache is large.
This also keeps many fewer items pinned in the rpc cred cache, so the
cred cache is less likely to get large.
Signed-off-by: NeilBrown
---
fs/nfs/dir.c | 44 +++-
fs/nfs/nfs3proc.c |9 -
fs/nfs/nfs4proc.c
This is no longer used.
Signed-off-by: NeilBrown
---
include/linux/sunrpc/auth.h |3 ---
net/sunrpc/auth_null.c |1 -
net/sunrpc/auth_unix.c |1 -
3 files changed, 5 deletions(-)
diff --git a/include/linux/sunrpc/auth.h b/include/linux/sunrpc/auth.h
index 0bdc2f4957ff
.
Signed-off-by: NeilBrown
---
fs/nfs/inode.c |2 +
fs/nfs/write.c | 24 +++--
include/linux/nfs_fs.h |1 +
include/linux/sunrpc/auth.h| 12 --
net/sunrpc/auth.c | 23
net/sunrpc/auth_generic.c | 75
ave
rpcauth_bindcred() notice it and bind it in place.
Credit to kernel test robot for finding
a bug in earlier version of this patch.
Signed-off-by: NeilBrown
---
include/linux/sunrpc/sched.h |2 ++
net/sunrpc/auth.c|6 +-
net/sunrpc/clnt.c|2 +-
ic 'struct rpc_cred'
pointer is used. rpcauth_bindcred() recognizes this, finds the
principal from the client, and binds the correct credential.
Signed-off-by: NeilBrown
---
fs/nfs/client.c | 11 ++-
fs/nfs/nfs4_fs.h|9 +
fs/nfs/nfs4state.c
cache is large.
This also keeps many fewer items pinned in the rpc cred cache, so the
cred cache is less likely to get large.
Signed-off-by: NeilBrown
---
fs/nfs/dir.c | 44 +++-
fs/nfs/nfs3proc.c |9 -
fs/nfs/nfs4proc.c
This is no longer used.
Signed-off-by: NeilBrown
---
include/linux/sunrpc/auth.h |3 ---
net/sunrpc/auth_null.c |1 -
net/sunrpc/auth_unix.c |1 -
3 files changed, 5 deletions(-)
diff --git a/include/linux/sunrpc/auth.h b/include/linux/sunrpc/auth.h
index 0bdc2f4957ff
.
Signed-off-by: NeilBrown
---
fs/nfs/inode.c |2 +
fs/nfs/write.c | 24 +++--
include/linux/nfs_fs.h |1 +
include/linux/sunrpc/auth.h| 12 --
net/sunrpc/auth.c | 23
net/sunrpc/auth_generic.c | 75
Use the common 'struct cred' to pass credentials for readdir.
Signed-off-by: NeilBrown
---
fs/nfs/dir.c| 15 +--
fs/nfs/nfs3proc.c | 11 +--
fs/nfs/nfs4proc.c | 13 ++---
fs/nfs/proc.c | 11 +--
include/linux/nfs_fs.h
LL and set a task flag,
similar to RPC_TASK_ROOTCREDS, which requests that NULL credentials
be used by default.
Signed-off-by: NeilBrown
---
include/linux/sunrpc/sched.h |1 +
net/sunrpc/auth.c|2 ++
net/sunrpc/clnt.c| 19 ++-
3 files changed, 9
Use the common 'struct cred' to pass credentials for readdir.
Signed-off-by: NeilBrown
---
fs/nfs/dir.c| 15 +--
fs/nfs/nfs3proc.c | 11 +--
fs/nfs/nfs4proc.c | 13 ++---
fs/nfs/proc.c | 11 +--
include/linux/nfs_fs.h
LL and set a task flag,
similar to RPC_TASK_ROOTCREDS, which requests that NULL credentials
be used by default.
Signed-off-by: NeilBrown
---
include/linux/sunrpc/sched.h |1 +
net/sunrpc/auth.c|2 ++
net/sunrpc/clnt.c| 19 ++-
3 files changed, 9
201 - 300 of 4892 matches
Mail list logo