lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20211116182758.GB56473@e120937-lin>
Date:   Tue, 16 Nov 2021 18:27:58 +0000
From:   Cristian Marussi <cristian.marussi@....com>
To:     Vincent Guittot <vincent.guittot@...aro.org>
Cc:     sudeep.holla@....com, linux-arm-kernel@...ts.infradead.org,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH] arm/scmi: fix base agent discover response

On Tue, Nov 16, 2021 at 06:32:55PM +0100, Vincent Guittot wrote:
> According to scmi specification, the response of the discover agent request
> is made of:
> - int32 status
> - uint32 agent_id
> - uint8 name[16]
> 
> but the current implementation doesn't take into account the agent_id field
> and only allocates a rx buffer of SCMI_MAX_STR_SIZE length
> 

Hi Vincent,

> Allocate the correct length for rx buffer and copy the name from the
> correct offset in the response.
> 
> While no error were returned until v5.15, v5.16-rc1 fails with virtio_scmi
> transport channel:
> 
> [    1.093253] arm-scmi firmware:scmi0: SCMI Notifications - Core Enabled.
> [    1.114776] arm-scmi firmware:scmi0: SCMI Protocol v2.0 'Linaro:PMWG' Firmware version 0x2090000
> [    1.117544] scmi-virtio virtio0: tx:used len 28 is larger than in buflen 24
> 

Good catch...I was (still) not testing BASE_DISCOVER_AGENT in my virtio setup
given it's optional....

Once implemented the command I could reproduce and test you fix.

[    1.239629] arm-scmi firmware:scmi: SCMI Notifications - Core Enabled.
[    1.266401] arm-scmi firmware:scmi: SCMI Protocol v2.0 'EMU-SCMI-VM:userland' Firmware version 0xdeadbeef
[    1.280360] arm-scmi firmware:scmi: Found 3 protocol(s) 3 agent(s)
[    1.286304] arm-scmi firmware:scmi: Agent 0: AGENT_00
[    1.294115] arm-scmi firmware:scmi: Agent 1: AGENT_01
[    1.301062] arm-scmi firmware:scmi: Agent 2: AGENT_02

LGTM.

Maybe it's worth also a Fixes...

The earlier where this was introduced seems:

Fixes: b6f20ff8bd94 ("firmware: arm_scmi: add common infrastructure and support for base protocol")

and then it was carried on (:D) after heavily refactoring in:

Fixes: 8d3581c2526f ("firmware: arm_scmi: Port base protocol to new interface")

FWIW,

Reviewed-by: Cristian Marussi <cristian.marussi@....com>
Tested-by: Cristian Marussi <cristian.marussi@....com>

Thanks,
Cristian

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ