Bug #1835
Monclient crash when keyring is not readable
| Status: | Resolved | Start date: | 12/16/2011 | |
|---|---|---|---|---|
| Priority: | Normal | Due date: | ||
| Assignee: | Sage Weil | % Done: | 0% | |
| Category: | cephx | Spent time: | 2.00 hours | |
| Target version: | v0.40 | |||
| Source: | Severity: | |||
| Backport: | Reviewed: | |||
| Tags: |
Description
I had some issues with my Qemu-RBD VM's to get them online, I saw Qemu segfault and started tracing this back with GDB and found:
#0 encode (this=0x2a20608) at ./include/encoding.h:101 #1 encode<unsigned int> (this=0x2a20608) at ./include/encoding.h:364 #2 MonClient::_reopen_session (this=0x2a20608) at mon/MonClient.cc:568 #3 0x00007f80fbf883c1 in MonClient::authenticate (this=0x2a20608, timeout=<value optimized out>) at mon/MonClient.cc:409 #4 0x00007f80fbec19b6 in librados::RadosClient::connect (this=0x2a202f0) at librados.cc:957 #5 0x0000000000479263 in qemu_rbd_open (bs=0x2a16730, filename=0x29ffce0 "rbd:rbd/ox-ap01:conf=/etc/ceph/ceph.conf:id=admin:rbd_writeback_window=67108864", flags=66) at block/rbd.c:476 #6 0x0000000000443f0b in bdrv_open_common (bs=0x2a16730, filename=0x29ffce0 "rbd:rbd/ox-ap01:conf=/etc/ceph/ceph.conf:id=admin:rbd_writeback_window=67108864", flags=66, drv=0x970d80) at block.c:485 #7 0x000000000044407a in bdrv_file_open (pbs=0x2a16658, filename=0x29ffce0 "rbd:rbd/ox-ap01:conf=/etc/ceph/ceph.conf:id=admin:rbd_writeback_window=67108864", flags=66) at block.c:537 #8 0x0000000000443f2d in bdrv_open_common (bs=0x2a15de0, filename=0x29ffce0 "rbd:rbd/ox-ap01:conf=/etc/ceph/ceph.conf:id=admin:rbd_writeback_window=67108864", flags=66, drv=0x96dc80) at block.c:487 #9 0x00000000004443aa in bdrv_open (bs=0x2a15de0, filename=0x29ffce0 "rbd:rbd/ox-ap01:conf=/etc/ceph/ceph.conf:id=admin:rbd_writeback_window=67108864", flags=66, drv=0x96dc80) at block.c:621 #10 0x000000000047b250 in drive_init (opts=0x29ffc10, default_to_scsi=0) at blockdev.c:545 #11 0x000000000041a05e in drive_init_func (opts=0x29ffc10, opaque=0x9b2820) at /usr/src/qemu-kvm/vl.c:657 #12 0x000000000044164d in qemu_opts_foreach (list=0x96cc80, func=0x41a032 <drive_init_func>, opaque=0x9b2820, abort_on_failure=1) at qemu-option.c:971 #13 0x000000000041f64e in main (argc=44, argv=0x7fffe76429f8, envp=0x7fffe7642b60) at /usr/src/qemu-kvm/vl.c:3202
I started tracing it back and saw that "keyring.bin" was 600 and from root, so the Qemu process didn't have permission to read it. Changing it to the right permissions solved it, but Qemu shouldn't have crashed.
Associated revisions
librados: check for monclient::init() error
I think this fixes #1835.
Signed-off-by: Sage Weil <sage@newdream.net>
librados: check for monclient::init() error
I think this fixes #1835.
Signed-off-by: Sage Weil <sage@newdream.net>
History
#1 Updated by Wido den Hollander over 1 year ago
Btw, I know I can use the build-in 'secret' functions of libvirt, but I didn't modify my XML's yet.
#2 Updated by Sage Weil over 1 year ago
- Target version set to v0.40
- Position set to 49
#3 Updated by Sage Weil over 1 year ago
- Position deleted (
50) - Position set to 25
#4 Updated by Sage Weil over 1 year ago
- Assignee set to Sage Weil
#5 Updated by Sage Weil over 1 year ago
- Status changed from New to Testing
should be fixed by 04c8db001a4ed02ef7335ed01ce73ce9ab28dc9d .. can you verify, Wido?
#6 Updated by Wido den Hollander over 1 year ago
Confirmed, this fixed it for me.