[PATCH] This patch adds back the fake_host() functions and groups providers into a single process when used with OpenPegasus

# HG changeset patch # User Chip Vincent <cvincent@us.ibm.com> # Date 1288135043 14400 # Node ID 0a19c3e95fdf1fdf263d150470333ecfb566115b # Parent 756b9699be781c251b45ba8e4d9163ef485719e0 This patch adds back the fake_host() functions and groups providers into a single process when used with OpenPegasus. fake_host() is needed to ensure keys are propagated properly, and moving providers into a single process is needed to ensure indications work as expected (there are dependencies between some providers that do not work as expected when they are run in different processes). Signed-off-by: Chip Vincent <cvincent@us.ibm.com> diff -r 756b9699be78 -r 0a19c3e95fdf provider-register.sh --- a/provider-register.sh Tue Oct 19 13:48:49 2010 -0400 +++ b/provider-register.sh Tue Oct 26 19:17:23 2010 -0400 @@ -61,6 +61,7 @@ Version = "2.0.0"; InterfaceType = "CMPI"; InterfaceVersion = "2.0.0"; + ModuleGroupName = "libvirt-cim"; }; EOFPM diff -r 756b9699be78 -r 0a19c3e95fdf src/Virt_HostSystem.c --- a/src/Virt_HostSystem.c Tue Oct 19 13:48:49 2010 -0400 +++ b/src/Virt_HostSystem.c Tue Oct 26 19:17:23 2010 -0400 @@ -38,7 +38,6 @@ const static CMPIBroker *_BROKER; -/* static int resolve_host(char *host, char *buf, int size) { struct hostent *he; @@ -76,9 +75,7 @@ return 0; } -*/ -/* static int get_fqdn(char *buf, int size) { char host[256]; @@ -96,9 +93,7 @@ return ret; } -*/ -/* static int set_host_system_properties(CMPIInstance *instance) { CMPIStatus s = {CMPI_RC_OK, NULL}; @@ -119,9 +114,7 @@ return 1; } -*/ -/* static CMPIStatus fake_host(const CMPIBroker *broker, const CMPIObjectPath *reference, CMPIInstance **_inst) @@ -157,7 +150,6 @@ return s; } -*/ CMPIStatus get_host(const CMPIBroker *broker, const CMPIContext *context, @@ -167,6 +159,8 @@ { CMPIStatus s = {CMPI_RC_OK, NULL}; + s = fake_host(broker, reference, _inst); + if (!is_get_inst && (s.rc == CMPI_RC_ERR_NOT_FOUND)) { /* This is not an error */ return (CMPIStatus){CMPI_RC_OK, NULL}; -- Chip Vincent Open Virtualization, Linux Technology Center IBM Systems & Technology Group phone: 919-254-4482, T/L 444-4482 email: cvincent@us.ibm.com

+1 This patch and "Return profiles according to roles" patch has been reviewed but I would like our test team to pick up the latest build with these patches and run the entire cimtest. Thanks Sharad Mishra Open Virtualization Linux Technology Center IBM libvirt-cim-bounces@redhat.com wrote on 10/26/2010 04:22:17 PM:
Chip Vincent <cvincent@linux.vnet.ibm.com> Sent by: libvirt-cim-bounces@redhat.com
10/26/10 04:22 PM
Please respond to List for discussion and development of libvirt CIM <libvirt-cim@redhat.com>
To
List for discussion and development of libvirt CIM <libvirt-cim@redhat.com>
cc
Subject
[Libvirt-cim] [PATCH] This patch adds back the fake_host() functions and groups providers into a single process when used with OpenPegasus
# HG changeset patch # User Chip Vincent <cvincent@us.ibm.com> # Date 1288135043 14400 # Node ID 0a19c3e95fdf1fdf263d150470333ecfb566115b # Parent 756b9699be781c251b45ba8e4d9163ef485719e0 This patch adds back the fake_host() functions and groups providers into a single process when used with OpenPegasus.
fake_host() is needed to ensure keys are propagated properly, and moving providers into a single process is needed to ensure indications work as expected (there are dependencies between some providers that do not work as expected when they are run in different processes).
Signed-off-by: Chip Vincent <cvincent@us.ibm.com>
diff -r 756b9699be78 -r 0a19c3e95fdf provider-register.sh --- a/provider-register.sh Tue Oct 19 13:48:49 2010 -0400 +++ b/provider-register.sh Tue Oct 26 19:17:23 2010 -0400 @@ -61,6 +61,7 @@ Version = "2.0.0"; InterfaceType = "CMPI"; InterfaceVersion = "2.0.0"; + ModuleGroupName = "libvirt-cim"; };
EOFPM diff -r 756b9699be78 -r 0a19c3e95fdf src/Virt_HostSystem.c --- a/src/Virt_HostSystem.c Tue Oct 19 13:48:49 2010 -0400 +++ b/src/Virt_HostSystem.c Tue Oct 26 19:17:23 2010 -0400 @@ -38,7 +38,6 @@
const static CMPIBroker *_BROKER;
-/* static int resolve_host(char *host, char *buf, int size) { struct hostent *he; @@ -76,9 +75,7 @@
return 0; } -*/
-/* static int get_fqdn(char *buf, int size) { char host[256]; @@ -96,9 +93,7 @@
return ret; } -*/
-/* static int set_host_system_properties(CMPIInstance *instance) { CMPIStatus s = {CMPI_RC_OK, NULL}; @@ -119,9 +114,7 @@
return 1; } -*/
-/* static CMPIStatus fake_host(const CMPIBroker *broker, const CMPIObjectPath *reference, CMPIInstance **_inst) @@ -157,7 +150,6 @@
return s; } -*/
CMPIStatus get_host(const CMPIBroker *broker, const CMPIContext *context, @@ -167,6 +159,8 @@ { CMPIStatus s = {CMPI_RC_OK, NULL};
+ s = fake_host(broker, reference, _inst); + if (!is_get_inst && (s.rc == CMPI_RC_ERR_NOT_FOUND)) { /* This is not an error */ return (CMPIStatus){CMPI_RC_OK, NULL};
-- Chip Vincent Open Virtualization, Linux Technology Center IBM Systems & Technology Group phone: 919-254-4482, T/L 444-4482 email: cvincent@us.ibm.com
_______________________________________________ Libvirt-cim mailing list Libvirt-cim@redhat.com https://www.redhat.com/mailman/listinfo/libvirt-cim

It appears that Pegasus 2.9.1, the version that ships with RHEL 6, does not support the "ModuleGroupName" property. That was added in Pegasus 2.6.2. Therefore, I have ommited that change from upstream. I'll create a separate patch to detect the Pegasus version and selective add that property later. -- Chip Vincent Open Virtualization, Linux Technology Center IBM Systems & Technology Group phone: 919-254-4482, T/L 444-4482 email: cvincent@us.ibm.com Sharad Mishra wrote:
+1
This patch and "Return profiles according to roles" patch has been reviewed but I would like our test team to pick up the latest build with these patches and run the entire cimtest.
Thanks Sharad Mishra Open Virtualization Linux Technology Center IBM
libvirt-cim-bounces@redhat.com wrote on 10/26/2010 04:22:17 PM:
Chip Vincent <cvincent@linux.vnet.ibm.com> Sent by: libvirt-cim-bounces@redhat.com
10/26/10 04:22 PM
Please respond to List for discussion and development of libvirt CIM <libvirt-cim@redhat.com>
To
List for discussion and development of libvirt CIM <libvirt-cim@redhat.com>
cc
Subject
[Libvirt-cim] [PATCH] This patch adds back the fake_host() functions and groups providers into a single process when used with OpenPegasus
# HG changeset patch # User Chip Vincent <cvincent@us.ibm.com> # Date 1288135043 14400 # Node ID 0a19c3e95fdf1fdf263d150470333ecfb566115b # Parent 756b9699be781c251b45ba8e4d9163ef485719e0 This patch adds back the fake_host() functions and groups providers into a single process when used with OpenPegasus.
fake_host() is needed to ensure keys are propagated properly, and moving providers into a single process is needed to ensure indications work as expected (there are dependencies between some providers that do not work as expected when they are run in different processes).
Signed-off-by: Chip Vincent <cvincent@us.ibm.com>
diff -r 756b9699be78 -r 0a19c3e95fdf provider-register.sh --- a/provider-register.sh Tue Oct 19 13:48:49 2010 -0400 +++ b/provider-register.sh Tue Oct 26 19:17:23 2010 -0400 @@ -61,6 +61,7 @@ Version = "2.0.0"; InterfaceType = "CMPI"; InterfaceVersion = "2.0.0"; + ModuleGroupName = "libvirt-cim"; };
EOFPM diff -r 756b9699be78 -r 0a19c3e95fdf src/Virt_HostSystem.c --- a/src/Virt_HostSystem.c Tue Oct 19 13:48:49 2010 -0400 +++ b/src/Virt_HostSystem.c Tue Oct 26 19:17:23 2010 -0400 @@ -38,7 +38,6 @@
const static CMPIBroker *_BROKER;
-/* static int resolve_host(char *host, char *buf, int size) { struct hostent *he; @@ -76,9 +75,7 @@
return 0; } -*/
-/* static int get_fqdn(char *buf, int size) { char host[256]; @@ -96,9 +93,7 @@
return ret; } -*/
-/* static int set_host_system_properties(CMPIInstance *instance) { CMPIStatus s = {CMPI_RC_OK, NULL}; @@ -119,9 +114,7 @@
return 1; } -*/
-/* static CMPIStatus fake_host(const CMPIBroker *broker, const CMPIObjectPath *reference, CMPIInstance **_inst) @@ -157,7 +150,6 @@
return s; } -*/
CMPIStatus get_host(const CMPIBroker *broker, const CMPIContext *context, @@ -167,6 +159,8 @@ { CMPIStatus s = {CMPI_RC_OK, NULL};
+ s = fake_host(broker, reference, _inst); + if (!is_get_inst && (s.rc == CMPI_RC_ERR_NOT_FOUND)) { /* This is not an error */ return (CMPIStatus){CMPI_RC_OK, NULL};
-- Chip Vincent Open Virtualization, Linux Technology Center IBM Systems & Technology Group phone: 919-254-4482, T/L 444-4482 email: cvincent@us.ibm.com
_______________________________________________ Libvirt-cim mailing list Libvirt-cim@redhat.com https://www.redhat.com/mailman/listinfo/libvirt-cim
------------------------------------------------------------------------
_______________________________________________ Libvirt-cim mailing list Libvirt-cim@redhat.com https://www.redhat.com/mailman/listinfo/libvirt-cim
participants (2)
-
Chip Vincent
-
Sharad Mishra