On 6/20/23 20:01, Peter Maydell wrote:
> On Mon, 5 Jun 2023 at 21:23, Richard Henderson
> <richard.henderson@linaro.org> wrote:
>>
>> If CONFIG_USER_ONLY is ok generically, so is CONFIG_SOFTMMU,
>> because they are exactly opposite.
>
> This isn't quite right. CONFIG_USER_ONLY is theoretically
> something we should poison, because it's unsafe in the general
> case to use it in compiled-once source files. But in practice
> we make quite a lot of use of it in "we know this specific
> use of it is OK" situations, like ifdeffing out function
> prototypes. So we'd like to poison it, but we can't poison
> it without a huge amoun of refactoring which isn't really
> worth the effort.
Yes, a similar amount of refactoring would have been required within tcg/ to retain the
poison of CONFIG_SOFTMMU.
> So it's not a good model for "therefore it's OK not to poison
> CONFIG_SOFTMMU" -- we should leave that poisoned if we can,
> so we don't introduce either new buggy uses of CONFIG_SOFTMMU,
> or new "we know this is safe" uses of it which will make
> it difficult to put it back into the poison-list later...
My plan is to remove it as a define entirely. But not this cycle.
r~