From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754580AbcBHTmB (ORCPT ); Mon, 8 Feb 2016 14:42:01 -0500 Received: from mail.linuxfoundation.org ([140.211.169.12]:54834 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753938AbcBHTl6 (ORCPT ); Mon, 8 Feb 2016 14:41:58 -0500 Date: Mon, 8 Feb 2016 11:41:57 -0800 From: Greg KH To: Sinclair Yeh Cc: x86@kernel.org, linux-kernel@vger.kernel.org, pv-drivers@vmware.com, Xavier Deguillard , virtualization@lists.linux-foundation.org Subject: Re: [PATCH 6/6] VMware balloon: Update vmw_balloon.c to use the VMW_PORT macro Message-ID: <20160208194157.GA10802@kroah.com> References: <1449271183-1746-1-git-send-email-syeh@vmware.com> <1453239965-1466-1-git-send-email-syeh@vmware.com> <1453239965-1466-7-git-send-email-syeh@vmware.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1453239965-1466-7-git-send-email-syeh@vmware.com> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 > Reviewed-by: Thomas Hellstrom > Reviewed-by: Alok N Kataria > Acked-by: Xavier Deguillard > Cc: pv-drivers@vmware.com > Cc: Xavier Deguillard > Cc: linux-kernel@vger.kernel.org > Cc: virtualization@lists.linux-foundation.org > Cc: Greg Kroah-Hartman Acked-by: Greg Kroah-Hartman > -#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... :)