[stgt] tgtd segfault with software RAID, hard resetting link

Tomasz Chmielewski mangoo at wpkg.org
Tue Apr 21 15:56:40 CEST 2009


Tomasz Chmielewski schrieb:
> FUJITA Tomonori schrieb:
> 
>>> So I rebooted the initiator without logging it out of the target, 
>>> with "echo b >/proc/sysrq-trigger" (it's a diskless initiator, so 
>>> basically that's the only method when its disks are gone).
>>>
>>>
>>> Initiator started to boot again and I think tgtd segfaulted when the 
>>> initiator tried to log in to the target.
>>
>> Duh, seems that we have another problem.

(...)

> # echo 3 > /sys/block/sda/device/timeout
> # echo 3 > /sys/block/sdd/device/timeout
> 
> Then, on the target:
> 
> i=1; while [ $i -ne 100 ] ; do echo $i; hdparm -Y /dev/sdd;  i=$((i+1)); 
> done
> 
> And it segfaulted after ~30 iterations (happened only once; no initiator 
> reboot needed):

Second time it happened - does strace give a hint here?


> Apr 21 13:28:07 megathecus tgtd: conn_close(106) sesson 0x81a71f0 1
> Apr 21 13:28:09 megathecus kernel: tgtd[21360]: segfault at 0 ip 
> 080546d6 sp 6cc1c340 error 4 in tgtd[8048000+24000]

semop(98304, 0x77eeb4b6, 1)             = 0
semtimedop(98304, 0x77eeb4b6, 1, {0, 10000}) = 0
semop(98304, 0x77eeb4b6, 1)             = 0
semtimedop(98304, 0x77eeb4b6, 1, {0, 10000}) = 0
semop(98304, 0x77eeb4b6, 1)             = 0
semtimedop(98304, 0x77eeb4b6, 1, {0, 10000}) = 0
semop(98304, 0x77eeb4b6, 1)             = 0
semtimedop(98304, 0x77eeb4b6, 1, {0, 10000}) = 0
semop(98304, 0x77eeb4b6, 1)             = 0
semtimedop(98304, 0x77eeb4b6, 1, {0, 10000}) = 0
semop(98304, 0x77eeb4b6, 1)             = 0
read(7, "\1\241\0\0\0\0\20\0\0\1\0\0\0\0\0\0\5\0\0\20\0\0\20\0\0\0#\f\0\0\3$*"..., 48) = 48
read(7, "AID              IET      Control"..., 4096) = 4096
futex(0x8074310, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x807430c, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
epoll_ctl(3, EPOLL_CTL_MOD, 7, {EPOLLIN|EPOLLOUT, {u32=135281064, u64=135281064}}) = 0
setsockopt(36, SOL_TCP, TCP_CORK, [1], 4) = 0
write(36, "#\207\0\0\0\0\1,\0\2=\2\0\0\31\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\25\315\0"..., 48) = 48
epoll_wait(3, {{EPOLLIN|EPOLLOUT, {u32=135281064, u64=135281064}}, {EPOLLOUT, {u32=141602640, u64=141602640}}, {EPOLLIN, {u32=134686552, u64=134686552}}}, 1024, 2000) = 3
read(7, "\1\241\0\0\0\0\20\0\0\1\0\0\0\0\0\0C\0\0\20\0\0\20\0\0\0#\r\0\0\3$*"..., 48) = 48
read(7, "]: step time server 80.237.209.64"..., 4096) = 4096
futex(0x8074310, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x807430c, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
epoll_ctl(3, EPOLL_CTL_MOD, 7, {EPOLLIN|EPOLLOUT, {u32=135281064, u64=135281064}}) = 0
epoll_ctl(3, EPOLL_CTL_MOD, 7, {EPOLLIN, {u32=135281064, u64=135281064}}) = 0
setsockopt(36, SOL_TCP, TCP_CORK, [1], 4) = 0
write(36, "TargetPortalGroupTag=1\0HeaderDige"..., 300) = 300
setsockopt(36, SOL_TCP, TCP_CORK, [0], 4) = 0
epoll_ctl(3, EPOLL_CTL_MOD, 36, {EPOLLIN, {u32=141602640, u64=141602640}}) = 0
read(14, "\1\0\0\0"..., 4)              = 4
epoll_ctl(3, EPOLL_CTL_MOD, 7, {EPOLLIN|EPOLLOUT, {u32=135281064, u64=135281064}}) = 0
epoll_ctl(3, EPOLL_CTL_MOD, 7, {EPOLLIN|EPOLLOUT, {u32=135281064, u64=135281064}}) = 0
write(13, "\1\0\0\0"..., 4)             = 4
epoll_wait(3, {{EPOLLIN|EPOLLOUT, {u32=135281064, u64=135281064}}, {EPOLLIN, {u32=134686552, u64=134686552}}}, 1024, 2000) = 2
read(7, "B\201\0\0\0\0\0\0\0\1\0\0\0\0\0\0q\0\0\20\36\0\0\20\0\0#\16\0\0\3$\0"..., 48) = 48
semtimedop(98304, 0x77eeb306, 1, {0, 10000}) = 0
semop(98304, 0x77eeb306, 1)             = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---



-- 
Tomasz Chmielewski
http://wpkg.org
--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html



More information about the stgt mailing list