qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v5] target-ppc: ppc64 target's virtio can be eit


From: Alexander Graf
Subject: Re: [Qemu-devel] [PATCH v5] target-ppc: ppc64 target's virtio can be either endian
Date: Mon, 21 Apr 2014 09:56:48 +0200



Am 21.04.2014 um 06:16 schrieb Bharata B Rao <address@hidden>:

On Mon, Apr 14, 2014 at 5:42 PM, Greg Kurz <address@hidden> wrote:

+
+#if !defined(CONFIG_USER_ONLY)
+bool virtio_is_big_endian(void)
+{
+    PowerPCCPU *cp = POWERPC_CPU(first_cpu);
+    CPUPPCState *env = &cp->env;
+
+    /* NOTE: booke uses the same number for another unrelated spr.
+     */
+    if (strcmp(env->spr_cb[SPR_LPCR].name, "LPCR")) {
+        return TARGET_WORDS_BIGENDIAN;
+    } else {
+        return !(env->spr[SPR_LPCR] & LPCR_ILE);
+    }
+}
+#endif

I am adding crash support for little endian ppc64 guests and I realized that the above code needs to be re-used in target-ppc/arch_dump.c:cpu_get_dump_info() to set the endianness.

Wouldn't it make more sense to treat dumps like gdb and set the endianness depending on MSR_LE?

Alex


Do you think it is worth to have this routine as a generic routine to determine endianness so that subsystems other than virtio can reuse the same ?

Regards,
Bharata.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]