于 2011年08月25日 05:48, Daniel P. Berrange 写道:
On Tue, Aug 23, 2011 at 05:39:40PM +0800, Osier Yang wrote:
> ---
> src/nodeinfo.c | 16 ++++++++--------
> 1 files changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/src/nodeinfo.c b/src/nodeinfo.c
> index cae2564..b21e555 100644
> --- a/src/nodeinfo.c
> +++ b/src/nodeinfo.c
> @@ -629,7 +629,7 @@ int nodeGetInfo(virConnectPtr conn ATTRIBUTE_UNUSED,
virNodeInfoPtr nodeinfo) {
> }
> #else
> /* XXX Solaris will need an impl later if they port QEMU driver */
> - nodeReportError(VIR_ERR_NO_SUPPORT, "%s",
> + nodeReportError(VIR_ERR_OPERATION_INVALID, "%s",
> _("node info not implemented on this platform"));
> return -1;
> #endif
> @@ -658,7 +658,7 @@ int nodeGetCPUStats(virConnectPtr conn ATTRIBUTE_UNUSED,
> return ret;
> }
> #else
> - nodeReportError(VIR_ERR_NO_SUPPORT, "%s",
> + nodeReportError(VIR_ERR_OPERATION_INVALID, "%s",
> _("node CPU stats not implemented on this
platform"));
> return -1;
> #endif
> @@ -688,7 +688,7 @@ int nodeGetMemoryStats(virConnectPtr conn ATTRIBUTE_UNUSED,
> # if HAVE_NUMACTL
> if (numa_available()< 0) {
> # endif
> - nodeReportError(VIR_ERR_NO_SUPPORT,
> + nodeReportError(VIR_ERR_OPERATION_INVALID,
Hi, Daniel
I think VIR_ERR_NO_SUPPORT is not correct, as the function is neither a
no-op stub
and not implemented. But per your explaination on [patch 0/8],
OPERATION_INVALID
is not proper here too. Change it into INTERNAL_ERROR.
> "%s", _("NUMA
not supported on this host"));
> return -1;
> # if HAVE_NUMACTL
> @@ -724,7 +724,7 @@ int nodeGetMemoryStats(virConnectPtr conn ATTRIBUTE_UNUSED,
> return ret;
> }
> #else
> - nodeReportError(VIR_ERR_NO_SUPPORT, "%s",
> + nodeReportError(VIR_ERR_OPERATION_INVALID, "%s",
> _("node memory stats not implemented on this
platform"));
> return -1;
> #endif
> @@ -818,7 +818,7 @@ nodeGetCellsFreeMemory(virConnectPtr conn ATTRIBUTE_UNUSED,
> int maxCell;
>
> if (numa_available()< 0) {
> - nodeReportError(VIR_ERR_NO_SUPPORT,
> + nodeReportError(VIR_ERR_OPERATION_INVALID,
likewise
> "%s", _("NUMA not
supported on this host"));
> goto cleanup;
> }
> @@ -856,7 +856,7 @@ nodeGetFreeMemory(virConnectPtr conn ATTRIBUTE_UNUSED)
> int n;
>
> if (numa_available()< 0) {
> - nodeReportError(VIR_ERR_NO_SUPPORT,
likewise
> + nodeReportError(VIR_ERR_OPERATION_INVALID,
> "%s", _("NUMA not supported on this
host"));
> goto cleanup;
> }
> @@ -885,14 +885,14 @@ int nodeGetCellsFreeMemory(virConnectPtr conn
ATTRIBUTE_UNUSED,
> int startCell ATTRIBUTE_UNUSED,
> int maxCells ATTRIBUTE_UNUSED)
> {
> - nodeReportError(VIR_ERR_NO_SUPPORT, "%s",
> + nodeReportError(VIR_ERR_OPERATION_INVALID, "%s",
> _("NUMA memory information not available on this
platform"));
> return -1;
> }
>
> unsigned long long nodeGetFreeMemory(virConnectPtr conn ATTRIBUTE_UNUSED)
> {
> - nodeReportError(VIR_ERR_NO_SUPPORT, "%s",
> + nodeReportError(VIR_ERR_OPERATION_INVALID, "%s",
> _("NUMA memory information not available on this
platform"));
> return 0;
> }
All these changes are wrong. NO_SUPPORT is correct for cases where the
driver method is simply stubbed out on an architecture.
All other VIR_ERR_NO_SUPPORT are changed back. Patch following.
Osier