* Client crash on getcwd with non-default root mount @ 2012-11-29 19:52 Noah Watkins 2012-11-29 19:58 ` Sam Lang 0 siblings, 1 reply; 5+ messages in thread From: Noah Watkins @ 2012-11-29 19:52 UTC (permalink / raw) To: ceph-devel I'm getting the assert failure below with the following test: ceph_mount(cmount, "/otherdir"); ceph_getcwd(cmount); -- client/Inode.h: In function 'Dentry* Inode::get_first_parent()' thread 7fded47c8780 time 2012-11-29 11:49:00.890184 client/Inode.h: 165: FAILED assert(!dn_set.empty()) ceph version 0.54-808-g1ed5a1f (1ed5a1f984d8260d86cc25b1ae95ffedf597e579) 1: (()+0x11ee89) [0x7fded36fae89] 2: (()+0x1429d3) [0x7fded371e9d3] 3: (ceph_getcwd()+0x11) [0x7fded36fdb41] 4: (MountedTest2_XYZ_Test::TestBody()+0x63a) [0x42563a] 5: (testing::Test::Run()+0xaa) [0x45017a] 6: (testing::internal::TestInfoImpl::Run()+0x100) [0x450280] 7: (testing::TestCase::Run()+0xbd) [0x45034d] 8: (testing::internal::UnitTestImpl::RunAllTests()+0x217) [0x4505b7] 9: (main()+0x35) [0x423115] 10: (__libc_start_main()+0xed) [0x7fded2d2876d] 11: /home/nwatkins/projects/ceph/ceph/src/.libs/lt-test_libcephfs() [0x423171] NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this. terminate called after throwing an instance of 'ceph::FailedAssertion' Aborted (core dumped) Thanks, Noah ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Client crash on getcwd with non-default root mount 2012-11-29 19:52 Client crash on getcwd with non-default root mount Noah Watkins @ 2012-11-29 19:58 ` Sam Lang 2012-11-29 20:02 ` Noah Watkins 0 siblings, 1 reply; 5+ messages in thread From: Sam Lang @ 2012-11-29 19:58 UTC (permalink / raw) To: Noah Watkins; +Cc: ceph-devel On 11/29/2012 01:52 PM, Noah Watkins wrote: > I'm getting the assert failure below with the following test: > > ceph_mount(cmount, "/otherdir"); This should fail with ENOENT if you check the return code. -sam > ceph_getcwd(cmount); > > -- > > client/Inode.h: In function 'Dentry* Inode::get_first_parent()' thread > 7fded47c8780 time 2012-11-29 11:49:00.890184 > client/Inode.h: 165: FAILED assert(!dn_set.empty()) > ceph version 0.54-808-g1ed5a1f (1ed5a1f984d8260d86cc25b1ae95ffedf597e579) > 1: (()+0x11ee89) [0x7fded36fae89] > 2: (()+0x1429d3) [0x7fded371e9d3] > 3: (ceph_getcwd()+0x11) [0x7fded36fdb41] > 4: (MountedTest2_XYZ_Test::TestBody()+0x63a) [0x42563a] > 5: (testing::Test::Run()+0xaa) [0x45017a] > 6: (testing::internal::TestInfoImpl::Run()+0x100) [0x450280] > 7: (testing::TestCase::Run()+0xbd) [0x45034d] > 8: (testing::internal::UnitTestImpl::RunAllTests()+0x217) [0x4505b7] > 9: (main()+0x35) [0x423115] > 10: (__libc_start_main()+0xed) [0x7fded2d2876d] > 11: /home/nwatkins/projects/ceph/ceph/src/.libs/lt-test_libcephfs() [0x423171] > NOTE: a copy of the executable, or `objdump -rdS <executable>` is > needed to interpret this. > terminate called after throwing an instance of 'ceph::FailedAssertion' > Aborted (core dumped) > > Thanks, > Noah > -- > To unsubscribe from this list: send the line "unsubscribe ceph-devel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Client crash on getcwd with non-default root mount 2012-11-29 19:58 ` Sam Lang @ 2012-11-29 20:02 ` Noah Watkins 2012-11-29 20:12 ` Noah Watkins 0 siblings, 1 reply; 5+ messages in thread From: Noah Watkins @ 2012-11-29 20:02 UTC (permalink / raw) To: Sam Lang; +Cc: ceph-devel Oh, let me clarify. /otherdir exists, and the mount succeeds. - Noah On Thu, Nov 29, 2012 at 11:58 AM, Sam Lang <sam.lang@inktank.com> wrote: > On 11/29/2012 01:52 PM, Noah Watkins wrote: >> >> I'm getting the assert failure below with the following test: >> >> ceph_mount(cmount, "/otherdir"); > > > This should fail with ENOENT if you check the return code. > -sam > >> ceph_getcwd(cmount); >> >> -- >> >> client/Inode.h: In function 'Dentry* Inode::get_first_parent()' thread >> 7fded47c8780 time 2012-11-29 11:49:00.890184 >> client/Inode.h: 165: FAILED assert(!dn_set.empty()) >> ceph version 0.54-808-g1ed5a1f >> (1ed5a1f984d8260d86cc25b1ae95ffedf597e579) >> 1: (()+0x11ee89) [0x7fded36fae89] >> 2: (()+0x1429d3) [0x7fded371e9d3] >> 3: (ceph_getcwd()+0x11) [0x7fded36fdb41] >> 4: (MountedTest2_XYZ_Test::TestBody()+0x63a) [0x42563a] >> 5: (testing::Test::Run()+0xaa) [0x45017a] >> 6: (testing::internal::TestInfoImpl::Run()+0x100) [0x450280] >> 7: (testing::TestCase::Run()+0xbd) [0x45034d] >> 8: (testing::internal::UnitTestImpl::RunAllTests()+0x217) [0x4505b7] >> 9: (main()+0x35) [0x423115] >> 10: (__libc_start_main()+0xed) [0x7fded2d2876d] >> 11: /home/nwatkins/projects/ceph/ceph/src/.libs/lt-test_libcephfs() >> [0x423171] >> NOTE: a copy of the executable, or `objdump -rdS <executable>` is >> needed to interpret this. >> terminate called after throwing an instance of 'ceph::FailedAssertion' >> Aborted (core dumped) >> >> Thanks, >> Noah >> -- >> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html >> > ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Client crash on getcwd with non-default root mount 2012-11-29 20:02 ` Noah Watkins @ 2012-11-29 20:12 ` Noah Watkins 2012-11-29 20:40 ` Sam Lang 0 siblings, 1 reply; 5+ messages in thread From: Noah Watkins @ 2012-11-29 20:12 UTC (permalink / raw) To: Sam Lang; +Cc: ceph-devel Here is the full test case: TEST(LibCephFS, MountRootChdir) { struct ceph_mount_info *cmount; /* create mount and new directory */ ASSERT_EQ(ceph_create(&cmount, NULL), 0); ASSERT_EQ(ceph_conf_read_file(cmount, NULL), 0); ASSERT_EQ(ceph_mount(cmount, "/"), 0); ASSERT_EQ(ceph_mkdir(cmount, "/xyz", 0700), 0); ceph_shutdown(cmount); /* create mount with non-"/" root */ ASSERT_EQ(ceph_create(&cmount, NULL), 0); ASSERT_EQ(ceph_conf_read_file(cmount, NULL), 0); ASSERT_EQ(ceph_mount(cmount, "/xyz"), 0); /* should be at "root" directory, but blows up */ ASSERT_STREQ(ceph_getcwd(cmount), "/"); } On Thu, Nov 29, 2012 at 12:02 PM, Noah Watkins <jayhawk@cs.ucsc.edu> wrote: > Oh, let me clarify. /otherdir exists, and the mount succeeds. > > - Noah > > On Thu, Nov 29, 2012 at 11:58 AM, Sam Lang <sam.lang@inktank.com> wrote: >> On 11/29/2012 01:52 PM, Noah Watkins wrote: >>> >>> I'm getting the assert failure below with the following test: >>> >>> ceph_mount(cmount, "/otherdir"); >> >> >> This should fail with ENOENT if you check the return code. >> -sam >> >>> ceph_getcwd(cmount); >>> >>> -- >>> >>> client/Inode.h: In function 'Dentry* Inode::get_first_parent()' thread >>> 7fded47c8780 time 2012-11-29 11:49:00.890184 >>> client/Inode.h: 165: FAILED assert(!dn_set.empty()) >>> ceph version 0.54-808-g1ed5a1f >>> (1ed5a1f984d8260d86cc25b1ae95ffedf597e579) >>> 1: (()+0x11ee89) [0x7fded36fae89] >>> 2: (()+0x1429d3) [0x7fded371e9d3] >>> 3: (ceph_getcwd()+0x11) [0x7fded36fdb41] >>> 4: (MountedTest2_XYZ_Test::TestBody()+0x63a) [0x42563a] >>> 5: (testing::Test::Run()+0xaa) [0x45017a] >>> 6: (testing::internal::TestInfoImpl::Run()+0x100) [0x450280] >>> 7: (testing::TestCase::Run()+0xbd) [0x45034d] >>> 8: (testing::internal::UnitTestImpl::RunAllTests()+0x217) [0x4505b7] >>> 9: (main()+0x35) [0x423115] >>> 10: (__libc_start_main()+0xed) [0x7fded2d2876d] >>> 11: /home/nwatkins/projects/ceph/ceph/src/.libs/lt-test_libcephfs() >>> [0x423171] >>> NOTE: a copy of the executable, or `objdump -rdS <executable>` is >>> needed to interpret this. >>> terminate called after throwing an instance of 'ceph::FailedAssertion' >>> Aborted (core dumped) >>> >>> Thanks, >>> Noah >>> -- >>> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in >>> the body of a message to majordomo@vger.kernel.org >>> More majordomo info at http://vger.kernel.org/majordomo-info.html >>> >> ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Client crash on getcwd with non-default root mount 2012-11-29 20:12 ` Noah Watkins @ 2012-11-29 20:40 ` Sam Lang 0 siblings, 0 replies; 5+ messages in thread From: Sam Lang @ 2012-11-29 20:40 UTC (permalink / raw) To: Noah Watkins; +Cc: ceph-devel On 11/29/2012 02:12 PM, Noah Watkins wrote: > Here is the full test case: Sorry - I was assuming it was just an issue with checking the return code. I've pushed a one-line fix to wip-mount-subdir. You can cherry-pick to your branch if you want. -sam > > TEST(LibCephFS, MountRootChdir) { > struct ceph_mount_info *cmount; > > /* create mount and new directory */ > ASSERT_EQ(ceph_create(&cmount, NULL), 0); > ASSERT_EQ(ceph_conf_read_file(cmount, NULL), 0); > ASSERT_EQ(ceph_mount(cmount, "/"), 0); > ASSERT_EQ(ceph_mkdir(cmount, "/xyz", 0700), 0); > ceph_shutdown(cmount); > > /* create mount with non-"/" root */ > ASSERT_EQ(ceph_create(&cmount, NULL), 0); > ASSERT_EQ(ceph_conf_read_file(cmount, NULL), 0); > ASSERT_EQ(ceph_mount(cmount, "/xyz"), 0); > > /* should be at "root" directory, but blows up */ > ASSERT_STREQ(ceph_getcwd(cmount), "/"); > } > > On Thu, Nov 29, 2012 at 12:02 PM, Noah Watkins <jayhawk@cs.ucsc.edu> wrote: >> Oh, let me clarify. /otherdir exists, and the mount succeeds. >> >> - Noah >> >> On Thu, Nov 29, 2012 at 11:58 AM, Sam Lang <sam.lang@inktank.com> wrote: >>> On 11/29/2012 01:52 PM, Noah Watkins wrote: >>>> >>>> I'm getting the assert failure below with the following test: >>>> >>>> ceph_mount(cmount, "/otherdir"); >>> >>> >>> This should fail with ENOENT if you check the return code. >>> -sam >>> >>>> ceph_getcwd(cmount); >>>> >>>> -- >>>> >>>> client/Inode.h: In function 'Dentry* Inode::get_first_parent()' thread >>>> 7fded47c8780 time 2012-11-29 11:49:00.890184 >>>> client/Inode.h: 165: FAILED assert(!dn_set.empty()) >>>> ceph version 0.54-808-g1ed5a1f >>>> (1ed5a1f984d8260d86cc25b1ae95ffedf597e579) >>>> 1: (()+0x11ee89) [0x7fded36fae89] >>>> 2: (()+0x1429d3) [0x7fded371e9d3] >>>> 3: (ceph_getcwd()+0x11) [0x7fded36fdb41] >>>> 4: (MountedTest2_XYZ_Test::TestBody()+0x63a) [0x42563a] >>>> 5: (testing::Test::Run()+0xaa) [0x45017a] >>>> 6: (testing::internal::TestInfoImpl::Run()+0x100) [0x450280] >>>> 7: (testing::TestCase::Run()+0xbd) [0x45034d] >>>> 8: (testing::internal::UnitTestImpl::RunAllTests()+0x217) [0x4505b7] >>>> 9: (main()+0x35) [0x423115] >>>> 10: (__libc_start_main()+0xed) [0x7fded2d2876d] >>>> 11: /home/nwatkins/projects/ceph/ceph/src/.libs/lt-test_libcephfs() >>>> [0x423171] >>>> NOTE: a copy of the executable, or `objdump -rdS <executable>` is >>>> needed to interpret this. >>>> terminate called after throwing an instance of 'ceph::FailedAssertion' >>>> Aborted (core dumped) >>>> >>>> Thanks, >>>> Noah >>>> -- >>>> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in >>>> the body of a message to majordomo@vger.kernel.org >>>> More majordomo info at http://vger.kernel.org/majordomo-info.html >>>> >>> ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2012-11-29 20:40 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-11-29 19:52 Client crash on getcwd with non-default root mount Noah Watkins 2012-11-29 19:58 ` Sam Lang 2012-11-29 20:02 ` Noah Watkins 2012-11-29 20:12 ` Noah Watkins 2012-11-29 20:40 ` Sam Lang
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.