wifi: iwlwifi: dbg-tlv: use struct_size() for allocation
authorJohannes Berg <johannes.berg@intel.com>
Sun, 28 Jan 2024 06:53:52 +0000 (08:53 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 2 Feb 2024 12:47:46 +0000 (13:47 +0100)
This is effectively the same since we don't even have a
multiplication, but better captures what happens with
the length.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Reviewed-by: Gregory Greenman <gregory.greenman@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://msgid.link/20240128084842.f301641eb916.I66b7b48a526377d682eecef874373bf3a01076c8@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c

index 7b145b4..989b100 100644 (file)
@@ -71,7 +71,7 @@ static struct iwl_ucode_tlv *iwl_dbg_tlv_add(const struct iwl_ucode_tlv *tlv,
        u32 len = le32_to_cpu(tlv->length);
        struct iwl_dbg_tlv_node *node;
 
-       node = kzalloc(sizeof(*node) + len, GFP_KERNEL);
+       node = kzalloc(struct_size(node, tlv.data, len), GFP_KERNEL);
        if (!node)
                return NULL;