Re: [PATCH] staging: zcache: fix compile error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Apr 01, 2013 at 11:50:47AM +0800, Bob Liu wrote:
> Because 'ramster_debugfs_init' is not defined if !CONFIG_DEBUG_FS, there is
> compile error like:
> 
> $ make drivers/staging/zcache/
> 
> staging/zcache/zbud.c:291:16: warning: ‘zbud_pers_evicted_pageframes’ defined
> but not used [-Wunused-variable]
> staging/zcache/ramster/ramster.c: In function ‘ramster_init’:
> staging/zcache/ramster/ramster.c:981:2: error: implicit declaration of
> function ‘ramster_debugfs_init’ [-Werror=implicit-function-declaration]
> 
> This patch fix it and reduce some #ifdef CONFIG_DEBUG_FS in .c files with the
> same way.
> 
> Reported-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
> Signed-off-by: Bob Liu <bob.liu@xxxxxxxxxx>
> ---
>  drivers/staging/zcache/ramster/ramster.c |    4 ++++
>  drivers/staging/zcache/zbud.c            |    6 ++++--
>  drivers/staging/zcache/zcache-main.c     |    2 --
>  3 files changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/staging/zcache/ramster/ramster.c b/drivers/staging/zcache/ramster/ramster.c
> index 4f715c7..e562c14 100644
> --- a/drivers/staging/zcache/ramster/ramster.c
> +++ b/drivers/staging/zcache/ramster/ramster.c
> @@ -134,6 +134,10 @@ static int ramster_debugfs_init(void)
>  }
>  #undef	zdebugfs
>  #undef	zdfs64
> +#else
> +static int ramster_debugfs_init(void)
> +{
> +}

That is not going to work. It will complain about not returning a proper value.
Also you can use inline in it.
>  #endif
>  
>  static LIST_HEAD(ramster_rem_op_list);
> diff --git a/drivers/staging/zcache/zbud.c b/drivers/staging/zcache/zbud.c
> index fdff5c6..2d38c96 100644
> --- a/drivers/staging/zcache/zbud.c
> +++ b/drivers/staging/zcache/zbud.c
> @@ -342,6 +342,10 @@ static int zbud_debugfs_init(void)
>  }
>  #undef	zdfs
>  #undef	zdfs64
> +#else
> +static int zbud_debugfs_init(void)
> +{
> +}

Ditto. You need to return 0 and you can make it inline.

>  #endif
>  
>  /* protects the buddied list and all unbuddied lists */
> @@ -1051,9 +1055,7 @@ void zbud_init(void)
>  {
>  	int i;
>  
> -#ifdef CONFIG_DEBUG_FS
>  	zbud_debugfs_init();
> -#endif
>  	BUG_ON((sizeof(struct tmem_handle) * 2 > CHUNK_SIZE));
>  	BUG_ON(sizeof(struct zbudpage) > sizeof(struct page));
>  	for (i = 0; i < NCHUNKS; i++) {
> diff --git a/drivers/staging/zcache/zcache-main.c b/drivers/staging/zcache/zcache-main.c
> index 4e52a94..ac75670 100644
> --- a/drivers/staging/zcache/zcache-main.c
> +++ b/drivers/staging/zcache/zcache-main.c
> @@ -1753,9 +1753,7 @@ static int zcache_init(void)
>  		namestr = "ramster";
>  		ramster_register_pamops(&zcache_pamops);
>  	}
> -#ifdef CONFIG_DEBUG_FS
>  	zcache_debugfs_init();
> -#endif
>  	if (zcache_enabled) {
>  		unsigned int cpu;
>  

That looks OK, and should be as a seperate patch - as there are no compilation
failures with zcache-main.c

> -- 
> 1.7.10.4
> 

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]