[2.6 patch] uninline nfsd4_op_name()

STALE6638d

6 messages, 4 authors, 2008-08-11 · open the first message on its own page

[2.6 patch] uninline nfsd4_op_name()

From: Adrian Bunk <bunk@kernel.org>
Date: 2008-08-08 16:28:26

There doesn't seem to be a compelling reason why nfsd4_op_name() is 
marked as "inline":

It's only used in a dprintk(), and as long as it has only one caller 
non-ancient gcc versions anyway inline it automatically.

This patch fixes the following compile error with gcc 3.4:

<--  snip  -->

...
  CC      fs/nfsd/nfs4proc.o
nfs4proc.c: In function `nfsd4_proc_compound':
nfs4proc.c:854: sorry, unimplemented: inlining failed in call to 
nfs4proc.c:897: sorry, unimplemented: called from here
make[3]: *** [fs/nfsd/nfs4proc.o] Error 1

<--  snip  -->

Reported-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Adrian Bunk <bunk@kernel.org>

---
--- a/fs/nfsd/nfs4proc.c
+++ b/fs/nfsd/nfs4proc.c
@@ -851,7 +851,7 @@ struct nfsd4_operation {
 
 static struct nfsd4_operation nfsd4_ops[];
 
-static inline char *nfsd4_op_name(unsigned opnum);
+static char *nfsd4_op_name(unsigned opnum);
 
 /*
  * COMPOUND call.
@@ -1116,8 +1116,7 @@ static struct nfsd4_operation nfsd4_ops[OP_RELEASE_LOCKOWNER+1] = {
 	},
 };
 
-static inline char *
-nfsd4_op_name(unsigned opnum)
+static char *nfsd4_op_name(unsigned opnum)
 {
 	if (opnum < ARRAY_SIZE(nfsd4_ops))
 		return nfsd4_ops[opnum].op_name;

Re: [2.6 patch] uninline nfsd4_op_name()

From: Linus Torvalds <torvalds@linux-foundation.org>
Date: 2008-08-08 18:26:36


On Fri, 8 Aug 2008, Adrian Bunk wrote:
There doesn't seem to be a compelling reason why nfsd4_op_name() is 
marked as "inline":
It should also return a "const char *", I think.

Since it does.

		Linus

Re: [2.6 patch] uninline nfsd4_op_name()

From: Benny Halevy <hidden>
Date: 2008-08-10 11:33:32

Linus Torvalds wrote:
On Fri, 8 Aug 2008, Adrian Bunk wrote:
quoted
There doesn't seem to be a compelling reason why nfsd4_op_name() is 
marked as "inline":
Agreed.
It should also return a "const char *", I think.

Since it does.
Right.
		Linus
Thanks for picking this up,

Benny

Re: [2.6 patch] uninline nfsd4_op_name()

From: J. Bruce Fields <hidden>
Date: 2008-08-11 03:04:04

On Sun, Aug 10, 2008 at 02:32:31PM +0300, Benny Halevy wrote:
Linus Torvalds wrote:
quoted
On Fri, 8 Aug 2008, Adrian Bunk wrote:
quoted
There doesn't seem to be a compelling reason why nfsd4_op_name() is 
marked as "inline":
Agreed.
quoted
It should also return a "const char *", I think.

Since it does.
Right.
OK, I modified that to add "const" as Linus suggests, and applied to

	git://linux-nfs.org/~bfields/linux.git for-2.6.27

Thanks to everyone.

--b.

Re: [2.6 patch] uninline nfsd4_op_name()

From: Benny Halevy <hidden>
Date: 2008-08-11 08:48:42

On Aug. 11, 2008, 6:03 +0300, "J. Bruce Fields" [off-list ref] wrote:
On Sun, Aug 10, 2008 at 02:32:31PM +0300, Benny Halevy wrote:
quoted
Linus Torvalds wrote:
quoted
On Fri, 8 Aug 2008, Adrian Bunk wrote:
quoted
There doesn't seem to be a compelling reason why nfsd4_op_name() is 
marked as "inline":
Agreed.
quoted
It should also return a "const char *", I think.

Since it does.
Right.
OK, I modified that to add "const" as Linus suggests, and applied to

	git://linux-nfs.org/~bfields/linux.git for-2.6.27

Thanks to everyone.

--b.
Bruce, Linus already corrected and merged Adrian's patch in
linux-2.6/master as commit f1c7f79b6ab4f7ada002a0fae47f462ede6b6857

Benny

Re: [2.6 patch] uninline nfsd4_op_name()

From: J. Bruce Fields <hidden>
Date: 2008-08-11 15:39:43

On Mon, Aug 11, 2008 at 11:47:44AM +0300, Benny Halevy wrote:
On Aug. 11, 2008, 6:03 +0300, "J. Bruce Fields" [off-list ref] wrote:
quoted
On Sun, Aug 10, 2008 at 02:32:31PM +0300, Benny Halevy wrote:
quoted
Linus Torvalds wrote:
quoted
On Fri, 8 Aug 2008, Adrian Bunk wrote:
quoted
There doesn't seem to be a compelling reason why nfsd4_op_name() is 
marked as "inline":
Agreed.
quoted
It should also return a "const char *", I think.

Since it does.
Right.
OK, I modified that to add "const" as Linus suggests, and applied to

	git://linux-nfs.org/~bfields/linux.git for-2.6.27

Thanks to everyone.

--b.
Bruce, Linus already corrected and merged Adrian's patch in
linux-2.6/master as commit f1c7f79b6ab4f7ada002a0fae47f462ede6b6857
Oops, I thought I'd checked for that, but somehow I overlooked that
commit.  Thanks.--b.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help