lp:ubuntu/feisty/devmapper

Created by James Westby and last modified
Get this branch:
bzr branch lp:ubuntu/feisty/devmapper
Members of Ubuntu branches can upload to this branch. Log in for directions.

Related bugs

Related blueprints

Branch information

Owner:
Ubuntu branches
Status:
Development

Recent revisions

17. By Scott James Remnant (Canonical)

Make sure /dev/mapper doesn't exist before making it.

16. By Scott James Remnant (Canonical)

Update rules to avoid replacing "untrusted" characters. LP: #92162.

15. By Ian Jackson

Do not call update-initramfs unless it exists. This removes the need
for a dependency on module-init-tools (or similar).

14. By Scott James Remnant (Canonical)

Remove udev dependency since it's not necessary.

13. By Scott James Remnant (Canonical)

* Install the devmap_name rules with this package, since udev doesn't
  depend on dmsetup. Call directly from /sbin rather than linking into
  /lib/udev, since that's unncessary.

* Fix a bug in udev rendezvous, where it was checking for the existance of
  a fifo that never exists. This caused devmapper to assume udev wasn't
  being used, so create the devices in the ordinary location (and thus
  still race with udev). With the check removed, devmapper now defers
  device creation to udev, spinning until the device exists.
  LP: #38409, #75681, #84672.
* Create (in postinst) the mapper sub-directory under /dev/.static/dev
  or /dev if it doesn't already exist.

* Allow 180s for udev to create devices, since that it's timeout too.

12. By Ian Jackson

Replace old multipath-tools (because of /sbin/devmap_name). (LP 84894.)

11. By Ian Jackson

UdevDeviceMapper revised approach:
Deadlocks seem inevitable with the proper lock/fifo-based approach,
partially because the udev rendezvous is (a) not idempotent and
(b) can be delayed by prior udev processing events. So poll for the
block device to exist instead.

10. By Ian Jackson

UdevDeviceMapper fixes:
* Rendezvous properly on combined create-and-load operations, as done
  by (for example) cryptsetup. This involves filling in the parent
  task's major and minor after the actual creation.
* Lock and rendezvous is based on major/minor not name,
  and rendezvous flag file is /lib/udev/.udev-device-mapper-rendezvous2.
* Take out the lock for all operations on a numbered device, except
  for ones we know to be read-only (including waitevent).
* Rendezvous on DM_DEVICE_RESUME and not on any other operation.
  This fixes a race which affects cryptsetup (and other situations too).
* Always rendezvous in udev's /dev/mapper not the static one.
* Change Recommends: dmsetup to Depends since update-manager ignores
  Recommends and there are ordering problems too.

9. By Ian Jackson

Ubuntu spec UdevDeviceMapper:
* Take out a lock to prevent multiple simultaneous create/remove/destroy
  operations on any one device (since this results in racy behaviour of
  the device nodes in /dev/mapper).
* Create device nodes (except control) in /dev/.static or /.dev,
  rather than in /dev, if appropriate.
* Rendezvous with udev scripts (iff
   /lib/udev/.udev-device-mapper-rendezvous exists)
* Provide /sbin/devmap_name aka /lib/udev/devmap_name which udev will
  need to use. This is just a symlink to dmsetup.
* libdevmapper Recommends dmsetup since udev needs to run devmap_name;
  likewise libdevmapper-udeb Depends on dmsetup-udeb.

8. By Scott James Remnant (Canonical)

* Merge from debian unstable, remaining changes:
  - remove include of linux/types.h, define __kernel__dev_t
  - drop selinux support (breaks lvm2-udeb)
  - copy po/device-mapper.po to device-mapper.pot so Rosetta has a POT
    file to import
  - remove init script

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:ubuntu/lucid/devmapper
This branch contains Public information 
Everyone can see this information.

Subscribers