From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 130919 invoked by alias); 9 Oct 2017 17:51:16 -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 130901 invoked by uid 89); 9 Oct 2017 17:51:15 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-26.9 required=5.0 tests=BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RP_MATCHES_RCVD,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy=Approval, *need*, prep, pursue X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 09 Oct 2017 17:51:14 +0000 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 0F3A03290; Mon, 9 Oct 2017 17:51:13 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 0F3A03290 Authentication-Results: ext-mx05.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx05.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=kevinb@redhat.com Received: from pinnacle.lan (ovpn-116-131.phx2.redhat.com [10.3.116.131]) by smtp.corp.redhat.com (Postfix) with ESMTPS id D12E618162; Mon, 9 Oct 2017 17:51:12 +0000 (UTC) Date: Mon, 09 Oct 2017 17:51:00 -0000 From: Kevin Buettner To: gdb-patches@sourceware.org Cc: Subject: Re: [PATCH] Re: Flash memory size not aligned to address Message-ID: <20171009105111.1a44f9e9@pinnacle.lan> In-Reply-To: References: <20171007144252.05e2b69e@pinnacle.lan> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2017-10/txt/msg00230.txt.bz2 On Mon, 9 Oct 2017 10:28:13 -0600 Mark Rages wrote: > > Do you have an FSF Copyright Assignment? > > > > No. According to this link... https://www.gnu.org/prep/maintain/maintain.html#Legally-Significant ...contributions that consist of more than about 15 lines of code or text are significant for copyright purposes. Your patch is well under that amount, so I do not think that you *need* a copyright assignment for this particular change. However, if you plan to make other contributions to GDB, I encourage you to have a copyright assignment on file with the FSF. Please let us know if you intend to pursue a copyright assignment. If not, I can commit/push this change for you. > > ChangeLog entries are generally not posted as patches. It is unlikely > > that this portion of the patch will cleanly apply once it's approved. > > Ok. Thank you for pointing me to the wiki. I was going off of > gdb/CONTRIBUTE. Which one is authoritative? I think that gdb/CONTRIBUTE is meant to be authoritative. But I find that the wiki document provides some really useful nuts and bolts type of stuff for contributing to GDB. Personally, I find it to be a lot more useful than gdb/CONTRIBUTE. For example, the wiki contains some really useful info on how to format your commit comment when using git. It also contains some good information on formatting ChangeLog entries. > > It occurs to me that address_in_region might be better named > > offset_in_region. > > Updated patch follows. > > > It seems to me that there will be no difference in behavior for > > targets whose region boundaries are already aligned to the block size. > > I do wonder, however, about behavior on other targets that don't meet > > this criteria. I'm hoping that someone else who has more experience in > > this area will comment. > > The only situation I can think of would be a device that begins a > section of flash unaligned, but requires an aligned address for the > erase command. I'm not aware of such, but it's a big world. > > Anyway, thanks for looking it over. Here goes second try: > > gdb/ChangeLog: > > * target-memory.c (block_boundaries): Fix for block address not > aligned on block size. > > diff --git a/gdb/target-memory.c b/gdb/target-memory.c > index 1c8faa8..7f048de 100644 > --- a/gdb/target-memory.c > +++ b/gdb/target-memory.c > @@ -138,14 +138,18 @@ block_boundaries (CORE_ADDR address, CORE_ADDR > *begin, CORE_ADDR *end) > { > struct mem_region *region; > unsigned blocksize; > + CORE_ADDR offset_in_region; > > region = lookup_mem_region (address); > gdb_assert (region->attrib.mode == MEM_FLASH); > blocksize = region->attrib.blocksize; > + > + offset_in_region = address - region->lo; > + > if (begin) > - *begin = address / blocksize * blocksize; > + *begin = region->lo + offset_in_region / blocksize * blocksize; > if (end) > - *end = (address + blocksize - 1) / blocksize * blocksize; > + *end = region->lo + (offset_in_region + blocksize - 1) / > blocksize * blocksize; > } > This is okay. As noted earlier, please let us know if you intend to pursue an FSF copyright assignment. If so, in order have write access to the git repository, you'll need a sourceware account. You should also submit a patch adding yourself to the "Write After Approval" section of gdb/MAINTAINERS. (We can go into how all of that is accomplished after the copyright assignment process is finished.) Kevin