summaryrefslogtreecommitdiff
path: root/include/configure.h.in
Commit message (Collapse)AuthorAgeFilesLines
* lvresize: better detection of BLKID_SUBLKS_FSINFOZdenek Kabelac2023-02-101-0/+3
| | | | | | | | | Use configure detection instead of trying to directly include blkid.h inside lvresize.c - where we do not pass in BLKID_CFLAGS and since we actually do not need to use blkid there, introeduce test variable HAVE_BLKID_SUBLKS_FSINFO and avoid trying to use blkid.h in this place - this also fixes builing problem for systems without blkid.h.
* configure: updateMarian Csontos2022-09-141-2/+4
|
* lvresize: add new options and defaults for fs handlingDavid Teigland2022-09-131-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new option "--fs String" for lvresize/lvreduce/lvextend controls the handling of file systems before/after resizing the LV. --resizefs is the same as --fs resize. The new option "--fsmode String" can be used to control mounting and unmounting of the fs during resizing. Possible --fs values: checksize Only applies to reducing size; does nothing for extend. Check the fs size and reduce the LV if the fs is not using the affected space, i.e. the fs does not need to be shrunk. Fail the command without reducing the fs or LV if the fs is using the affected space. resize Resize the fs using the fs-specific resize command. This may include mounting, unmounting, or running fsck. See --fsmode to control mounting behavior, and --nofsck to disable fsck. resize_fsadm Use the old method of calling fsadm to handle the fs (deprecated.) Warning: this option does not prevent lvreduce from destroying file systems that are unmounted (or mounted if prompts are skipped.) ignore Resize the LV without checking for or handling a file system. Warning: using ignore when reducing the LV size may destroy the file system. Possible --fsmode values: manage Mount or unmount the fs as needed to resize the fs, and attempt to restore the original mount state at the end. nochange Do not mount or unmount the fs. If mounting or unmounting is required to resize the fs, then do not resize the fs or the LV and fail the command. offline Unmount the fs if it is mounted, and resize the fs while it is unmounted. If mounting is required to resize the fs, then do not resize the fs or the LV and fail the command. Notes on lvreduce: When no --fs or --resizefs option is specified: . lvextend default behavior is fs ignore. . lvreduce default behavior is fs checksize (includes activating the LV.) With the exception of --fs resize_fsadm|ignore, lvreduce requires the recent libblkid fields FSLASTBLOCK and FSBLOCKSIZE. FSLASTBLOCK*FSBLOCKSIZE is the last byte used by the fs on the LV, which determines if reducing the fs is necessary.
* configure: remove some obsolete or duplicate checksZdenek Kabelac2022-08-301-7/+0
| | | | As autoupdate suggested, drop unneeded checks.
* configure: check for mallinfo2Zdenek Kabelac2022-08-301-0/+3
|
* autoreconf: support newer archsZdenek Kabelac2022-08-151-18/+12
| | | | | | | | | | | Update to more recent version of configure script to support more new architecture types like RISCV64. Tools in use ATM: autoconf-2.71-3.fc37.noarch autoconf-archive-2022.02.11-3.fc37.noarch automake-1.16.5-9.fc37.noarch Resolves https://bugzilla.redhat.com/show_bug.cgi?id=2118243
* configure: updateZdenek Kabelac2021-10-181-3/+0
|
* configure: updatesZdenek Kabelac2021-10-141-0/+6
|
* configure: updateMarian Csontos2021-10-071-0/+3
|
* configure: check ffs __builtin_ffs versionsortZdenek Kabelac2021-09-271-0/+9
| | | | Check for presence of ffs(), __builtin_ffs() and versionsort().
* vdo: rename vdoimport to lvm_import_vdoZdenek Kabelac2021-08-261-3/+3
| | | | Missed bits in previous rename commits.
* vdo: Rename vdoimport to lvm_import_vdo.Marian Csontos2021-08-261-1/+1
|
* vdo: add vdoimport supportZdenek Kabelac2021-07-091-0/+3
| | | | | | | | | | | | | Add tool 'vdoimport' to support easy conversion of an existing VDO manager managed VDO volumes into lvm2 managed VDO LV. When physical converted volume is already a logical volume, conversion happens with the VG itself, just with validation for extent_size, so the virtually sized logical VDO volume size can be expressed in extents. Example of basic simple usage: vdoimport --name vg/vdolv /dev/mapper/vdophysicalvolume
* configure: updatesZdenek Kabelac2021-07-091-3/+3
|
* configure: Add macro LOCKDIDM_SUPPORTLeo Yan2021-05-211-0/+3
| | | | | | | | | | The macro LOCKDIDM_SUPPORT is missed in configure.h.in file, thus when execute "configure" command, it has no chance to add this macro in the automatic generated header include/configure.h. This patch adds macro LOCKDIDM_SUPPORT into configure.h.in. Signed-off-by: Leo Yan <leo.yan@linaro.org>
* configure: support builds without versioningZdenek Kabelac2021-03-301-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Not all libc (like musl, uclibc dietlibc) libraries support full symbol version resolution in runtime like glibc. Add support to not generate symbol versions when compiling against them. Additionally libdevmapper.so was broken when compiled against uclibc. Runtime linker loader caused calling dm_task_get_info_base() function recursively, leading to segmentation fault. Introduce --with-symvers=STYLE option, which allows to choose between gnu and disabled symbol versioning. By default gnu symbol versioning is used. __GNUC__ check is replaced now with GNU_SYMVER. Additionally ld version script is included only in case of gnu option, which slightly reduces output size. Providing --without-symvers to configure script when building against uclibc library fixes segmentation fault error described above, due to lack of several versions of the same symbol in libdevmapper.so library. Based on: https://patchwork.kernel.org/project/dm-devel/patch/20180831144817.31207-1-m.niestroj@grinn-global.com/ Suggested-by: Marcin Niestroj <m.niestroj@grinn-global.com>
* configure: use rawhide versionZdenek Kabelac2021-03-221-3/+0
|
* lvmlockctl: replace popen and systemDavid Teigland2021-03-031-3/+0
| | | | | | | | | with fork and exec to avoid use of shell. largely copied from lib/misc/lvm-exec.c require lvmlockctl_kill_command to be full path use lvm config instead of lvmconfig to avoid need for LVM_DIR
* lvmlockctl: use lvm.conf lvmlockctl_kill_commandDavid Teigland2021-03-031-0/+3
| | | | which specifies a command to run by lvmlockctl --kill.
* configure: check for BLKZEROOUT supportZdenek Kabelac2020-10-021-0/+3
|
* lvm: add readline alternative editlineBastian Germann2020-09-291-0/+9
| | | | | | | | | | | | | LVM2 is distributed under GPLv2 only. The readline library changed its license long ago to GPLv3. Given that those licenses are incompatible and you follow the FSF in their interpretation that dynamically linking creates a derivative work, distributing LVM2 linked against a current readline version might be legally problematic. Add support for the BSD licensed editline library as an alternative for readline. Link: https://thrysoee.dk/editline
* build: make generateMarian Csontos2020-08-091-3/+3
|
* Allow dm-integrity to be used for raid imagesDavid Teigland2020-04-151-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dm-integrity stores checksums of the data written to an LV, and returns an error if data read from the LV does not match the previously saved checksum. When used on raid images, dm-raid will correct the error by reading the block from another image, and the device user sees no error. The integrity metadata (checksums) are stored on an internal LV allocated by lvm for each linear image. The internal LV is allocated on the same PV as the image. Create a raid LV with an integrity layer over each raid image (for raid levels 1,4,5,6,10): lvcreate --type raidN --raidintegrity y [options] Add an integrity layer to images of an existing raid LV: lvconvert --raidintegrity y LV Remove the integrity layer from images of a raid LV: lvconvert --raidintegrity n LV Settings Use --raidintegritymode journal|bitmap (journal is default) to configure the method used by dm-integrity to ensure crash consistency. Initialization When integrity is added to an LV, the kernel needs to initialize the integrity metadata/checksums for all blocks in the LV. The data corruption checking performed by dm-integrity will only operate on areas of the LV that are already initialized. The progress of integrity initialization is reported by the "syncpercent" LV reporting field (and under the Cpy%Sync lvs column.) Example: create a raid1 LV with integrity: $ lvcreate --type raid1 -m1 --raidintegrity y -n rr -L1G foo Creating integrity metadata LV rr_rimage_0_imeta with size 12.00 MiB. Logical volume "rr_rimage_0_imeta" created. Creating integrity metadata LV rr_rimage_1_imeta with size 12.00 MiB. Logical volume "rr_rimage_1_imeta" created. Logical volume "rr" created. $ lvs -a foo LV VG Attr LSize Origin Cpy%Sync rr foo rwi-a-r--- 1.00g 4.93 [rr_rimage_0] foo gwi-aor--- 1.00g [rr_rimage_0_iorig] 41.02 [rr_rimage_0_imeta] foo ewi-ao---- 12.00m [rr_rimage_0_iorig] foo -wi-ao---- 1.00g [rr_rimage_1] foo gwi-aor--- 1.00g [rr_rimage_1_iorig] 39.45 [rr_rimage_1_imeta] foo ewi-ao---- 12.00m [rr_rimage_1_iorig] foo -wi-ao---- 1.00g [rr_rmeta_0] foo ewi-aor--- 4.00m [rr_rmeta_1] foo ewi-aor--- 4.00m
* configure: check for prlimitZdenek Kabelac2019-08-261-0/+3
| | | | | | Update configure and make code compilable if prlimit() is not present. Since the code is suspicious do not cope yet with it's replacement with set/getrlimit().
* build: autoreconfMarian Csontos2019-06-071-3/+3
|
* configure: check for pselectZdenek Kabelac2019-04-161-0/+6
|
* headers: use configure.h as 1st. headerZdenek Kabelac2018-12-141-0/+6
| | | | | | | | | | | Ensure configure.h is always 1st. included header. Maybe we could eventually introduce gcc -include option, but for now this better uses dependency tracking. Also move _REENTRANT and _GNU_SOURCE into configure.h so it doesn't need to be present in various source files. This ensures consistent compilation of headers like stdio.h since it may produce different declaration.
* Place the first PE at 1 MiB for all defaultsDavid Teigland2018-11-261-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | . When using default settings, this commit should change nothing. The first PE continues to be placed at 1 MiB resulting in a metadata area size of 1020 KiB (for 4K page sizes; slightly smaller for larger page sizes.) . When default_data_alignment is disabled in lvm.conf, align pe_start at 1 MiB, based on a default metadata area size that adapts to the page size. Previously, disabling this option would result in mda_size that was too small for common use, and produced a 64 KiB aligned pe_start. . Customized pe_start and mda_size values continue to be set as before in lvm.conf and command line. . Remove the configure option for setting default_data_alignment at build time. . Improve alignment related option descriptions. . Add section about alignment to pvcreate man page. Previously, DEFAULT_PVMETADATASIZE was 255 sectors. However, the fact that the config setting named "default_data_alignment" has a default value of 1 (MiB) meant that DEFAULT_PVMETADATASIZE was having no effect. The metadata area size is the space between the start of the metadata area (page size offset from the start of the device) and the first PE (1 MiB by default due to default_data_alignment 1.) The result is a 1020 KiB metadata area on machines with 4KiB page size (1024 KiB - 4 KiB), and smaller on machines with larger page size. If default_data_alignment was set to 0 (disabled), then DEFAULT_PVMETADATASIZE 255 would take effect, and produce a metadata area that was 188 KiB and pe_start of 192 KiB. This was too small for common use. This is fixed by making the default metadata area size a computed value that matches the value produced by default_data_alignment.
* configure: updateZdenek Kabelac2018-11-081-0/+3
|
* build: Update configureMarian Csontos2018-09-141-9/+0
|
* build: add vdo configuration option --with-vdo=Zdenek Kabelac2018-07-091-0/+6
| | | | | | | | | | | | | Checks whether VDO support is enabled. Detects presence of 'vdoformat' tool which is required for to format VDO pool. ATM build of VDO is NOT automatically enabled (None is default). To enable build of LVM with VDO support use: configure --with-vdo=internal TODO: Maybe future version may switch to link some small VDO library for formating (would require linking and package dependency).
* utils: add clzllZdenek Kabelac2018-06-221-0/+3
| | | | Check for __builtin_clzll and add wrapper when missing.
* liblvm: remove lvmapiJoe Thornber2018-06-081-63/+3
| | | | This has been deprecated for a while.
* Remove clvmd and associated codeDavid Teigland2018-06-051-18/+0
| | | | More code reduction and simplification can follow.
* build: configure detect libaioZdenek Kabelac2018-05-151-0/+3
| | | | | | | | | No point to start building lvm without this header file. Although there could be 'some point' in supporting standalone build of 'just' libdm where the libaio might be avoided. TODO: think about configure option for building libdm only.
* build: update ./configure and configure.h.inJoe Thornber2018-05-011-14/+0
| | | | Fallout from Dave's removal of format1 and pool.
* build: rename configure.in -> configure.acJoe Thornber2018-04-301-1/+1
| | | | Squashes a warning from autotools
* [lib/device/bcache] Tweaks after Kabi's reviewJoe Thornber2018-04-201-3/+13
|
* [io paths] Unpick agk's aio stuffJoe Thornber2018-04-201-3/+0
|
* device: Basic config and setup to support async I/O.Alasdair G Kergon2018-02-081-0/+3
|
* replicator: remove the codeDavid Teigland2017-10-131-3/+0
| | | | | It has not been used in a long time and is not expected to be used further.
* fsadm: support configurable full pathZdenek Kabelac2017-04-121-0/+3
| | | | | | | Just like with other tools lvm2 is using allow to define fully configurable path. Default is selected by $PREFIX/sbin/fsadm
* tools: Show configuration command line in lvm version.Alasdair G Kergon2017-03-231-0/+6
| | | | Also update configure.in with some items recently added to the tree.
* daemons: add dmfilemapdBryn M. Reeves2017-03-091-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a daemon that can be launched to monitor a group of regions corresponding to the extents of a file, and to update the regions as the file's allocation changes. The daemon is intended to be started from a library interface, but can also be run from the command line: dmfilemapd <fd> <group_id> <path> <mode> [<foreground>[<log_level>]] Where fd is a file descriptor open on the mapped file, group_id is the group identifier of the mapped group and mode is either "inode" or "path". E.g.: # dmfilemapd 3 0 vm.img inode 1 3 3<vm.img ... If foreground is non-zero, the daemon will not fork to run in the background. If verbose is non-zero, libdm and daemon log messages will be printed. It is possible for the group identifier to change when regions are re-mapped: this occurs when the group leader is deleted (regroup=1 in dm_stats_update_regions_from_fd()), and another region is created before the daemon has a chance to recreate the leader region. The operation is inherently racey since there is currently no way to atomically move or resize a dm_stats region while retaining its region_id. Detect this condition and update the group_id value stored in the filemap monitor. A function is also provided in the the stats API to launch the filemap monitoring daemon: int dm_stats_start_filemapd(int fd, uint64_t group_id, const char *path, dm_filemapd_mode_t mode, unsigned foreground, unsigned verbose); This carries out the first fork and execs dmfilemapd with the arguments specified. A dm_filemapd_mode_t value is specified by the mode argument: either DM_FILEMAPD_FOLLOW_INODE, or DM_FILEMAPD_FOLLOW_PATH. A helper function, dm_filemapd_mode_from_string(), is provided to parse a string containing a valid mode name into the appropriate dm_filemapd_mode_t value.
* configure: check for __builtin_clz()Bryn M. Reeves2016-12-131-0/+3
|
* libdm: add configure.in checks for fiemap.h and magic.hBryn M. Reeves2016-07-081-0/+6
|
* pre-releasev2_02_146Alasdair G Kergon2016-03-111-0/+3
|
* configure: check for udev_device_get_is_initialized is availablePeter Rajnoha2015-11-111-0/+3
| | | | | | The udev_device_get_is_initialized is available since libudev version 165. Older versions are still used somewhere (e.g. RHEL6). So better check for this fn and use it only if it's available.
* configure: relocate configure.hZdenek Kabelac2015-09-111-0/+811
Commit 9403edbb93a2c337df790408e9ff3d26566b7443 move location of configure.h and lvm-version.h. Let's try even better place then /conf dir which should be left for user configurable files. Put these files right into include dir.