Re: [PATCH 2/2] kunit: enable hardware acceleration when available

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

 



On Fri, Oct 25, 2024 at 05:03:54PM -0400, Tamir Duberstein wrote:
> @@ -124,6 +125,29 @@ class LinuxSourceTreeOperationsQemu(LinuxSourceTreeOperations):
>  				'-no-reboot',
>  				'-nographic',
>  				'-serial', self._serial] + self._extra_qemu_params
> +		accelerators = {
> +			line.strip()
> +			for line in subprocess.check_output([qemu_binary, "-accel", "help"], text=True).splitlines()
> +			if line and line.islower()
> +		}
> +		if 'kvm' in accelerators:
> +			try:
> +				with open('/dev/kvm', 'rb+'):
> +					qemu_command.extend(['-accel', 'kvm'])
> +			except OSError as e:
> +				print(e)
> +		elif 'hvf' in accelerators:
> +			try:
> +				for line in subprocess.check_output(['sysctl', 'kern.hv_support'], text=True).splitlines():
> +					if not line:
> +						continue
> +					key, value = line.split(':')
> +					if key == 'kern.hv_support' and bool(value):
> +						qemu_command.extend(['-accel', 'hvf'])
> +						break
> +			except subprocess.CalledProcessError as e:
> +				print(e)
> +

QEMU supports falling back if one accelerator is not available, if you
specify multiple like -accel kvm:tcg.  Couldn't you rely on that rather
than re-implementing the availability checks here?

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux