<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#800080"><br></span></pre><pre style="margin-top:0px;margin-bottom:0px"><span style="color:#800080">first on: </span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:rgb(128,0,128)">NfsDeviceHandlerFactory</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">::</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-style:italic">canHandle()</span></pre>

<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#800080">NfsDeviceHandler.cpp:153 </span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:rgb(128,0,128)">KMountPoint</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">::</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:rgb(128,0,128)">Ptr</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:rgb(192,192,192)"> </span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">m</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:rgb(192,192,192)"> </span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">=</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:rgb(192,192,192)"> </span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:rgb(128,0,128)">KMountPoint</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">::</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">currentMountPoints</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">().</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">findByPath</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">(</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:rgb(192,192,192)"> </span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">access</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">-></span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">filePath</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">()</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:rgb(192,192,192)"> </span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">);</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif"><br></span></pre><pre style="margin-top:0px;margin-bottom:0px"><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">Then after forcefully unmounting the shares, m is valid and </span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-style:italic">canHandle()</span><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif"> returns true, then it blocks on the next call to NfsDeviceHandler where exactly the same function is excecuted:</span></pre>

<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#800080">MountPointManager.cpp:503 DeviceHandler</span><span style="color:#c0c0c0"> </span>*handler<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>factory-><span style="font-style:italic">createHandler</span>(<span style="color:#c0c0c0"> </span>device,<span style="color:#c0c0c0"> </span>udi,<span style="color:#c0c0c0"> </span><span style="color:#800000">m_storage</span><span style="color:#c0c0c0"> </span>);</pre>
<pre style="margin-top:0px;margin-bottom:0px"><pre style="margin-top:0px;margin-bottom:0px"><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">This might have been a fluke caused by unmouting while it was blocked on the previous</span></pre>
</pre><pre style="margin-top:0px;margin-bottom:0px"><br></pre><pre style="margin-top:0px;margin-bottom:0px">Seems MountPointManager is another one of those rotten codebases that need review and cleanup.</pre><pre style="margin-top:0px;margin-bottom:0px">
<br></pre><pre style="margin-top:0px;margin-bottom:0px">Bart</pre>