Skip to contentSkip to conversation

drivers: staging: lustre: Use 'force_die' instead of 'die' to avoid compiling issue

PATCH In review Chen Gang 2 participants 4 messages Jul 14, 2014 – Jul 15, 2014 Staging

lore
Share & tools
lore

Chen Gang

author
#0 lore raw

PATCH v2 1/1 drivers: staging: lustre: Use 'force_die' instead of 'die' to avoid compiling issue

Some of architectures have already defined 'die' as macro, so can not use it as declaration or definition in other modules, or it will cause compiling issue.

So use more precise name 'force_die' (like 'wrap_bulk') instead of. And the related error (with allmodconfig under score):

CC [M] drivers/staging/lustre/lustre/ptlrpc/sec.o
drivers/staging/lustre/lustre/ptlrpc/sec.c: In function 'sptlrpc_cli_ctx_expire':
drivers/staging/lustre/lustre/ptlrpc/sec.c:309:13: error: 'struct ptlrpc_ctx_ops' has no member named '__die'

    ctx->cc_ops->die(ctx, 0);
               ^
  drivers/staging/lustre/lustre/ptlrpc/sec.c: In function 'ctx_refresh_timeout':
  drivers/staging/lustre/lustre/ptlrpc/sec.c:594:26: error: 'struct ptlrpc_ctx_ops' has no member named '__die'
     req->rq_cli_ctx->cc_ops->die(req->rq_cli_ctx, 0);
                            ^

make[5]: *** [drivers/staging/lustre/lustre/ptlrpc/sec.o] Error 1 make[4]: *** [drivers/staging/lustre/lustre/ptlrpc] Error 2 make[3]: *** [drivers/staging/lustre/lustre] Error 2 make[2]: *** [drivers/staging/lustre] Error 2
make[1]: *** [drivers/staging] Error 2
make: *** [drivers] Error 2

---
 drivers/staging/lustre/lustre/include/lustre_sec.h | 2 +-
 drivers/staging/lustre/lustre/ptlrpc/sec.c         | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)
drivers/staging/lustre/lustre/include/lustre_sec.h +1 -1
index bf3ee39..1b8ec11 100644
@@ -387,7 +387,7 @@ struct ptlrpc_ctx_ops {
 	/**
 	 * Force the \a ctx to die.
 	 */
-	void    (*die)	 (struct ptlrpc_cli_ctx *ctx,
+	void    (*force_die)   (struct ptlrpc_cli_ctx *ctx,
 				int grace);
 	int     (*display)     (struct ptlrpc_cli_ctx *ctx,
 				char *buf, int bufsize);
drivers/staging/lustre/lustre/ptlrpc/sec.c +3 -3
index 28ac824..bb5b4b6 100644
@@ -305,8 +305,8 @@ EXPORT_SYMBOL(sptlrpc_cli_ctx_put);
  */
 void sptlrpc_cli_ctx_expire(struct ptlrpc_cli_ctx *ctx)
 {
-	LASSERT(ctx->cc_ops->die);
-	ctx->cc_ops->die(ctx, 0);
+	LASSERT(ctx->cc_ops->force_die);
+	ctx->cc_ops->force_die(ctx, 0);
 }
 EXPORT_SYMBOL(sptlrpc_cli_ctx_expire);
 
@@ -591,7 +591,7 @@ int ctx_refresh_timeout(void *data)
 	 * later than the context refresh expire time.
 	 */
 	if (rc == 0)
-		req->rq_cli_ctx->cc_ops->die(req->rq_cli_ctx, 0);
+		req->rq_cli_ctx->cc_ops->force_die(req->rq_cli_ctx, 0);
 	return rc;
 }
 
Signature · 1 line
1.7.11.7
author
#1 lore raw

For drivers/staging/lustre/lustre/include/lustre_sec.h:391:

- staging tree: use '\t ' between 'die' and '('.

- linux-next tree: use ' ' between 'die' and '('.

So the patch made under linux-next tree, can not apply to staging-next or staging tree.

Thanks.

Quoted 68 lines · Chen Gang

Some of architectures have already defined 'die' as macro, so can not use it as declaration or definition in other modules, or it will cause compiling issue.

So use more precise name 'force_die' (like 'wrap_bulk') instead of. And the related error (with allmodconfig under score):

CC [M] drivers/staging/lustre/lustre/ptlrpc/sec.o
drivers/staging/lustre/lustre/ptlrpc/sec.c: In function 'sptlrpc_cli_ctx_expire':
drivers/staging/lustre/lustre/ptlrpc/sec.c:309:13: error: 'struct ptlrpc_ctx_ops' has no member named '__die'

    ctx->cc_ops->die(ctx, 0);
               ^
  drivers/staging/lustre/lustre/ptlrpc/sec.c: In function 'ctx_refresh_timeout':
  drivers/staging/lustre/lustre/ptlrpc/sec.c:594:26: error: 'struct ptlrpc_ctx_ops' has no member named '__die'
     req->rq_cli_ctx->cc_ops->die(req->rq_cli_ctx, 0);
                            ^

make[5]: *** [drivers/staging/lustre/lustre/ptlrpc/sec.o] Error 1 make[4]: *** [drivers/staging/lustre/lustre/ptlrpc] Error 2 make[3]: *** [drivers/staging/lustre/lustre] Error 2 make[2]: *** [drivers/staging/lustre] Error 2
make[1]: *** [drivers/staging] Error 2
make: *** [drivers] Error 2

---
 drivers/staging/lustre/lustre/include/lustre_sec.h | 2 +-
 drivers/staging/lustre/lustre/ptlrpc/sec.c         | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)
drivers/staging/lustre/lustre/include/lustre_sec.h +1 -1
index bf3ee39..1b8ec11 100644
@@ -387,7 +387,7 @@ struct ptlrpc_ctx_ops {
 	/**
 	 * Force the \a ctx to die.
 	 */
-	void    (*die)	 (struct ptlrpc_cli_ctx *ctx,
+	void    (*force_die)   (struct ptlrpc_cli_ctx *ctx,
 				int grace);
 	int     (*display)     (struct ptlrpc_cli_ctx *ctx,
 				char *buf, int bufsize);
drivers/staging/lustre/lustre/ptlrpc/sec.c +3 -3
index 28ac824..bb5b4b6 100644
@@ -305,8 +305,8 @@ EXPORT_SYMBOL(sptlrpc_cli_ctx_put);
  */
 void sptlrpc_cli_ctx_expire(struct ptlrpc_cli_ctx *ctx)
 {
-	LASSERT(ctx->cc_ops->die);
-	ctx->cc_ops->die(ctx, 0);
+	LASSERT(ctx->cc_ops->force_die);
+	ctx->cc_ops->force_die(ctx, 0);
 }
 EXPORT_SYMBOL(sptlrpc_cli_ctx_expire);
 
@@ -591,7 +591,7 @@ int ctx_refresh_timeout(void *data)
 	 * later than the context refresh expire time.
 	 */
 	if (rc == 0)
-		req->rq_cli_ctx->cc_ops->die(req->rq_cli_ctx, 0);
+		req->rq_cli_ctx->cc_ops->force_die(req->rq_cli_ctx, 0);
 	return rc;
 }
 
Signature · 3 lines
Chen Gang

Open, share, and attitude like air, water, and life which God blessed
#2 lore raw
Quoted 9 lines · Chen Gang

For drivers/staging/lustre/lustre/include/lustre_sec.h:391:

- staging tree: use '\t ' between 'die' and '('.

- linux-next tree: use ' ' between 'die' and '('.

So the patch made under linux-next tree, can not apply to staging-next or staging tree.

It seems to work just fine here, I don't see a problem...

thanks,

greg k-h

author
#3 lore raw
Quoted 4 lines · 在 2014年7月15日,上午9:40,Greg Kroah-Hartman <[email protected]> 写道:
Quoted 3 lines · Chen Gang

For drivers/staging/lustre/lustre/include/lustre_sec.h:391:

Quoted 9 lines
Quoted 6 lines

- staging tree: use '\t ' between 'die' and '('.

- linux-next tree: use ' ' between 'die' and '('.

So the patch made under linux-next tree, can not apply to staging-next or staging tree.

It seems to work just fine here, I don't see a problem...

Yeah, the latest linux-next tree also uses ‘\t “, but the previous one not. :-)

Thanks.
—
Chen Gang
Open, share, and attitude like air, water, and life which God blessed