[Gluster-devel] NetBSD regressions, memory corruption
Venky Shankar
yknev.shankar at gmail.com
Thu Mar 26 12:34:52 UTC 2015
On Wed, Mar 25, 2015 at 10:39 PM, Emmanuel Dreyfus <manu at netbsd.org> wrote:
> On Wed, Mar 25, 2015 at 10:32:08PM +0530, Venky Shankar wrote:
>> Could I run some tests on nbslave70
>
> Sure, I stopped doing tests since I assumed you were alredy doing some.
>
>> (I plan to disable some
>> translators). Just running AFR test cases should trigger the segfault,
>> correct?
>
> Yes, if you are lucky you can pass one or two tests, but it crashes
> quite reliably.
So, I think I've figured out the code part that trips everything off.
Changelog translator
starts it's own thread that calls event_dispatch
(this->ctx->event_pool). The event-pool
is actually a singleton hanging off the server translator stack.
Having another invoker
makes it misbehave, though I haven't actually figured out the inner
detail as to why.
I've run AFR test cases (continuously) with the following diff and
there's no segfault
till now.
diff --git a/xlators/features/changelog/src/changelog.c
b/xlators/features/changelog/src/changelog.c
index bb9c51a..f72f2c6 100644
--- a/xlators/features/changelog/src/changelog.c
+++ b/xlators/features/changelog/src/changelog.c
@@ -2504,12 +2504,12 @@ changelog_init_rpc (xlator_t *this,
changelog_priv_t *priv)
/* initialize event selection */
changelog_init_event_selection (this, selection);
- ret = pthread_create (&priv->poller, NULL, changelog_rpc_poller, this);
+ /* ret = pthread_create (&priv->poller, NULL,
changelog_rpc_poller, this);
if (ret != 0) {
gf_log (this->name, GF_LOG_ERROR,
"failed to spawn poller thread");
goto error_return;
- }
+ } */
priv->rbuf = rbuf_init (NR_ROTT_BUFFS);
if (!priv->rbuf)
I'll continue to explore for an explanation for this. For now, coffee..
>
> I already tries to disable some translators: recently introduced upcall
> for instance, and of course changelog, which is the componenent that was
> modified when things started to break. The problem is that absence
> of the translatoor seems to break the tests because of the lack of
> functionnality.
>
> --
> Emmanuel Dreyfus
> manu at netbsd.org
More information about the Gluster-devel
mailing list