[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 1/3] xen/common: Avoid undefined behaviour by shifting into a sign bit
On 05/08/16 15:04, Jan Beulich wrote: >>>> On 05.08.16 at 15:50, <andrew.cooper3@xxxxxxxxxx> wrote: >> --- a/xen/common/domctl.c >> +++ b/xen/common/domctl.c >> @@ -188,7 +188,7 @@ void getdomaininfo(struct domain *d, struct >> xen_domctl_getdomaininfo *info) >> (d->controller_pause_count > 0 ? XEN_DOMINF_paused : 0) | >> (d->debugger_attached ? XEN_DOMINF_debugged : 0) | >> (d->is_xenstore ? XEN_DOMINF_xs_domain : 0) | >> - d->shutdown_code << XEN_DOMINF_shutdownshift; >> + (unsigned int)d->shutdown_code << XEN_DOMINF_shutdownshift; > > Is adding a cast here really the most suitable fix? The only two places > shutdown_code gets set (besides the -1 initialization) have their right > side a u8. Nothing ever checks for the value being negative (there are > just two -1 checks), so converting the field to u8 or unsigned int (and > using a sentinel different from -1) should both work, avoiding the need > for a cast. This seems sensible if possible. The other bits: Reviewed-by: George Dunlap <george.dunlap@xxxxxxxxxx> _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |