[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] unicore32: Mark as deprecated
From: |
Daniel P . Berrangé |
Subject: |
Re: [Qemu-devel] [PATCH] unicore32: Mark as deprecated |
Date: |
Thu, 8 Mar 2018 16:05:29 +0000 |
User-agent: |
Mutt/1.9.2 (2017-12-15) |
On Thu, Mar 08, 2018 at 03:40:16PM +0000, Peter Maydell wrote:
> We intend to remove the unicore32 target code:
>
> * It has had no changes since 2012 that were not tree-wide
> maintenance/API changes/other global updates
> * We dropped the linux-user unicore32 support in 2016 because of a
> clash between the 'old ABI' that it was implementing and the ABI
> that's actually in the upstream Linux kernel, and there have been
> no moves to get this fixed so we could re-enable it, nor any
> complaints when it went away
> * Linux is now planning to drop unicore support:
> https://www.mail-archive.com/address@hidden/msg1619640.html
> * there is apparently no upstream gcc support for the architecture
> * nobody has ever reported a bug or problem to us about it
>
> This commit patches the unicore32 target to warn on startup that it
> is deprecated, and adds a note to our documentation's deprecation
> section.
>
> Signed-off-by: Peter Maydell <address@hidden>
> ---
> I proposed deprecation of unicore32 on 27th Feb:
> https://lists.gnu.org/archive/html/qemu-devel/2018-02/msg06634.html
> and got several 'yes'es and no objections. This is the "changing
> the codebase" part of that, ready for the 2.12 codefreeze.
>
> We should also note this in the 2.12 Changelog.
> ---
> target/unicore32/cpu.c | 11 +++++++++++
> qemu-doc.texi | 5 +++++
> 2 files changed, 16 insertions(+)
>
> diff --git a/target/unicore32/cpu.c b/target/unicore32/cpu.c
> index 29d160a88d..e95fa55b8e 100644
> --- a/target/unicore32/cpu.c
> +++ b/target/unicore32/cpu.c
> @@ -19,6 +19,8 @@
> #include "migration/vmstate.h"
> #include "exec/exec-all.h"
> #include "fpu/softfloat.h"
> +#include "sysemu/qtest.h"
> +#include "qemu/error-report.h"
>
> static void uc32_cpu_set_pc(CPUState *cs, vaddr value)
> {
> @@ -120,6 +122,15 @@ static void uc32_cpu_initfn(Object *obj)
> #endif
>
> tlb_flush(cs);
> +
> + /* We can't do this in class_init because the qtest_enabled
> + * flag hasn't yet been initialized there. Luckily the Unicore32
> + * machines don't support SMP so the message will only appear once.
> + */
> + if (!qtest_enabled()) {
> + warn_report("qemu-system-unicore32 is deprecated "
> + "and will be removed in a future QEMU release.");
> + }
> }
>
> static const VMStateDescription vmstate_uc32_cpu = {
> diff --git a/qemu-doc.texi b/qemu-doc.texi
> index 39e38c87ec..0e8609c11c 100644
> --- a/qemu-doc.texi
> +++ b/qemu-doc.texi
> @@ -2779,6 +2779,11 @@ support page sizes < 4096 any longer.
> The ``xlnx-ep108'' machine has been replaced by the ``xlnx-zcu102'' machine.
> The ``xlnx-zcu102'' machine has the same features and capabilites in QEMU.
>
> address@hidden Unicore32 targets (since 2.12.0)
> +
> +The ``unicore32'' CPU target and ``qemu-system-unicore32'' will be removed,
> +since this architecture is unmaintained.
> +
> @node License
> @appendix License
Reviewed-by: Daniel P. Berrangé <address@hidden>
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|