| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
$(srcdir) is not needed for guestfs_c.c.
*.mli only exists in $(srcdir) and isn't found on "make install" otherwise
(cherry picked from commit 0938e43a60f9d729d9795cf45498e60217fece0e)
|
|
|
|
| |
(cherry picked from commit 8876b2d3764b42ebae3c5fdf61b1899095508169)
|
|
|
|
| |
(cherry picked from commit 4baec012b1b09a888e570fc89dbaa9fbf9944f34)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This code modifies zero, zero-device, is-zero, is-zero-device.
zero and zero-device are modified so that if the blocks of the device
already contain zeroes, then we don't write zeroes. The reason for
this is to avoid unnecessarily making the underlying storage
non-sparse or (in the qcow2 case) growing it.
is-zero and is-zero-device are modified so that zero detection is
faster. This is a nice side effect of making the first change.
Since avoiding unnecessary zeroing involves reading the blocks before
writing them, whereas before we just blindly wrote, this can be
slower. As you can see from the tests below, in the case where the
disk is sparse, it actually turns out to be faster, because we avoid
allocating the underlying blocks.
However in the case where the disk is non-sparse and full of existing
data, it is much slower. There might be a case for an API flag to
adjust whether or not we perform the zero check. I did not add this
flag because it is unlikely that the caller would have enough
information to be able to set the flag correctly.
(Elapsed time in seconds)
Format Test case Before After
Raw Sparse 16.4 5.3
Preallocated zero 17.0 18.8
Preallocated random 16.0 41.3
Qcow2 preallocation=off 18.7 5.6
preallocation=metadata 17.4 5.8
The current code uses a fixed block size of 4K for reading and
writing. I also tried the same tests with a block size of 64K but it
didn't make any significant difference.
(Thanks to Federico Simoncelli for suggesting this change)
(cherry picked from commit 5a50c04906828f6e99db6a9be420c84114476d39)
|
|
|
|
| |
(cherry picked from commit 1fdd0193fd63af71359748915a0326d623a3d6ad)
|
|
|
|
| |
(cherry picked from commit 0241c753937e577d51a070f7db471260bf931f9c)
|
|
|
|
| |
(cherry picked from commit 900c9626b9d4f567b21aae433493b4b3b1d09f6d)
|
|
|
|
| |
(cherry picked from commit 36e0f35a5828458ebeaf72999b3461ab66a230d8)
|
|
|
|
| |
(cherry picked from commit ff101adf7ead7bcdb46bccdb227ef18d844b965f)
|
| |
|
|
|
|
| |
(cherry picked from commit 44c3a300265ef7bfa5d49d2b9a2a8faccd9db2de)
|
|
|
|
|
|
| |
(RHBZ#729887).
(cherry picked from commit 7739d7f471f9575828bd32489695d92dde005a9c)
|
|
|
|
|
| |
This documents bug 592910.
(cherry picked from commit 6cabc1cd02e181063596b48df55c3f6db51a6bb9)
|
|
|
|
|
|
|
|
|
|
|
| |
RHBZ#666578).
This is a comprehensive fix for the warnings from the old (and
obsolete) Perl inspection code. For a full description and
reproducer, see:
https://bugzilla.redhat.com/show_bug.cgi?id=678231#c5
(cherry picked from commit b9838001015a06a69a08b69d9f013d82f0ea3139)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously any disk that had /autoexec.bat or /boot.ini or /ntldr
would be picked up as a candidate for a Windows root disk. If further
checking could not find any systemroot (eg. /windows) then this would
result in complete failure of inspection.
In particular, this got confused by Hp_recovery partitions which have
/autoexec.bat, but don't have a systemroot in one of the usual places
(they have /MiniNT instead).
What we do now is to properly investigate all possible systemroot
places before deciding this is a Windows systemroot, so the subsequent
failure cannot occur.
(Thanks to lorimar for reporting this bug).
(cherry picked from commit 2c57305f72cd6181d1849ae6e1b892aa01c7f844)
|
|
|
|
|
|
|
| |
This avoids conflicts with the globally installed libguestfs
appliance, or lets us build in multiple local directories at the same
time without conflicts.
(cherry picked from commit f7d18c84dde596699ffc5100fec2cf7b0d582450)
|
|
|
|
|
| |
This updates commit 3064277680ad11f887691646d0fa17bb35f38c19.
(cherry picked from commit 85efbc6aa70d522af066a38fd1aae05b790c46d3)
|
|
|
|
|
|
| |
Calls to these functions are generated, so there is no need to declare
the functions by hand.
(cherry picked from commit 3064277680ad11f887691646d0fa17bb35f38c19)
|
| |
|
|
|
|
| |
(cherry picked from commit 60adf092a8900323c048c94f3f0934be416a3eb6)
|
|
|
|
|
| |
It always has done. The documentation was wrong.
(cherry picked from commit 70f44cc0ea0bcdd025ed657461e07f6778be44ba)
|
|
|
|
|
| |
This was failing on Debian where $(SHELL) is the minimal dash shell.
(cherry picked from commit 6a98ed953b1e3b0d3251385f0ca2dd1dee80b63d)
|
|
|
|
| |
(cherry picked from commit e1c6d1738a2b9123dd08fb4ecff8176daf558f35)
|
|
|
|
| |
(cherry picked from commit 36f662c58fcda43829bcef166e600855960fd223)
|
|
|
|
|
| |
It's already included, but implicitly.
(cherry picked from commit 5f9c168d9135fa81ee2f3a15461467fe04c26888)
|
|
|
|
|
|
| |
The files could be listed in any order, resulting in the test failing
for no reason. Sort the output of tar.
(cherry picked from commit 995b3fecb9af7a8bd52b238bad2a631a1193c83a)
|
|
|
|
| |
(cherry picked from commit 3cf31c2fe0b356ea5c04117c5235b0a3cfe34971)
|
|
|
|
| |
(cherry picked from commit bad3f4b54a959685f3c0697238fc5753096834fb)
|
| |
|
|
|
|
|
|
|
| |
This is a fix for Perl 5.14.
See previous commit 5c3c7e8825341e18c9449976f8a321a04cc78d79.
(cherry picked from commit c70532ab4b3d977ed7484e473107808b22d90a2a)
|
|
|
|
|
|
|
|
|
| |
We weren't acquiring the GC lock around some allocations, resulting in
segfaults when an event callback ran at the same time as a main thread
allocation or garbage collection.
In particular this fixes a noticable crash in guestfs-browser.
(cherry picked from commit 2b8b3f9794ceb43eabd3083e225c669896d8b186)
|
| |
|
|
|
|
|
|
| |
The documentation for the --csv option disappeared between 1.6 and 1.8
when we rewrote virt-df in C. Re-add it from 1.6 sources.
(cherry picked from commit 01f6bce19dbfaf42fa4908683f3cc8785585d023)
|
|
|
|
| |
(cherry picked from commit 15289d4b726d7c38702794df23c61ae40879a46c)
|
|
|
|
|
| |
This updates commit f173543fd207bdc254a5eb75180d82ef25eacae9.
(cherry picked from commit deb95471fbd229605d9916ff90b2ff7cf92633eb)
|
|
|
|
|
|
|
|
| |
This function is like qemu_supports, but allows us to grep
the help text using regular expressions.
Note the function is not used yet.
(cherry picked from commit 5d7dc0dfb65f367dab3560ee23e404fe21373f45)
|
|
|
|
|
| |
This library is widely available in distros.
(cherry picked from commit 41cd0e302d6554facd6b9f7daaa78304361efaef)
|
|
|
|
| |
(cherry picked from commit 316817b5ad98e294a9d2498a4403e82911a75b4a)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A change to ExtUtils::CBuilder in Perl 5.14 causes CCFLAGS to
completely replace, rather than appending, the C flags.
The unfortunate consequence of this is that vital flags such as
-D_FILE_OFFSET_BITS=64 are missing. For 32 bit code, this means you
get binary-incompatible code that completely fails to load.
For further analysis see:
http://www.nntp.perl.org/group/perl.perl5.porters/2011/04/msg171535.html
This commit changes CCFLAGS so that it appends to the existing
$Config{ccflags} instead of replacing it. On earlier versions of Perl
this means we get two copies of the flags, which is unfortunate but
should be safe.
(cherry picked from commit 8386a57458aceb768f0e59aa090a15a544f7466e)
|
|
|
|
| |
(cherry picked from commit 71eb0bf45649eefa1f0cd4b1372cfc2653c8e7a5)
|
|
|
|
| |
(cherry picked from commit 610642491a4846f45c7b233060ffde46f6ca09f0)
|
|
|
|
|
|
|
|
| |
A typical use for this is for packagers who want to increase
the default timeout:
make quickcheck QUICKCHECK_TEST_TOOL_ARGS="-t 300"
(cherry picked from commit 806b6e01506dea4eae68ac3e468d9398d63cafcb)
|
| |
|
| |
|
|
|
|
|
|
| |
On recent Debian, /etc/blkid.tab is now a symlink to /dev/.blkid.tab.
Rather than chasing the cache file around (it may move to /run in future)
use the -c /dev/null option to stop blkid from reading the cache.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the blkid command returns 2, that means the value was not found.
Note that this changes the output of the vfs-type API when the
filesystem has no type (eg when it is empty). Previously this would
return an error. Now it returns empty string "".
We did not document this either way. Making it return empty string is
consistent with vfs-label and vfs-uuid.
This change broke list-filesystems, since that code was assuming that
vfs-type could only return a filesystem type or an error.
|
| |
|
| |
|
| |
|
| |
|