Message ID | 1297247521-11464-2-git-send-email-kwolf@redhat.com |
---|---|
State | New |
Headers | show |
On 02/09/2011 04:31 AM, Kevin Wolf wrote: > Signed-off-by: Kevin Wolf<kwolf@redhat.com> > --- > qerror.c | 5 +++++ > qerror.h | 3 +++ > 2 files changed, 8 insertions(+), 0 deletions(-) > > diff --git a/qerror.c b/qerror.c > index 9d0cdeb..62dcc1a 100644 > --- a/qerror.c > +++ b/qerror.c > @@ -201,6 +201,11 @@ static const QErrorStringTable qerror_table[] = { > .desc = "An undefined error has ocurred", > }, > { > + .error_fmt = QERR_UNKNOWN_BLOCK_FORMAT_FEATURE, > + .desc = "'%(device)' uses an image format feature which is not " > + "supported by this qemu version: %(feature)", > + }, > + { > .error_fmt = QERR_VNC_SERVER_FAILED, > .desc = "Could not start VNC server on %(target)", > }, > diff --git a/qerror.h b/qerror.h > index b0f69da..31d6df3 100644 > --- a/qerror.h > +++ b/qerror.h > @@ -165,6 +165,9 @@ QError *qobject_to_qerror(const QObject *obj); > #define QERR_UNDEFINED_ERROR \ > "{ 'class': 'UndefinedError', 'data': {} }" > > +#define QERR_UNKNOWN_BLOCK_FORMAT_FEATURE \ > + "{ 'class': 'UnknownBlockFormatFeature', 'data': { 'device': %s, 'feature': %s } }" > Would be good to include the name of the block format in the error message to put the feature in context. Regards, Anthony Liguori > #define QERR_VNC_SERVER_FAILED \ > "{ 'class': 'VNCServerFailed', 'data': { 'target': %s } }" > >
Am 09.02.2011 12:08, schrieb Anthony Liguori: > On 02/09/2011 04:31 AM, Kevin Wolf wrote: >> Signed-off-by: Kevin Wolf<kwolf@redhat.com> >> --- >> qerror.c | 5 +++++ >> qerror.h | 3 +++ >> 2 files changed, 8 insertions(+), 0 deletions(-) >> >> diff --git a/qerror.c b/qerror.c >> index 9d0cdeb..62dcc1a 100644 >> --- a/qerror.c >> +++ b/qerror.c >> @@ -201,6 +201,11 @@ static const QErrorStringTable qerror_table[] = { >> .desc = "An undefined error has ocurred", >> }, >> { >> + .error_fmt = QERR_UNKNOWN_BLOCK_FORMAT_FEATURE, >> + .desc = "'%(device)' uses an image format feature which is not " >> + "supported by this qemu version: %(feature)", >> + }, >> + { >> .error_fmt = QERR_VNC_SERVER_FAILED, >> .desc = "Could not start VNC server on %(target)", >> }, >> diff --git a/qerror.h b/qerror.h >> index b0f69da..31d6df3 100644 >> --- a/qerror.h >> +++ b/qerror.h >> @@ -165,6 +165,9 @@ QError *qobject_to_qerror(const QObject *obj); >> #define QERR_UNDEFINED_ERROR \ >> "{ 'class': 'UndefinedError', 'data': {} }" >> >> +#define QERR_UNKNOWN_BLOCK_FORMAT_FEATURE \ >> + "{ 'class': 'UnknownBlockFormatFeature', 'data': { 'device': %s, 'feature': %s } }" >> > > Would be good to include the name of the block format in the error > message to put the feature in context. I actually had the format name there initally, but then I replaced it with the device name because I thought that would be more helpful. If you prefer, I can add it back so that we have both. Kevin
On 02/09/2011 05:26 AM, Kevin Wolf wrote: > Am 09.02.2011 12:08, schrieb Anthony Liguori: > >> On 02/09/2011 04:31 AM, Kevin Wolf wrote: >> >>> Signed-off-by: Kevin Wolf<kwolf@redhat.com> >>> --- >>> qerror.c | 5 +++++ >>> qerror.h | 3 +++ >>> 2 files changed, 8 insertions(+), 0 deletions(-) >>> >>> diff --git a/qerror.c b/qerror.c >>> index 9d0cdeb..62dcc1a 100644 >>> --- a/qerror.c >>> +++ b/qerror.c >>> @@ -201,6 +201,11 @@ static const QErrorStringTable qerror_table[] = { >>> .desc = "An undefined error has ocurred", >>> }, >>> { >>> + .error_fmt = QERR_UNKNOWN_BLOCK_FORMAT_FEATURE, >>> + .desc = "'%(device)' uses an image format feature which is not " >>> + "supported by this qemu version: %(feature)", >>> + }, >>> + { >>> .error_fmt = QERR_VNC_SERVER_FAILED, >>> .desc = "Could not start VNC server on %(target)", >>> }, >>> diff --git a/qerror.h b/qerror.h >>> index b0f69da..31d6df3 100644 >>> --- a/qerror.h >>> +++ b/qerror.h >>> @@ -165,6 +165,9 @@ QError *qobject_to_qerror(const QObject *obj); >>> #define QERR_UNDEFINED_ERROR \ >>> "{ 'class': 'UndefinedError', 'data': {} }" >>> >>> +#define QERR_UNKNOWN_BLOCK_FORMAT_FEATURE \ >>> + "{ 'class': 'UnknownBlockFormatFeature', 'data': { 'device': %s, 'feature': %s } }" >>> >>> >> Would be good to include the name of the block format in the error >> message to put the feature in context. >> > I actually had the format name there initally, but then I replaced it > with the device name because I thought that would be more helpful. If > you prefer, I can add it back so that we have both. > Yes, I think both would be best. If I'm going to display this error to a user, I want to say something like "Could not start machine because this image uses the 'free list' feature of 'qed' which is not supported by this version of QEMU, please upgrade." With the device name, I can do a query-block to figure out the format but it's nice to avoid the extra round trip. Regards, Anthony Liguori > Kevin >
diff --git a/qerror.c b/qerror.c index 9d0cdeb..62dcc1a 100644 --- a/qerror.c +++ b/qerror.c @@ -201,6 +201,11 @@ static const QErrorStringTable qerror_table[] = { .desc = "An undefined error has ocurred", }, { + .error_fmt = QERR_UNKNOWN_BLOCK_FORMAT_FEATURE, + .desc = "'%(device)' uses an image format feature which is not " + "supported by this qemu version: %(feature)", + }, + { .error_fmt = QERR_VNC_SERVER_FAILED, .desc = "Could not start VNC server on %(target)", }, diff --git a/qerror.h b/qerror.h index b0f69da..31d6df3 100644 --- a/qerror.h +++ b/qerror.h @@ -165,6 +165,9 @@ QError *qobject_to_qerror(const QObject *obj); #define QERR_UNDEFINED_ERROR \ "{ 'class': 'UndefinedError', 'data': {} }" +#define QERR_UNKNOWN_BLOCK_FORMAT_FEATURE \ + "{ 'class': 'UnknownBlockFormatFeature', 'data': { 'device': %s, 'feature': %s } }" + #define QERR_VNC_SERVER_FAILED \ "{ 'class': 'VNCServerFailed', 'data': { 'target': %s } }"
Signed-off-by: Kevin Wolf <kwolf@redhat.com> --- qerror.c | 5 +++++ qerror.h | 3 +++ 2 files changed, 8 insertions(+), 0 deletions(-)