1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-01-07 21:18:59 +03:00
LVM2 mirror repository https://sourceware.org/lvm2/
Go to file
corubba 4f4554164b lvmlockd: Fix sanlock lvmlock lv size calculation
The number of extents for the sanlock lvmlock lv is calculated using
integer division, which rounds towards zero. With a physical extent size
of 129M, instead of the requested 256M the lv is only 129M (1 extent).
With any physical extent size greater than 256M the lv creation fails
because the number of extents is zero.

This is fixed by replacing the integer division with a division macro
that rounds up and thus guarantees that the size of the lv will always
be equal or greater than the requested size. Using the examples above, a
pes of 129M will result in a 258M lv (2 extents), pes of 300M in a 300M
lv (1 extent).

The re-calculation of the lv size in bytes and megabytes is only so the
debug output shows the correct values. The size in mb there is still
not byte-perfect-accurate, but good enough for a human-readable estimate;
and the exact size in bytes and extents is right next to it.

Signed-off-by: corubba <corubba@gmx.de>
2022-10-12 09:19:01 -05:00
autoconf autoreconf: support newer archs 2022-08-15 13:32:55 +02:00
base gcc: use more zero length arrays 2021-09-22 17:18:50 +02:00
conf make: generate 2022-08-11 11:10:11 +02:00
coverity cov: drop model for origin_from_cow 2020-09-12 13:23:49 +02:00
daemons lvmlockd: fix warning 2022-10-11 12:35:38 -05:00
device_mapper libdm: report: fix escaping of JSON quote char in reported fields 2022-08-24 12:10:10 +02:00
doc all: fix typos 2021-03-30 13:08:14 +02:00
include make: move cmds.h 2022-09-27 09:06:06 -05:00
lib lvmlockd: Fix sanlock lvmlock lv size calculation 2022-10-12 09:19:01 -05:00
libdaemon cov: remove unused headers 2022-07-11 01:18:24 +02:00
libdm make: update make.tmpl 2022-09-07 14:58:01 +02:00
man make: generate 2022-09-21 14:58:34 +02:00
nix lockd: Clean up spec 2015-07-04 14:36:57 +02:00
po makefiles: fix pofile generation 2021-03-02 22:54:40 +01:00
scripts make: Fix build in chroot 2022-09-20 15:56:13 +02:00
spec spec: Workaround for failing build 2022-09-20 15:12:44 +02:00
test lvreduce: require active LV when no fs option is used 2022-10-11 12:48:31 -05:00
tools toollib: do not process just created historical LV 2022-10-12 15:14:59 +02:00
udev gitignore: update 2022-09-07 15:00:15 +02:00
.gitignore gitignore: update 2022-09-07 15:00:15 +02:00
acinclude.m4 [build] uncomment 'serial 3' in an m4 file. 2018-04-30 09:44:27 +01:00
aclocal.m4 autoreconf: support newer archs 2022-08-15 13:32:55 +02:00
configure configure: update 2022-09-14 15:16:30 +02:00
configure.ac lvresize: add new options and defaults for fs handling 2022-09-13 15:15:05 -05:00
COPYING doc: change fsf address 2016-01-21 12:11:37 +01:00
COPYING.BSD Add BSD 2-Clause License 2018-07-27 17:09:46 +02:00
COPYING.LIB Fix inconsistent licence notices: executables are GPLv2; libraries LGPLv2.1. 2007-08-20 20:55:30 +00:00
INSTALL quick review of docs 2008-11-04 17:49:22 +00:00
make.tmpl.in makefiles: use single libs definition 2022-09-21 14:58:34 +02:00
Makefile.in make: move cmds.h 2022-09-27 09:06:06 -05:00
README Update README 2020-08-12 12:05:36 +02:00
TESTING docs: Add TESTING file 2017-12-14 16:45:47 +01:00
VERSION post-release 2022-05-18 18:18:14 +02:00
VERSION_DM post-release 2022-05-18 18:18:14 +02:00
WHATS_NEW toollib: do not process just created historical LV 2022-10-12 15:14:59 +02:00
WHATS_NEW_DM WHATS_NEW: update 2022-08-11 13:03:29 +02:00

This tree contains the LVM2 and device-mapper tools and libraries.

This is development branch, for stable 2.02 release see stable-2.02 branch.

For more information about LVM2 read the changelog in the WHATS_NEW file.
Installation instructions are in INSTALL.

There is no warranty - see COPYING and COPYING.LIB.

Tarballs are available from:
  ftp://sourceware.org/pub/lvm2/
  https://github.com/lvmteam/lvm2/releases

The source code is stored in git:
  https://sourceware.org/git/?p=lvm2.git
  git clone git://sourceware.org/git/lvm2.git
mirrored to:
  https://github.com/lvmteam/lvm2
  git clone https://github.com/lvmteam/lvm2.git
  git clone git@github.com:lvmteam/lvm2.git

Mailing list for general discussion related to LVM2:
  linux-lvm@redhat.com
  Subscribe from https://www.redhat.com/mailman/listinfo/linux-lvm

Mailing lists for LVM2 development, patches and commits:
  lvm-devel@redhat.com
  Subscribe from https://www.redhat.com/mailman/listinfo/lvm-devel

  lvm2-commits@lists.fedorahosted.org (Read-only archive of commits)
  Subscribe from https://fedorahosted.org/mailman/listinfo/lvm2-commits

Mailing list for device-mapper development, including kernel patches
and multipath-tools:
  dm-devel@redhat.com
  Subscribe from https://www.redhat.com/mailman/listinfo/dm-devel

Website:
  https://sourceware.org/lvm2/

Report upstream bugs at:
  https://bugzilla.redhat.com/enter_bug.cgi?product=LVM%20and%20device-mapper
or open issues at:
  https://github.com/lvmteam/lvm2/issues

The source code repository used until 7th June 2012 is accessible using CVS:

  cvs -d :pserver:cvs@sourceware.org:/cvs/lvm2 login cvs
  cvs -d :pserver:cvs@sourceware.org:/cvs/lvm2 checkout LVM2

The password is cvs.