From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 330 invoked by alias); 24 Jun 2013 13:42:34 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 319 invoked by uid 89); 24 Jun 2013 13:42:34 -0000 X-Spam-SWARE-Status: No, score=-4.6 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,KHOP_THREADED,RCVD_IN_HOSTKARMA_W,RCVD_IN_HOSTKARMA_WL autolearn=ham version=3.3.1 Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Mon, 24 Jun 2013 13:42:32 +0000 Received: from svr-orw-fem-01.mgc.mentorg.com ([147.34.98.93]) by relay1.mentorg.com with esmtp id 1Ur72M-0005mp-Jo from Yao_Qi@mentor.com ; Mon, 24 Jun 2013 06:42:30 -0700 Received: from SVR-ORW-FEM-05.mgc.mentorg.com ([147.34.97.43]) by svr-orw-fem-01.mgc.mentorg.com over TLS secured channel with Microsoft SMTPSVC(6.0.3790.4675); Mon, 24 Jun 2013 06:42:30 -0700 Received: from qiyao.dyndns.org (147.34.91.1) by svr-orw-fem-05.mgc.mentorg.com (147.34.97.43) with Microsoft SMTP Server id 14.2.247.3; Mon, 24 Jun 2013 06:42:29 -0700 Message-ID: <51C84CBD.10506@codesourcery.com> Date: Mon, 24 Jun 2013 13:47:00 -0000 From: Yao Qi User-Agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130110 Thunderbird/17.0.2 MIME-Version: 1.0 To: CC: "'gdb-patches@sourceware.org'" , Mike Frysinger Subject: Re: [PATCH, gdbserver] Further cleanup of FDPIC/DSBT divergences References: <51C34F14.8070803@codesourcery.com> In-Reply-To: <51C34F14.8070803@codesourcery.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-SW-Source: 2013-06/txt/msg00650.txt.bz2 On 06/21/2013 02:51 AM, Luis Machado wrote: > Things have changed, and c6x is now using the exact same data structures > as FDPIC-based targets in uClibc. Please refer to > http://lists.uclibc.org/pipermail/uclibc/2013-May/047789.html for the > uClibc changes that led to this. > > Mark Salter, the author of the uClibc change, has agreed with the > solution i proposed: > http://lists.uclibc.org/pipermail/uclibc/2013-May/047790.html. > > It is all good, but we've been conditionalizing the c6x-specific > target_loadmap data structure based on the presence of PT_GETDSBT. This > has always been defined in uClibc and, since Mark's change, it doesn't > work as a hint of whether to use the new or the old target_loadmap data > structure anymore. Therefore we will/already have a potential problem > with backwards compatibility. > > Bernhard has stated that backwards compatibility on uClibc's side is not > a problem:http://lists.uclibc.org/pipermail/uclibc/2013-June/047801.html. > > With all that exposed, my proposed change to gdbserver is to drop all > the DSBT-specific bits, remove their definitions and explicitly use > FDPIC definitions instead, making things a little bit cleaner. > > In the following patch i also changed the code slightly to stop defining > linux_read_loadmap to NULL and i switched to explicitly setting the > target hook to NULL in the absence of the required definition. > > What do you think? Yao? Mike? Luis, Looks Mark S. proposed using FDPIC in tic6x port in kernel, instead of DSBT which was used when we did the tic6x port in GDB. I checked the kernel log, and found that DSBT constants are never used in the official kernel. They only appeared in the linux-c6x.org git tree temporarily. Since kernel and uclibc has migrated to the new scheme, I don't worry about the compatibility issue here. > > 2013-06-20 Luis Machado > > * linux-low.c: Remove check for PT_GETDSBT. > (target_loadmap): Remove data structure conditionalized by > the presence of PT_GETDSBT. > (LINUX_LOADMAP, LINUX_LOADMAP_EXEC, > LINUX_LOADMAP_INTERP): Remove definitions. Not sure we can break words in parentheses into multiple lines. I suggest: (LINUX_LOADMAP, LINUX_LOADMAP_EXEC): Remove definitions. (LINUX_LOADMAP_INTERP): Likewise. the patch is OK to me, but we also need adjustments in solib-dsbt.c. This patch should go in together with the changes in solib-dsbt.c. -- Yao (齐尧)