Image: Fix time setting for old kernels

This is a better fix for futimes() on kernels not supporting O_PATH.
The previous fix broke when copying a device, as it tried to open it
and got and error.
Merge remote-tracking branch 'alex/device-mapper3' into libvirt-lxc-3