On Wed, Mar 20, 2013 at 09:26:36AM +0800, Gao feng wrote:
于 2013/03/19/ 17:59, Daniel P. Berrange wrote:
> On Tue, Mar 19, 2013 at 09:59:37AM +0800, Gao feng wrote:
>> Intend to reduce the redundant code,use virNumaSetupMemoryPolicy
>> to replace virLXCControllerSetupNUMAPolicy and
>> qemuProcessInitNumaMemoryPolicy.
>>
>> This patch also moves the numa related codes to the
>> file virnuma.c and virnuma.h
>>
>> Signed-off-by: Gao feng <gaofeng(a)cn.fujitsu.com>
>> ---
>> src/conf/domain_conf.c | 17 ++-----
>> src/conf/domain_conf.h | 17 +------
>> src/libvirt_private.syms | 5 +-
>> src/lxc/lxc_controller.c | 114 +-----------------------------------------
>> src/qemu/qemu_cgroup.c | 4 +-
>> src/qemu/qemu_process.c | 121 +--------------------------------------------
>> src/util/virnuma.c | 126 +++++++++++++++++++++++++++++++++++++++++++++++
>> src/util/virnuma.h | 30 +++++++++++
>> 8 files changed, 168 insertions(+), 266 deletions(-)
>>
>
>> diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
>> index 96f11ba..98c4745 100644
>> --- a/src/conf/domain_conf.h
>> +++ b/src/conf/domain_conf.h
>> @@ -47,6 +47,7 @@
>> # include "device_conf.h"
>> # include "virbitmap.h"
>> # include "virstoragefile.h"
>> +# include "virnuma.h"
>>
>> /* forward declarations of all device types, required by
>> * virDomainDeviceDef
>> @@ -1700,18 +1701,6 @@ virDomainVcpuPinDefPtr
virDomainVcpuPinFindByVcpu(virDomainVcpuPinDefPtr *def,
>> int nvcpupin,
>> int vcpu);
>>
>> -typedef struct _virDomainNumatuneDef virDomainNumatuneDef;
>> -typedef virDomainNumatuneDef *virDomainNumatuneDefPtr;
>> -struct _virDomainNumatuneDef {
>> - struct {
>> - virBitmapPtr nodemask;
>> - int mode;
>> - int placement_mode; /* enum virDomainNumatuneMemPlacementMode */
>> - } memory;
>> -
>> - /* Future NUMA tuning related stuff should go here. */
>> -};
>> -
>> typedef struct _virBlkioDeviceWeight virBlkioDeviceWeight;
>> typedef virBlkioDeviceWeight *virBlkioDeviceWeightPtr;
>> struct _virBlkioDeviceWeight {
>> @@ -1801,7 +1790,7 @@ struct _virDomainDef {
>> virDomainVcpuPinDefPtr emulatorpin;
>> } cputune;
>>
>> - virDomainNumatuneDef numatune;
>> + virNumatuneDef numatune;
>>
>> /* These 3 are based on virDomainLifeCycleAction enum flags */
>> int onReboot;
>> @@ -2396,8 +2385,6 @@ VIR_ENUM_DECL(virDomainGraphicsSpicePlaybackCompression)
>> VIR_ENUM_DECL(virDomainGraphicsSpiceStreamingMode)
>> VIR_ENUM_DECL(virDomainGraphicsSpiceClipboardCopypaste)
>> VIR_ENUM_DECL(virDomainGraphicsSpiceMouseMode)
>> -VIR_ENUM_DECL(virDomainNumatuneMemMode)
>> -VIR_ENUM_DECL(virDomainNumatuneMemPlacementMode)
>> VIR_ENUM_DECL(virDomainHyperv)
>> VIR_ENUM_DECL(virDomainRNGModel)
>> VIR_ENUM_DECL(virDomainRNGBackend)
>> diff --git a/src/util/virnuma.h b/src/util/virnuma.h
>> index d3d7d3e..ef201b9 100644
>> --- a/src/util/virnuma.h
>> +++ b/src/util/virnuma.h
>> @@ -22,7 +22,37 @@
>> #ifndef __VIR_NUMA_H__
>> # define __VIR_NUMA_H__
>>
>> +# include "internal.h"
>> +# include "virbitmap.h"
>> +# include "virutil.h"
>> +
>> +enum virNumatuneMemPlacementMode {
>> + VIR_NUMATUNE_MEM_PLACEMENT_MODE_DEFAULT = 0,
>> + VIR_NUMATUNE_MEM_PLACEMENT_MODE_STATIC,
>> + VIR_NUMATUNE_MEM_PLACEMENT_MODE_AUTO,
>> +
>> + VIR_NUMATUNE_MEM_PLACEMENT_MODE_LAST
>> +};
>
> This enum is previously defined in domain_conf.h, but you've
> not removed it from there, so now we have 2 enums for the same
> thing.
>
Oops,I forgot to remove it.
> Also you've ignore my request to use virNumaTune as the
> capatilization and VIR_NUMA_TUNE for enums
>
Get it,if I use virNumatune as the capatilization,I need to
change virnuma.[c|h] to virnumatune.[c|h]?
No, do not rename the file; do not use virNumatune.
The enum values should use VIR_NUMA_TUNE and functions should use
virNumaTune
Regards,
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|