mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-04 08:08:54 +00:00
ipmi: Refine retry conditions for getting device id
Rarely but still failures are observed while getting BMC device ID so this commit changes the condition to retry to get device id when cc is not IPMI_CC_NO_ERROR. Signed-off-by: Terry Duncan <terry.s.duncan@intel.com> Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com> Message-Id: <20210225045027.9344-1-jae.hyun.yoo@linux.intel.com> Signed-off-by: Corey Minyard <cminyard@mvista.com>
This commit is contained in:
parent
a74e6a014c
commit
c6ddd5f1c3
2 changed files with 4 additions and 8 deletions
|
@ -2447,10 +2447,8 @@ static int __get_device_id(struct ipmi_smi *intf, struct bmc_device *bmc)
|
|||
wait_event(intf->waitq, bmc->dyn_id_set != 2);
|
||||
|
||||
if (!bmc->dyn_id_set) {
|
||||
if ((bmc->cc == IPMI_DEVICE_IN_FW_UPDATE_ERR
|
||||
|| bmc->cc == IPMI_DEVICE_IN_INIT_ERR
|
||||
|| bmc->cc == IPMI_NOT_IN_MY_STATE_ERR)
|
||||
&& ++retry_count <= GET_DEVICE_ID_MAX_RETRY) {
|
||||
if (bmc->cc != IPMI_CC_NO_ERROR &&
|
||||
++retry_count <= GET_DEVICE_ID_MAX_RETRY) {
|
||||
msleep(500);
|
||||
dev_warn(intf->si_dev,
|
||||
"BMC returned 0x%2.2x, retry get bmc device id\n",
|
||||
|
|
|
@ -1346,10 +1346,8 @@ static int try_get_dev_id(struct smi_info *smi_info)
|
|||
/* record completion code */
|
||||
unsigned char cc = *(resp + 2);
|
||||
|
||||
if ((cc == IPMI_DEVICE_IN_FW_UPDATE_ERR
|
||||
|| cc == IPMI_DEVICE_IN_INIT_ERR
|
||||
|| cc == IPMI_NOT_IN_MY_STATE_ERR)
|
||||
&& ++retry_count <= GET_DEVICE_ID_MAX_RETRY) {
|
||||
if (cc != IPMI_CC_NO_ERROR &&
|
||||
++retry_count <= GET_DEVICE_ID_MAX_RETRY) {
|
||||
dev_warn(smi_info->io.dev,
|
||||
"BMC returned 0x%2.2x, retry get bmc device id\n",
|
||||
cc);
|
||||
|
|
Loading…
Reference in a new issue