Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

mip3x/device-mapper-proxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

5 Commits

Repository files navigation

device-mapper-proxy

Installation

Ubuntu

Install build dependencies

sudo apt update
sudo apt install -y build-essential kmod 

Get sources

git clone https://mip3x/device-mapper-proxy.git
cd device-mapper-proxy

Build module

make

Load module

sudo insmod dmp.ko
sudo dmesg | tail -n 5 | grep dmp

You should now see line "dmp: module loaded". It means module is loaded properly.

Test module

Verify that dm-target is registered

dmsetup targets | grep dmp

You should now see line "dmp v$version". Note: $version -- version of program.

Create backend and proxy devices

sudo dmsetup create $backend_name --table "0 $size zero"
sudo dmsetup create $proxy_name --table "0 $size dmp /dev/mapper/$backend_name"

zero could be replaced with another backend device. Note: $size -- random device size.

Verify creation fact

ls -l /dev/mapper/*

You should now see lines with $backend_name and $proxy_name. It means devices created properly.

Generate I/O requests

dd if=/dev/zero of=/dev/mapper/$proxy_name bs=4k count=10
dd if=/dev/mapper/$proxy_name of=/dev/null bs=4k count=5

View statistics

cat /sys/module/dmp/stat/volumes

You should now see statistics output:

read:
 reqs: 5
 avg size: 4096
write:
 reqs: 10
 avg size: 4096
total:
 reqs: 15
 avg size: 4096

In fact, the number of records is unlikely to match the number provided when calling dd, since write and read requests are also performed when creating the device: I did not reset the counters after the end of the initialization phase.

Cleanup

sudo dmsetup remove $proxy_name
sudo dmsetup remove $backend_name
sudo rmmod dmp
sudo dmesg | tail -n 5 | grep dmp

You should now see line "dmp: module unloaded". It means module is unloaded properly.

About

Linux device driver

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /