Milan Broz
fb3bcb9f74
Wipe dm-ioctl parameters in memory after use.
2010-04-07 15:57:20 +00:00
Peter Rajnoha
91345610f8
Strictly require libudev if udev_sync is used.
...
This prevents some confusion when libudev was not found so udev_sync was disabled
automatically. Configure was successful though giving only a tiny warning.
Also, if "dmsetup udevcreatecookie" is used, never return 0x000000 as a result if
udev is not running and keep the output blank.
2010-03-23 14:43:18 +00:00
Milan Broz
c948101ccd
Add --help dmsetup option as the synonym for help command.
2010-03-08 16:05:07 +00:00
Peter Rajnoha
f0e073fcdc
Several changes in dmsetup and libdevmapper:
...
- add DM_UDEV_DISABLE_LIBRARY_FALLBACK udev flag to rely on udev only
- export dm_udev_create_cookie function to create new cookies on demand
- add --udevcookie, udevcreatecookie and udevreleasecookie for dmsetup
(to support "udev transactions" where one cookie value can be used for
several dmsetup calls)
- don't use DM_UDEV_DISABLE_CHECKING env. var. anymore and set the state
automatically (based on udev and libdevmapper dev path comparison)
2010-02-15 16:21:33 +00:00
Zdenek Kabelac
04bde319a9
Cleanup gcc warning: cast discards qualifiers from pointer target type
...
API of the library should remain the same as the 'const' is not
mangled into the function name in C.
2010-01-14 10:15:23 +00:00
Peter Rajnoha
d2b43c4b34
Add support to disable udev checking: DM_UDEV_DISABLE_CHECKING=1 env. variable.
...
Sometimes it is really needed to switch off udev checking and the warnings we show when
we detect that udev has not done its job right - the messages like "Udev should have done
this and that. Falling back to direct node creation/removal. " etc.
This would be especially handy while setting DM_DEV_DIR env var that could be set to a
different location than standard /dev (udev can't create nodes/symlinks out of that one
directory that is configured into udevd). The exact same situation happens while we're
running our tests.
2010-01-11 15:36:24 +00:00
Peter Rajnoha
4998a0041f
Add --noudevrules option for dmsetup to disable /dev node management by udev.
2010-01-07 19:45:12 +00:00
Zdenek Kabelac
b1ebf028de
Cleanup returns for void functions.
2009-12-11 13:16:37 +00:00
Zdenek Kabelac
c8d8f74188
Fix coredump and memory leak for 'dmsetup help -c'
2009-12-11 13:04:30 +00:00
Peter Rajnoha
584d1fb7d1
Support udev flags even when udev_sync is disabled or not compiled in.
...
This provides better support for environments where udev rules are installed
but udev_sync is not compiled in (however, using udev_sync is highly
recommended). It also provides consistent and expected functionality even
when '--noudevsync' option is used.
There is still requirement for kernel >= 2.6.31 for the flags to work though
(it uses DM cookies to pass the flags into the kernel and set them in udev
event environment that we can read in udev rules).
2009-11-13 12:43:21 +00:00
Alasdair Kergon
9abf5e70be
Add support for querying a device's inactive table.
...
Currently this data is invisible to userspace.
Requires dm >= 4.16 (likely to be in linux 2.6.33).
2009-11-06 00:43:08 +00:00
Peter Rajnoha
421671b1c2
Several changes to udev support code:
...
- we have these levels when the udev rules are processed:
10-dm.rules --> [11-dm-<subsystem>.rules] --> [12-dm-permissions.rules] -->
13-dm-disk.rules --> [...all the other foreign rules...] --> 95-dm-notify.rules
- each level can be disabled now by
DM_UDEV_DISABLE_{DM, SUBSYSTEM, DISK, OTHER}_RULES_FLAG
- add DM_UDEV_DISABLE_DM_RULES_FLAG to disable 10-dm.rules
- add DM_UDEV_DISABLE_OTHER_RULES_FLAG to disable all the other (non-dm) rules.
We cutoff these rules by using the 'last_rule', so this one should really be
used with great care and in well-founded situations. We use this for lvm's
hidden and layer devices now.
- add a parameter for add_dev_node, rm_dev_node and rename_dev_node so it's
possible to switch on/off udev checks
- use DM_UDEV_DISABLE_DM_RULES_FLAG and DM_UDEV_DISABLE_SUBSYSTEM_RULES_FLAG
if there's no cookie set and we have resume, remove and rename ioctl.
This could happen when someone uses the libdevmapper that is compiled with
udev_sync but the software does not make use of it. This way we can switch
off the rules and fallback to libdevmapper node creation so there's no
udev/libdevmapper race.
2009-10-26 14:29:33 +00:00
Peter Rajnoha
5f1f31f942
Add udev flags support in libdevmapper and provide 'dmsetup udevflags' command to decode them.
2009-10-22 12:55:47 +00:00
Peter Rajnoha
9a9026c29f
Add y|--yes option for dmsetup to provide a default 'YES' answer to questions.
2009-09-11 15:53:57 +00:00
Peter Rajnoha
b23fadb965
Fix semaphore includes in dmsetup for udev sync.
2009-08-06 15:56:50 +00:00
Peter Rajnoha
e637f732ed
Add 'udevcookies' command for dmsetup.
2009-08-06 15:05:10 +00:00
Peter Rajnoha
f9ff23dffe
Add 'udevcomplete_all' command for dmsetup. Export DM_COOKIE_MAGIC in libdevmapper.h.
2009-08-06 15:04:30 +00:00
Alasdair Kergon
a74be32bf6
Manage without dm_udev_cleanup?
2009-08-03 18:01:45 +00:00
Alasdair Kergon
f86117e3d5
cleanup some ignored return values & 'stack's
2009-08-03 11:20:15 +00:00
Alasdair Kergon
2c0dfdf839
Add udevcomplete and --noudevwait to dmsetup.
2009-07-31 17:51:45 +00:00
Mikulas Patocka
3395d72881
Change exit() to _exit() in the child process. exit flushes stdio file buffers,
...
_exit doesn't. If there were some open files, an error in exec and subsequent
exit() would cause the buffers to be flushed twice.
Example:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/wait.h>
int main()
{
printf("buu");
if (!fork()) {
execl("/bin/true-not-exists", "/bin/true", NULL);
exit(1);
}
wait(NULL);
return 0;
}
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com
---
daemons/dmeventd/libdevmapper-event.c | 2 +-
lib/misc/lvm-exec.c | 2 +-
test/harness.c | 3 ++-
tools/dmsetup.c | 2 +-
4 files changed, 5 insertions(+), 4 deletions(-)
2009-07-13 21:26:41 +00:00
Alasdair Kergon
896fc66e32
Add splitname.
2009-06-03 20:44:42 +00:00
Alasdair Kergon
9767eb448d
Add subsystem, vg_name, lv_name, lv_layer fields to dmsetup reports.
2009-06-03 18:35:39 +00:00
Peter Rajnoha
2dce31a16a
Fix segfault when using -U, -G and -M options in dmsetup.
2009-04-24 11:30:49 +00:00
Alasdair Kergon
e8e8fa1ed7
drop explicit libdevmapper.h
2008-10-30 17:52:06 +00:00
Alasdair Kergon
0b1bf1f56b
Split out dm-logging.h from log.h
2008-10-30 17:24:04 +00:00
Alasdair Kergon
ca8d363d2c
Add --rows to dmsetup.
2008-06-24 22:53:48 +00:00
Alasdair Kergon
f1839ac87c
dmsetup --unquoted
2008-06-24 20:16:47 +00:00
Jim Meyering
dacf86a12d
avoid compiler warning about cast in OFFSET_OF macro
...
* dmsetup/dmsetup.c (OFFSET_OF): Use an equivalent definition
that does not cast a pointer value to a narrower type.
2008-06-18 10:19:25 +00:00
Alasdair Kergon
db6056516e
change --prefixes to --nameprefixes
2008-06-06 18:53:08 +00:00
Alasdair Kergon
14004cf20c
Use 'active' for !suspended as the code already uses that.
2008-04-21 16:57:11 +00:00
Alasdair Kergon
82bacfc3b2
Add 3 new reporting colums: tables_loaded, readonly, suspended.
2008-04-21 13:16:30 +00:00
Alasdair Kergon
dd540781dc
Add --prefixes to dmsetup
...
E.g. dmsetup info -c --prefixes
Again, might change the name of this option.
2008-04-21 11:59:22 +00:00
Alasdair Kergon
f44e3ff46a
Calculate string size within dm_pool_grow_object.
2008-04-19 15:50:18 +00:00
Alasdair Kergon
8611f8851e
pre-release
2007-12-05 17:05:04 +00:00
Alasdair Kergon
0ba25de173
read_ahead in report with underscore to match lvm2 field
2007-12-05 14:42:10 +00:00
Alasdair Kergon
f2aae88a7c
fixme
2007-12-03 22:53:04 +00:00
Alasdair Kergon
0b7d16bc09
fixes
2007-12-03 22:48:36 +00:00
Alasdair Kergon
2d1eead2e8
read_ahead node ops
2007-11-30 14:59:57 +00:00
Alasdair Kergon
ca592a2745
refine specification of dmsetup readahead
2007-11-29 14:44:28 +00:00
Alasdair Kergon
52b8440916
add read_ahead functions to library and dmsetup --readahead
...
(Not live yet.)
2007-11-27 20:57:05 +00:00
Jim Meyering
06b8fee542
Allow $DM_DEV_DIR envvar to override default of "/dev".
...
* dmsetup/dmsetup.c (DEV_PATH): Remove definition.
(parse_loop_device_name): Add parameter: dev_dir.
Declare the "dev" parameter to be "const".
Use dev_dir, not DEV_PATH. Handle the case in which dev_dir
does not end in a "/".
(_get_abspath): Declare "path" parameter "const", to match.
(_process_losetup_switches): Add parameter: dev_dir.
Pass dev_dir to parse_loop_device_name.
(_process_switches): Add parameter: dev_dir.
Pass dev_dir to _process_losetup_switches.
(main): Set dev_dir from the DM_DEV_DIR envvar, else to "/dev".
Call dm_set_dev_dir.
* lib/libdm-common.c (dm_set_dev_dir): Rewrite to be careful
about boundary conditions, now that dev_dir may be tainted.
* man/dmsetup.8: Mention $DM_DEV_DIR.
Author: Jim Meyering <meyering@redhat.com>
2007-10-09 12:14:48 +00:00
Alasdair Kergon
147d5faccf
Fix inconsistent licence notices: executables are GPLv2; libraries LGPLv2.1.
2007-08-21 16:26:07 +00:00
Alasdair Kergon
ef4ed892da
revert accidental change
2007-06-19 16:50:38 +00:00
Alasdair Kergon
64f0efd33f
Fix dmsetup -o devno string termination. (1.02.20)
2007-06-19 15:47:20 +00:00
Alasdair Kergon
117d85978a
Fix default dmsetup report buffering and add --unbuffered.
...
Add tree-based and dependency fields to dmsetup reports.
2007-06-15 18:20:28 +00:00
Alasdair Kergon
41d8dcd802
Add capability for tree-based fields to dmsetup reports.
2007-06-11 13:20:29 +00:00
Alasdair Kergon
44566dd46d
configure.h isn't a system header
2007-04-27 18:01:45 +00:00
Alasdair Kergon
d59b2474e1
Fix segfault in 'dmsetup status' without --showkeys against crypt target. [nec]
2007-04-27 15:12:26 +00:00
Alasdair Kergon
8d2b0f24d3
Deal with some more compiler warnings. Hope this doesn't break anything...
2007-04-27 14:52:41 +00:00
Alasdair Kergon
012869d6d2
Fix a few leaks in reporting error paths.
2007-02-14 15:12:16 +00:00
Alasdair Kergon
34c710712d
Add recent reporting options to dmsetup man page.
...
Revise some report fields names.
2007-01-29 19:35:24 +00:00
Alasdair Kergon
85a0cecf68
help on help
2007-01-29 18:45:08 +00:00
Alasdair Kergon
b6ebe41ace
help unused attr
2007-01-29 18:43:27 +00:00
Alasdair Kergon
64d7041264
add help -c for field list
2007-01-29 18:37:57 +00:00
Alasdair Kergon
e3f6460b0d
Add dmsetup 'help' command and update usage text.
2007-01-29 18:18:41 +00:00
Alasdair Kergon
95b424702a
reorder report field definitions
2007-01-29 17:45:32 +00:00
Alasdair Kergon
232da7ecc7
Add some missing close() and fclose() return value checks.
2007-01-25 14:16:20 +00:00
Alasdair Kergon
d336842067
Migrate dmsetup column-based output over to new libdevmapper report framework.
2007-01-24 18:09:07 +00:00
Alasdair Kergon
4dcaa2300c
Add dm_event_handler_[gs]et_timeout functions.
...
Streamline dm_report_field_* interface.
2007-01-22 15:03:57 +00:00
Alasdair Kergon
03c6979264
Some internal renaming.
...
Add --separator and --sort to dmsetup (unused as yet).
Make alignment flag optional when specifying report fields.
2007-01-18 17:47:58 +00:00
Alasdair Kergon
f6af1a67b5
more little fixes
2007-01-16 21:13:07 +00:00
Alasdair Kergon
528329f199
Fix a malloc error path in dmsetup message.
2007-01-15 22:05:50 +00:00
Alasdair Kergon
475be6ab45
Suppress encryption key in 'dmsetup table' output unless --showkeys supplied.
2006-10-19 15:34:50 +00:00
Alasdair Kergon
eb1cf4ae7e
fix dmsetup usage display (missing \n and --noflush wrong place)
2006-10-12 17:09:09 +00:00
Alasdair Kergon
f916f0a7b7
Add suspend noflush support.
...
Add basic dmsetup loop support.
2006-10-12 15:42:25 +00:00
Alasdair Kergon
d2aef510a4
fix getopt_long error check
2006-08-10 20:53:21 +00:00
Alasdair Kergon
8df67fbf36
Add --table argument to dmsetup for a one-line table.
...
Abort if errors are found during cmdline option processing.
2006-08-10 14:11:03 +00:00
Alasdair Kergon
1d1cbf65eb
force remove fixes
2006-06-18 11:51:46 +00:00
Alasdair Kergon
1ea19b10bd
Add --force to dmsetup remove* to load error target. [Untested.]
...
Update dmsetup man page.
2006-06-18 11:35:04 +00:00
Alasdair Kergon
ad65c5f135
dmsetup remove_all also performs mknodes.
2006-06-17 16:12:41 +00:00
Alasdair Kergon
311d6d811b
Fix corelog segment line.
...
Suppress some compiler warnings.
2006-05-16 16:20:29 +00:00
Alasdair Kergon
6657d5b66b
Move DEFS into configure.h.
...
Remove dmsetup line buffer limitation.
2006-05-10 19:38:25 +00:00
Alasdair Kergon
c1d0a12121
Increase dmsetup line buffer to 4k.
2006-04-19 20:43:30 +00:00
Alasdair Kergon
823a36448f
Bring dmsetup man page up-to-date.
2006-04-06 16:20:40 +00:00
Alasdair Kergon
6ef080af04
A setgeometry implementation. [untested]
2006-02-20 23:55:58 +00:00
Alasdair Kergon
b5d8ff1014
Add exported functions to set uid, gid and mode. [Bastian Blank]
2006-02-03 14:23:22 +00:00
Alasdair Kergon
5e3bd86778
Rename _log to dm_log and export.
...
Fix misc compile-time warnings.
2006-01-31 14:50:38 +00:00
Alasdair Kergon
7a3fb6b20a
Fix dmsetup version driver version
2006-01-03 20:53:57 +00:00
Alasdair Kergon
b4f1578fc2
rename deptree
2005-11-09 14:10:50 +00:00
Alasdair Kergon
697e09df50
also suppress error if device doesn't exist with STATUS
2005-10-26 17:50:15 +00:00
Alasdair Kergon
ffc88f2eeb
dm_driver_version
2005-10-17 18:05:39 +00:00
Alasdair Kergon
a3f6b2ce79
export bitset, pool, hash, malloc
2005-10-16 22:57:20 +00:00
Alasdair Kergon
3d0480ed27
Code to build and display device dependency tree.
2005-10-16 14:33:22 +00:00
Alasdair Kergon
72a444276f
Add dmsetup --nolockfs support for suspend/reload.
...
Requires kernel patches to have any effect.
Library version incremented.
2005-10-04 20:12:32 +00:00
Alasdair Kergon
69cfb9203b
Fix termination of getopt_long() option array.
2005-08-18 19:40:19 +00:00
Alasdair Kergon
a7c3ee3805
Fix dmsetup ls -j and status --target with empty table.
2005-07-29 16:11:23 +00:00
Alasdair Kergon
b7c70050d6
Add dmsetup ls --exec.
2005-05-16 20:46:46 +00:00
Alasdair Kergon
2272500bc8
Add --target to dmsetup ls.
2005-05-16 16:04:34 +00:00
Alasdair Kergon
ebf21d3f93
Call dm_lib_exit() and dm_lib_release() automatically now.
2005-05-16 15:15:34 +00:00
Alasdair Kergon
67f109504e
Add --target <target_type> filter to dmsetup table/status.
...
Fix dmsetup getopt_long usage.
2005-05-16 14:53:23 +00:00
Alasdair Kergon
969e08da0f
Drop-in devmap_name replacement.
2005-03-27 11:37:46 +00:00
Alasdair Kergon
8e2dd0dfb2
Add dm_task_no_open_count() to skip getting open_count.
2005-01-12 22:10:14 +00:00
Alasdair Kergon
45ae32da38
Add --noheadings option to dmsetup -c for colon-separated output.
2004-10-12 16:42:40 +00:00
Alasdair Kergon
3f096a6c45
Support device referencing by uuid or major/minor.
2004-10-01 19:11:37 +00:00
Alasdair Kergon
824d251972
fix a newline
2004-07-03 18:15:14 +00:00
Alasdair Kergon
8bad033938
Fix device number handling for 2.6 kernels.
2004-07-01 15:14:29 +00:00
Alasdair Kergon
32c5ad86ab
Add dmsetup -C for column-based output.
2004-06-16 16:44:12 +00:00
Alasdair Kergon
5145e6e550
Clear message buffer before use.
2004-06-10 16:14:16 +00:00
Alasdair Kergon
62cec9b225
Support new target message ioctl.
2004-06-08 20:34:40 +00:00
Alasdair Kergon
8b67f40de2
Update copyright messages.
2004-03-30 19:08:57 +00:00
Alasdair Kergon
22eb54036f
Move full mknodes functionality from dmsetup into libdevmapper.
2004-03-30 14:31:58 +00:00
Alasdair Kergon
c9f25410c9
Avoid sscanf %as for uClibc
2004-03-19 15:52:22 +00:00
Alasdair Kergon
ec36089afd
Extract log.h and tweak funcs to be like lvm2 ones.
2004-02-24 18:50:09 +00:00
Alasdair Kergon
cf37d5c7ab
Userspace support for LIST_VERSIONS ioctl.
2004-01-23 14:37:47 +00:00
Alasdair Kergon
bd094b5d1d
Add event number arg to dmsetup wait.
2004-01-23 14:09:33 +00:00
Alasdair Kergon
2864846d91
dmsetup mknodes
2003-11-13 13:14:28 +00:00
Alasdair Kergon
b8a20fc82a
Accept tables from stdin with dmsetup.
...
Update autoconf.
2003-11-12 17:30:32 +00:00
Alasdair Kergon
5b6a23726a
Make dev_name optional to show details for all devices.
...
e.g. 'dmsetup info', 'dmsetup status -v', 'dmsetup table'
2003-09-16 14:13:51 +00:00
Alasdair Kergon
8ac9712539
Synchronise repository / 2.4.21 support
2003-07-04 19:38:49 +00:00
Alasdair Kergon
d71bfabe39
Support for v4 interface
2003-07-01 21:20:58 +00:00
Alasdair Kergon
6910c129a9
Display event number.
2003-04-29 11:34:40 +00:00
Alasdair Kergon
0e69d32bed
Display read-only state.
2003-04-15 12:30:44 +00:00
Alasdair Kergon
abc6d41532
Add major arg
2003-04-04 13:22:58 +00:00
Alasdair Kergon
8aa577ad34
Proposed changes to the ioctl interface to fix alignment issues on some
...
architectures and specify an explicit width for every numeric field.
2003-03-28 18:58:59 +00:00
Alasdair Kergon
a0568eca2b
Allow optional verbose logging.
2003-01-21 21:25:51 +00:00
Andres Salomon
d43773d634
Wow, learn something new every day. Apparently, the signed-ness of char is
...
implementation-dependent; some archs (s390, arm, and ppc) default to
an unsigned char.
2002-10-08 20:16:44 +00:00
Alasdair Kergon
92ad2d555b
Import snapshot status & persistence + indent etc.
2002-05-10 15:25:38 +00:00
Patrick Caulfield
f6524657fa
Add features to get table/status & wait for next event.
2002-05-03 11:55:58 +00:00
Alasdair Kergon
902098d615
Support device queries by uuid as well as by name. (Used by lvrename.)
2002-03-18 23:39:42 +00:00
Alasdair Kergon
c22c93f0b6
Suppress verbose/debug messages from libdevmapper.
2002-03-14 13:39:33 +00:00
Alasdair Kergon
b2de0b7d44
dmsetup display uuid
2002-03-13 16:19:17 +00:00
Alasdair Kergon
ad21a5585c
Let dmsetup store the uuid on device creation.
2002-03-11 22:44:36 +00:00
Alasdair Kergon
e09a7b5787
o dm_destroy_all() called on exit - but doesn't touch suspended devices yet.
...
o 'dmsetup remove_all' calls dm_destroy_all() to provide a quick way to
prepare for unloading the module
o Ran through indent again.
2002-03-07 20:56:10 +00:00
Alasdair Kergon
9f7b698007
Kernel functionality that returns device dependencies (ejt).
2002-03-06 19:42:23 +00:00
Joe Thornber
1ca81fafd0
o Rename dmsetup dependencies -> dmsetup deps
2002-03-06 14:47:13 +00:00
Joe Thornber
761e0a63e1
o Add support for getting dependencies for a device.
...
o dmsetup dependencies <dev>
2002-03-06 14:38:25 +00:00
Alasdair Kergon
444b7d2360
Add function that returns the library version.
2002-01-17 14:13:25 +00:00
Alasdair Kergon
00ee56e232
Use additional version numbers.
...
Kernel driver has a version number (stored in kernel/VERSION).
The first two components of this (0.94) give the version number of the
ioctl interface. This number must be changed whenever a change is
made to the ioctl interface that breaks backwards compatibility.
The library has a version number (stored in VERSION) which is
used for linking.
The first and/or second component of this must be changed whenever
a change is made to the library API that breaks backwards
compatibility.
2002-01-17 13:19:55 +00:00
Alasdair Kergon
6198a4102c
Another ioctl interface update:
...
Supply offset to start of variable data area (so struct size can change
without breaking backward compatibility)
Add command that just returns the driver version
2002-01-15 15:21:57 +00:00
Alasdair Kergon
1ed34e88aa
o Add rename support to dmsetup.
...
o Add support to use specified minor number to library and dmsetup.
2002-01-11 12:12:46 +00:00
Joe Thornber
f17673f1d0
o Added -r, --read-only switch to dmsetup for use with create and reload.
2002-01-03 10:39:21 +00:00
Alasdair Kergon
9737eb0f94
Revised ioctl/dmfs merge with fixes for bugs found in tests.
2001-12-20 20:32:14 +00:00
Alasdair Kergon
df520f1265
o Include dmsetup man page in build
...
o Allow pathname in dmsetup device arg
o Generated patches for 0.90.02
2001-12-14 13:30:04 +00:00
Joe Thornber
897058e5c6
o Display major number
2001-11-21 18:12:41 +00:00
Joe Thornber
e7e8c033b5
o Change name of libdm.h
2001-11-21 15:15:37 +00:00
Joe Thornber
19df7116c6
o Migration of device-mapper from LVM_WORK to it's own (public) repository.
...
Please use this one from now on.
2001-11-21 12:47:42 +00:00