linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Alasdair G Kergon <agk@uk.sistina.com>
To: linux-kernel@vger.kernel.org, linux-lvm@sistina.com
Cc: Paul Jakma <paul@clubi.ie>, Mike Fedyk <mfedyk@matchmail.com>,
	Joe Thornber <thornber@sistina.com>,
	Marcelo Tosatti <marcelo.tosatti@cyclades.com>,
	Linus Torvalds <torvalds@osdl.org>
Subject: Re: Device-mapper submission for 2.4
Date: Thu, 11 Dec 2003 19:48:06 +0000	[thread overview]
Message-ID: <20031211194806.C27307@uk.sistina.com> (raw)
In-Reply-To: <20031210234007.GD15401@matchmail.com>; from mfedyk@matchmail.com on Wed, Dec 10, 2003 at 03:40:07PM -0800

On Wed, Dec 10, 2003 at 03:40:07PM -0800, Mike Fedyk wrote:
> On Wed, Dec 10, 2003 at 05:00:43PM +0000, Paul Jakma wrote:
> > On Wed, 10 Dec 2003 venom@sns.it wrote:
> > > DM is back compatible with LVM1, tested and runs well.
> > What about the patches posted by Joe last (?) week which remove LVM1 
> > support from 2.6 DM? 

They remove support for the broken version 1 of the device-mapper 
ioctl interface.  This is nothing to do with LVM1.
 
> If this is what I was reading being discussed a few weeks ago, then the
> support for the LVM1 sysctls/ioctls has/will be removed, so you will have to
> use the DM utilities instead of the old LVM1 utilities.  LVM1 on-disk format
> should still be supported.

2.6 does not support LVM1 ioctls.
LVM2 userspace tools and EVMS both support LVM1 on-disk format using
device-mapper.


Here's a reference sheet to help clarify the terminology and explain
what's happening.

LVM1 = Userspace tools + kernel ioctls included in marcelo's 2.4 tree
  - LVM1 kernel ioctls are *not* included in or available for 2.6
  - LVM1 userspace tools do *not* work with 2.6 kernels

dm = Kernel driver (GPL) for new volume managers to use.
  - Included in Linus's 2.6 kernels.
  - Available as a patch for 2.4 kernels from the Sistina website.
  - Knows *nothing* about volume manager's on-disk metadata layouts.
  - Userspace volume managers (e.g. EVMS and LVM2) communicate via a new 
    ioctl interface.
  - This ioctl interface is currently "version 4" and we regard it as
    stable.  [Some enhancements are on the horizon, but nothing that 
    breaks existing code/binaries.]
  - An old development version of this device-mapper ioctl interface known
    as "version 1" has problems with it, is deprecated and should be
    removed from kernel trees ASAP.  
    Always use "version 4" when building new kernels today.

libdevmapper = Userspace shared library (LGPL) which wraps a volume manager 
               application interface around the device-mapper ioctls
  - Can determine transparently whether the kernel device-mapper is using
    "version 4" dm ioctl interface or the deprecated "version 1" interface
    and adapt itself accordingly.  [configure --enable-compat]
  - Can only communicate with device-mapper: it cannot use LVM1 ioctls.
  - Designed primarily for use by LVM2 tools.  [EVMS does not use it]
  - Some parts of the libdevmapper API are not yet stable and are likely 
    to get changed.

dmsetup = Userspace utility (GPL) which provides full command-line access to
          the libdevmapper API.
  - Designed for use by shell scripts and for testing and debugging.
  - Command line interface may be considered stable.  New features may get 
    added, but we'll try not to break existing commands.

LVM2 = New Logical Volume Manager command line tools (GPL) designed to
       be backward-compatible with LVM1 and offering new features and
       more flexibility, configurability and stability.
  - Supports existing LVM1 on-disk metadata.
    This means you do *not* have to make changes to your existing on-disk 
    LVM1 volumes to switch between using LVM1 and LVM2.
  - Uses command lines similar to LVM1.
  - By default uses a new on-disk metadata format supporting more
    features than the original LVM1 version.
  - Communicates with the device-mapper kernel driver via libdevmapper's
    API.


Miscellaneous points:
  - LVM1 uses block major number 58: dm selects one or more major numbers
    dynamically as required instead.
  - LVM1 uses character major number 109: dm selects a misc minor number
    dynamically instead.
  - There's a (non-devfs) script for creating /dev/mapper/control at
    startup (or after dm module load).
  - You can use LVM1 tools with unpatched 2.4 kernels.
  - You can use LVM2 tools with patched 2.4 and unpatched 2.6 kernels.
  - Device-mapper support for snapshots and pvmove is so far released 
    only for 2.4.  Patches for 2.6 are being tested.
  - Multipath and mirror support are under development for 2.6.
    (Then get back-ported to 2.4.)

Web download page: http://www.sistina.com/products_lvm_download.htm

The device-mapper tarball contains: 
  device-mapper kernel patches - needed only for 2.4;
  userspace libdevmapper and dmsetup - needed with all dm kernels.
The LVM2 tarball contains the LVM2 command line tools.

Development code can be found via:
  http://people.sistina.com/~thornber/  (for kernel patches)
  http://www.sistina.com/products_CVS.htm  (for userspace code)

Device-mapper mailing list:
  http://lists.sistina.com/mailman/listinfo/dm-devel

Alasdair
-- 
agk@uk.sistina.com

  reply	other threads:[~2003-12-11 19:48 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-12-09 11:58 Device-mapper submission for 2.4 Joe Thornber
2003-12-09 12:24 ` [Patch 1/4] fs.h: b_journal_head Joe Thornber
2003-12-09 23:46   ` Nathan Scott
2003-12-10  8:46     ` Joe Thornber
2003-12-10 12:06       ` Nathan Scott
2003-12-09 12:25 ` [Patch 2/4] dm: mempool backport Joe Thornber
2003-12-09 12:26 ` [Patch 3/4] dm: core files Joe Thornber
2003-12-09 12:26 ` [Patch 4/4] dm: ioctl interface Joe Thornber
2003-12-09 13:15 ` Device-mapper submission for 2.4 Marcelo Tosatti
2003-12-09 13:45   ` Joe Thornber
2003-12-09 14:00     ` Måns Rullgård
2003-12-09 14:10       ` Muli Ben-Yehuda
2003-12-09 14:21         ` Måns Rullgård
2003-12-09 14:16       ` Joe Thornber
2003-12-09 14:24       ` Stefan Smietanowski
2003-12-09 14:10     ` Marcelo Tosatti
2003-12-09 14:34       ` Joe Thornber
2003-12-09 21:07         ` Paul Jakma
2003-12-09 22:26           ` Joe Thornber
2003-12-09 22:48             ` Marcelo Tosatti
2003-12-09 23:46               ` Paul Jakma
2003-12-09 23:58                 ` William Lee Irwin III
2003-12-10  0:15                   ` Paul Jakma
2003-12-10 11:49                     ` Stephan von Krawczynski
2003-12-10 23:15                     ` Dave Jones
2003-12-10  0:27                 ` Jose Luis Domingo Lopez
2003-12-10  0:59                   ` Tupshin Harper
2003-12-10  9:40                     ` Wichert Akkerman
2003-12-10  2:44                 ` Martin J. Bligh
2003-12-10 15:55                   ` Paul Jakma
2003-12-10 16:54                     ` venom
2003-12-10 17:00                       ` Paul Jakma
2003-12-10 17:14                         ` venom
2003-12-10 23:40                         ` Mike Fedyk
2003-12-11 19:48                           ` Alasdair G Kergon [this message]
2003-12-16 19:15                     ` bill davidsen
2003-12-16 19:01                 ` bill davidsen
2003-12-10  8:45             ` Jens Axboe
2003-12-10 17:30               ` Paul Jakma
2003-12-10 17:44                 ` Joe Thornber
2003-12-10 17:48                   ` venom
2003-12-10 18:07                   ` Paul Jakma
2003-12-10 19:30                   ` Jens Axboe
2003-12-09 17:02       ` Bill Rugolsky Jr.
2003-12-09 22:53         ` Ciaran McCreesh
2003-12-10  3:38         ` Lincoln Dale
2003-12-10  6:12           ` Willy Tarreau
2003-12-10  6:35             ` viro
2003-12-09 17:45       ` Kevin Corry
2003-12-09 19:47         ` Paul P Komkoff Jr
2003-12-09 14:23     ` Stefan Smietanowski
2003-12-09 14:36       ` Joe Thornber
2003-12-09 19:50 ` William Lee Irwin III
2003-12-09 21:13   ` Paul Jakma
2003-12-10  0:49 Carl-Daniel Hailfinger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20031211194806.C27307@uk.sistina.com \
    --to=agk@uk.sistina.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-lvm@sistina.com \
    --cc=marcelo.tosatti@cyclades.com \
    --cc=mfedyk@matchmail.com \
    --cc=paul@clubi.ie \
    --cc=thornber@sistina.com \
    --cc=torvalds@osdl.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).