Bug#329991: evms: may prevent mounting non evms devices

2005-09-25 Thread Steinar H. Gunderson
retitle 329991 Please document bd_claim locking
thanks

On Sun, Sep 25, 2005 at 01:50:40PM +0200, Carsten Hey wrote:
>> - Exclude /dev/hdc in your EVMS configuration.
>> - Apply the bd_claim patch.
>> - Mount /dev/evms/hdc1 instead of /dev/hdc1.
> The fourth solution is
> - purging evms

:-)

> AFAICS this is a bug, installing a package should not render the whole PC
> unusable (this is exactly what it does when you have /usr and /home etc.
> on another hard disk). This IMHO broken behavior is not documented in 
> README.Debian nor is evms per default deactivated by /etc/default/evms
> (maybe in combination with a debconf question).

I agree that it should be documented. Enable/disable by default is a
configuration issue that is global to Debian -- by default, almost everything
in Debian goes on when you install it. I know that some people prefer
otherwise, but I'm not the one to change that default. :-)

> I guess there is no chance to get this locking behavior changed, altough it
> IMHO should be changed.

Well, yes, but that is a kernel issue.

> Feel free to close this bug after documenting this behavior in a proper way
> and preferably additionaly deactivate evms by default in combination with 
> a debconf question.

I'll probably add something to README.Debian documenting it.

/* Steinar */
-- 
Homepage: http://www.sesse.net/


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#329991: evms: may prevent mounting non evms devices

2005-09-25 Thread Steinar H. Gunderson
On Sun, Sep 25, 2005 at 04:15:46AM +0200, Carsten Hey wrote:
> But i just remembered one thing that might be important. I added the option 
> -d 10 to evms_activate in the init script and I was able to mount something. 
> After removing -d 10 again I had the old behavior.

-d 10 is an invalid switch (-d goes from 0 to 9), so I'm not quite sure what
the effects of this should be. :-)

Anyhow, I think what you're seeing is the intended behaviour, although you
might be misinterpreting it. By default, EVMS tries to discover all
partitions (both EVMS and non-EVMS; ie. so-called “compatibility volumes”)
and add volumes in /dev/evms for them at startup. Due to bd_claim (see the
link I pasted) it can't do this for /dev/hda*, since the kernel has already
locked /dev/hda before evms_activate is run. However, it can do it for
/dev/hdc, since you don't have anything mounted there, so you get
/dev/evms/hdc1 etc. as compatibility volumes. But at this point, the kernel
locks hdc (since EVMS is using it), and you can't mount /dev/hdc1.

There are three solutions to this:

- Exclude /dev/hdc in your EVMS configuration.
- Apply the bd_claim patch.
- Mount /dev/evms/hdc1 instead of /dev/hdc1.

In any case, this is AFAICS not a bug.

/* Steinar */
-- 
Homepage: http://www.sesse.net/


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#329991: evms: may prevent mounting non evms devices

2005-09-24 Thread Carsten Hey


"Steinar H. Gunderson" <[EMAIL PROTECTED]> schrieb am 25.09.05 03:50:04:
> 
> On Sun, Sep 25, 2005 at 03:40:04AM +0200, Steinar H. Gunderson wrote:
> >> my root partition is on hda. Mounting partitions on other hard disks
> >> fails when /etc/init.d/evms is run on startup. I did not configure
> >> anything related to evms and don't use it (just installed the package to
> >> read its dokumentation).
> > Do you by any chance share EVMS and non-EVMS partitions on the same physical
> > block devices?
> 
> Pah, I should learn to read. Sorry, please disregard the last message. :-)
> 
> Is there anything useful in the kernel logs when you try to do a mount?

No, sorry.

But i just remembered one thing that might be important. I added the option 
-d 10 to evms_activate in the init script and I was able to mount something. 
After removing -d 10 again I had the old behavior.

Carsten

_
Mit der Gruppen-SMS von WEB.DE FreeMail können Sie eine SMS an alle 
Freunde gleichzeitig schicken: http://freemail.web.de/features/?mc=021179






Bug#329991: evms: may prevent mounting non evms devices

2005-09-24 Thread Carsten Hey


"Steinar H. Gunderson" <[EMAIL PROTECTED]> schrieb am 25.09.05 03:40:13:
> 
> On Sun, Sep 25, 2005 at 03:21:12AM +0200, Carsten Hey wrote:
> > my root partition is on hda. Mounting partitions on other hard disks
> > fails when /etc/init.d/evms is run on startup. I did not configure
> > anything related to evms and don't use it (just installed the package to
> > read its dokumentation).
> 
> Do you by any chance share EVMS and non-EVMS partitions on the same physical
> block devices?

I don't use EVMS on any device. So this is a clear no. :)

Carsten


_
Mit der Gruppen-SMS von WEB.DE FreeMail können Sie eine SMS an alle 
Freunde gleichzeitig schicken: http://freemail.web.de/features/?mc=021179






Bug#329991: evms: may prevent mounting non evms devices

2005-09-24 Thread Steinar H. Gunderson
On Sun, Sep 25, 2005 at 03:40:04AM +0200, Steinar H. Gunderson wrote:
>> my root partition is on hda. Mounting partitions on other hard disks
>> fails when /etc/init.d/evms is run on startup. I did not configure
>> anything related to evms and don't use it (just installed the package to
>> read its dokumentation).
> Do you by any chance share EVMS and non-EVMS partitions on the same physical
> block devices?

Pah, I should learn to read. Sorry, please disregard the last message. :-)

Is there anything useful in the kernel logs when you try to do a mount?

/* Steinar */
-- 
Homepage: http://www.sesse.net/


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#329991: evms: may prevent mounting non evms devices

2005-09-24 Thread Steinar H. Gunderson
On Sun, Sep 25, 2005 at 03:21:12AM +0200, Carsten Hey wrote:
> my root partition is on hda. Mounting partitions on other hard disks
> fails when /etc/init.d/evms is run on startup. I did not configure
> anything related to evms and don't use it (just installed the package to
> read its dokumentation).

Do you by any chance share EVMS and non-EVMS partitions on the same physical
block devices?

http://evms.sourceforge.net/patches/2.1.1/kernel/2.6.0-test8/bd_claim.patch

/* Steinar */
-- 
Homepage: http://www.sesse.net/


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Bug#329991: evms: may prevent mounting non evms devices

2005-09-24 Thread Carsten Hey
Package: evms
Version: 2.5.2-1
Severity: important

Hi,

my root partition is on hda. Mounting partitions on other hard disks
fails when /etc/init.d/evms is run on startup. I did not configure
anything related to evms and don't use it (just installed the package to
read its dokumentation).

I tried mounting different hard disks and got the same behavior after
putting the harddisk (hda) in another pc and booting from it, so the
hardware can not be the reason for this bug. 

I reproduced this with mounting via busybox-static. I use sarge and
tried this with different kernels (sarge's 2.6.8, sid's 2.6.12 and a
backported 2.6.12). I don't use udev, devfs or device mapper.

Regards
Carsten


$ mount -inrvt ext3 /dev/hdc1 /mnt/
mount: /dev/hdc1 already mounted or /mnt/ busy

$ ll /dev/hdc1 
brw-rw  1 root disk 22, 1 2004-09-18 13:51 /dev/hdc1

$ md5sum =mount
becd646dff3060c376df8c06750b1092  /bin/mount

$ strace -F mount -inrvt ext3 /dev/hdc1 /mnt/
execve("/bin/mount", ["mount", "-inrvt", "ext3", "/dev/hdc1", "/mnt/"], [/* 23 
vars */]) = 0
uname({sys="Linux", node="marvin", ...}) = 0
brk(0)  = 0x805a000
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7fd4000
access("/etc/ld.so.nohwcap", F_OK)  = 0
open("/etc/ld.so.preload", O_RDONLY)= -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY)  = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=45811, ...}) = 0
old_mmap(NULL, 45811, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fc8000
close(3)= 0
access("/etc/ld.so.nohwcap", F_OK)  = 0
open("/lib/libblkid.so.1", O_RDONLY)= 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P\35\0\000"..., 512) = 
512
fstat64(3, {st_mode=S_IFREG|0644, st_size=27548, ...}) = 0
old_mmap(NULL, 26520, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xb7fc1000
old_mmap(0xb7fc7000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 
0x6000) = 0xb7fc7000
close(3)= 0
access("/etc/ld.so.nohwcap", F_OK)  = 0
open("/lib/libuuid.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\f\0"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=9232, ...}) = 0
old_mmap(NULL, 12260, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xb7fbe000
old_mmap(0xb7fc, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 
0x1000) = 0xb7fc
close(3)= 0
access("/etc/ld.so.nohwcap", F_OK)  = 0
open("/lib/libc.so.6", O_RDONLY)= 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360^\1"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1244688, ...}) = 0
old_mmap(NULL, 1254852, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xb7e8b000
old_mmap(0xb7fb3000, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 
0x127000) = 0xb7fb3000
old_mmap(0xb7fbb000, 9668, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7fbb000
close(3)= 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7e8a000
munmap(0xb7fc8000, 45811)   = 0
open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=2259600, ...}) = 0
mmap2(NULL, 2097152, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7c8a000
close(3)= 0
brk(0)  = 0x805a000
brk(0x807b000)  = 0x807b000
brk(0)  = 0x807b000
umask(022)  = 022
open("/dev/null", O_RDWR|O_LARGEFILE)   = 3
close(3)= 0
getuid32()  = 0
geteuid32() = 0
getgid32()  = 0
getgid32()  = 0
prctl(0x3, 0x20, 0x805a898, 0xb7fc7658, 0xb7fc7658) = 1
open("/etc/blkid.tab", O_RDONLY)= -1 ENOENT (No such file or
directory)
getuid32()  = 0
geteuid32() = 0
rt_sigprocmask(SIG_BLOCK, ~[TRAP SEGV], NULL, 8) = 0
mount("/dev/hdc1", "/mnt/", "ext3", MS_RDONLY|0xc0ed, 0) = -1 EBUSY (Device 
or resource busy)
rt_sigprocmask(SIG_UNBLOCK, ~[TRAP SEGV], NULL, 8) = 0
open("/usr/share/locale/locale.alias", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=2539, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7c89000
read(3, "# Locale name alias data base.\n#"..., 4096) = 2539
read(3, "", 4096)   = 0
close(3)= 0
munmap(0xb7c89000, 4096)= 0
open("/usr/share/locale/de_DE/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT 
(No such file or directory)
open("/usr/share/locale/de/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT 
(No such file or directory)
open("/usr/share/locale/en_GB/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1 ENOENT 
(No such file o