Bug 176443

Summary: regression: clvmd with gulm gets stuck in infinite loop
Product: Red Hat Enterprise Linux 4 Reporter: Corey Marthaler <cmarthal>
Component: device-mapperAssignee: Alasdair Kergon <agk>
Status: CLOSED ERRATA QA Contact: Cluster QE <mspqa-list>
Severity: medium Docs Contact:
Priority: high    
Version: 4.3CC: agk, ccaulfie, kanderso, rkenna
Target Milestone: ---Keywords: Regression
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: RHBA-2006-0137 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-03-07 21:37:04 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 164914, 168430    

Description Corey Marthaler 2005-12-22 21:14:10 UTC
Description of problem:
CLVMD cmds appear broken on the lastest kernel and build with Gulm. It works
just fine with DLM. The cmds either hang or cause an OOM issue. This is on the
link-01,02,08 cluster. 

Here is the stack trace of an lvremove cmd on link-01:
[...]
stat("/etc/lvm/archive", {st_mode=S_IFDIR|0700, st_size=131072, ...}) = 0
access("/etc/lvm/archive", R_OK|W_OK|X_OK) = 0
uname({sys="Linux", node="link-01", ...}) = 0
open("/etc/lvm/archive/.lvm_link-01_3626_575253821",
O_WRONLY|O_APPEND|O_CREAT|O_EXCL, 0666) = 5
fcntl(5, F_SETLK, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}) = 0
fcntl(5, F_GETFL)                       = 0x8401 (flags
O_WRONLY|O_APPEND|O_LARGEFILE)
fstat(5, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97c38000
lseek(5, 0, SEEK_CUR)                   = 0
uname({sys="Linux", node="link-01", ...}) = 0
time(NULL)                              = 1135266260
write(5, "# Generated by LVM2: Thu Dec 22 "..., 2853) = 2853
close(5)                                = 0
munmap(0x2a97c38000, 4096)              = 0
open("/etc/lvm/archive", O_RDONLY|O_NONBLOCK|O_DIRECTORY) = 5
fstat(5, {st_mode=S_IFDIR|0700, st_size=131072, ...}) = 0
fcntl(5, F_SETFD, FD_CLOEXEC)           = 0
getdents64(5, /* 100 entries */, 4096)  = 4096
getdents64(5, /* 97 entries */, 4096)   = 4096
getdents64(5, /* 96 entries */, 4096)   = 4080
getdents64(5, /* 97 entries */, 4096)   = 4096
getdents64(5, /* 97 entries */, 4096)   = 4072
brk(0x6de000)                           = 0x6de000
getdents64(5, /* 94 entries */, 4096)   = 4056
getdents64(5, /* 97 entries */, 4096)   = 4072
getdents64(5, /* 99 entries */, 4096)   = 4080
getdents64(5, /* 97 entries */, 4096)   = 4072
getdents64(5, /* 99 entries */, 4096)   = 4080
getdents64(5, /* 97 entries */, 4096)   = 4064
getdents64(5, /* 95 entries */, 4096)   = 4080
getdents64(5, /* 98 entries */, 4096)   = 4064
getdents64(5, /* 96 entries */, 4096)   = 4096
getdents64(5, /* 98 entries */, 4096)   = 4080
getdents64(5, /* 101 entries */, 4096)  = 4088
getdents64(5, /* 96 entries */, 4096)   = 4096
getdents64(5, /* 94 entries */, 4096)   = 4096
getdents64(5, /* 94 entries */, 4096)   = 4064
getdents64(5, /* 97 entries */, 4096)   = 4072
getdents64(5, /* 98 entries */, 4096)   = 4080
getdents64(5, /* 96 entries */, 4096)   = 4088
getdents64(5, /* 98 entries */, 4096)   = 4072
getdents64(5, /* 95 entries */, 4096)   = 4072
getdents64(5, /* 96 entries */, 4096)   = 4096
getdents64(5, /* 98 entries */, 4096)   = 4096
getdents64(5, /* 97 entries */, 4096)   = 4080
brk(0x708000)                           = 0x708000
getdents64(5, /* 97 entries */, 4096)   = 4088
getdents64(5, /* 95 entries */, 4096)   = 4088
getdents64(5, /* 46 entries */, 4096)   = 1904
getdents64(5, /* 0 entries */, 4096)    = 0
open("/etc/mtab", O_RDONLY)             = 6
fstat(6, {st_mode=S_IFREG|0644, st_size=332, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97c38000
read(6, "/dev/hda6 / ext3 rw 0 0\nnone /pr"..., 4096) = 332
close(6)                                = 0
munmap(0x2a97c38000, 4096)              = 0
open("/proc/meminfo", O_RDONLY)         = 6
fstat(6, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97c38000
read(6, "MemTotal:      1024772 kB\nMemFre"..., 1024) = 646
close(6)                                = 0
munmap(0x2a97c38000, 4096)              = 0
close(5)                                = 0
link("/etc/lvm/archive/.lvm_link-01_3626_575253821",
"/etc/lvm/archive/gfs_00805.vg") = 0
stat("/etc/lvm/archive/.lvm_link-01_3626_575253821", {st_mode=S_IFREG|0600,
st_size=2853, ...}) = 0
unlink("/etc/lvm/archive/.lvm_link-01_3626_575253821") = 0
time(NULL)                              = 1135266261
stat("/etc/lvm/archive/gfs_00804.vg", {st_mode=S_IFREG|0600, st_size=1645, ...}) = 0
write(3, "2\0\377\277\0\0\0\0\0\0\0\0C\0\0\0\0\30\200xFch1synu6a"..., 85) = 85
read(3, 

Here a the clvmd strace to go with that lvremove cmd:
link-01:
[...]
clone(child_stack=0x41401270,
flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|CLONE_DETACHED,
parent_tidptr=0x414019f0, tls=0x41401960, child_tidptr=0x414019f0) = 3624
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [6], left {59, 999000})
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "gLR\1", 4, 0, NULL, NULL)  = 4
recvfrom(6, "\5", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\f", 2, 0, NULL, NULL)   = 2
recvfrom(6, "CLVMV_gfs-1\0", 12, 0, NULL, NULL) = 12
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\t", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\3", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0", 4, 0, NULL, NULL) = 4
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0", 4, 0, NULL, NULL) = 4
futex(0x41400fe4, FUTEX_WAKE, 1)        = 1
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [6], left {59, 999000})
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "gLR\1", 4, 0, NULL, NULL)  = 4
recvfrom(6, "\5", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\f", 2, 0, NULL, NULL)   = 2
recvfrom(6, "CLVMV_gfs-2\0", 12, 0, NULL, NULL) = 12
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\t", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0", 4, 0, NULL, NULL) = 4
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0", 4, 0, NULL, NULL) = 4
futex(0x41400ff4, FUTEX_WAKE, 1)        = 1
futex(0x41400ff0, FUTEX_WAKE, 1)        = 1
futex(0x41401020, FUTEX_WAKE, 1)        = 1
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [10], left {60, 0})
read(10, "\0\0\0\0", 4)                 = 4
futex(0x556b64, FUTEX_WAKE, 1)          = 1
futex(0x556b60, FUTEX_WAKE, 1)          = 1
futex(0x556b20, FUTEX_WAKE, 1)          = 1
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [10], left {60, 0})
read(10, "\0\0\0\0", 4)                 = 4
write(9, "\1\0\0\0\0\0\0\0\0\0\0\0\16\0\0\0\0link-01\0\0\0\0\0\0"..., 32) = 32
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [9], left {59, 978000})
read(9, "3\1i\0\0\0\0\0\0\0\0\0\10\0\0\0\0\6\0V_gfs\0\211", 4096) = 26
futex(0x57a8bc, FUTEX_WAKE, 1)          = 1
futex(0x57a8b8, FUTEX_WAKE, 1)          = 1
futex(0x57a890, FUTEX_WAKE, 1)          = 1
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [6], left {60, 0})
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "gLR\1", 4, 0, NULL, NULL)  = 4
recvfrom(6, "\5", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\f", 2, 0, NULL, NULL)   = 2
recvfrom(6, "CLVMV_gfs-1\0", 12, 0, NULL, NULL) = 12
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\t", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0", 4, 0, NULL, NULL) = 4
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0", 4, 0, NULL, NULL) = 4
futex(0x41401004, FUTEX_WAKE, 1)        = 1
futex(0x41401000, FUTEX_WAKE, 1)        = 1
futex(0x41401030, FUTEX_WAKE, 1)        = 1
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [6], left {59, 999000})
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "gLR\1", 4, 0, NULL, NULL)  = 4
recvfrom(6, "\5", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\f", 2, 0, NULL, NULL)   = 2
recvfrom(6, "CLVMV_gfs-2\0", 12, 0, NULL, NULL) = 12
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\t", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0", 4, 0, NULL, NULL) = 4
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0", 4, 0, NULL, NULL) = 4
futex(0x41401004, FUTEX_WAKE, 1)        = 1
futex(0x41401000, FUTEX_WAKE, 1)        = 1
futex(0x41401030, FUTEX_WAKE, 1)        = 1
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [10], left {60, 0})
read(10, "\0\0\0\0", 4)                 = 4
futex(0x556b64, FUTEX_WAKE, 1)          = 1
futex(0x556b60, FUTEX_WAKE, 1)          = 1
futex(0x556b20, FUTEX_WAKE, 1)          = 1
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [10], left {60, 0})
read(10, "\0\0\0\0", 4)                 = 4
write(9, "\1\0\0\0\0\0\0\0\0\0\0\0\16\0\0\0\0link-01\0\0\0\0\0\0"..., 32) = 32
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [9], left {60, 0})
read(9, "", 4096)                       = 0
futex(0x57a8bc, FUTEX_WAKE, 1)          = 1
futex(0x414019f0, FUTEX_WAIT, 3624, NULL) = 0
close(10)                               = 0
close(11)                               = 0
close(9)                                = 0
close(9)                                = -1 EBADF (Bad file descriptor)
futex(0x556b64, FUTEX_WAKE, 1)          = 1
futex(0x556b60, FUTEX_WAKE, 1)          = 1
futex(0x556b20, FUTEX_WAKE, 1)          = 1
select(1024, [3 4 5 6 8], NULL, NULL, {60, 0}) = 1 (in [3], left {49, 160000})
accept(3, {sa_family=AF_FILE, path=@}, [4294967298]) = 9
select(1024, [3 4 5 6 8 9], NULL, NULL, {60, 0}) = 1 (in [9], left {60, 0})
read(9, "3\1\377\277\0\0\0\0\0\0\0\0\10\0\0\0\0\4\0V_gfs\0\346", 4096) = 26
pipe([10, 11])                          = 0
clone(child_stack=0x41401270,
flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|CLONE_DETACHED,
parent_tidptr=0x414019f0, tls=0x41401960, child_tidptr=0x414019f0) = 3627
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [6], left {59, 999000})
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "gLR\1", 4, 0, NULL, NULL)  = 4
recvfrom(6, "\5", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\f", 2, 0, NULL, NULL)   = 2
recvfrom(6, "CLVMV_gfs-2\0", 12, 0, NULL, NULL) = 12
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\t", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\1", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0", 4, 0, NULL, NULL) = 4
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0", 4, 0, NULL, NULL) = 4
futex(0x41400fe4, FUTEX_WAKE, 1)        = 1
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [6], left {59, 999000})
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "gLR\1", 4, 0, NULL, NULL)  = 4
recvfrom(6, "\5", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\f", 2, 0, NULL, NULL)   = 2
recvfrom(6, "CLVMV_gfs-1\0", 12, 0, NULL, NULL) = 12
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\6", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0\0\0\0\0", 8, 0, NULL, NULL) = 8
recvfrom(6, "\t", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0", 4, 0, NULL, NULL) = 4
recvfrom(6, "\7", 1, 0, NULL, NULL)     = 1
recvfrom(6, "\0\0\0\0", 4, 0, NULL, NULL) = 4
futex(0x41400ff4, FUTEX_WAKE, 1)        = 1
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [10], left {60, 0})
read(10, "\0\0\0\0", 4)                 = 4
futex(0x556b64, FUTEX_WAKE, 1)          = 1
futex(0x556b60, FUTEX_WAKE, 1)          = 1
futex(0x556b20, FUTEX_WAKE, 1)          = 1
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [10], left {60, 0})
read(10, "\0\0\0\0", 4)                 = 4
write(9, "\1\0\0\0\0\0\0\0\0\0\0\0\16\0\0\0\0link-01\0\0\0\0\0\0"..., 32) = 32
select(1024, [3 4 5 6 8 9 10], NULL, NULL, {60, 0}) = 1 (in [9], left {59, 315000})
read(9, "2\0\377\277\0\0\0\0\0\0\0\0C\0\0\0\0\30\200xFch1synu6a"..., 4096) = 85



link-02:
[...]
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97f5f000
read(10, "# Do not remove the following li"..., 4096) = 226
read(10, "", 4096)                      = 0
close(10)                               = 0
munmap(0x2a97f5f000, 4096)              = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135268124, 288473}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "\277\27\1\0\0\1\0\0\0\0\0\0\7link-02\3lab\3msp\6red"..., 44, 0,
NULL, 0) = 44
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [95])               = 0
recvfrom(10, "\277\27\205\200\0\1\0\0\0\1\0\0\7link-02\3lab\3msp\6re"..., 1024,
0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")},
[16]) = 95
close(10)                               = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135268124, 289476}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "\334\266\1\0\0\1\0\0\0\0\0\0\7link-02\3msp\6redhat\3"..., 40, 0,
NULL, 0) = 40
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [95])               = 0
recvfrom(10, "\334\266\201\203\0\1\0\0\0\1\0\0\7link-02\3msp\6redhat"..., 1024,
0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")},
[16]) = 95
close(10)                               = 0
open("/etc/hosts", O_RDONLY)            = 10
fcntl(10, F_GETFD)                      = 0
fcntl(10, F_SETFD, FD_CLOEXEC)          = 0
fstat(10, {st_mode=S_IFREG|0644, st_size=226, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97f5f000
read(10, "# Do not remove the following li"..., 4096) = 226
read(10, "", 4096)                      = 0
close(10)                               = 0
munmap(0x2a97f5f000, 4096)              = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135268124, 290872}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "\207U\1\0\0\1\0\0\0\0\0\0\7link-02\3lab\3msp\6red"..., 44, 0, NULL,
0) = 44
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [98])               = 0
recvfrom(10, "\207U\205\200\0\1\0\1\0\1\0\1\7link-02\3lab\3msp\6red"..., 1024,
0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")},
[16]) = 98
close(10)                               = 0
uname({sys="Linux", node="link-02", ...}) = 0
open("/etc/hosts", O_RDONLY)            = 10
fcntl(10, F_GETFD)                      = 0
fcntl(10, F_SETFD, FD_CLOEXEC)          = 0
fstat(10, {st_mode=S_IFREG|0644, st_size=226, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97f5f000
read(10, "# Do not remove the following li"..., 4096) = 226
read(10, "", 4096)                      = 0
close(10)                               = 0
munmap(0x2a97f5f000, 4096)              = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135268124, 292418}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "\23\241\1\0\0\1\0\0\0\0\0\0\7link-02\3lab\3msp\6red"..., 44, 0,
NULL, 0) = 44
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [95])               = 0
recvfrom(10, "\23\241\205\200\0\1\0\0\0\1\0\0\7link-02\3lab\3msp\6re"..., 1024,
0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")},
[16]) = 95
close(10)                               = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135268124, 293436}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "8\33\1\0\0\1\0\0\0\0\0\0\7link-02\3msp\6redhat\3"..., 40, 0, NULL,
0) = 40
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [95])               = 0
recvfrom(10, "8\33\201\203\0\1\0\0\0\1\0\0\7link-02\3msp\6redhat\3"..., 1024, 0,
{sa_family=AF_INET, sin_port=htons(53),sin_addr=inet_addr("10.15.84.3")}, [16]) = 95
close(10)                               = 0
open("/etc/hosts", O_RDONLY)            = 10
fcntl(10, F_GETFD)                      = 0
fcntl(10, F_SETFD, FD_CLOEXEC)          = 0
fstat(10, {st_mode=S_IFREG|0644, st_size=226, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97f5f000
read(10, "# Do not remove the following li"..., 4096) = 226
read(10, "", 4096)                      = 0
close(10)                               = 0
munmap(0x2a97f5f000, 4096)              = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135268124, 294711}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "\335\341\1\0\0\1\0\0\0\0\0\0\7link-02\3lab\3msp\6red"..., 44, 0,
NULL, 0) = 44
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [98])               = 0
recvfrom(10, "\335\341\205\200\0\1\0\1\0\1\0\1\7link-02\3lab\3msp\6r"..., 1024,
0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")},
[16]) = 98
close(10)                               = 0
uname({sys="Linux", node="link-02", ...}) = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 10
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
connect(10, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT
(No such file or directory)
close(10)                               = 0
open("/etc/hosts", O_RDONLY)            = 10
fcntl(10, F_GETFD)                      = 0
fcntl(10, F_SETFD, FD_CLOEXEC)          = 0
fstat(10, {st_mode=S_IFREG|0644, st_size=226, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97f5f000
read(10, "# Do not remove the following li"..., 4096) = 226
read(10, "", 4096)                      = 0
close(10)                               = 0
munmap(0x2a97f5f000, 4096)              = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135268124, 389849}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "\360~\1\0\0\1\0\0\0\0\0\0\7link-02\3lab\3msp\6red"..., 44, 0, NULL,
0) = 44
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [95])               = 0
recvfrom(10, "\360~\205\200\0\1\0\0\0\1\0\0\7link-02\3lab\3msp\6red"..., 1024,
0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")},
[16]) = 95
close(10)                               = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135268124, 390946}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "\227\347\1\0\0\1\0\0\0\0\0\0\7link-02\3msp\6redhat\3"..., 40, 0,
NULL, 0) = 40
[...] (contiunes to scroll)


link-08:
[...]
recvfrom(10, "C\267\205\200\0\1\0\0\0\1\0\0\7link-08\3lab\3msp\6red"..., 1024,
0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")},
[16]) = 95
close(10)                               = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135264874, 650166}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "b\276\1\0\0\1\0\0\0\0\0\0\7link-08\3msp\6redhat\3"..., 40, 0, NULL,
0) = 40
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [95])               = 0
recvfrom(10, "b\276\201\203\0\1\0\0\0\1\0\0\7link-08\3msp\6redhat\3"..., 1024,
0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")},
[16]) = 95
close(10)                               = 0
open("/etc/hosts", O_RDONLY)            = 10
fcntl(10, F_GETFD)                      = 0
fcntl(10, F_SETFD, FD_CLOEXEC)          = 0
fstat(10, {st_mode=S_IFREG|0644, st_size=226, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97f64000
read(10, "# Do not remove the following li"..., 4096) = 226
read(10, "", 4096)                      = 0
close(10)                               = 0
munmap(0x2a97f64000, 4096)              = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135264874, 652593}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "\350\270\1\0\0\1\0\0\0\0\0\0\7link-08\3lab\3msp\6red"..., 44, 0,
NULL, 0) = 44
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [98])               = 0
recvfrom(10, "\350\270\205\200\0\1\0\1\0\1\0\1\7link-08\3lab\3msp\6r"..., 1024,
0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")},
[16]) = 98
close(10)                               = 0
write(9, "\2\0\0V\0\0\0\0\0\0\0\0\0\0\0\f\340\0\0\0\0\0\0\0\2\0\0"..., 30) = 30
uname({sys="Linux", node="link-08", ...}) = 0
open("/etc/hosts", O_RDONLY)            = 10
fcntl(10, F_GETFD)                      = 0
fcntl(10, F_SETFD, FD_CLOEXEC)          = 0
fstat(10, {st_mode=S_IFREG|0644, st_size=226, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97f64000
read(10, "# Do not remove the following li"..., 4096) = 226
read(10, "", 4096)                      = 0
close(10)                               = 0
munmap(0x2a97f64000, 4096)              = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135264874, 654938}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "ju\1\0\0\1\0\0\0\0\0\0\7link-08\3lab\3msp\6red"..., 44, 0, NULL, 0) = 44
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [95])               = 0
recvfrom(10, "ju\205\200\0\1\0\0\0\1\0\0\7link-08\3lab\3msp\6red"..., 1024, 0,
{sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")}, [16])
= 95
close(10)                               = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135264874, 655831}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "\f\201\1\0\0\1\0\0\0\0\0\0\7link-08\3msp\6redhat\3"..., 40, 0, NULL,
0) = 40
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [95])               = 0
recvfrom(10, "\f\201\201\203\0\1\0\0\0\1\0\0\7link-08\3msp\6redhat\3"..., 1024,
0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")},
[16]) = 95
close(10)                               = 0
open("/etc/hosts", O_RDONLY)            = 10
fcntl(10, F_GETFD)                      = 0
fcntl(10, F_SETFD, FD_CLOEXEC)          = 0
fstat(10, {st_mode=S_IFREG|0644, st_size=226, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97f64000
read(10, "# Do not remove the following li"..., 4096) = 226
read(10, "", 4096)                      = 0
close(10)                               = 0
munmap(0x2a97f64000, 4096)              = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135264874, 656936}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "y\314\1\0\0\1\0\0\0\0\0\0\7link-08\3lab\3msp\6red"..., 44, 0, NULL,
0) = 44
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [98])               = 0
recvfrom(10, "y\314\205\200\0\1\0\1\0\1\0\1\7link-08\3lab\3msp\6red"..., 1024,
0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")},
[16]) = 98
close(10)                               = 0
write(9, "\2\0\0V\0\0\0\0\0\0\0\0\0\0\0\f\340\0\0\0\0\0\0\0\2\0\0"..., 30) = 30
uname({sys="Linux", node="link-08", ...}) = 0
open("/etc/hosts", O_RDONLY)            = 10
fcntl(10, F_GETFD)                      = 0
fcntl(10, F_SETFD, FD_CLOEXEC)          = 0
fstat(10, {st_mode=S_IFREG|0644, st_size=226, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97f64000
read(10, "# Do not remove the following li"..., 4096) = 226
read(10, "", 4096)                      = 0
close(10)                               = 0
munmap(0x2a97f64000, 4096)              = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135264874, 658340}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "\351Q\1\0\0\1\0\0\0\0\0\0\7link-08\3lab\3msp\6red"..., 44, 0, NULL,
0) = 44
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [95])               = 0
recvfrom(10, "\351Q\205\200\0\1\0\0\0\1\0\0\7link-08\3lab\3msp\6red"..., 1024,
0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")},
[16]) = 95
close(10)                               = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135264874, 684841}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "}e\1\0\0\1\0\0\0\0\0\0\7link-08\3msp\6redhat\3"..., 40, 0, NULL, 0) = 40
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [95])               = 0
recvfrom(10, "}e\201\203\0\1\0\0\0\1\0\0\7link-08\3msp\6redhat\3"..., 1024, 0,
{sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")}, [16])
= 95
close(10)                               = 0
open("/etc/hosts", O_RDONLY)            = 10
fcntl(10, F_GETFD)                      = 0
fcntl(10, F_SETFD, FD_CLOEXEC)          = 0
fstat(10, {st_mode=S_IFREG|0644, st_size=226, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x2a97f64000
read(10, "# Do not remove the following li"..., 4096) = 226
read(10, "", 4096)                      = 0
close(10)                               = 0
munmap(0x2a97f64000, 4096)              = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 10
connect(10, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("10.15.84.3")}, 28) = 0
fcntl(10, F_GETFL)                      = 0x2 (flags O_RDWR|O_LARGEFILE)
fcntl(10, F_SETFL, O_RDWR|O_NONBLOCK)   = 0
gettimeofday({1135264874, 687345}, NULL) = 0
poll([{fd=10, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(10, "\"&\1\0\0\1\0\0\0\0\0\0\7link-08\3lab\3msp\6red"..., 44, 0, NULL, 0)
= 44
poll([{fd=10, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(10, FIONREAD, [98])               = 0
recvfrom(10, "\"&\205\200\0\1\0\1\0\1\0\1\7link-08\3lab\3msp\6red"..., 1024, 0,
{sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.15.84.3")}, [16])
= 98
close(10)                               = 0
write(9, "\2\0\0V\0\0\0\0\0\0\0\0\0\0\0\f\340\0\0\0\0\0\0\0\2\0\0"..., 30


Version-Release number of selected component (if applicable):
[root@link-02 ~]# uname -ar
Linux link-02 2.6.9-27.ELsmp #1 SMP Tue Dec 20 19:21:06 EST 2005 x86_64 x86_64
x86_64 GNU/Linux
[root@link-02 ~]# rpm -q lvm2
lvm2-2.02.01-1.1.RHEL4
[root@link-02 ~]# rpm -q lvm2-cluster
lvm2-cluster-2.02.01-1.0.RHEL4


How reproducible:
everytime

Comment 1 Christine Caulfield 2005-12-23 13:19:55 UTC
I can reproduce this on i386 with gcc4, but I'm not sure if it's exactly the
same problem - it certainly looks identical externally. gcc 3.2 on i386 does not
have the problem.

It seems to be compiler-related. The LVM hash.c functions aren't working
properly, so when clvmd tries to traverse a list of nodes it gets stuck in an
infinite loop. dm_hash_get_next() never returns a NULL pointer for the end of
the list, just the same node over and over again.

Adding a dummy function:

static void anything() {}

to LVM2/lib/datastruct/hash.c fixes it !


Comment 2 Christine Caulfield 2005-12-23 13:50:23 UTC
Oops, that should be device-mapper/lib/datastruct/hash.c of course.

Comment 3 Corey Marthaler 2006-01-03 17:10:41 UTC
Adding to the blocker list and bumping the priority as this is blocking U3
regression testing.

Comment 4 Corey Marthaler 2006-01-03 17:13:30 UTC
Changing the summary as it has been seen by Patrick on i386.

Comment 5 Christine Caulfield 2006-01-04 12:55:49 UTC
A couple more possibilities for a "fix". All apply to
devicemapper/lib/datastruct/hash.c:

* add -Os to the CFLAGS
* Remove "inline" from _find()

Take your pick.

Comment 6 Alasdair Kergon 2006-01-04 15:25:48 UTC
I'll remove the inline.

And tidy some of the implicit int/long, signed/unsigned conversions in that file
too in case they're anything to do with it.


Comment 7 Alasdair Kergon 2006-01-04 16:49:16 UTC
Although the bug has only shown up in clvm, the fix we propose goes into the
device-mapper package.

Comment 11 Corey Marthaler 2006-01-06 16:55:20 UTC
This fix doesn't appear to help the problem.

[root@link-01 ~]# rpm -q lvm2
lvm2-2.02.01-1.2.RHEL4
[root@link-01 ~]# rpm -q lvm2-cluster
lvm2-cluster-2.02.01-1.1.RHEL4
[root@link-01 ~]# rpm -q device-mapper
device-mapper-1.02.02-2.0.RHEL4

[root@link-01 ~]# lvcreate --version
  LVM version:     2.02.01 (2005-11-23)
  Library version: 1.02.02 (2006-01-04)
  Driver version:  4.5.0


Stuck lvremove cmd:

stat("/etc/lvm/lvm.conf", {st_mode=S_IFREG|0644, st_size=10509, ...}) = 0
stat("/usr/lib64/liblvm2clusterlock.so", {st_mode=S_IFREG|0555, st_size=9368,
...}) = 0
open("/usr/lib64/liblvm2clusterlock.so", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\n\0"..., 640) = 640
fstat(3, {st_mode=S_IFREG|0555, st_size=9368, ...}) = 0
mmap(NULL, 1055728, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0x2a97b38000
mprotect(0x2a97b3a000, 1047536, PROT_NONE) = 0
mmap(0x2a97c39000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x2a97c39000
close(3)                                = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 3
connect(3, {sa_family=AF_FILE, path=@clvmd}, 110) = 0
stat("/proc/lvm/VGs/gfs", 0x7fbfffb4c0) = -1 ENOENT (No such file or directory)
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
write(3, "3\1\377\277\0\0\0\0\0\0\0\0\10\0\0\0\0\4\0V_gfs\0\351", 26) = 26
read(3, 

Comment 12 Christine Caulfield 2006-01-09 10:12:39 UTC
same problem, it's just that the workaround for i386 doesn't seem to have any
effect on x86_64. 

-O0 does "fix" it though, if you fancy your hash functions non-optimised :-(



Comment 13 Kiersten (Kerri) Anderson 2006-01-11 20:09:31 UTC
This is still blocking QA for U3 and GFS beta.  Any progress?

Comment 16 Alasdair Kergon 2006-01-12 20:08:16 UTC
Updated packages ready.

Comment 17 Corey Marthaler 2006-01-17 22:48:19 UTC
Fix verified with the following rpms.

[root@link-01 tmp]# rpm -q device-mapper
device-mapper-1.02.02-3.0.RHEL4
[root@link-01 tmp]# rpm -q lvm2
lvm2-2.02.01-1.3.RHEL4
[root@link-01 tmp]# rpm -q lvm2-cluster
lvm2-cluster-2.02.01-1.2.RHEL4


Comment 18 Alasdair Kergon 2006-01-17 23:15:01 UTC
Phew!

Glad we caught that problem - it might have caused all sorts of
hard-to-reproduce problems elsewhere in lvm2 on all architectures.

Comment 20 Red Hat Bugzilla 2006-03-07 18:42:15 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2006-0099.html


Comment 21 Red Hat Bugzilla 2006-03-07 21:37:05 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2006-0137.html