Received: by 10.223.176.5 with SMTP id f5csp852299wra; Fri, 2 Feb 2018 07:10:31 -0800 (PST) X-Google-Smtp-Source: AH8x226TuNT/DUYfTtHftr0iUpt6W8MMLLoEcY6NpXJ3mnf8KNW1lH6JXsf7l+hiVy35OIYvaSb1 X-Received: by 10.98.232.14 with SMTP id c14mr41095976pfi.215.1517584231048; Fri, 02 Feb 2018 07:10:31 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1517584231; cv=none; d=google.com; s=arc-20160816; b=pTvmV7tqfOpxtASEJddqTlo/ynZQzSv82UckOrr5+d2h/IdCo5jByCa1K3zx32hkaP GmpkcPlPApZyEh5Uc0BrUikNXQSWZvjDwDZk9AIphMTfB3/FOaYyJZw4hREuOZItrN7J TNGrfveGCzTgfSpZ+ZegISpbKABRXqhR5VF158EQDVZ1Lg1fbo4H4PUmGeNh54UzGZ6b 9ZWTRlED0WnDF49kvHOYs4YOGoYJUIzZcDSeHYHXtPeZrJZROmlFKYX0aauyRDEkhuFN Wbga4V4loXzOmm9SX06d534cIK7vNSu07XbEuZvrpjXSwwBgU+r7n/Vz4HJIORX62qGy SvMQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:arc-authentication-results; bh=idGKsiueRCZPOjtBVdBo+6qFM43VIshFBkYeYJNnl74=; b=LfmZUiNd5J/yMUvwbuqEgVKeOMJ3SUcNFsgxxBjKvXbLWp3dQ4axuzBONb9GivLDil ukMl6vAWaLxhkwSpbhvhDrWtjt5wApIwBhUowCL5ivYl7jQyU4Z7F6L+I6pVK/l2gckF Pwhkvim4UZUUpNAA09Cbh06mZOXr4/zyTULTx6l/E3kDZNfveUlYTYURZC1/rFuUcyaX P3KnEeX4bjRiL7Lqw8iZoyk8SqvUNoGQU4cuktlepvLc2OWbZCbeAc3IB1yDOxl6/wDn 6ypyckpl8IVcSlFUbHk4+lhsIyrG+bvgHpC6IZ1gYDN+txfTii0APDtP/wbS3JQO5zda lejA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 37-v6si35055plq.618.2018.02.02.07.10.15; Fri, 02 Feb 2018 07:10:31 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752470AbeBBPJE (ORCPT + 99 others); Fri, 2 Feb 2018 10:09:04 -0500 Received: from mail5.windriver.com ([192.103.53.11]:57912 "EHLO mail5.wrs.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752450AbeBBPI5 (ORCPT ); Fri, 2 Feb 2018 10:08:57 -0500 Received: from ALA-HCA.corp.ad.wrs.com (ala-hca.corp.ad.wrs.com [147.11.189.40]) by mail5.wrs.com (8.15.2/8.15.2) with ESMTPS id w12F8gsT022667 (version=TLSv1 cipher=AES128-SHA bits=128 verify=OK); Fri, 2 Feb 2018 07:08:42 -0800 Received: from [172.25.59.215] (172.25.59.215) by ALA-HCA.corp.ad.wrs.com (147.11.189.40) with Microsoft SMTP Server id 14.3.361.1; Fri, 2 Feb 2018 07:08:42 -0800 Subject: Re: [PATCH] kdb: use memmove instead of overlapping memcpy To: Arnd Bergmann , Daniel Thompson CC: Nicolas Pitre , Andi Kleen , , References: <20180202145952.285505-1-arnd@arndb.de> From: Jason Wessel Message-ID: <0304cb01-ed28-d16f-9384-1443db682b5c@windriver.com> Date: Fri, 2 Feb 2018 09:08:40 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 MIME-Version: 1.0 In-Reply-To: <20180202145952.285505-1-arnd@arndb.de> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 02/02/2018 08:59 AM, Arnd Bergmann wrote: > gcc discovered that the memcpy() arguments in kdbnearsym() overlap, so > we should really use memmove(), which is defined to handle that correctly: > > In function 'memcpy', > inlined from 'kdbnearsym' at /git/arm-soc/kernel/debug/kdb/kdb_support.c:132:4: > /git/arm-soc/include/linux/string.h:353:9: error: '__builtin_memcpy' accessing 792 bytes at offsets 0 and 8 overlaps 784 bytes at offset 8 [-Werror=restrict] > return __builtin_memcpy(p, q, size); > > Signed-off-by: Arnd Bergmann > --- > kernel/debug/kdb/kdb_support.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/kernel/debug/kdb/kdb_support.c b/kernel/debug/kdb/kdb_support.c > index 5d8ef3a07ecd..1ad4370ccbf0 100644 > --- a/kernel/debug/kdb/kdb_support.c > +++ b/kernel/debug/kdb/kdb_support.c > @@ -129,13 +129,13 @@ int kdbnearsym(unsigned long addr, kdb_symtab_t *symtab) > } > if (i >= ARRAY_SIZE(kdb_name_table)) { > debug_kfree(kdb_name_table[0]); > - memcpy(kdb_name_table, kdb_name_table+1, > + memmove(kdb_name_table, kdb_name_table+1, > sizeof(kdb_name_table[0]) * > (ARRAY_SIZE(kdb_name_table)-1)); > } else { > debug_kfree(knt1); > knt1 = kdb_name_table[i]; > - memcpy(kdb_name_table+i, kdb_name_table+i+1, > + memmove(kdb_name_table+i, kdb_name_table+i+1, > sizeof(kdb_name_table[0]) * > (ARRAY_SIZE(kdb_name_table)-i-1)); > } > That is good by me. Many thanks! Added to queue. Reviewed-by: Jason Wessel Jason.