Fix kpartx extended partition handling. Resolves: #475283
This commit is contained in:
parent
c0d4270bc6
commit
8f7403ae6d
@ -1,7 +1,7 @@
|
|||||||
Summary: Tools to manage multipath devices using device-mapper
|
Summary: Tools to manage multipath devices using device-mapper
|
||||||
Name: device-mapper-multipath
|
Name: device-mapper-multipath
|
||||||
Version: 0.4.8
|
Version: 0.4.8
|
||||||
Release: 8%{?dist}
|
Release: 9%{?dist}
|
||||||
License: GPL+
|
License: GPL+
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
URL: http://christophe.varoqui.free.fr/
|
URL: http://christophe.varoqui.free.fr/
|
||||||
@ -19,6 +19,7 @@ Patch9: config_space_fix.patch
|
|||||||
Patch10: fix_devt.patch
|
Patch10: fix_devt.patch
|
||||||
Patch11: directio_message_cleanup.patch
|
Patch11: directio_message_cleanup.patch
|
||||||
Patch12: binding_error.patch
|
Patch12: binding_error.patch
|
||||||
|
Patch13: fix_kpartx.patch
|
||||||
Requires: kpartx = %{version}-%{release}
|
Requires: kpartx = %{version}-%{release}
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
Requires(post): chkconfig
|
Requires(post): chkconfig
|
||||||
@ -58,6 +59,7 @@ kpartx manages partition creation and removal for device-mapper devices.
|
|||||||
%patch10 -p1 -b .fix_devt
|
%patch10 -p1 -b .fix_devt
|
||||||
%patch11 -p1 -b .directio_message
|
%patch11 -p1 -b .directio_message
|
||||||
%patch12 -p1 -b .binding_error
|
%patch12 -p1 -b .binding_error
|
||||||
|
%patch13 -p1 -b .ext_part
|
||||||
|
|
||||||
%build
|
%build
|
||||||
make %{?_smp_mflags} DESTDIR=$RPM_BUILD_ROOT
|
make %{?_smp_mflags} DESTDIR=$RPM_BUILD_ROOT
|
||||||
@ -109,6 +111,9 @@ fi
|
|||||||
%{_mandir}/man8/kpartx.8.gz
|
%{_mandir}/man8/kpartx.8.gz
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Mar 6 2009 Milan Broz <mbroz@redhat.com> - 0.4.8-9
|
||||||
|
- Fix kpartx extended partition handling (475283)
|
||||||
|
|
||||||
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.8-8
|
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.8-8
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
|
||||||
|
|
||||||
|
32
fix_kpartx.patch
Normal file
32
fix_kpartx.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
--- multipath-tools.old/kpartx/kpartx.c 2008-07-23 22:49:52.000000000 +0200
|
||||||
|
+++ multipath-tools/kpartx/kpartx.c 2009-03-06 13:32:49.000000000 +0100
|
||||||
|
@@ -474,6 +474,7 @@ main(int argc, char **argv){
|
||||||
|
d = c;
|
||||||
|
while (c) {
|
||||||
|
for (j = 0; j < n; j++) {
|
||||||
|
+ uint64_t start;
|
||||||
|
int k = slices[j].container - 1;
|
||||||
|
|
||||||
|
if (slices[j].size == 0)
|
||||||
|
@@ -484,7 +485,7 @@ main(int argc, char **argv){
|
||||||
|
continue;
|
||||||
|
|
||||||
|
/* Skip all simple slices */
|
||||||
|
- if (k < 0)
|
||||||
|
+ if (slices[j].container == 0)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
/* Check container slice */
|
||||||
|
@@ -499,10 +500,11 @@ main(int argc, char **argv){
|
||||||
|
}
|
||||||
|
strip_slash(partname);
|
||||||
|
|
||||||
|
+ start = slices[j].start - slices[k].start;
|
||||||
|
if (safe_sprintf(params, "%d:%d %" PRIu64,
|
||||||
|
slices[k].major,
|
||||||
|
slices[k].minor,
|
||||||
|
- slices[j].start)) {
|
||||||
|
+ start)) {
|
||||||
|
fprintf(stderr, "params too small\n");
|
||||||
|
exit(1);
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user