lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 8 Feb 2016 11:41:57 -0800
From:	Greg KH <gregkh@...uxfoundation.org>
To:	Sinclair Yeh <syeh@...are.com>
Cc:	x86@...nel.org, linux-kernel@...r.kernel.org,
	pv-drivers@...are.com, Xavier Deguillard <xdeguillard@...are.com>,
	virtualization@...ts.linux-foundation.org
Subject: Re: [PATCH 6/6] VMware balloon: Update vmw_balloon.c to use the
 VMW_PORT macro

On Tue, Jan 19, 2016 at 01:46:05PM -0800, Sinclair Yeh wrote:
> Updated VMWARE_BALLOON_CMD to use the common VMW_PORT macro.
> Doing this rather than replacing all instances of VMWARE_BALLOON_CMD
> to minimize code change.
> 
> Signed-off-by: Sinclair Yeh <syeh@...are.com>
> Reviewed-by: Thomas Hellstrom <thellstrom@...are.com>
> Reviewed-by: Alok N Kataria <akataria@...are.com>
> Acked-by: Xavier Deguillard <xdeguillard@...are.com>
> Cc: pv-drivers@...are.com
> Cc: Xavier Deguillard <xdeguillard@...are.com>
> Cc: linux-kernel@...r.kernel.org
> Cc: virtualization@...ts.linux-foundation.org
> Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>


Acked-by: Greg Kroah-Hartman <gregkh@...uxfoundation.org>

> -#define VMWARE_BALLOON_CMD(cmd, arg1, arg2, result)		\
> -({								\
> -	unsigned long __status, __dummy1, __dummy2, __dummy3;	\
> -	__asm__ __volatile__ ("inl %%dx" :			\
> -		"=a"(__status),					\
> -		"=c"(__dummy1),					\
> -		"=d"(__dummy2),					\
> -		"=b"(result),					\
> -		"=S" (__dummy3) :				\
> -		"0"(VMW_BALLOON_HV_MAGIC),			\
> -		"1"(VMW_BALLOON_CMD_##cmd),			\
> -		"2"(VMW_BALLOON_HV_PORT),			\
> -		"3"(arg1),					\
> -		"4" (arg2) :					\
> -		"memory");					\
> -	if (VMW_BALLOON_CMD_##cmd == VMW_BALLOON_CMD_START)	\
> -		result = __dummy1;				\
> -	result &= -1UL;						\
> -	__status & -1UL;					\
> +#define VMWARE_BALLOON_CMD(cmd, arg1, arg2, result)			\
> +({									\
> +	unsigned long __status, __dummy1, __dummy2;			\
> +	unsigned long __si, __di;					\
> +	VMW_PORT(VMW_BALLOON_CMD_##cmd, arg1, arg2, 0,			\
> +		 VMW_BALLOON_HV_PORT, VMW_BALLOON_HV_MAGIC,		\
> +		 __status, result, __dummy1, __dummy2, __si, __di);	\
> +	if (VMW_BALLOON_CMD_##cmd == VMW_BALLOON_CMD_START)		\
> +		result = __dummy1;					\
> +	result &= -1UL;							\
> +	__status & -1UL;						\
>  })

Honestly, it doesn't look anymore "readable" to me, but it's your code
to maintain, not mine... :)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ