[Pvfs2-developers] patches: misc. bug fixes
Phil Carns
pcarns at wastedcycles.org
Thu Apr 5 08:57:16 EDT 2007
Murali Vilayannur wrote:
> Hi Phil,
> FWIW, if these patches haven't been committed, it looks good :)
> I am really backlogged with all my emails.
>
>> auto-sm-tracking.patch:
>> -----------------------
>> At some point, new linked lists were added to track state machines that
>> are currently running within the server. When an SM completes, it is
>> implicitly removed from the list. However, SMs that were started
>> without a request (ie internal state machines) were not added to any
>> list. This caused a segfault if any of these internal state machines
>> stopped (because the completion code assumes that all SMs should be
>> removed from a list). This patch corrects the problem by just making an
>> extra linked list for state machine instances that are not associated
>> with a particular request.
>
> Just curious: why/how did the internal state machine stop? I recall
> asking Sam this
> question when I added those lists and he mentioned that they shouldn't
> stop unless the server was being terminated. The only place where I
> thought the sm structure was being removed from the list was in
> server_state_machine_complete() which is invoked on state machines
> invoked via a request.
> Or perhaps I misunderstood what he said :)
> thanks,
> Murali
Hi Murali,
I don't think that it is normal for the standard internal state machines
to stop, but there isn't any mechanism to explicitly prevent it. Both
the perf-update and job-timer state machines have transitions defined to
terminate if something bad happens. Those state functions call
server_state_machine_complete() in the usual way to clean themselves up.
We saw it happen on a different internal state machine that we were
experimenting with. We didn't expect that particular one to stop
either, but it did due to an unrelated bug. This list issue was just a
helpful thing to clean up along the way.
-Phil
More information about the Pvfs2-developers
mailing list