delorie.com/archives/browse.cgi | search |
X-Recipient: | archive-cygwin AT delorie DOT com |
X-SWARE-Spam-Status: | No, hits=-5.6 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,KHOP_RCVD_TRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,TW_BJ,TW_JC,TW_YG |
X-Spam-Check-By: | sourceware.org |
X-Received: | by 10.224.179.75 with SMTP id bp11mr10034932qab.22.1358523270285; Fri, 18 Jan 2013 07:34:30 -0800 (PST) |
Message-ID: | <50F96B81.8090106@gmail.com> |
Date: | Fri, 18 Jan 2013 16:34:25 +0100 |
From: | marco atzeri <marco DOT atzeri AT gmail DOT com> |
User-Agent: | Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 |
MIME-Version: | 1.0 |
To: | cygwin AT cygwin DOT com |
Subject: | Re: Binutils objcopy bug (was Re: rebase segfault) |
References: | <50F516C8 DOT 9050602 AT gmail DOT com> <20130115100745 DOT GC2353 AT calimero DOT vinschen DOT de> <50F5312A DOT 2040503 AT gmail DOT com> <20130115112406 DOT GA13752 AT calimero DOT vinschen DOT de> <50F5D246 DOT 6010902 AT gmail DOT com> <50F653AB DOT 80102 AT gmail DOT com> <20130116123509 DOT GA16991 AT calimero DOT vinschen DOT de> |
In-Reply-To: | <20130116123509.GA16991@calimero.vinschen.de> |
X-IsSubscribed: | yes |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Id: | <cygwin.cygwin.com> |
List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
List-Archive: | <http://sourceware.org/ml/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs> |
Sender: | cygwin-owner AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
Delivered-To: | mailing list cygwin AT cygwin DOT com |
On 1/16/2013 1:35 PM, Corinna Vinschen wrote: > > As far as I can tell it's an objcopy bug. > > The stripped version of the DLL has a normal relocation information > which at one point ends in a NULL IMAGE_BASE_RELOCATION record, as > expected. After calling `objcopy --add-gnu-debuglink', the relocation > information is supposed to be the same as before, since the relocatable > file content didn't change. > > Nevertheless, when stepping through the relocator code in rebase, it > turns out that the former NULL IMAGE_BASE_RELOCATION record does not > contain only 0 values anymore. Rather, it has been overwritten with > some random(?) non-0 values, which rebase correctly interprets as the > start of the next IMAGE_BASE_RELOCATION array. So rebase blunders > along, thus either just SEGVing, if everything goes well, or, worst > case, overwriting formerly correct information in the file with > arbitrary data. > > This is a serious bug in objcopy in the current binutils. Given that > cygport creates the debug info automatically, we might end up with > spuriously broken DLLs in the distro. > > I checked with objcopy from the older binutils 2.51.53-2, and the > problem did not show up. I also built the latest binutils release > 2.23.1 and the problem also doesn't show, so we probably can get away > with just a black eye by updating binutils to 2.23.1. Chris? > > > Corinna > Chris, any news ? Marco -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |