Re: [PATCH 27/43] drivers/net/sfc: fix sparse warnings: Should it be static?

From: Ben Hutchings
Date: Sun Feb 15 2009 - 19:38:36 EST


Hannes Eder wrote:
> Impact: Include header file and include the function under the same
> condition as in the header file. If CONFIG_SFS_MTD is not defined
> than the functions 'efx_mtd_remove' and 'efx_mtd_rename' are defined
> 'static inline' with an empty function body in the header file.
>
> Fix this sparse warnings:
> drivers/net/sfc/mtd.c:204:6: warning: symbol 'efx_mtd_remove' was not declared. Should it be static?
> drivers/net/sfc/mtd.c:221:6: warning: symbol 'efx_mtd_rename' was not declared. Should it be static?
> drivers/net/sfc/mtd.c:230:5: warning: symbol 'efx_mtd_probe' was not declared. Should it be static?
>
> Signed-off-by: Hannes Eder <hannes@xxxxxxxxxxxxxx>
> ---
> drivers/net/sfc/mtd.c | 3 +++
> 1 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/net/sfc/mtd.c b/drivers/net/sfc/mtd.c
> index 665cafb..94c9ed8 100644
> --- a/drivers/net/sfc/mtd.c
> +++ b/drivers/net/sfc/mtd.c
> @@ -15,6 +15,7 @@
> #define EFX_DRIVER_NAME "sfc_mtd"
> #include "net_driver.h"
> #include "spi.h"
> +#include "efx.h"
>
> #define EFX_SPI_VERIFY_BUF_LEN 16
>

OK, but...

> @@ -201,6 +202,7 @@ static void efx_mtd_sync(struct mtd_info *mtd)
> return;
> }
>
> +#ifdef CONFIG_SFC_MTD
> void efx_mtd_remove(struct efx_nic *efx)
> {
> if (efx->spi_flash && efx->spi_flash->mtd) {
> @@ -266,3 +268,4 @@ int efx_mtd_probe(struct efx_nic *efx)
>
> return 0;
> }
> +#endif /* CONFIG_SFC_MTD */

This is wrong. The entire file is conditional on CONFIG_SFC_MTD.

Ben.

--
Ben Hutchings, Senior Software Engineer, Solarflare Communications
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/