Getting a segmentation fault in running OSD

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hoi,

FreeBSD has moved to a new release of Clang (3.8.0) so I do not exclude errors there.
But I thought I'd first ask here:

Would it be possible that this fragment of code from FileStore.cc

int FileStore::omap_get(const coll_t& _c, const ghobject_t &hoid,
                        bufferlist *header,
                        map<string, bufferlist> *out)
{
  tracepoint(objectstore, omap_get_enter, _c.c_str());
const coll_t& c = !_need_temp_object_collection(_c, hoid) ? _c : _c.get_temp();
  dout(15) << __func__ << " " << c << "/" << hoid << dendl;

Calls ostream with a null pointer?
So either coll_t& c        is 0x0
Or const ghobject_t &hoid  is 0x0 (which it is not in higher frames..)

gdb frames around this are like:
#9 0x0000000000e0bbec in std::__1::operator<< <std::__1::char_traits<char> > (__os=..., __str=0x0) at /usr/include/c++/v1/ostream:894 894 return _VSTD::__put_character_sequence(__os, __str, _Traits::length(__str));
(gdb) fr 10
#10 0x00000000016d4dba in FileStore::omap_get_values(coll_t const&, ghobject_t const&, std::__1::set<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, ceph::buffer::list, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, ceph::buffer::list> > >*) ()
(gdb) fr 11
#11 0x0000000001087b59 in OSDriver::get_keys (this=0x80cdfc018, keys=..., out=0x7fffd9fc95c8) at osd/SnapMapper.cc:30
30        return os->omap_get_values(cid, hoid, keys, out);

So there is definitely a null pointer going into operator<<

But it seems that most of omap_get_values is inlined, sinec I cannot get it to list or print any of the variables.

--WjW
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux