On 02/09/2011 05:29 AM, Kevin Wolf wrote:
Am 09.02.2011 12:21, schrieb Anthony Liguori:
On 02/09/2011 04:32 AM, Kevin Wolf wrote:
Instead of just returning -ENOTSUP, generate a more detailed error.

Unfortunately we don't have a helpful text for features that we don't know yet,
so just print the feature mask. It might be useful at least if someone asks for
help.

Signed-off-by: Kevin Wolf<kw...@redhat.com>

We can use a compatible feature to create a feature name table.
If you want to introduce something like this in a 0.14-rc2...? I'm not
going to write the code, but if someone sends a patch, we can consider it.

Not for 0.14-rc2 but for 0.15.0.  Was just mentioning it as an idea.

Regards,

Anthony Liguori

---
   block/qed.c |    8 +++++++-
   1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/block/qed.c b/block/qed.c
index 3273448..8b0a975 100644
--- a/block/qed.c
+++ b/block/qed.c
@@ -14,6 +14,7 @@

   #include "trace.h"
   #include "qed.h"
+#include "qerror.h"

   static void qed_aio_cancel(BlockDriverAIOCB *blockacb)
   {
@@ -311,7 +312,12 @@ static int bdrv_qed_open(BlockDriverState *bs, int flags)
           return -EINVAL;
       }
       if (s->header.features&   ~QED_FEATURE_MASK) {
-        return -ENOTSUP; /* image uses unsupported feature bits */
+        /* image uses unsupported feature bits */
+        char version[64];
+        snprintf(version, sizeof(version), "%" PRIx64, s->header.features);

It would be useful to do s->header.features&  QED_FEATURE_MASK here as a
management tool doesn't know what features this version of QED supports.
Makes sense. I'll change this for v2.

Kevin


Reply via email to