diff mbox series

irqchip/gic-v3-its: Reference to its_invall_cmd descriptor when building INVALL

Message ID 20191202071021.1251-1-yuzenghui@huawei.com (mailing list archive)
State Mainlined
Commit 107945227ac5d4c37911c7841b27c64b489ce9a9
Headers show
Series irqchip/gic-v3-its: Reference to its_invall_cmd descriptor when building INVALL | expand

Commit Message

Zenghui Yu Dec. 2, 2019, 7:10 a.m. UTC
It looks like an obvious mistake to use its_mapc_cmd descriptor when
building the INVALL command block. It so far worked by luck because
both its_mapc_cmd.col and its_invall_cmd.col sit at the same offset of
the ITS command descriptor, but we should not rely on it.

Signed-off-by: Zenghui Yu <yuzenghui@huawei.com>
---
 drivers/irqchip/irq-gic-v3-its.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Marc Zyngier Dec. 2, 2019, 10 a.m. UTC | #1
Hi Zenghui,

On 2019-12-02 07:10, Zenghui Yu wrote:
> It looks like an obvious mistake to use its_mapc_cmd descriptor when
> building the INVALL command block. It so far worked by luck because
> both its_mapc_cmd.col and its_invall_cmd.col sit at the same offset 
> of
> the ITS command descriptor, but we should not rely on it.
>
> Signed-off-by: Zenghui Yu <yuzenghui@huawei.com>
> ---
>  drivers/irqchip/irq-gic-v3-its.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/irqchip/irq-gic-v3-its.c
> b/drivers/irqchip/irq-gic-v3-its.c
> index c52cc8d6d6b8..b3fec78b2226 100644
> --- a/drivers/irqchip/irq-gic-v3-its.c
> +++ b/drivers/irqchip/irq-gic-v3-its.c
> @@ -598,7 +598,7 @@ static struct its_collection
> *its_build_invall_cmd(struct its_node *its,
>  						   struct its_cmd_desc *desc)
>  {
>  	its_encode_cmd(cmd, GITS_CMD_INVALL);
> -	its_encode_collection(cmd, desc->its_mapc_cmd.col->col_id);
> +	its_encode_collection(cmd, desc->its_invall_cmd.col->col_id);
>
>  	its_fixup_cmd(cmd);

Yup, well spotted. Thankfully, there is no impact due to the two
structures having similar layouts, but that definitely needs
fixing.

I'll queue this for post -rc1.

Thanks,

         M.
diff mbox series

Patch

diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
index c52cc8d6d6b8..b3fec78b2226 100644
--- a/drivers/irqchip/irq-gic-v3-its.c
+++ b/drivers/irqchip/irq-gic-v3-its.c
@@ -598,7 +598,7 @@  static struct its_collection *its_build_invall_cmd(struct its_node *its,
 						   struct its_cmd_desc *desc)
 {
 	its_encode_cmd(cmd, GITS_CMD_INVALL);
-	its_encode_collection(cmd, desc->its_mapc_cmd.col->col_id);
+	its_encode_collection(cmd, desc->its_invall_cmd.col->col_id);
 
 	its_fixup_cmd(cmd);