Created attachment 517037 [details]
Patch to bring back large file support
Description of problem:
Using the latest git version (as of Aug. 7 2011), libvirt cannot open VM image whose size is superior to 2Go (on my system at least). It appears the regression has been introduced in commit 70e05fa6d033eeebaf7e072233b45d334d6139d8.
The attached patch partly reverts this commit to fix large file support (not sure wether it's the right way to fix it, since it's supposed to be handled by the gnulib).
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Start a VM whose size is > 2Go.
Get this error:
12:57:21.637: 26033: error : virDomainDiskDefForeachPath:11380 : unable to open disk path /home/virtkvm/storage/VM1.img: Value too large for defined data type
This is likely to be a portability issue, what is the system you are using
and can you post the relevant part of the config.log configure ouput,
Gnulib already invokes AC_SYS_LARGEFILE; re-adding it to configure.ac shouldn't be changing anything.
Oh - I see - this is a nasty bug in gnulib:
introduced modules/largefile, but mistakenly has 'configure.ac' listed twice, instead of the intended 'configure.ac-early' for AC_REQUIRE([AC_SYS_LARGEFILE]) and 'configure.ac' empty. As a result, gnulib-tool is no longer invoking AC_SYS_LARGEFILE.
Regression introduced in libvirt commit 1c93fbbb, since that is the one that updated the gnulib submodule to include gnulib commit 7c18576.
Laurent's patch is appropriate for applying in backports where a full gnulib update is not appropriate.
F15 is too old to be affected, and F16 and rawhide have now been rebased to 0.9.6, so I'm closing this.