[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 2/3] libxl: ocaml: use int64 for timeval fields in the timeout_register callback



Ian Jackson wrote:
> Rob Hoes writes ("[PATCH 2/3] libxl: ocaml: use int64 for timeval fields
> in the timeout_register callback"):
> > The original code works fine on 64-bit, but on 32-bit, the OCaml int
> > (which is 1 bit smaller than the C int) is likely to overflow.
> 
> The timeouts are in milliseconds.  2^30 ms is 1.07megaseconds, or 12.4
> days.
> 
> If it would help I would be happy to have libxl promise never to use such
> absurdly long timeouts.

This was because the absolute time is given to timeout_register, and the tv_sec 
field of the timeval that comes out of gettimeofday() is just a little too 
large for a 31-bit signed integer...

I didn't see this before, because I was testing on a 64-bit box. When I moved 
to our 32-bit dom0, it started overflowing.

Cheers,
Rob

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.