1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-01-05 13:18:20 +03:00
Commit Graph

6789 Commits

Author SHA1 Message Date
Zdenek Kabelac
8a9c1b37ad Fix error path for create_toolcontext
Never return unfinished toolcontext - since error path is hit on
various stages of initialization we cannot leave it partially uninitialized,
since we would need to spread many more test across the code for config_valid.
Instead return NULL and properly release udev library resources as well.
2012-03-12 14:15:04 +00:00
Peter Rajnoha
c1ce99cd81 Detect the lvm binary path in lvmetad udev rules.
We can't use 'DM_SBIN_PATH'. This one is set only for DM devices but not
for all block devices - the pvscan is run on all relevant block devices!

This LVM_SBIN_PATH (as well as DM_SBIN_PATH) detection should be removed
eventually but for upstream solution, we still have to do that as there are
known cases where the binaries are put either in /sbin or /usr/sbin
(some installation systems, initrd systems etc.).
2012-03-12 08:59:55 +00:00
Milan Broz
166393a6dd Remove some whitespaces.
(Test commit.)
2012-03-10 10:39:28 +00:00
Milan Broz
06a9a4e867 Remove some whitespaces.
(test commit)
2012-03-10 09:32:46 +00:00
Peter Rajnoha
6b85d4df44 Do not unlink the socket on daemon shutdown if activation is done via systemd. 2012-03-08 14:54:05 +00:00
Peter Rajnoha
c2d7d97301 Add 'Restart: on-abort' for lvmetad systemd service.
Restart lvmetad automatically if it exits due to reception of uncaught signal,
leaving a track in systemd log/syslog.
2012-03-08 09:49:09 +00:00
Zdenek Kabelac
dd121cf5ff Fix warn message and update man page
Fix regression in man page. The chunk size is in kilobyte units on command line
input though in the source code we work with sector size unit
so make it clear in the man page.

Update chunksize for thin pool in man page - it's max value is 1024M == 1G.

Fix warning range message to show proper max value.
2012-03-06 09:22:02 +00:00
Alasdair Kergon
418a0b6080 post-release 2012-03-06 04:47:37 +00:00
Alasdair Kergon
35d8953142 update reworded string 2012-03-06 03:16:05 +00:00
Alasdair Kergon
393cfa1656 close ] 2012-03-06 03:11:13 +00:00
Alasdair Kergon
bb0234a63a Change pvscan --cache syntax 2012-03-06 02:54:31 +00:00
Alasdair Kergon
9d36f3e765 pre-release 2012-03-06 02:50:40 +00:00
Alasdair Kergon
76161a80bf Adjust wording 2012-03-06 02:42:31 +00:00
Alasdair Kergon
5e506c84f6 re-word warnings to be clearer to user 2012-03-06 02:39:25 +00:00
Alasdair Kergon
9f354a1cae Switch pvscan --cache major:minor to --major --minor. 2012-03-06 02:30:49 +00:00
Zdenek Kabelac
61fe203e7d Some more missing supposedly 64bit operations.
Avoid use 32bit math for extent_size.
2012-03-05 15:05:24 +00:00
Peter Rajnoha
33213a3e8e Use already acquired variable... 2012-03-05 14:45:00 +00:00
Zdenek Kabelac
3cf63e35bf Fit thin pool metadata into 128MB
If the lvcreate may decide some automagical values for a user,
try to keep the pool metadata size into 128MB range for optimal
perfomance (as suggested by Joe).

So if the pool metadata size and chunk_size were not specified,
try to select such values they would fit into 128MB size.
2012-03-05 14:19:13 +00:00
Zdenek Kabelac
ac2ac815f1 Improve warning
Use thin_dump --repair suggestion in log error message
and use just warning on  deactivation path without repair info
(since node has been deactivated).

Also check whether there is not 16 args for thin_check configured.
2012-03-05 14:15:50 +00:00
Zdenek Kabelac
a31a947d49 Use 64bit math
Prevent 32bit overflow and resulting weird error reports when working
with TB sizes..
2012-03-05 14:12:57 +00:00
Peter Rajnoha
9a988ab420 Add test for name mangling functionality. 2012-03-05 12:49:06 +00:00
Peter Rajnoha
b608869a26 Check for multiple mangled names in auto mangling mode.
Auto mode can't deal with multiple mangled names. We can do that while working
in hex mode, but in auto mode, this would lead to device name ambiguity.
2012-03-05 12:48:12 +00:00
Peter Rajnoha
28d128f1b6 Fix dm_task_get_name_unmangled to not unmangle already unmangled name.
In 'auto' and 'hex' mode, these names are already unmangled on ioctl return.
There's no point on trying to do that once again (actually it's a bug!).
2012-03-05 12:45:43 +00:00
Peter Rajnoha
14a6a1e17e Check whether device names are properly mangled on ioctl return.
Be more strict when unmangling names on ioctl return - require the name to be
properly mangled in 'auto' and 'hex' mode. There really should not be any
blacklisted character since the names should be renamed already (by means of
renaming it directly or running 'dmsetup mangle' for automatic rename).
2012-03-05 12:43:03 +00:00
Peter Rajnoha
0711a50005 Clean up internal mangling interface. 2012-03-05 12:40:34 +00:00
Zdenek Kabelac
913a0dbb3a Validate udev structures
Avoid using NULL pointers from udev. It seems like some older versions of udev
were improperly returning NULL in some case, so do not silently break here,
and give at least a warning to the user.
2012-03-04 17:40:59 +00:00
Zdenek Kabelac
4600444786 Return success for deactivation of thin pool
if the thin_check fail on thin pool - still return successful deactivation,
since lvremove would currently fail.

TODO: find some way to not run check with lvremove.
2012-03-04 17:36:23 +00:00
Zdenek Kabelac
24cbb72291 Remove part of FIXME
(and reindent a code below)
2012-03-04 16:05:42 +00:00
Zdenek Kabelac
bebbb5aff9 Update thin test for thin_check
Test if thin_check is present in system and disable its use, when its missing.

Add testing for poolmetadatasize.

FIXME: Allocation policy for metadata pool might need some relaxing.
(For now it needs to put all block on one PV.)
2012-03-04 16:04:52 +00:00
Zdenek Kabelac
e04c6e4972 Speedup test run by a few minutes
Reduce disc excercise for some test and focus on LVM testing by
using smaller extent size.

Reduce number of teardown_devs calls and use vg/lvremove instead.

Don't sleep for seconds on pvmove.

FIXME: shell/lvconvert-mirror-basic.sh seems to need more checking.
Test fails for smalled extent size then 512k.
2012-03-04 16:02:19 +00:00
Zdenek Kabelac
3fb6ddf3ce Add FIXMEs
Processing loop needs some thinking
2012-03-04 15:58:31 +00:00
Zdenek Kabelac
301c011a92 Just make error message more clear
Make more obvious, the origin LV for snapshot must be active.
2012-03-04 15:57:27 +00:00
Alasdair Kergon
41b738c1e4 Scan all devices for lvmetad if 'pvscan --cache' used without device list. 2012-03-03 18:32:53 +00:00
Alasdair Kergon
e66e524898 Obtain VG list from lvmetad before relying on get_vgs, otherwise PVs in VGs
don't appear.
2012-03-03 17:12:21 +00:00
Alasdair Kergon
f723e0396e Reinstate accidentally-deleted line. 2012-03-03 17:03:20 +00:00
Alasdair Kergon
eed642e0b3 post-release 2012-03-03 02:08:37 +00:00
Alasdair Kergon
eb706b3106 . 2012-03-03 01:28:15 +00:00
Alasdair Kergon
9a26228d28 pre-release 2012-03-03 01:00:49 +00:00
Zdenek Kabelac
e18ea55fef Code refactoring
Properly test for dm_asprintf result.
Keep unlocking of mutex in the same function and do not spread lock and
unlock over functions.
2012-03-02 23:01:10 +00:00
Zdenek Kabelac
059ff7d5ff Just space moving
Don't leave space on EOL.
2012-03-02 22:58:23 +00:00
Zdenek Kabelac
00422596c1 List _thread_registry missed mutex
Operation on _thread_registry needs to be covered by mutex.
Cosmetic move a die code after free for valgind short leak list.
2012-03-02 22:57:25 +00:00
Alasdair Kergon
d177da6b98 a fixme 2012-03-02 22:44:31 +00:00
Zdenek Kabelac
299b4751c2 Support 16GB for thin pool metadata
Add some hack math to allow 16GB devices to be passed as thinpool metadata.
Since kernel has put in limit to not allow which are just bigger then
some predefined constant in kernel but not matching 16GB so any device bigger
is rejected.

FIXME: Current code still might need more tweaks to be more generic.
2012-03-02 21:53:17 +00:00
Alasdair Kergon
7c47bdc5ec fix non-lvmetad pvscan macro 2012-03-02 21:50:02 +00:00
Zdenek Kabelac
6859106e2a Add support for thin check
Use libdm callback to execute thin_check before activation
thin pool and after deactivation as well.

Supporting thin_check_executable which may pass in extra options for
the tool.
2012-03-02 21:49:43 +00:00
Zdenek Kabelac
bfb8a95111 Purge remaining trim bits from code 2012-03-02 21:43:26 +00:00
Alasdair Kergon
1a002bbe59 missing reply frees 2012-03-02 21:24:37 +00:00
Alasdair Kergon
598134b8e7 Pass struct device around internally rather than dev_t.
Add 3rd daemon return state "unknown" for lookups that are carried out
successfully but don't find the item requested.
Avoid issuing error messages when it's expected that a device that's
being looked up in lvmetad might not be there.
2012-03-02 20:46:36 +00:00
Zdenek Kabelac
cbc8dedafe Merge metadata size checking
Move the code for poolmetadatasize operation into one place.
Report override for minimum and maximum size.
Drop _read_thin_params function its error reporting is handled elsewhere.
2012-03-02 20:18:25 +00:00
Alasdair Kergon
fdfa12d956 Change pvscan --lvmetad to pvscan --cache. 2012-03-02 18:09:46 +00:00