firmware: arm_scpi: Ensure scpi_info is not assigned if the probe fails
authorSudeep Holla <sudeep.holla@arm.com>
Fri, 1 Jul 2022 16:03:10 +0000 (17:03 +0100)
committerSudeep Holla <sudeep.holla@arm.com>
Mon, 4 Jul 2022 13:28:42 +0000 (14:28 +0100)
commit689640efc0a2c4e07e6f88affe6d42cd40cc3f85
tree94561a4c6e52ec4e21ae5b751811a5b251531b7f
parent4ce7e51dc712f8a006ce6abcc49f788c79287c03
firmware: arm_scpi: Ensure scpi_info is not assigned if the probe fails

When scpi probe fails, at any point, we need to ensure that the scpi_info
is not set and will remain NULL until the probe succeeds. If it is not
taken care, then it could result use-after-free as the value is exported
via get_scpi_ops() and could refer to a memory allocated via devm_kzalloc()
but freed when the probe fails.

Link: https://lore.kernel.org/r/20220701160310.148344-1-sudeep.holla@arm.com
Cc: stable@vger.kernel.org # 4.19+
Reported-by: huhai <huhai@kylinos.cn>
Reviewed-by: Jackie Liu <liuyun01@kylinos.cn>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
drivers/firmware/arm_scpi.c