1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-04-27 10:50:38 +03:00
David Teigland 1404e5ee61 metadata: open rw fd before closing ro fd
lvm opens devices readonly to scan them, but
needs to open then readwrite to update the metadata.
Previously, the ro fd was closed before the rw fd
was opened, leaving a small gap where the dev was
not held open, and during which the dev could
possibly change which storage it referred to.

With the bcache_change_fd() interface, lvm opens a
rw fd on a device to be written, tells bcache to
change to the new rw fd, and closes the ro fd.

. open dev ro
. read dev with the ro fd (label_scan)
. lock vg (ex for writing)
. open dev rw
. close ro fd
. rescan dev to check if the metadata changed
  between the scan and the lock
. if the metadata did change, reread in full
. write the metadata
2020-09-18 15:10:11 -05:00
2020-09-12 13:24:03 +02:00
2020-08-09 15:20:22 +02:00
2020-09-09 15:16:34 +02:00
2015-07-04 14:36:57 +02:00
2016-01-21 12:11:37 +01:00
2020-05-05 14:12:32 +02:00
2020-09-18 15:10:11 -05:00
2018-06-08 09:38:05 +01:00
2016-01-21 12:11:37 +01:00
2018-07-27 17:09:46 +02:00
2008-11-04 17:49:22 +00:00
2020-08-12 12:05:36 +02:00
2017-12-14 16:45:47 +01:00
2020-08-09 16:17:15 +02:00
2020-08-09 16:17:15 +02:00
2020-08-09 16:17:15 +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.
Description
LVM2 mirror repository
https://sourceware.org/lvm2/
Readme 55 MiB
Languages
C 75.6%
Shell 18.7%
Python 2.8%
M4 1%
Makefile 0.8%
Other 1%