Re: [Qemu-devel] [PATCH 2/6] QError: New QERR_FOPEN_FAILED

2010-01-18 Thread Luiz Capitulino
On Fri, 15 Jan 2010 17:25:25 +0100
Markus Armbruster arm...@redhat.com wrote:

 
 Signed-off-by: Markus Armbruster arm...@redhat.com
 ---
  qerror.c |4 
  qerror.h |3 +++
  2 files changed, 7 insertions(+), 0 deletions(-)
 
 diff --git a/qerror.c b/qerror.c
 index 5f8fc5d..e7b8ca7 100644
 --- a/qerror.c
 +++ b/qerror.c
 @@ -73,6 +73,10 @@ static const QErrorStringTable qerror_table[] = {
  .desc  = No file descriptor supplied via SCM_RIGHTS,
  },
  {
 +.error_fmt = QERR_FOPEN_FAILED,
 +.desc  = Could not open '%{filename}',
 +},

 Shouldn't this be something like QERR_OPEN_FAILED, so that we
can use the same error for all open functions?

 Also, we have to think a way to specify the reason from errno.




Re: [Qemu-devel] [PATCH 2/6] QError: New QERR_FOPEN_FAILED

2010-01-18 Thread Luiz Capitulino
On Mon, 18 Jan 2010 12:23:28 -0200
Luiz Capitulino lcapitul...@redhat.com wrote:

 On Fri, 15 Jan 2010 17:25:25 +0100
 Markus Armbruster arm...@redhat.com wrote:
 
  
  Signed-off-by: Markus Armbruster arm...@redhat.com
  ---
   qerror.c |4 
   qerror.h |3 +++
   2 files changed, 7 insertions(+), 0 deletions(-)
  
  diff --git a/qerror.c b/qerror.c
  index 5f8fc5d..e7b8ca7 100644
  --- a/qerror.c
  +++ b/qerror.c
  @@ -73,6 +73,10 @@ static const QErrorStringTable qerror_table[] = {
   .desc  = No file descriptor supplied via SCM_RIGHTS,
   },
   {
  +.error_fmt = QERR_FOPEN_FAILED,
  +.desc  = Could not open '%{filename}',
  +},
 
  Shouldn't this be something like QERR_OPEN_FAILED, so that we
 can use the same error for all open functions?

 Something I forgot to mention, 'FopenFailed' doesn't seem
interesting to clients. Maybe 'OpenFileFailed'?




Re: [Qemu-devel] [PATCH 2/6] QError: New QERR_FOPEN_FAILED

2010-01-18 Thread Markus Armbruster
Luiz Capitulino lcapitul...@redhat.com writes:

 On Fri, 15 Jan 2010 17:25:25 +0100
 Markus Armbruster arm...@redhat.com wrote:

 
 Signed-off-by: Markus Armbruster arm...@redhat.com
 ---
  qerror.c |4 
  qerror.h |3 +++
  2 files changed, 7 insertions(+), 0 deletions(-)
 
 diff --git a/qerror.c b/qerror.c
 index 5f8fc5d..e7b8ca7 100644
 --- a/qerror.c
 +++ b/qerror.c
 @@ -73,6 +73,10 @@ static const QErrorStringTable qerror_table[] = {
  .desc  = No file descriptor supplied via SCM_RIGHTS,
  },
  {
 +.error_fmt = QERR_FOPEN_FAILED,
 +.desc  = Could not open '%{filename}',
 +},

  Shouldn't this be something like QERR_OPEN_FAILED, so that we
 can use the same error for all open functions?

Whatever name you like best.  The intention is certainly to use this for
*file* open errors regardless of the precise function used to open.

  Also, we have to think a way to specify the reason from errno.

Yes only if client programs use this for handling the error, not just to
pass it to a human user.

Although most errors are standardized, their numeric encoding is not, so
we can't just transmit errno.  strerror() is right out, because that's
for humans.




Re: [Qemu-devel] [PATCH 2/6] QError: New QERR_FOPEN_FAILED

2010-01-18 Thread Luiz Capitulino
On Mon, 18 Jan 2010 15:52:13 +0100
Markus Armbruster arm...@redhat.com wrote:

 Luiz Capitulino lcapitul...@redhat.com writes:
 
  On Fri, 15 Jan 2010 17:25:25 +0100
  Markus Armbruster arm...@redhat.com wrote:
 
  
  Signed-off-by: Markus Armbruster arm...@redhat.com
  ---
   qerror.c |4 
   qerror.h |3 +++
   2 files changed, 7 insertions(+), 0 deletions(-)
  
  diff --git a/qerror.c b/qerror.c
  index 5f8fc5d..e7b8ca7 100644
  --- a/qerror.c
  +++ b/qerror.c
  @@ -73,6 +73,10 @@ static const QErrorStringTable qerror_table[] = {
   .desc  = No file descriptor supplied via SCM_RIGHTS,
   },
   {
  +.error_fmt = QERR_FOPEN_FAILED,
  +.desc  = Could not open '%{filename}',
  +},
 
   Shouldn't this be something like QERR_OPEN_FAILED, so that we
  can use the same error for all open functions?
 
 Whatever name you like best.  The intention is certainly to use this for
 *file* open errors regardless of the precise function used to open.

 Probably OpenFileFailed or CantOpenFile.

   Also, we have to think a way to specify the reason from errno.
 
 Yes only if client programs use this for handling the error, not just to
 pass it to a human user.
 
 Although most errors are standardized, their numeric encoding is not, so
 we can't just transmit errno.  strerror() is right out, because that's
 for humans.

 IIRC we had a conversation about this and the conclusion was that we
will need our own qerror_strerror() or something like that.