Fixed cast during initial thin-provisioned size
Fixed cast during initial thin-provisioned size

For some virtual sizes (e.g. 2GiB) the initially allocated size is
an integer but it gets written as a float (NNN.0).
The usual rounding functions check for numbers not divisible
by specific block sizes and, in that case, they ensure it is
an int divisible by the block size.
The check is done checking the remainder.
The integers written as float that pass the remainder check will
be passed to xapi as they are: this will throw an exception, leaving
a LV volume created withouth the correpsonding VDI.

Signed-off-by: Germano Percossi <1811ef1c36bab1195f69031187febf2a003dfc12@citrix.com>

pritha-srivastava/sm,pritha-srivastava/sm,pritha-srivastava/sm,germanop/sm,chandrikas/sm,kostaslamda/sm,kostaslamda/sm,xapi-project/sm,germanop/sm,xapi-project/sm,chandrikas/sm,malcolmcrossley/sm,germanop/sm,xapi-project/sm,chandrikas/sm,malcolmcrossley/sm,malcolmcrossley/sm,kostaslamda/sm