| Age | Commit message (Collapse) | Author |
|
Fix some bugs in device-mapper handling of 64-bit values, replacing
dm_div_up() and dm_round_up() inlines with macros and removing some
avoidable divisions of 64-bit numbers.
The mirror region size is the granularity used to manage and monitor the
data copying, typically 512KB, so 32 bits (of sectors) should be plenty to
hold this.
Taken together with the two earlier patches:
"fix TB stripe data corruption" (a missing cast) and
"stripe_width should be sector_t",
I've now had 3 independent reports that this fixes device-mapper
for devices with large stripes.
Still awaiting test results for dm-crypt and dm-raid1.
Signed-Off-By: Alasdair G Kergon <agk@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Add optional callback before each device gets suspended (called 'presuspend').
Rename existing callback used by dm-mirror from 'suspend' to 'postsuspend'.
dm-multipath will use the new callback.
(Any kernel module using device-mapper must be recompiled after this patch.)
Signed-Off-By: Alasdair G Kergon <agk@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Add DM_TARGET_MSG ioctl so data can be passed to a dm target after its table
has been loaded.
Signed-Off-By: Alasdair G Kergon <agk@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
From: Joe Thornber <thornber@redhat.com>
List targets ioctl. [Patrick Caulfield]
|
|
From: Joe Thornber <thornber@redhat.com>
Add an endio method to targets. This method is allowed to request another
shot at failed ios (think multipath). Context can be passed between the map
method and the endio method.
|
|
Some targets may perform io of their own volition, eg. a mirror
performing recovery, a cache target pulling in different chunks. We
cannot let them perform this io while the device is suspended. This
patch adds 2 new methods to the target type, which instruct the target
to suspend/resume itself. All targets start in the suspended state,
so should expect an initial resume call. Simple targets do not need
to implement these functions.
|
|
|
|
Four constants:
DM_DIR,
DM_MAX_TYPE_NAME,
DM_NAME_LEN,
DM_UUID_LEN
Were being declared in device-mapper.h, these are all specific to
the ioctl interface, so they've been moved to dm-ioctl.h. Nobody
in userland should ever include <linux/device-mapper.h> so remove
ifdef __KERNEL guards.
|
|
This is the device mapper with Joe's updates applied and in -ac for a bit
|