Updated cygwin dlls cause unnecessary reboot on NT

Linda Walsh cygwin@tlinx.org
Mon Dec 25 21:02:00 GMT 2006


Igor Peshansky wrote:
> And that is exactly the problem -- not the .new suffixes.  The way Cygwin
> is designed, you cannot have two versions of the Cygwin DLL (think of it
> as the kernel) in use at the same time, no matter what the name is.  In
> Linux, you expect to reboot when upgrading the kernel -- why are you
> surprised that the same happens in Cygwin?
---
	Not all DLL's replaced during setup are CygwinX.DLL.  A majority are
not part of the "cyg-kernel".  I know the problem is in Cygwin.  Some
believe, falsely, that the problem is in Windows.  It is not.

> Oh, but it *is* in Cygwin.
----
	If I am updating cygwin1.dll, fine -- but that is _USUALLY_ not
the case.  It's a *special* case.


>> If you need any more explanation of how to implement this...
> 
> I think pretty much everyone knows how to implement this.  

Apparently not.  Upgrading any DLL requires rebooting when, from what you
say, the problem only is in upgrading Cygwin1.dll (and maybe a couple
of others).


The problem
> that needs to be solved is how to do this without allowing the user to
> have more than 1 version of cygwin1.dll in memory at the same time.
> 
> If you can figure this one out, feel free to submit a patch to Cygwin
> setup that implements the behavior you suggest.  I don't see why it can't
> work for any libraries other than cygwin1.dll (and maybe a couple of
> others).  However, I doubt that any patch that special-cases the DLL by
> name will be accepted.
---
	Of course, why would we want to allow updating applications without
a reboot like on linux -- as you mention.  If we upgrade the kernel, we must
reboot, but on linux, one can upgrade the applications without rebooting.

	FWIW, I have replaced the libs like cygwin1.dll, cygintl?.dll...
and such while cygwin is running and not had a catastrophe as one might have
trying to overwrite/update the memory image of a kernel dynamically, so I
don't think it's quite all the end of the world you make it out to be.  But
I admit it doesn't sound clean.

	It is, however, quite ludicrous to force a linux-reboot everytime
someone upgrades an application like bash or vim.

	I'd make suggestions for upgrading cygwin.dll live, but my ideas
seem entirely too silly to mention right now...:-)

-l



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list