X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Message-ID: <48443F2A.84F18D1@dessent.net> Date: Mon, 02 Jun 2008 11:42:50 -0700 From: Brian Dessent X-Mailer: Mozilla 4.79 [en] (Windows NT 5.0; U) MIME-Version: 1.0 To: Dave Korn CC: cygwin AT cygwin DOT com Subject: Re: rebase not compilable References: <6910a60806020741t7ff86d8bgbb7866e62acf1c09 AT mail DOT gmail DOT com> <484411AA DOT AF8A9011 AT dessent DOT net> <026f01c8c4d3$a4309510$2708a8c0 AT CAM DOT ARTIMI DOT COM> <48442EDB DOT 11A94F8 AT dessent DOT net> <027101c8c4db$0027a820$2708a8c0 AT CAM DOT ARTIMI DOT COM> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Reply-To: cygwin AT cygwin DOT com Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Dave Korn wrote: > Regardless of how well (or poorly) the > hash function distributes DLLS into the various buckets, there are only 1024 > of them, and we have many DLLs, many of which will occupy multiple buckets; > collisions are inevitable. First of all, I don't see where this 1024 comes from. By my reading the hash distributes over the range 0x61300000 - 0x712C0000 in 64k increments, meaning 4092 buckets. But what I really meant wasn't necessarily to improve the hashing function per se but to give it more buckets, a wider range. I realize that higher than 0x712c0000 tends to run into the Microsoft-assigned ranges for things in %systemroot%\system32, but it could also place things on the other side of the Cygwin DLL as well. Isn't that what Reini is trying to do here anyway? I guess my meta-point is that if we have a problem with the way we distribute image bases, shouldn't we try to find a way to solve that problem once in a central manner at the time the DLL is created by the package maintainer, rather than making the end user deal with it by brute force of resuffling everything on their system (in a way that is non-obvious if they are not familiar with the problem.) Brian -- 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/