1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-01-25 10:04:17 +03:00

407 Commits

Author SHA1 Message Date
Milan Broz
a7cac2463c Use PV UUID in hash for device name when exporting metadata.
Currently code uses pv_dev_name() for hash when getting internal
"pvX" name.

This produce corrupted metadata if PVs are missing, pv->dev
is NULL and all these missing devices returns one name
(using "unknown device" for all missing devices as hash key).
2009-05-19 09:48:32 +00:00
Milan Broz
dc205333cd Check max_lv on only place and force the check only for new volume.
We can temporarily violate max_lv during mirror conversion etc.

(If the operation fails, orphan mirror images are visible to administrator
for manual remove for example. Not that this should ever happen:-)

Force limit only for lvcreate (and vg merge) command.

Patch also adds simple max_lv tests into testsuite
2009-05-13 21:29:10 +00:00
Dave Wysochanski
f77190f477 Update test-utils to cope with ":" in device names and allow configurable names. 2009-05-13 19:18:47 +00:00
Dave Wysochanski
9d81c953c3 Update t-read-ahead.sh to validate lv_read_ahead and lv_kernel_read_ahead.
- check default values
- check active/inactive values
2009-05-11 16:17:12 +00:00
Dave Wysochanski
744ac0eb81 Add test for seg_start, seg_count, seg_start_pe 2009-05-11 03:37:34 +00:00
Dave Wysochanski
aadc34ab4d Update tests for region_size. 2009-05-08 21:50:20 +00:00
Dave Wysochanski
d9c4af46ed Add tests to check pv_mda_size and vg_mda_size. 2009-05-08 06:10:45 +00:00
Dave Wysochanski
cdd0024bad Add tests to check vgcreate --physicalextentsize and field vg_extent_size. 2009-05-08 05:15:52 +00:00
Dave Wysochanski
6e331c523f Validate chunksize and originsize for snapshots. 2009-05-08 04:24:52 +00:00
Milan Broz
f7712c77b8 Fix PV datalign when for values starting prior to MDA area.
The dataalign value must always be aligned according
to MDA area.
The currect code checks if calculated value collides with
MDA area but not if the value is so small that it is
located before MDA starts.

Unfortunatelly there can be also MDA in the end of the device.

The patch adds simple check to avoid this miscalculation.
Patch expects that first MDA always starts on <= pagesize boundary
(this is true for all allowed label sector parameters).
2009-05-07 12:11:50 +00:00
Dave Wysochanski
31b6eb916f Use liblvm.so instead of .a 2009-04-28 19:08:25 +00:00
Petr Rockai
01c2d76c54 Avoid scanning non-PV devices in functional tests, otherwise lvconvert --repair
breaks for some reason -- possibly needs investagation, but this should fix it
in the meantime.
2009-04-24 08:00:48 +00:00
Petr Rockai
40cd0b1dd2 Implement, test and document (first iteration of) lvconvert --repair. 2009-04-23 16:56:21 +00:00
Milan Broz
16c4b2a572 Fix vgreduce --removemissing failure exit code. 2009-04-22 17:00:28 +00:00
Milan Broz
8704f4e24e Fix pvseg report for orphan PVs and other devices.
If user requests report attribute from PVSEG type
and PV is orphan (or all devices is set), the report
is empty.

Try for example (when only orphan PV are present)
 #pvs
 #pvs -o +devices
# pvs /dev/sdb1
  PV         VG   Fmt  Attr PSize  PFree
    /dev/sdb1       lvm2 --   46.58G 46.58G
# pvs -o +devices /dev/sdb1
(no output)

The problem is caused by empty pv->segments list.

Fix it by providing fake segment here (similar to fake structures
in _pvsegs_sub_single() calls.
2009-04-21 12:59:18 +00:00
Dave Wysochanski
afc28c54ac Add libdevmapper to test/api building. 2009-04-20 20:46:06 +00:00
Dave Wysochanski
a690b36478 Fix whitespace in t-mdata-strings.sh
Author: Dave Wysochanski <dwysocha@redhat.com>
2009-04-03 14:23:17 +00:00
Milan Broz
6faaa1a0cc Add some more special chars for device name test. 2009-03-31 17:30:47 +00:00
Milan Broz
6a954445f1 Fix segfault for vgcfgrestore on VG with missing PVs. 2009-03-24 13:16:34 +00:00
Petr Rockai
55455ac21f Detect and wipe swap signatures in pvcreate. 2009-03-17 13:59:56 +00:00
Dave Wysochanski
a384b41308 Fix some distclean rules.
By gnu coding stds, 'distclean' should remove all files generated
by ./configure in addition to what 'clean' does.

Author: Takahiro Yasui <tyasui@redhat.com>
2009-03-16 18:28:04 +00:00
Milan Broz
3c3d16e794 Fix lv_count when manipulating with snapshots and max_lv is set.
Patch fixes these problems:
 - during the snapshot creation process, it needs create 2 LVs,
   one is cow, second becomes snapshot.
   If the code fails in vg_add_snapshot, code lvcreate will not remove
   LV cow volume.

 - if max_lv is set and VG contains snapshot, it can happen that
   during the activation lv_count is temporarily increased over the limit
   and VG metadata are not properly processed
   see https://bugzilla.redhat.com/show_bug.cgi?id=490298

 - vgcfgrestore alows restore with max_lv set to lower valuer that actual
   LV count. This later leads to situation that max_lv is completely ignored.

 - vgck doesn't call vg_validate(). It should at least try:-)

Signed-off-by: Milan Broz <mbroz@redhat.com>
2009-03-16 14:34:57 +00:00
Dave Wysochanski
819fbc6ed5 Remove unnecessary linker flags for liblvm. 2009-03-08 17:29:26 +00:00
Dave Wysochanski
53e7c8fa34 Add DSO generation for new LVM application library.
Fix test/api/test build.
2009-03-08 17:06:55 +00:00
Milan Broz
d0b99cb260 pe_start can be overwritten in VG metadata, so it is not PV label-only field. 2009-02-25 23:31:06 +00:00
Milan Broz
fa22cc2e20 Try to avoid full rescan if label scan is enough. 2009-02-25 23:29:06 +00:00
twoerner
ed774a5691 Added files lib/lvm.h and lib/lvm_base.c:
New structure lvm (used as an alias to cmd_context), new type definition lvm_t
for the lvm handle. Added functions lvm_create, lvm_destroy and
lvm_reload_config using the new handle.

Modified test/api/test.c:
Use new lvm.h header file and lvm_t handle.

Removed lib/lvm2.h


Author: Thomas Woerner <twoerner@redhat.com>
2009-02-24 13:03:45 +00:00
Alasdair Kergon
3640dc2fa3 Move tools/version.h to lib/misc/lvm-version.h.
Split LVM_VERSION into MAJOR, MINOR, PATCHLEVEL, RELEASE and RELEASE_DATE.
2009-02-22 22:11:58 +00:00
Milan Broz
c158759c11 Comment out pvcreate pagesize alignment test for now. 2009-02-22 19:32:28 +00:00
Alasdair Kergon
b49362420c Add --dataalignment to pvcreate to specify alignment of data area. (mbroz)
This patch is not fully tested and leaves some related bugs unfixed.

Intended behaviour of the code now:

  pe_start in the lvm2 format PV label header is set only by pvcreate (or
vgconvert -M2) and then preserved in *all* operations thereafter.

  In some specialist cases, after the PV is added to a VG, the pe_start
field in the VG metadata may hold a different value and if so, it
overrides the other one for as long as the PV is in such a VG.

  Currently, the field storing the size of the data area in the PV label
header always holds 0.  As it only has meaning in the context of a
volume group, it is calculated whenever the PV is added to a VG (and can
be derived from extent_size and pe_count in the VG metadata).
2009-02-22 19:00:26 +00:00
Petr Rockai
12811483be In testsuite's not.c, print a notice when program dies of a fatal signal. 2009-02-17 19:37:28 +00:00
Petr Rockai
822aa2a352 Fix test output collection in harness.c. 2009-02-17 19:36:16 +00:00
Petr Rockai
5d3e57094a Only fail when tests have failed, but not when they have been just skipped. 2009-02-16 16:49:21 +00:00
Petr Rockai
182494a5b7 Re-implement the test harness in C. This lets us pass through signals and
trigger proper test teardown upon harness interrupt or termination. I also
tweaked the output somewhat while I was at it...
2009-02-12 19:54:45 +00:00
Dave Wysochanski
26b4c34778 Add skeleton of fsadm nightly test but skip (doesn't work yet). 2009-01-15 17:14:38 +00:00
Petr Rockai
125fb7fbdb A C implementation of "not" that handles fatal signals rather more
intelligently than the shell implementation. C code by Jaroslav Stava.

I have done a rudimentary review and checked that tests still pass.
2009-01-12 18:45:44 +00:00
Petr Rockai
d6778847c9 Fix some checks in lvm-utils.sh. Note that "$(test ...)" is always empty, since
"test" never prints anything. Therefore, "return $(test ...)" is equivalent to
just "return;" which means success in sh (same as return 0). We can however,
thanks to set -e, use "test foo = bar" as an assertion.

PS: test a == b is invalid syntax. It is either = or -eq: = is textual and -eq
is numeric comparison.
2009-01-10 12:19:41 +00:00
Petr Rockai
1027762816 Document current state of inconsistent metadata behaviour of a few commands in
a test. Should make changes to the !consistent bits of code easier. To be
expanded.
2009-01-09 10:16:57 +00:00
Milan Broz
7bb4897b9f Remove status=noxfer from test, not all dd versions support this (RHEL4 for example). 2008-12-16 20:02:52 +00:00
Zdeněk Kabeláč
7e3a1a8b18 operate on test subdirectory instead on main /dev 2008-12-10 16:16:53 +00:00
Zdeněk Kabeláč
5f1b8f71f3 add simple test for dev node usability (detect devices mounted with nodev) 2008-12-10 16:15:41 +00:00
Dave Wysochanski
cca8bb9092 Add liblvm interactive test infrastructure to build. 2008-12-07 19:37:07 +00:00
Dave Wysochanski
08774dc558 Fix test-utils.h for rhel4 backward compatability.
for losetup, break out of the loop when successful setup of loop device,
and only look at 7 loop devices (default loop module setting)
for blockdev, use old option if new one is not available
2008-12-05 05:03:23 +00:00
Petr Rockai
25a82bcbe3 Add a bunch of sub-tests aimed at testing various bugzillas, by jstava. 2008-11-11 15:46:15 +00:00
Petr Rockai
cb58100587 Import a bunch of new tests by jstava. Mostly everything pass, they however
tend to expose the lvremove -ff vg ordering bug.
2008-11-11 15:29:24 +00:00
Petr Rockai
9a8f6c824f Fix t-pool-labels to pass again after the vgdisplay error return fix from
last Friday.
2008-11-10 13:44:01 +00:00
Petr Rockai
db98500b72 Minor code and documentation cleanups and changes by jstava. 2008-11-10 12:43:35 +00:00
Petr Rockai
3feee09cfe add bz264241 check
remove lvconvert progress notifications (-i100)
(by jstava)
2008-11-10 12:41:52 +00:00
Petr Rockai
edb5071d3b bz429342 lvcreate --nosync
bz192865 lvconvert logtype of an inactive mirror lv
(both by jstava)
2008-11-10 12:37:53 +00:00
Petr Rockai
e9509aa5e6 Add bz186013 check -- lvcreate rejects an invalid regionsize (jstava). 2008-11-10 12:37:03 +00:00