All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Durrant <xadimgnik@gmail.com>
To: "'Ian Jackson'" <ian.jackson@citrix.com>,
	"'Igor Druzhinin'" <igor.druzhinin@citrix.com>
Cc: xen-devel@lists.xenproject.org,
	'Paul Durrant' <xadimgnik@gmail.com>,
	wl@xen.org, 'Andrew Cooper' <Andrew.Cooper3@citrix.com>
Subject: RE: [XEN PATCH for-4.14] tools/xen-ucode: fix error code propagation of microcode load operation
Date: Fri, 12 Jun 2020 18:13:56 +0100	[thread overview]
Message-ID: <001001d640dc$db8704d0$92950e70$@xen.org> (raw)
In-Reply-To: <24291.45845.782250.165305@mariner.uk.xensource.com>

> -----Original Message-----
> From: Ian Jackson <ian.jackson@citrix.com>
> Sent: 12 June 2020 17:54
> To: Igor Druzhinin <igor.druzhinin@citrix.com>
> Cc: xen-devel@lists.xenproject.org; Andrew Cooper <Andrew.Cooper3@citrix.com>; wl@xen.org; Paul
> Durrant <xadimgnik@gmail.com>
> Subject: Re: [XEN PATCH for-4.14] tools/xen-ucode: fix error code propagation of microcode load
> operation
> 
> Igor Druzhinin writes ("[PATCH] tools/xen-ucode: fix error code propagation of microcode load
> operation"):
> > Otherwise it's impossible to know the reason for a fault or blob rejection
> > inside the automation.
> ...
> >          fprintf(stderr, "Failed to update microcode. (err: %s)\n",
> >                  strerror(errno));
> 
> This part is fine.
> 
> > +        ret = errno;
> >      xc_interface_close(xch);
> ...
> >      }
> >      close(fd);
> >
> > -    return 0;
> > +    return ret;
> 
> Unfortunately I don't think this is right.  errno might not fit into a
> return value.

I don't understand this part. Why would errno not fit? 

>  Returning nonzero on microcode loading error would
> definitely be right, but ...
> 
> ... oh I have just read the rest of this file.
> 
> I think what is missing here is simply `return errno' (and the braces)
> There is no need to call xc_interface_close, or munmap, if we are
> about to exit.
> 
> I think fixing the lost error return is 4.14 material, so I have
> added that to the subject line.
> 
> Paul, would you Release-ack a patch that replaced every `return errno'
> with (say) exit(12) ?

Why 12?

>  Otherwise, fixing this program not to try to
> fit errno into an exit status is future work.  Also I notice that the
> program exits 0 if invoked wrongly.  Unhelpful!  I would want to fix
> that too.

Agreed that is unhelpful. I'm happy in principle to release-ack something replacing the returns with exits.

  Paul

> 
> Ian.



  reply	other threads:[~2020-06-12 17:14 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-12 16:44 [PATCH] tools/xen-ucode: fix error code propagation of microcode load operation Igor Druzhinin
2020-06-12 16:53 ` [XEN PATCH for-4.14] " Ian Jackson
2020-06-12 17:13   ` Paul Durrant [this message]
2020-06-15 11:13     ` Ian Jackson
2020-06-12 17:16   ` Igor Druzhinin
2020-06-15 11:17     ` Ian Jackson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='001001d640dc$db8704d0$92950e70$@xen.org' \
    --to=xadimgnik@gmail.com \
    --cc=Andrew.Cooper3@citrix.com \
    --cc=ian.jackson@citrix.com \
    --cc=igor.druzhinin@citrix.com \
    --cc=paul@xen.org \
    --cc=wl@xen.org \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.