- Change git date format to the correct format (YYYYMMDD)
- Update to latest upstream push (fixes bz604023)
This commit is contained in:
parent
adf9d7af43
commit
fda5bdd37a
@ -2,3 +2,4 @@ mdadm-3.0.3.tar.bz2
|
||||
mdadm-3.1.1-gcd9a8b5.tar.bz2
|
||||
mdadm-3.1.2.tar.bz2
|
||||
mdadm-3.1.3-git07202010.tar.bz2
|
||||
mdadm-3.1.3-git20100722.tar.bz2
|
||||
|
@ -1,65 +0,0 @@
|
||||
--- mdadm-3.1.2/Incremental.c.lock 2010-07-20 17:21:41.879217630 -0400
|
||||
+++ mdadm-3.1.2/Incremental.c 2010-07-20 17:21:41.916342431 -0400
|
||||
@@ -285,7 +285,9 @@ int Incremental(char *devname, int verbo
|
||||
|
||||
/* 4/ Check if array exists.
|
||||
*/
|
||||
- map_lock(&map);
|
||||
+ if (map_lock(&map))
|
||||
+ fprintf(stderr, Name ": failed to get exclusive lock on "
|
||||
+ "mapfile\n");
|
||||
mp = map_by_uuid(&map, info.uuid);
|
||||
if (mp)
|
||||
mdfd = open_dev(mp->devnum);
|
||||
@@ -769,7 +771,9 @@ int Incremental_container(struct superty
|
||||
struct mdinfo *ra;
|
||||
struct map_ent *map = NULL;
|
||||
|
||||
- map_lock(&map);
|
||||
+ if (map_lock(&map))
|
||||
+ fprintf(stderr, Name ": failed to get exclusive lock on "
|
||||
+ "mapfile\n");
|
||||
|
||||
for (ra = list ; ra ; ra = ra->next) {
|
||||
int mdfd;
|
||||
--- mdadm-3.1.2/mapfile.c.lock 2010-07-20 17:21:41.687217302 -0400
|
||||
+++ mdadm-3.1.2/mapfile.c 2010-07-20 17:23:23.038096346 -0400
|
||||
@@ -58,7 +58,7 @@ char *mapname[2][3] = {
|
||||
};
|
||||
char *mapdir[2] = { MAP_DIR, NULL };
|
||||
|
||||
-int mapmode[3] = { O_RDONLY, O_RDWR|O_CREAT, O_RDWR|O_CREAT|O_TRUNC };
|
||||
+int mapmode[3] = { O_RDONLY, O_RDWR|O_CREAT, O_RDWR|O_CREAT|O_EXCL };
|
||||
char *mapsmode[3] = { "r", "w", "w"};
|
||||
|
||||
FILE *open_map(int modenum, int *choice)
|
||||
@@ -120,14 +120,11 @@ static int lwhich = 0;
|
||||
int map_lock(struct map_ent **melp)
|
||||
{
|
||||
if (lf == NULL) {
|
||||
- lf = open_map(2, &lwhich);
|
||||
+ do {
|
||||
+ lf = open_map(2, &lwhich);
|
||||
+ } while (lf == NULL && errno == EEXIST);
|
||||
if (lf == NULL)
|
||||
return -1;
|
||||
- if (flock(fileno(lf), LOCK_EX) != 0) {
|
||||
- fclose(lf);
|
||||
- lf = NULL;
|
||||
- return -1;
|
||||
- }
|
||||
}
|
||||
if (*melp)
|
||||
map_free(*melp);
|
||||
@@ -137,10 +134,7 @@ int map_lock(struct map_ent **melp)
|
||||
|
||||
void map_unlock(struct map_ent **melp)
|
||||
{
|
||||
- if (lf) {
|
||||
- flock(fileno(lf), LOCK_UN);
|
||||
- fclose(lf);
|
||||
- }
|
||||
+ fclose(lf);
|
||||
unlink(mapname[lwhich][2]);
|
||||
lf = NULL;
|
||||
}
|
@ -1,11 +0,0 @@
|
||||
--- mdadm-3.1.3-git07202010/Grow.c.read 2010-07-20 12:18:12.000000000 -0400
|
||||
+++ mdadm-3.1.3-git07202010/Grow.c 2010-07-20 12:55:26.816805170 -0400
|
||||
@@ -1820,7 +1820,7 @@ int Grow_restart(struct supertype *st, s
|
||||
}
|
||||
/* There should be a duplicate backup superblock 4k before here */
|
||||
if (lseek64(fd, -4096, 1) < 0 ||
|
||||
- read(fd, &bsb2, 4096) != 4096)
|
||||
+ read(fd, &bsb2, sizeof(bsb2)) != sizeof(bsb2))
|
||||
goto second_fail; /* Cannot find leading superblock */
|
||||
if (bsb.magic[15] == '1')
|
||||
bsbsize = offsetof(struct mdp_backup_super, pad1);
|
14
mdadm.spec
14
mdadm.spec
@ -1,14 +1,12 @@
|
||||
Summary: The mdadm program controls Linux md devices (software RAID arrays)
|
||||
Name: mdadm
|
||||
Version: 3.1.3
|
||||
Release: 0.git07202010.2%{?dist}
|
||||
Source: http://www.kernel.org/pub/linux/utils/raid/mdadm/mdadm-%{version}-git07202010.tar.bz2
|
||||
Release: 0.git20100722.1%{?dist}
|
||||
Source: http://www.kernel.org/pub/linux/utils/raid/mdadm/mdadm-%{version}-git20100722.tar.bz2
|
||||
Source1: mdmonitor.init
|
||||
Source2: raid-check
|
||||
Source3: mdadm.rules
|
||||
Source4: mdadm-raid-check-sysconfig
|
||||
Patch0: mdadm-3.1.3-read.patch
|
||||
PAtch1: mdadm-3.1.2-lock.patch
|
||||
Patch20: mdadm-2.5.2-static.patch
|
||||
URL: http://www.kernel.org/pub/linux/utils/raid/mdadm/
|
||||
License: GPLv2+
|
||||
@ -29,9 +27,7 @@ almost all functions without a configuration file, though a configuration
|
||||
file can be used to help with some common tasks.
|
||||
|
||||
%prep
|
||||
%setup -q -n mdadm-3.1.3-git07202010
|
||||
%patch0 -p1 -b .read
|
||||
%patch1 -p1 -b .lock
|
||||
%setup -q -n mdadm-3.1.3-git20100722
|
||||
%patch20 -p1 -b .static
|
||||
|
||||
%build
|
||||
@ -77,6 +73,10 @@ fi
|
||||
%attr(0700,root,root) %dir /var/run/mdadm
|
||||
|
||||
%changelog
|
||||
* Thu Jul 22 2010 Doug Ledford <dledford@redhat.com> - 3.1.3-0.git20100722.1
|
||||
- Change git date format to the correct format (YYYYMMDD)
|
||||
- Update to latest upstream push (fixes bz604023)
|
||||
|
||||
* Tue Jul 20 2010 Doug Ledford <dledford@redhat.com> - 3.1.3-0.git07202010.2
|
||||
- Fix racy locking of mapfile (bz616596)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user