Kalle Valo <kvalo@xxxxxxxxxx> writes: >> For the code we merge directly we try to make sure there are no new >> warnings. I realize it's quite a bit of work for larger trees unless >> you have the infra so not a hard requirement (for you). > > Yeah, at the moment I really would not be able to catch W=1 or sparse > warnings :/ And fixing them afterwards is just too slow. But if we would > be able to fix all the warnings in drivers/net/wireless then it would be > easy for me to enable W=1 and C=1 in my own build tests. Actually for me to enable W=1 doesn't look so bad, the list is below. Anyone want to fix these? Looks like roughly half of them is the gnu_printf warning. In function 'init_startup_params', inlined from 'ray_init' at drivers/net/wireless/ray_cs.c:500:2: drivers/net/wireless/ray_cs.c:622:17: warning: 'strncpy' specified bound 32 equals destination size [-Wstringop-truncation] 622 | strncpy(local->sparm.b4.a_current_ess_id, essid, ESSID_SIZE); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/wireless/intel/ipw2x00/ipw2100.c:6533: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst * Initialize the ipw2100 driver/module drivers/net/wireless/intel/ipw2x00/ipw2100.c:6565: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst * Cleanup ipw2100 driver registration In function 'prism2_ioctl_get_encryption', inlined from 'prism2_ioctl_priv_hostapd' at drivers/net/wireless/intersil/hostap/hostap_ioctl.c:3801:9: drivers/net/wireless/intersil/hostap/hostap_ioctl.c:3599:17: warning: 'strncpy' specified bound 16 equals destination size [-Wstringop-truncation] 3599 | strncpy(param->u.crypt.alg, (*crypt)->ops->name, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3600 | HOSTAP_CRYPT_ALG_NAME_LEN); | ~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/wireless/intel/iwlwifi/mvm/ops.c:270: warning: Function parameter or member 'min_size' not described in 'iwl_rx_handlers' drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:2392:5: warning: no previous prototype for 'mt7915_mcu_set_fixed_rate' [-Wmissing-prototypes] 2392 | int mt7915_mcu_set_fixed_rate(struct mt7915_dev *dev, | ^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ./include/trace/define_trace.h:102, from drivers/net/wireless/broadcom/brcm80211/brcmfmac/tracepoint.h:137, from drivers/net/wireless/broadcom/brcm80211/brcmfmac/tracepoint.c:12: ./drivers/net/wireless/broadcom/brcm80211/brcmfmac/./tracepoint.h: In function 'trace_event_raw_event_brcmf_err': ./include/trace/trace_events.h:727:16: warning: function 'trace_event_raw_event_brcmf_err' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format] 727 | struct trace_event_raw_##call *entry; \ | ^~~~~~~~~~~~~~~~ ./include/trace/trace_events.h:75:9: note: in expansion of macro 'DECLARE_EVENT_CLASS' 75 | DECLARE_EVENT_CLASS(name, \ | ^~~~~~~~~~~~~~~~~~~ ./drivers/net/wireless/broadcom/brcm80211/brcmfmac/./tracepoint.h:31:1: note: in expansion of macro 'TRACE_EVENT' 31 | TRACE_EVENT(brcmf_err, | ^~~~~~~~~~~ ./drivers/net/wireless/broadcom/brcm80211/brcmfmac/./tracepoint.h: In function 'trace_event_raw_event_brcmf_dbg': ./include/trace/trace_events.h:727:16: warning: function 'trace_event_raw_event_brcmf_dbg' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format] 727 | struct trace_event_raw_##call *entry; \ | ^~~~~~~~~~~~~~~~ ./include/trace/trace_events.h:75:9: note: in expansion of macro 'DECLARE_EVENT_CLASS' 75 | DECLARE_EVENT_CLASS(name, \ | ^~~~~~~~~~~~~~~~~~~ ./drivers/net/wireless/broadcom/brcm80211/brcmfmac/./tracepoint.h:47:1: note: in expansion of macro 'TRACE_EVENT' 47 | TRACE_EVENT(brcmf_dbg, | ^~~~~~~~~~~ In file included from ./include/trace/define_trace.h:103, from drivers/net/wireless/broadcom/brcm80211/brcmfmac/tracepoint.h:137, from drivers/net/wireless/broadcom/brcm80211/brcmfmac/tracepoint.c:12: ./drivers/net/wireless/broadcom/brcm80211/brcmfmac/./tracepoint.h: In function 'perf_trace_brcmf_err': ./include/trace/perf.h:41:16: warning: function 'perf_trace_brcmf_err' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format] 41 | struct hlist_head *head; \ | ^~~~~~~~~~ ./include/trace/trace_events.h:75:9: note: in expansion of macro 'DECLARE_EVENT_CLASS' 75 | DECLARE_EVENT_CLASS(name, \ | ^~~~~~~~~~~~~~~~~~~ ./drivers/net/wireless/broadcom/brcm80211/brcmfmac/./tracepoint.h:31:1: note: in expansion of macro 'TRACE_EVENT' 31 | TRACE_EVENT(brcmf_err, | ^~~~~~~~~~~ ./drivers/net/wireless/broadcom/brcm80211/brcmfmac/./tracepoint.h: In function 'perf_trace_brcmf_dbg': ./include/trace/perf.h:41:16: warning: function 'perf_trace_brcmf_dbg' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format] 41 | struct hlist_head *head; \ | ^~~~~~~~~~ ./include/trace/trace_events.h:75:9: note: in expansion of macro 'DECLARE_EVENT_CLASS' 75 | DECLARE_EVENT_CLASS(name, \ | ^~~~~~~~~~~~~~~~~~~ ./drivers/net/wireless/broadcom/brcm80211/brcmfmac/./tracepoint.h:47:1: note: in expansion of macro 'TRACE_EVENT' 47 | TRACE_EVENT(brcmf_dbg, | ^~~~~~~~~~~ drivers/net/wireless/mediatek/mt76/debugfs.c: In function 'mt76_rx_queues_read': drivers/net/wireless/mediatek/mt76/debugfs.c:77:16: warning: variable 'queued' set but not used [-Wunused-but-set-variable] 77 | int i, queued; | ^~~~~~ In file included from drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c:14: drivers/net/wireless/intel/iwlwifi/mvm/debugfs.h:39:37: warning: 'iwl_dbgfs_dbg_time_point_ops' defined but not used [-Wunused-const-variable=] 39 | static const struct file_operations iwl_dbgfs_##name##_ops = { \ | ^~~~~~~~~~ drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c:1548:9: note: in expansion of macro '_MVM_DEBUGFS_WRITE_FILE_OPS' 1548 | _MVM_DEBUGFS_WRITE_FILE_OPS(name, bufsz, struct iwl_mvm) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c:1867:1: note: in expansion of macro 'MVM_DEBUGFS_WRITE_FILE_OPS' 1867 | MVM_DEBUGFS_WRITE_FILE_OPS(dbg_time_point, 64); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/wireless/intel/iwlwifi/mvm/rfi.c:11: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst * DDR needs frequency in units of 16.666MHz, so provide FW with the In file included from ./include/trace/define_trace.h:102, from drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcms_trace_brcmsmac_msg.h:86, from drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcms_trace_events.h:38, from drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcms_trace_events.c:22: ./drivers/net/wireless/broadcom/brcm80211/brcmsmac/./brcms_trace_brcmsmac_msg.h: In function 'trace_event_raw_event_brcms_dbg': ./include/trace/trace_events.h:727:16: warning: function 'trace_event_raw_event_brcms_dbg' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format] 727 | struct trace_event_raw_##call *entry; \ | ^~~~~~~~~~~~~~~~ ./include/trace/trace_events.h:75:9: note: in expansion of macro 'DECLARE_EVENT_CLASS' 75 | DECLARE_EVENT_CLASS(name, \ | ^~~~~~~~~~~~~~~~~~~ ./drivers/net/wireless/broadcom/brcm80211/brcmsmac/./brcms_trace_brcmsmac_msg.h:61:1: note: in expansion of macro 'TRACE_EVENT' 61 | TRACE_EVENT(brcms_dbg, | ^~~~~~~~~~~ In file included from ./include/trace/define_trace.h:103, from drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcms_trace_brcmsmac_msg.h:86, from drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcms_trace_events.h:38, from drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcms_trace_events.c:22: ./drivers/net/wireless/broadcom/brcm80211/brcmsmac/./brcms_trace_brcmsmac_msg.h: In function 'perf_trace_brcms_dbg': ./include/trace/perf.h:41:16: warning: function 'perf_trace_brcms_dbg' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format] 41 | struct hlist_head *head; \ | ^~~~~~~~~~ ./include/trace/trace_events.h:75:9: note: in expansion of macro 'DECLARE_EVENT_CLASS' 75 | DECLARE_EVENT_CLASS(name, \ | ^~~~~~~~~~~~~~~~~~~ ./drivers/net/wireless/broadcom/brcm80211/brcmsmac/./brcms_trace_brcmsmac_msg.h:61:1: note: in expansion of macro 'TRACE_EVENT' 61 | TRACE_EVENT(brcms_dbg, | ^~~~~~~~~~~ drivers/net/wireless/marvell/mwifiex/pcie.c: In function 'mwifiex_pm_wakeup_card': drivers/net/wireless/marvell/mwifiex/pcie.c:659:13: warning: variable 'retval' set but not used [-Wunused-but-set-variable] 659 | int retval; | ^~~~~~ In file included from ./include/trace/define_trace.h:102, from drivers/net/wireless/intel/iwlwifi/iwl-devtrace-msg.h:75, from drivers/net/wireless/intel/iwlwifi/iwl-devtrace.h:91, from drivers/net/wireless/intel/iwlwifi/iwl-devtrace.c:15: drivers/net/wireless/intel/iwlwifi/./iwl-devtrace-msg.h: In function 'trace_event_raw_event_iwlwifi_dbg': ./include/trace/trace_events.h:727:16: warning: function 'trace_event_raw_event_iwlwifi_dbg' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format] 727 | struct trace_event_raw_##call *entry; \ | ^~~~~~~~~~~~~~~~ ./include/trace/trace_events.h:75:9: note: in expansion of macro 'DECLARE_EVENT_CLASS' 75 | DECLARE_EVENT_CLASS(name, \ | ^~~~~~~~~~~~~~~~~~~ drivers/net/wireless/intel/iwlwifi/./iwl-devtrace-msg.h:51:1: note: in expansion of macro 'TRACE_EVENT' 51 | TRACE_EVENT(iwlwifi_dbg, | ^~~~~~~~~~~ In file included from ./include/trace/define_trace.h:103, from drivers/net/wireless/intel/iwlwifi/iwl-devtrace-msg.h:75, from drivers/net/wireless/intel/iwlwifi/iwl-devtrace.h:91, from drivers/net/wireless/intel/iwlwifi/iwl-devtrace.c:15: drivers/net/wireless/intel/iwlwifi/./iwl-devtrace-msg.h: In function 'perf_trace_iwlwifi_dbg': ./include/trace/perf.h:41:16: warning: function 'perf_trace_iwlwifi_dbg' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format] 41 | struct hlist_head *head; \ | ^~~~~~~~~~ ./include/trace/trace_events.h:75:9: note: in expansion of macro 'DECLARE_EVENT_CLASS' 75 | DECLARE_EVENT_CLASS(name, \ | ^~~~~~~~~~~~~~~~~~~ drivers/net/wireless/intel/iwlwifi/./iwl-devtrace-msg.h:51:1: note: in expansion of macro 'TRACE_EVENT' 51 | TRACE_EVENT(iwlwifi_dbg, | ^~~~~~~~~~~ -- https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches