qcacld-3.0: Fix return type for scheduler_msg callbacks
This fixes a CFI failure in callback assignment
Change-Id: I01fbd8cb65f8e33a66065d29d1aab983647a40ac
CRs-Fixed: 2651013
diff --git a/components/interop_issues_ap/dispatcher/src/wlan_interop_issues_ap_tgt_api.c b/components/interop_issues_ap/dispatcher/src/wlan_interop_issues_ap_tgt_api.c
index dd6cdae..e58bd4a 100644
--- a/components/interop_issues_ap/dispatcher/src/wlan_interop_issues_ap_tgt_api.c
+++ b/components/interop_issues_ap/dispatcher/src/wlan_interop_issues_ap_tgt_api.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2019 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2019-2020 The Linux Foundation. All rights reserved.
*
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
@@ -37,10 +37,11 @@
return QDF_STATUS_SUCCESS;
}
-static void wlan_interop_issues_ap_info_cbk(struct scheduler_msg *msg)
+static QDF_STATUS wlan_interop_issues_ap_info_cbk(struct scheduler_msg *msg)
{
struct wlan_interop_issues_ap_event *data;
struct wlan_interop_issues_ap_callbacks *cbs;
+ QDF_STATUS status = QDF_STATUS_SUCCESS;
data = msg->bodyptr;
data->pdev = wlan_objmgr_get_pdev_by_id(data->psoc,
@@ -48,6 +49,7 @@
WLAN_INTEROP_ISSUES_AP_ID);
if (!data->pdev) {
interop_issues_ap_err("pdev is null.");
+ status = QDF_STATUS_E_FAILURE;
goto err;
}
@@ -59,6 +61,7 @@
err:
qdf_mem_free(data);
msg->bodyptr = NULL;
+ return status;
}
QDF_STATUS tgt_interop_issues_ap_info_callback(struct wlan_objmgr_psoc *psoc,
diff --git a/core/hdd/src/wlan_hdd_bcn_recv.c b/core/hdd/src/wlan_hdd_bcn_recv.c
index 2a01791..c426a38 100644
--- a/core/hdd/src/wlan_hdd_bcn_recv.c
+++ b/core/hdd/src/wlan_hdd_bcn_recv.c
@@ -120,8 +120,9 @@
* Send beacon info to userspace for connected AP through a vendor event:
* QCA_NL80211_VENDOR_SUBCMD_BEACON_REPORTING.
*/
-static void hdd_send_bcn_recv_info(hdd_handle_t hdd_handle,
- struct wlan_beacon_report *beacon_report)
+static QDF_STATUS hdd_send_bcn_recv_info(hdd_handle_t hdd_handle,
+ struct wlan_beacon_report
+ *beacon_report)
{
struct sk_buff *vendor_event;
struct hdd_context *hdd_ctx = hdd_handle_to_context(hdd_handle);
@@ -130,13 +131,13 @@
struct hdd_adapter *adapter;
if (wlan_hdd_validate_context(hdd_ctx))
- return;
+ return QDF_STATUS_E_FAILURE;
data_len = get_beacon_report_data_len(beacon_report);
adapter = hdd_get_adapter_by_vdev(hdd_ctx, beacon_report->vdev_id);
if (hdd_validate_adapter(adapter))
- return;
+ return QDF_STATUS_E_FAILURE;
vendor_event =
cfg80211_vendor_event_alloc(
@@ -146,7 +147,7 @@
flags);
if (!vendor_event) {
hdd_err("cfg80211_vendor_event_alloc failed");
- return;
+ return QDF_STATUS_E_FAILURE;
}
if (nla_put_u32(vendor_event,
@@ -169,10 +170,11 @@
beacon_report->boot_time)) {
hdd_err("QCA_WLAN_VENDOR_ATTR put fail");
kfree_skb(vendor_event);
- return;
+ return QDF_STATUS_E_FAILURE;
}
cfg80211_vendor_event(vendor_event, flags);
+ return QDF_STATUS_SUCCESS;
}
/**
diff --git a/core/hdd/src/wlan_hdd_data_stall_detection.c b/core/hdd/src/wlan_hdd_data_stall_detection.c
index 195468a..6458ed4 100644
--- a/core/hdd/src/wlan_hdd_data_stall_detection.c
+++ b/core/hdd/src/wlan_hdd_data_stall_detection.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017-2019 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2017-2020 The Linux Foundation. All rights reserved.
*
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
@@ -67,10 +67,12 @@
*
* Return: void
*/
-static void hdd_data_stall_process_event(
+static QDF_STATUS hdd_data_stall_process_event(
struct data_stall_event_info *data_stall_info)
{
hdd_data_stall_send_event(data_stall_info->data_stall_type);
+
+ return QDF_STATUS_SUCCESS;
}
/**
diff --git a/core/mac/src/sys/common/src/wlan_qct_sys.c b/core/mac/src/sys/common/src/wlan_qct_sys.c
index 66499fd..91eccca 100644
--- a/core/mac/src/sys/common/src/wlan_qct_sys.c
+++ b/core/mac/src/sys/common/src/wlan_qct_sys.c
@@ -57,18 +57,19 @@
* Return: none
*/
#ifdef QDF_ENABLE_TRACING
-static void umac_stop_complete_cb(void *user_data)
+static QDF_STATUS umac_stop_complete_cb(void *user_data)
{
qdf_event_t *stop_evt = (qdf_event_t *) user_data;
QDF_STATUS qdf_status = qdf_event_set(stop_evt);
QDF_ASSERT(QDF_IS_STATUS_SUCCESS(qdf_status));
+ return QDF_STATUS_SUCCESS;
}
#else
-static void umac_stop_complete_cb(void *user_data)
+static QDF_STATUS umac_stop_complete_cb(void *user_data)
{
- return;
+ return QDF_STATUS_SUCCESS;
}
#endif
diff --git a/core/sme/inc/sme_internal.h b/core/sme/inc/sme_internal.h
index 46ce736..2e9bcde 100644
--- a/core/sme/inc/sme_internal.h
+++ b/core/sme/inc/sme_internal.h
@@ -253,8 +253,8 @@
* @hdd_handle: HDD handle registered with SME
* @beacon_report: Beacon report structure
*/
-typedef void (*beacon_report_cb)(hdd_handle_t hdd_handle,
- struct wlan_beacon_report *beacon_report);
+typedef QDF_STATUS (*beacon_report_cb)
+ (hdd_handle_t hdd_handle, struct wlan_beacon_report *beacon_report);
/**
* beacon_pause_cb : scan start callback fun