Loading drivers/cam_fd/fd_hw_mgr/cam_fd_hw_mgr.c +9 −1 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved. */ #include <linux/module.h> Loading Loading @@ -78,6 +78,10 @@ static int cam_fd_mgr_util_packet_validate(struct cam_packet *packet, packet->cmd_buf_offset); for (i = 0; i < packet->num_cmd_buf; i++) { rc = cam_packet_util_validate_cmd_desc(&cmd_desc[i]); if (rc) return rc; /* * We can allow 0 length cmd buffer. This can happen in case * umd gives an empty cmd buffer as kmd buffer Loading Loading @@ -789,6 +793,10 @@ static int cam_fd_mgr_util_prepare_hw_update_entries( &prepare->packet->payload + prepare->packet->cmd_buf_offset); for (i = 0; i < prepare->packet->num_cmd_buf; i++) { rc = cam_packet_util_validate_cmd_desc(&cmd_desc[i]); if (rc) return rc; if (!cmd_desc[i].length) continue; Loading drivers/cam_icp/icp_hw/icp_hw_mgr/cam_icp_hw_mgr.c +9 −1 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved. */ #include <linux/uaccess.h> Loading Loading @@ -4596,6 +4596,10 @@ static int cam_icp_process_generic_cmd_buffer( cmd_desc = (struct cam_cmd_buf_desc *) ((uint32_t *) &packet->payload + packet->cmd_buf_offset/4); for (i = 0; i < packet->num_cmd_buf; i++) { rc = cam_packet_util_validate_cmd_desc(&cmd_desc[i]); if (rc) return rc; if (!cmd_desc[i].length) continue; Loading Loading @@ -4781,6 +4785,10 @@ static int cam_icp_mgr_config_stream_settings( cmd_desc = (struct cam_cmd_buf_desc *) ((uint32_t *) &packet->payload + packet->cmd_buf_offset/4); rc = cam_packet_util_validate_cmd_desc(cmd_desc); if (rc) return rc; if (!cmd_desc[0].length || cmd_desc[0].meta_data != CAM_ICP_CMD_META_GENERIC_BLOB) { CAM_ERR(CAM_ICP, "Invalid cmd buffer length/metadata"); Loading drivers/cam_isp/isp_hw_mgr/cam_ife_hw_mgr.c +5 −1 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved. */ #include <linux/slab.h> Loading Loading @@ -154,6 +154,10 @@ static int cam_ife_mgr_handle_reg_dump(struct cam_ife_hw_mgr_ctx *ctx, "Reg dump values might be from more than one request"); for (i = 0; i < num_reg_dump_buf; i++) { rc = cam_packet_util_validate_cmd_desc(®_dump_buf_desc[i]); if (rc) return rc; CAM_DBG(CAM_ISP, "Reg dump cmd meta data: %u req_type: %u", reg_dump_buf_desc[i].meta_data, meta_type); if (reg_dump_buf_desc[i].meta_data == meta_type) { Loading drivers/cam_isp/isp_hw_mgr/hw_utils/cam_isp_packet_parser.c +5 −1 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2017-2021, The Linux Foundation. All rights reserved. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved. */ #include <media/cam_defs.h> Loading Loading @@ -283,6 +283,10 @@ int cam_isp_add_command_buffers( split_id, prepare->packet->num_cmd_buf); for (i = 0; i < prepare->packet->num_cmd_buf; i++) { rc = cam_packet_util_validate_cmd_desc(&cmd_desc[i]); if (rc) return rc; num_ent = prepare->num_hw_update_entries; if (!cmd_desc[i].length) continue; Loading drivers/cam_lrme/lrme_hw_mgr/cam_lrme_hw_mgr.c +9 −1 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved. */ #include <linux/module.h> Loading Loading @@ -117,6 +117,10 @@ static int cam_lrme_mgr_util_packet_validate(struct cam_packet *packet, packet->cmd_buf_offset); for (i = 0; i < packet->num_cmd_buf; i++) { rc = cam_packet_util_validate_cmd_desc(&cmd_desc[i]); if (rc) return rc; if (!cmd_desc[i].length) continue; Loading Loading @@ -317,6 +321,10 @@ static int cam_lrme_mgr_util_prepare_hw_update_entries( &prepare->packet->payload + prepare->packet->cmd_buf_offset); for (i = 0; i < prepare->packet->num_cmd_buf; i++) { rc = cam_packet_util_validate_cmd_desc(&cmd_desc[i]); if (rc) return rc; if (!cmd_desc[i].length) continue; Loading Loading
drivers/cam_fd/fd_hw_mgr/cam_fd_hw_mgr.c +9 −1 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved. */ #include <linux/module.h> Loading Loading @@ -78,6 +78,10 @@ static int cam_fd_mgr_util_packet_validate(struct cam_packet *packet, packet->cmd_buf_offset); for (i = 0; i < packet->num_cmd_buf; i++) { rc = cam_packet_util_validate_cmd_desc(&cmd_desc[i]); if (rc) return rc; /* * We can allow 0 length cmd buffer. This can happen in case * umd gives an empty cmd buffer as kmd buffer Loading Loading @@ -789,6 +793,10 @@ static int cam_fd_mgr_util_prepare_hw_update_entries( &prepare->packet->payload + prepare->packet->cmd_buf_offset); for (i = 0; i < prepare->packet->num_cmd_buf; i++) { rc = cam_packet_util_validate_cmd_desc(&cmd_desc[i]); if (rc) return rc; if (!cmd_desc[i].length) continue; Loading
drivers/cam_icp/icp_hw/icp_hw_mgr/cam_icp_hw_mgr.c +9 −1 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved. */ #include <linux/uaccess.h> Loading Loading @@ -4596,6 +4596,10 @@ static int cam_icp_process_generic_cmd_buffer( cmd_desc = (struct cam_cmd_buf_desc *) ((uint32_t *) &packet->payload + packet->cmd_buf_offset/4); for (i = 0; i < packet->num_cmd_buf; i++) { rc = cam_packet_util_validate_cmd_desc(&cmd_desc[i]); if (rc) return rc; if (!cmd_desc[i].length) continue; Loading Loading @@ -4781,6 +4785,10 @@ static int cam_icp_mgr_config_stream_settings( cmd_desc = (struct cam_cmd_buf_desc *) ((uint32_t *) &packet->payload + packet->cmd_buf_offset/4); rc = cam_packet_util_validate_cmd_desc(cmd_desc); if (rc) return rc; if (!cmd_desc[0].length || cmd_desc[0].meta_data != CAM_ICP_CMD_META_GENERIC_BLOB) { CAM_ERR(CAM_ICP, "Invalid cmd buffer length/metadata"); Loading
drivers/cam_isp/isp_hw_mgr/cam_ife_hw_mgr.c +5 −1 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved. */ #include <linux/slab.h> Loading Loading @@ -154,6 +154,10 @@ static int cam_ife_mgr_handle_reg_dump(struct cam_ife_hw_mgr_ctx *ctx, "Reg dump values might be from more than one request"); for (i = 0; i < num_reg_dump_buf; i++) { rc = cam_packet_util_validate_cmd_desc(®_dump_buf_desc[i]); if (rc) return rc; CAM_DBG(CAM_ISP, "Reg dump cmd meta data: %u req_type: %u", reg_dump_buf_desc[i].meta_data, meta_type); if (reg_dump_buf_desc[i].meta_data == meta_type) { Loading
drivers/cam_isp/isp_hw_mgr/hw_utils/cam_isp_packet_parser.c +5 −1 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2017-2021, The Linux Foundation. All rights reserved. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved. */ #include <media/cam_defs.h> Loading Loading @@ -283,6 +283,10 @@ int cam_isp_add_command_buffers( split_id, prepare->packet->num_cmd_buf); for (i = 0; i < prepare->packet->num_cmd_buf; i++) { rc = cam_packet_util_validate_cmd_desc(&cmd_desc[i]); if (rc) return rc; num_ent = prepare->num_hw_update_entries; if (!cmd_desc[i].length) continue; Loading
drivers/cam_lrme/lrme_hw_mgr/cam_lrme_hw_mgr.c +9 −1 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved. */ #include <linux/module.h> Loading Loading @@ -117,6 +117,10 @@ static int cam_lrme_mgr_util_packet_validate(struct cam_packet *packet, packet->cmd_buf_offset); for (i = 0; i < packet->num_cmd_buf; i++) { rc = cam_packet_util_validate_cmd_desc(&cmd_desc[i]); if (rc) return rc; if (!cmd_desc[i].length) continue; Loading Loading @@ -317,6 +321,10 @@ static int cam_lrme_mgr_util_prepare_hw_update_entries( &prepare->packet->payload + prepare->packet->cmd_buf_offset); for (i = 0; i < prepare->packet->num_cmd_buf; i++) { rc = cam_packet_util_validate_cmd_desc(&cmd_desc[i]); if (rc) return rc; if (!cmd_desc[i].length) continue; Loading