<br><br><div class="gmail_quote">On Thu, Mar 29, 2012 at 10:13 AM, Jed Brown <span dir="ltr"><<a href="mailto:jedbrown@mcs.anl.gov">jedbrown@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="im"><div class="gmail_quote">On Thu, Mar 29, 2012 at 08:28, Dmitry Karpeev <span dir="ltr"><<a href="mailto:karpeev@mcs.anl.gov" target="_blank">karpeev@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div>Back to the original problem: how shall we prevent a shared pc from being gutted by an unprotected PCReset() cascading from a KSPDestroy() on one of the containing ksps?  I can factor out KSPReset_Private()/PCReset_Private() as indicated before, unless there are objections.</div>


</blockquote></div><br></div><div> What do you think of my suggestion of masking ksp->pc when KSPDestroy calls KSPReset? Then KSPReset does not call PCReset if ksp->pc does not exist.</div></blockquote><div>I guess that works too, but I thought your suggestion applied to userland code right before calling KSPDestroy(&ksp)?</div>

<div>I suppose that will fix Mark's problem.  Maybe that's the right approach: he got himself into this mess by reusing a pc</div><div>in the inner ksp, he should know how to extricate himself :-)</div><div><br></div>

<div>Dmitry.</div><div><br></div></div>