[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 1/3] ipmi: Fix SEL get/set time commands
From: |
Cédric Le Goater |
Subject: |
Re: [Qemu-devel] [PATCH 1/3] ipmi: Fix SEL get/set time commands |
Date: |
Sun, 20 Aug 2017 09:45:57 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 |
On 08/19/2017 11:40 PM, address@hidden wrote:
> From: Corey Minyard <address@hidden>
>
> The minimum message size was wrong for both commands, for getting
> the time it's zero and for setting the time it's 4. And the data
> was being pulled from the wrong place in the set time message, it
> should be the first four bytes.
>
> Signed-off-by: Corey Minyard <address@hidden>
> ---
> hw/ipmi/ipmi_bmc_sim.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/hw/ipmi/ipmi_bmc_sim.c b/hw/ipmi/ipmi_bmc_sim.c
> index 277c28c..1c732aa 100644
> --- a/hw/ipmi/ipmi_bmc_sim.c
> +++ b/hw/ipmi/ipmi_bmc_sim.c
> @@ -1571,7 +1571,7 @@ static void set_sel_time(IPMIBmcSim *ibs,
> uint32_t val;
> struct ipmi_time now;
>
> - val = cmd[2] | (cmd[3] << 8) | (cmd[4] << 16) | (cmd[5] << 24);
> + val = cmd[0] | (cmd[1] << 8) | (cmd[2] << 16) | (cmd[3] << 24);
I am confused. I thought cmd[0] and cmd[1] were the 'netfun' and
'cmd' bytes, data beginning at byte 2. Isn't it the case for this
command also ?
C.
> ipmi_gettime(&now);
> ibs->sel.time_offset = now.tv_sec - ((long) val);
> }
> @@ -1802,8 +1802,8 @@ static const IPMICmdHandler storage_cmds[] = {
> [IPMI_CMD_GET_SEL_ENTRY] = { get_sel_entry, 8 },
> [IPMI_CMD_ADD_SEL_ENTRY] = { add_sel_entry, 18 },
> [IPMI_CMD_CLEAR_SEL] = { clear_sel, 8 },
> - [IPMI_CMD_GET_SEL_TIME] = { get_sel_time, 6 },
> - [IPMI_CMD_SET_SEL_TIME] = { set_sel_time },
> + [IPMI_CMD_GET_SEL_TIME] = { get_sel_time },
> + [IPMI_CMD_SET_SEL_TIME] = { set_sel_time, 4 },
> };
>
> static const IPMINetfn storage_netfn = {
>