File tree Expand file tree Collapse file tree 1 file changed +6
-0
lines changed
drivers/net/wireless/intel/iwlwifi/fw Expand file tree Collapse file tree 1 file changed +6
-0
lines changed Original file line number Diff line number Diff line change @@ -86,6 +86,7 @@ static void *iwl_uefi_reduce_power_section(struct iwl_trans *trans,
86
86
if (len < tlv_len ) {
87
87
IWL_ERR (trans , "invalid TLV len: %zd/%u\n" ,
88
88
len , tlv_len );
89
+ kfree (reduce_power_data );
89
90
reduce_power_data = ERR_PTR (- EINVAL );
90
91
goto out ;
91
92
}
@@ -105,6 +106,7 @@ static void *iwl_uefi_reduce_power_section(struct iwl_trans *trans,
105
106
IWL_DEBUG_FW (trans ,
106
107
"Couldn't allocate (more) reduce_power_data\n" );
107
108
109
+ kfree (reduce_power_data );
108
110
reduce_power_data = ERR_PTR (- ENOMEM );
109
111
goto out ;
110
112
}
@@ -134,6 +136,10 @@ static void *iwl_uefi_reduce_power_section(struct iwl_trans *trans,
134
136
done :
135
137
if (!size ) {
136
138
IWL_DEBUG_FW (trans , "Empty REDUCE_POWER, skipping.\n" );
139
+ /* Better safe than sorry, but 'reduce_power_data' should
140
+ * always be NULL if !size.
141
+ */
142
+ kfree (reduce_power_data );
137
143
reduce_power_data = ERR_PTR (- ENOENT );
138
144
goto out ;
139
145
}
You can’t perform that action at this time.
0 commit comments