On Fri, May 30, 2008 at 4:23 PM, Simo Sorce &lt;<a href="mailto:ssorce@redhat.com">ssorce@redhat.com</a>&gt; wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d"><br>
</div>So it&#39;s hard to &quot;reconnect&quot; if DBUS goes down for any reason ?<br>
That doesn&#39;t really speak good for DBUS, because it is sure that for one<br>
reason or another it will go down at some point.<br>
Caliming that DBUS can never be restarted is putting your head under the<br>
sand. Bugs just happen, dbus might explode for who knows what reason,<br>
does it mean the machine should implode as well ?</blockquote><div><br>Sure.&nbsp; All software has bugs.&nbsp; I submit that it&#39;s far more likely for the kernel (or more specifically, drivers) or hardware flaws than DBus.<br>
</div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Good applications are usually built to reconnect when a transport they<br>
use becomes unavailable. if some network switch breaks for a few seconds<br>
down the road my connections have a good chance of surviving and if when<br>
connectivity is back things keep going as if nothing happened.</blockquote><div><br>Right.&nbsp; You know how basically every mail client explodes error dialogs when your network connection happens to be broken for a bit?&nbsp; Imagine those error dialogs popping up in your file browser because suddenly HAL went away during a software upgrade.&nbsp; Not cool.<br>
&nbsp;</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">If it is a huge task we have worst problems, we have apps badly<br>
engineered.<br><div class="Ih2E3d"></div></blockquote><div><br>No.&nbsp; Applications are not engineered to survive a kernel restart either.<br><br>Just think of DBus as a kernel extension.&nbsp; Or from another view, there is precedent even in traditional Unix for privileged userspace processes - think init.&nbsp; Just pretend that DBus happened to be implemented in the init process instead of as pid 2.<br>
<br></div></div>