Mailing List Archive

Running old RHEL as a VM on Ryzen
I tried running an old version of RHEL with an old 3.x kernel in
VirtualBox, however, it won't run due to my hosts Ryzen CPU so I guess I
need something that does CPU emulation.

Is this likely to be achievable with qemu ?
Re: Running old RHEL as a VM on Ryzen [ In reply to ]
On 2021-04-14 15:24+1000 Adam Carter <adamcarter3@gmail.com> wrote:

> I tried running an old version of RHEL with an old 3.x kernel in
> VirtualBox, however, it won't run due to my hosts Ryzen CPU so I
> guess I need something that does CPU emulation.
>
> Is this likely to be achievable with qemu ?

Yes. Look up the release date of your kernel[1] and pick a slightly
older CPU[2].

[1] <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/refs/>
[2] <https://qemu.readthedocs.io/en/latest/system/qemu-cpu-models.html>.

--
Get my PGP key with `gpg --locate-keys tastytea@tastytea.de` or at
<https://tastytea.de/tastytea.asc>.
Re: Running old RHEL as a VM on Ryzen [ In reply to ]
>
> > I tried running an old version of RHEL with an old 3.x kernel in
> > VirtualBox, however, it won't run due to my hosts Ryzen CPU so I
> > guess I need something that does CPU emulation.
> >
> > Is this likely to be achievable with qemu ?
>
> Yes. Look up the release date of your kernel[1] and pick a slightly
> older CPU[2].
>
> [1] <
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/refs/>
> [2] <https://qemu.readthedocs.io/en/latest/system/qemu-cpu-models.html>.
>
>
Great.

Ok i see 3.10 was released 2013-06-30, so looking for a cpu released the
previous year, say
IvyBridge, IvyBridge-IBR Intel Xeon E3-12xx v2 (Ivy Bridge, 2012)

and $ qemu-system-x86_64 -cpu ? | grep -i ivy
x86 IvyBridge (alias configured by machine type)

x86 IvyBridge-IBRS (alias of IvyBridge-v2)

x86 IvyBridge-v1 Intel Xeon E3-12xx v2 (Ivy Bridge)

x86 IvyBridge-v2 Intel Xeon E3-12xx v2 (Ivy Bridge, IBRS)


So if I run the following then RHEL will think it's running on an IvyBridge
cpu, right?
$ qemu-system-x86_64 -cpu 'x86 IvyBridge-v1' etc
Re: Running old RHEL as a VM on Ryzen [ In reply to ]
On Wednesday, 14 April 2021 10:28:32 BST Adam Carter wrote:
> > > I tried running an old version of RHEL with an old 3.x kernel in
> > > VirtualBox, however, it won't run due to my hosts Ryzen CPU so I
> > > guess I need something that does CPU emulation.
> > >
> > > Is this likely to be achievable with qemu ?
> >
> > Yes. Look up the release date of your kernel[1] and pick a slightly
> > older CPU[2].
> >
> > [1] <
> > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/refs/>
> > [2] <https://qemu.readthedocs.io/en/latest/system/qemu-cpu-models.html>.
>
> Great.
>
> Ok i see 3.10 was released 2013-06-30, so looking for a cpu released the
> previous year, say
> IvyBridge, IvyBridge-IBR Intel Xeon E3-12xx v2 (Ivy Bridge, 2012)
>
> and $ qemu-system-x86_64 -cpu ? | grep -i ivy
> x86 IvyBridge (alias configured by machine type)
>
> x86 IvyBridge-IBRS (alias of IvyBridge-v2)
>
> x86 IvyBridge-v1 Intel Xeon E3-12xx v2 (Ivy Bridge)
>
> x86 IvyBridge-v2 Intel Xeon E3-12xx v2 (Ivy Bridge, IBRS)
>
>
> So if I run the following then RHEL will think it's running on an IvyBridge
> cpu, right?
> $ qemu-system-x86_64 -cpu 'x86 IvyBridge-v1' etc

Try:

qemu-system-x86_64 -cpu IvyBridge-v1 ...

The x86 part is to indicate the arch only, not meant to be included in the
stanza.
Re: Running old RHEL as a VM on Ryzen [ In reply to ]
>
> > Ok i see 3.10 was released 2013-06-30, so looking for a cpu released the
> > previous year, say
> > IvyBridge, IvyBridge-IBR Intel Xeon E3-12xx v2 (Ivy Bridge, 2012)
> >
> > and $ qemu-system-x86_64 -cpu ? | grep -i ivy
> > x86 IvyBridge (alias configured by machine type)
> >
> > x86 IvyBridge-IBRS (alias of IvyBridge-v2)
> >
> > x86 IvyBridge-v1 Intel Xeon E3-12xx v2 (Ivy Bridge)
> >
> > x86 IvyBridge-v2 Intel Xeon E3-12xx v2 (Ivy Bridge, IBRS)
> >
> >
> > So if I run the following then RHEL will think it's running on an
> IvyBridge
> > cpu, right?
> > $ qemu-system-x86_64 -cpu 'x86 IvyBridge-v1' etc
>
> Try:
>
> qemu-system-x86_64 -cpu IvyBridge-v1 ...
>
> The x86 part is to indicate the arch only, not meant to be included in the
> stanza.


Thanks - it's working. I had to go back one generation earlier to
'SandyBridge' as IvyBridge couldn't be used due to Ryzen missing the erms
instruction.