问题描述
升级硬盘背板CPLD在Prepare阶段失败,如何判断失败原因以及Jtag链路是否联通呢?
环境信息
- 软件版本: OpenUBMC2512
重现步骤
-
升级过程日志
2026-07-27 13:39:35.565998 firmware_mgmt ERROR: task_id_mgmt.lua(290): sub upgrade task id are empty.
2026-07-27 13:39:35.571589 firmware_mgmt ERROR: task_id_mgmt.lua(290): sub upgrade task id are empty.
2026-07-27 13:39:48.548175 web_backend NOTICE: init.lua(98): upload content length:number 322820, remaining capacity space:number 46374912
2026-07-27 13:39:48.731421 firmware_mgmt NOTICE: active_fructl.lua(96): get host type is Singlehost
2026-07-27 13:39:48.731872 firmware_mgmt NOTICE: utils.lua(34): The file path is Local.
2026-07-27 13:39:48.734250 firmware_mgmt NOTICE: init.lua(80): Upgrading_Flag is true
2026-07-27 13:39:48.751833 firmware_mgmt NOTICE: init.lua(41): update status to FS_SIMPLE_UPGRADING.
2026-07-27 13:39:48.770088 firmware_mgmt NOTICE: task_mgmt.lua(312): Create task[Id: 3240200569, StartTime: 2026-07-27T13:39:48+08:00, Progress: 0, State: New] successfully
2026-07-27 13:39:48.770457 firmware_mgmt NOTICE: task_service.lua(55): task create success, task id: 3240200569
2026-07-27 13:39:48.771143 firmware_mgmt NOTICE: task_id_mgmt.lua(30): add serial task id(3240200569) successfully
2026-07-27 13:39:48.772766 firmware_mgmt NOTICE: tasks_scheduling.lua(122): start tasks processer
2026-07-27 13:39:48.870564 firmware_mgmt NOTICE: task_mgmt.lua(443): Update task[Id: 3240200569, StartTime: 2026-07-27T13:39:48+08:00, Progress: 0, State: Running] successfully
2026-07-27 13:39:48.871474 firmware_mgmt NOTICE: file_transfer.lua(169): start to move file [temp_upgrade_file.hpm] from tmp to shm
2026-07-27 13:39:48.880911 firmware_mgmt NOTICE: file_transfer.lua(174): move_file_s ok:true, err:0
2026-07-27 13:39:48.920208 firmware_mgmt NOTICE: validate_sign.lua(195): verify signature successfully
2026-07-27 13:39:48.921138 firmware_mgmt NOTICE: action.lua(37): Validate signature successfully
2026-07-27 13:39:48.923498 firmware_mgmt NOTICE: hpm_package.lua(782): ManufacturerValidateEnabled is false, there is no need to validate manufacture_id.
2026-07-27 13:39:48.984930 firmware_mgmt NOTICE: hpm_package.lua(582): parse cfg file successfully, Version:1.0 FileNum:2
2026-07-27 13:39:48.986322 firmware_mgmt NOTICE: hpm_package.lua(456): get obj table: 0x2c1ce3ed1e98 for Id=24
2026-07-27 13:39:48.988095 firmware_mgmt NOTICE: hpm_package.lua(463): get obj table: 0x2c1ce3ed1e98 for Id=24
2026-07-27 13:39:48.988813 firmware_mgmt NOTICE: hpm_package.lua(474): get obj table: 0x2c1ce3ed1e98 for Id=24
2026-07-27 13:39:48.989741 firmware_mgmt NOTICE: hpm_package.lua(413): System product info:ProductId(0), ProductVendorID(0x00000001), ProductUniqueID(0x030AB300)
2026-07-27 13:39:48.990140 firmware_mgmt NOTICE: hpm_package.lua(327): check product id successfully
2026-07-27 13:39:49.020000 firmware_mgmt NOTICE: hpm_package.lua(395): cfg-BoardIDList(65535) match all devices
2026-07-27 13:39:49.020346 firmware_mgmt NOTICE: hpm_package.lua(449): get obj table: 0x2c1ce3ed1e98 for Id=24
2026-07-27 13:39:49.020715 firmware_mgmt NOTICE: hpm_package.lua(507): hard_revision:0, soft_revision:0
2026-07-27 13:39:49.021000 firmware_mgmt NOTICE: hpm_package.lua(440): get obj nil for Id=24
2026-07-27 13:39:49.021249 firmware_mgmt NOTICE: hpm_package.lua(527): revision number check successfully. Target revision=(0, 0, nil) and hpm revision=nil
2026-07-27 13:39:49.125705 firmware_mgmt NOTICE: task_mgmt.lua(443): Update task[Id: 3240200569, StartTime: 2026-07-27T13:39:48+08:00, Progress: 0, State: Running] successfully
2026-07-27 13:39:49.139158 firmware_mgmt NOTICE: action.lua(47): Parse hpm package successfully
2026-07-27 13:39:49.704708 firmware_mgmt NOTICE: task_instance.lua(238): upgrade_task file_name=8BP_cpldimage_pl1711.hpm, FirmwareType=BP_Cpld, fw_num=1, UniqueIDList=nil, sys_id=1, info_key=1_BP_Cpld_3240200569
2026-07-27 13:39:49.791483 firmware_mgmt NOTICE: task_mgmt.lua(443): Update task[Id: 3240200569, StartTime: 2026-07-27T13:39:48+08:00, Progress: 0, State: Running] successfully
2026-07-27 13:39:49.792017 firmware_mgmt NOTICE: info_mgmt.lua(71): create_info: info_key=1_BP_Cpld_3240200569, FirmwareType=BP_Cpld, task_id=3240200569, upg_fw_num=1
2026-07-27 13:39:49.893413 firmware_mgmt NOTICE: task_instance.lua(702): firmware(info key:1_BP_Cpld_3240200569) do upgrade stages
2026-07-27 13:39:49.892559 firmware_mgmt NOTICE: task_mgmt.lua(443): Update task[Id: 3240200569, StartTime: 2026-07-27T13:39:48+08:00, Progress: 0, State: Running] successfully
2026-07-27 13:39:49.894221 firmware_mgmt NOTICE: task_instance.lua(316): public initialize action start
2026-07-27 13:39:49.894645 firmware_mgmt NOTICE: hpm_package.lua(485): get obj table: 0x2c1ce3ed1e98 for Id=24
2026-07-27 13:39:49.895091 firmware_mgmt NOTICE: hpm_package.lua(539): now uptime = 189126, firmware init time = 0
2026-07-27 13:39:49.895448 firmware_mgmt NOTICE: hpm_package.lua(456): get obj table: 0x2c1ce3ed1e98 for Id=24
2026-07-27 13:39:49.895858 firmware_mgmt NOTICE: task_instance.lua(321): public initialize action end
2026-07-27 13:39:49.896273 firmware_mgmt NOTICE: info_mgmt.lua(230): info_key(1_BP_Cpld_3240200569) upgrade set_stage: INITIALIZE → DIFF_PREPARE, 5
2026-07-27 13:39:49.998047 firmware_mgmt NOTICE: task_mgmt.lua(443): Update task[Id: 3240200569, StartTime: 2026-07-27T13:39:48+08:00, Progress: 5, State: Starting] successfully
2026-07-27 13:39:50.014656 general_hardware NOTICE: upgrade_subject.lua(112): [on_upgrade_prepare] firmware_type:BP_Cpld cur_firmware_type:BP_Cpld
2026-07-27 13:39:50.015694 general_hardware NOTICE: upgrade_subject.lua(120): [on_upgrade_prepare] start upgrade BP_Cpld
2026-07-27 13:39:50.016844 general_hardware NOTICE: signal.lua(173): [cpld]Start the system[1] BP_Cpld upgrade prepare phase
2026-07-27 13:39:50.117716 firmware_mgmt NOTICE: task_mgmt.lua(443): Update task[Id: 3240200569, StartTime: 2026-07-27T13:39:48+08:00, Progress: 7, State: Running] successfully
2026-07-27 13:39:50.124641 general_hardware NOTICE: upgrade_subject.lua(127): [on_upgrade_prepare] end upgrade BP_Cpld
2026-07-27 13:39:50.129339 general_hardware NOTICE: fw_upgrade.lua(139): [cpld]get cpld_valid :nil
2026-07-27 13:39:50.132927 general_hardware ERROR: signal.lua(188): [cpld] prepare upgrade failed, error: …ualib/unit_manager/class/logic_fw/upgrade/fw_upgrade.lua:71: bad argument #1 to ‘find’ (string expected, got nil)
2026-07-27 13:39:50.135314 firmware_mgmt NOTICE: info_mgmt.lua(384): set FirmwareMode to Single
2026-07-27 13:39:50.135669 firmware_mgmt ERROR: control.lua(183): Upgrade BP_Cpld prepare failed, ret=-1
2026-07-27 13:39:50.136058 firmware_mgmt NOTICE: info_mgmt.lua(341): info_key(1_BP_Cpld_3240200569) upgrade failed, set_stage: DIFF_PREPARE → COMPLETED
2026-07-27 13:39:50.208225 firmware_mgmt ERROR: task_instance.lua(293): info_key(1_BP_Cpld_3240200569) Upgrade fail, timeout=1800, stage=COMMON_PREPARE
2026-07-27 13:39:50.208652 firmware_mgmt NOTICE: task_instance.lua(714): upgrade FirmwareMode Single
2026-07-27 13:39:50.209240 firmware_mgmt NOTICE: task_instance.lua(626): firmware(info key:1_BP_Cpld_3240200569) do upgrade ret:-1, pre_version:nil
2026-07-27 13:39:50.239914 firmware_mgmt NOTICE: task_mgmt.lua(174): task[Id: 3240200569, StartTime: 2026-07-27T13:39:48+08:00, Progress: 7, State: Exception] will be destroyed after 10 minutes
2026-07-27 13:39:50.240602 firmware_mgmt NOTICE: task_mgmt.lua(443): Update task[Id: 3240200569, StartTime: 2026-07-27T13:39:48+08:00, Progress: 7, State: Exception] successfully
2026-07-27 13:39:50.705855 firmware_mgmt WARNING: listen_cpu_idle.lua(81): cpu idle rate : 73.333333333333
2026-07-27 13:39:50.897211 firmware_mgmt NOTICE: tasks_scheduling.lua(127): upgrade queue is empty, exit the tasks processer
2026-07-27 13:39:50.897661 firmware_mgmt NOTICE: tasks_scheduling.lua(146): stop tasks processer
2026-07-27 13:39:50.899035 firmware_mgmt NOTICE: active_fructl.lua(96): get host type is Singlehost
2026-07-27 13:39:50.899447 firmware_mgmt NOTICE: active_single_host_fructrl.lua(73): active_single_host_fructrl fructrl get power status
2026-07-27 13:39:50.902441 firmware_mgmt NOTICE: state_simple_upgrading.lua(97): simple upgraded, current active mode is:nil, wait restart seconds:360000
2026-07-27 13:39:50.906112 firmware_mgmt NOTICE: init.lua(41): update status to FS_IDLE.
2026-07-27 13:39:50.907472 firmware_mgmt NOTICE: init.lua(80): Upgrading_Flag is false
2026-07-27 13:40:05.202024 firmware_mgmt NOTICE: task_service.lua(31): destroy_task_by_id: 3240200569
2026-07-27 13:40:05.219151 firmware_mgmt NOTICE: task_mgmt.lua(461): Destroy task[Id: 3240200569, StartTime: 2026-07-27T13:39:48+08:00, Progress: 7, State: Exception] successfully
2026-07-27 13:40:05.219509 firmware_mgmt NOTICE: task_id_mgmt.lua(40): delete serial task id(3240200569) successfully
2026-07-27 13:40:05.219760 firmware_mgmt NOTICE: task_id_mgmt.lua(42): del serial task id(3240200569) successfully
2026-07-27 13:40:05.220140 firmware_mgmt NOTICE: task_instance.lua(102): destroy task info(id:3240200569) successfully
期望结果
升级硬盘背板CPLD在Prepare阶段失败,如何判断失败根因以及Jtag链路是否联通呢?
实际结果
升级失败,报错2026-07-27 13:39:50.132927 general_hardware ERROR: signal.lua(188): [cpld] prepare upgrade failed, error: …ualib/unit_manager/class/logic_fw/upgrade/fw_upgrade.lua:71: bad argument #1 to ‘find’ (string expected, got nil),不清楚根因