WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH 2/9] xen/pciback: Return proper error code from s

To: "Konrad Rzeszutek Wilk" <konrad.wilk@xxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH 2/9] xen/pciback: Return proper error code from sscanf.
From: "Jan Beulich" <JBeulich@xxxxxxxx>
Date: Fri, 30 Sep 2011 08:45:26 +0100
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx, Dan Carpenter <error27@xxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx
Delivery-date: Fri, 30 Sep 2011 00:47:56 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1317325971-21603-3-git-send-email-konrad.wilk@xxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <1317325971-21603-1-git-send-email-konrad.wilk@xxxxxxxxxx> <1317325971-21603-3-git-send-email-konrad.wilk@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
>>> On 29.09.11 at 21:52, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> wrote:
> . instead of just hardcoding it to be -EINVAL.
> 
> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
> ---
>  drivers/xen/xen-pciback/pci_stub.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/xen/xen-pciback/pci_stub.c 
> b/drivers/xen/xen-pciback/pci_stub.c
> index 32d6891..d985b65 100644
> --- a/drivers/xen/xen-pciback/pci_stub.c
> +++ b/drivers/xen/xen-pciback/pci_stub.c
> @@ -868,7 +868,7 @@ static inline int str_to_slot(const char *buf, int 
> *domain, int *bus,
>       if (err == 4)
>               return 0;
>       else if (err < 0)
> -             return -EINVAL;
> +             return err;
>  
>       /* try again without domain */
>       *domain = 0;

This should then also be done for the final return from the function:

        return err < 0 ? err : -EINVAL;

But: Where did you read that {v,}sscanf() would return -E... values in
hypothetical error cases? The C standard says it would return EOF
when reaching the end of the input string before doing the first
conversion; lib/vsprintf.c doesn't do so, and also doesn't say it might
return -E... codes. Bottom line is that I think the code is more correct
the way it is without this change.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>