[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v6 06/11] target/arm: Factor out code for setting MTE TCF0 fi
From: |
Gustavo Romero |
Subject: |
Re: [PATCH v6 06/11] target/arm: Factor out code for setting MTE TCF0 field |
Date: |
Fri, 28 Jun 2024 15:13:34 -0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 |
Hi Richard,
On 6/28/24 2:00 PM, Richard Henderson wrote:
On 6/28/24 08:49, Gustavo Romero wrote:
I thought you meant osdep.h should not be included _at all_ in my case, either
in mte_user_helper.h or in mte_user_helper.c. Maybe the wording in the docs
should be "Do not include "qemu/osdep.h" from header files. Include it from .c
files, when necessary.".
Not "when necessary", always, and always first.
Got it!
See the "Include directives" section of docs/devel/style.rst, which does explicitly say
'Do not include "qemu/osdep.h" from header files'.
Yep, Phil pointed out this doc when we were discussing it in v5.
I was actually referring to it about the wording. Maybe then it should
be more explicitly that osdep.h _always_ has to be present.
Re-reading it after your clarifications makes it clear, but the first time
Phil pointed it out the phrases:
"[...] since the .c file will have already included it." and
"Headers should normally include everything they need beyond osdep.h."
weren't enough to me to make it clear that osdep.h must always be included
(present) in the .c files. "will have already included" sounded ambiguous to
me, more like, if necessary it would have already be included in .c (but not
always). But, well, that can be a falt in my interpretation..
Thanks a lot for the clarification.
I think we agree osdep.h is necessary and must be put in mte_user_helper.c. But
that left me wondering how it would work for sources including
mte_user_helper.h,
because it can be the case they don't have the declarations for the types used
in
the function prototypes, in this case, for CPUArchState and abi_long types in
arm_set_mte_tcf0.
CPUArchState will come from qemu/typedefs.h via osdep.h.
For this particular function, 'int' would have been enough,
since we only care about the low two bits.
hmm, right. I'll send a follow up patch to improve it since Alex already picked
up
the series to gdbstub/next. Thanks!
Cheers,
Gustavo
- Re: [PATCH v6 01/11] gdbstub: Clean up process_string_cmd, (continued)
- [PATCH v6 03/11] gdbstub: Add support for target-specific stubs, Gustavo Romero, 2024/06/28
- [PATCH v6 02/11] gdbstub: Move GdbCmdParseEntry into a new header file, Gustavo Romero, 2024/06/28
- [PATCH v6 04/11] target/arm: Fix exception case in allocation_tag_mem_probe, Gustavo Romero, 2024/06/28
- [PATCH v6 05/11] target/arm: Make some MTE helpers widely available, Gustavo Romero, 2024/06/28
- [PATCH v6 06/11] target/arm: Factor out code for setting MTE TCF0 field, Gustavo Romero, 2024/06/28
Re: [PATCH v6 06/11] target/arm: Factor out code for setting MTE TCF0 field, Alex Bennée, 2024/06/28
[PATCH v6 07/11] gdbstub: Make hex conversion function non-internal, Gustavo Romero, 2024/06/28
[PATCH v6 08/11] gdbstub: Pass CPU context to command handler, Gustavo Romero, 2024/06/28
[PATCH v6 09/11] gdbstub: Use true to set cmd_startswith, Gustavo Romero, 2024/06/28
[PATCH v6 10/11] gdbstub: Add support for MTE in user mode, Gustavo Romero, 2024/06/28
[PATCH v6 11/11] tests/tcg/aarch64: Add MTE gdbstub tests, Gustavo Romero, 2024/06/28
Re: [PATCH v6 00/11] Add MTE stubs for aarch64 user mode, Alex Bennée, 2024/06/28