Message ID | 20220712000152.2292031-1-justinstitt@google.com (mailing list archive) |
---|---|
State | Accepted |
Commit | ef2a95db89003e8304e429dc48556fecb8c7140b |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | nfp: fix clang -Wformat warnings | expand |
On Mon, Jul 11, 2022 at 05:01:52PM -0700, Justin Stitt wrote: > When building with Clang we encounter these warnings: > | drivers/net/ethernet/netronome/nfp/nfp_app.c:233:99: error: format > | specifies type 'unsigned char' but the argument has underlying type > | 'unsigned int' [-Werror,-Wformat] nfp_err(pf->cpp, "unknown FW app ID > | 0x%02hhx, driver too old or support for FW not built in\n", id); > - > | drivers/net/ethernet/netronome/nfp/nfp_main.c:396:11: error: format > | specifies type 'unsigned char' but the argument has type 'int' > | [-Werror,-Wformat] serial, interface >> 8, interface & 0xff); > > Correct format specifier for `id` is `%x` since the default type for the > `nfp_app_id` enum is `unsigned int`. The second warning is also solved > by using the `%x` format specifier as the expressions involving > `interface` are implicity promoted to integers (%x is used to maintain > hexadecimal representation). > > Link: https://github.com/ClangBuiltLinux/linux/issues/378 > Signed-off-by: Justin Stitt <justinstitt@google.com> Thanks for improving the nfp driver. Reviewed-by: Simon Horman <simon.horman@corigine.com>
Hello: This patch was applied to netdev/net-next.git (master) by Jakub Kicinski <kuba@kernel.org>: On Mon, 11 Jul 2022 17:01:52 -0700 you wrote: > When building with Clang we encounter these warnings: > | drivers/net/ethernet/netronome/nfp/nfp_app.c:233:99: error: format > | specifies type 'unsigned char' but the argument has underlying type > | 'unsigned int' [-Werror,-Wformat] nfp_err(pf->cpp, "unknown FW app ID > | 0x%02hhx, driver too old or support for FW not built in\n", id); > - > | drivers/net/ethernet/netronome/nfp/nfp_main.c:396:11: error: format > | specifies type 'unsigned char' but the argument has type 'int' > | [-Werror,-Wformat] serial, interface >> 8, interface & 0xff); > > [...] Here is the summary with links: - nfp: fix clang -Wformat warnings https://git.kernel.org/netdev/net-next/c/ef2a95db8900 You are awesome, thank you!
diff --git a/drivers/net/ethernet/netronome/nfp/nfp_app.c b/drivers/net/ethernet/netronome/nfp/nfp_app.c index 09f250e74dfa..bb3f46c74f77 100644 --- a/drivers/net/ethernet/netronome/nfp/nfp_app.c +++ b/drivers/net/ethernet/netronome/nfp/nfp_app.c @@ -230,7 +230,7 @@ struct nfp_app *nfp_app_alloc(struct nfp_pf *pf, enum nfp_app_id id) struct nfp_app *app; if (id >= ARRAY_SIZE(apps) || !apps[id]) { - nfp_err(pf->cpp, "unknown FW app ID 0x%02hhx, driver too old or support for FW not built in\n", id); + nfp_err(pf->cpp, "unknown FW app ID 0x%02x, driver too old or support for FW not built in\n", id); return ERR_PTR(-EINVAL); } diff --git a/drivers/net/ethernet/netronome/nfp/nfp_main.c b/drivers/net/ethernet/netronome/nfp/nfp_main.c index 4f88d17536c3..43b9e75a34a5 100644 --- a/drivers/net/ethernet/netronome/nfp/nfp_main.c +++ b/drivers/net/ethernet/netronome/nfp/nfp_main.c @@ -392,7 +392,7 @@ nfp_net_fw_find(struct pci_dev *pdev, struct nfp_pf *pf) /* First try to find a firmware image specific for this device */ interface = nfp_cpp_interface(pf->cpp); nfp_cpp_serial(pf->cpp, &serial); - sprintf(fw_name, "netronome/serial-%pMF-%02hhx-%02hhx.nffw", + sprintf(fw_name, "netronome/serial-%pMF-%02x-%02x.nffw", serial, interface >> 8, interface & 0xff); fw = nfp_net_fw_request(pdev, pf, fw_name); if (fw)
When building with Clang we encounter these warnings: | drivers/net/ethernet/netronome/nfp/nfp_app.c:233:99: error: format | specifies type 'unsigned char' but the argument has underlying type | 'unsigned int' [-Werror,-Wformat] nfp_err(pf->cpp, "unknown FW app ID | 0x%02hhx, driver too old or support for FW not built in\n", id); - | drivers/net/ethernet/netronome/nfp/nfp_main.c:396:11: error: format | specifies type 'unsigned char' but the argument has type 'int' | [-Werror,-Wformat] serial, interface >> 8, interface & 0xff); Correct format specifier for `id` is `%x` since the default type for the `nfp_app_id` enum is `unsigned int`. The second warning is also solved by using the `%x` format specifier as the expressions involving `interface` are implicity promoted to integers (%x is used to maintain hexadecimal representation). Link: https://github.com/ClangBuiltLinux/linux/issues/378 Signed-off-by: Justin Stitt <justinstitt@google.com> --- drivers/net/ethernet/netronome/nfp/nfp_app.c | 2 +- drivers/net/ethernet/netronome/nfp/nfp_main.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)