From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 624DBC433F5 for ; Wed, 8 Sep 2021 18:29:55 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id C521461078 for ; Wed, 8 Sep 2021 18:29:54 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org C521461078 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=linux-foundation.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvack.org Received: by kanga.kvack.org (Postfix) id 1F32A6B0071; Wed, 8 Sep 2021 14:29:54 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 17B3A6B0072; Wed, 8 Sep 2021 14:29:54 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 041506B0073; Wed, 8 Sep 2021 14:29:53 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0087.hostedemail.com [216.40.44.87]) by kanga.kvack.org (Postfix) with ESMTP id E040D6B0071 for ; Wed, 8 Sep 2021 14:29:53 -0400 (EDT) Received: from smtpin02.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id 9A0F518134580 for ; Wed, 8 Sep 2021 18:29:53 +0000 (UTC) X-FDA: 78565245066.02.1A3C749 Received: from mail-lj1-f170.google.com (mail-lj1-f170.google.com [209.85.208.170]) by imf30.hostedemail.com (Postfix) with ESMTP id 57D18E001980 for ; Wed, 8 Sep 2021 18:29:53 +0000 (UTC) Received: by mail-lj1-f170.google.com with SMTP id h1so5025354ljl.9 for ; Wed, 08 Sep 2021 11:29:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux-foundation.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=8NnmQRyDs5Y9X2yXrAQ+qLvMtz3/gq+6zXFbpPctNPE=; b=DltejL/6wpiKcD1jG52u2yc5A/r8Oh8vM2unDuTW4AgSiSx+is9/HaEU9wZ7Mz4324 ST6bo8sEIyoE7j+ffdVuIRJS652PmyUPKRTnxJ9Rdk7jXJQyGPtviC3F0A+yGKTbhx6r 60cZWk4SZ/bAAx8GCFLFD+Lzb2nF1My0Ad9VY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=8NnmQRyDs5Y9X2yXrAQ+qLvMtz3/gq+6zXFbpPctNPE=; b=1R+N4tvfo+yXnmi9W0mh70ElgMl8q7kTKl8UetfJ2Y9OqkxGTsUjaSFmdwO+EiPVik aXK7YDwR9Taa1bRJ5T3jz/9MLw7yo3Z47rpIXQnK9KkRxhfjKE36tckygHg9W242DjYg siy9IZ7kKvwKJHrlg1hFbM/aj7DJCs1b7NXeif+c+2vGMmk7YuH7dgSPvONluFkDZRZV IZP4bJ1um1dFIDpsU8eK2lvLZ04nluR37riF3N1CwxOL717wOJMhteExojRC3Lwp63fU i+yqZR/+F3gwRFIB92wXW4j535YvJfe/SR/qRx7PSAMR2zxrftRZDnblQ4QVMY6Odecb d+Uw== X-Gm-Message-State: AOAM531LNZJ3hfk5T1ZlYhtjoxMqUHfhF/dPQgj4GileDj0w9QEOgWEQ ILzmsU9olsVmn3pgSk3TckTKlUVwS5rrVsZ3gDg= X-Google-Smtp-Source: ABdhPJwzc4nDV6WmUl/U0EYO9IEaT9F+RvsfUEUdetsI9wq8Qetq8RwFYKztF+iPC/R3bMsw+7IY8g== X-Received: by 2002:a2e:a788:: with SMTP id c8mr3919736ljf.116.1631125791463; Wed, 08 Sep 2021 11:29:51 -0700 (PDT) Received: from mail-lj1-f173.google.com (mail-lj1-f173.google.com. [209.85.208.173]) by smtp.gmail.com with ESMTPSA id k17sm257810lfv.285.2021.09.08.11.29.47 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 08 Sep 2021 11:29:48 -0700 (PDT) Received: by mail-lj1-f173.google.com with SMTP id f2so5062500ljn.1 for ; Wed, 08 Sep 2021 11:29:47 -0700 (PDT) X-Received: by 2002:a2e:b53a:: with SMTP id z26mr3748810ljm.95.1631125787070; Wed, 08 Sep 2021 11:29:47 -0700 (PDT) MIME-Version: 1.0 References: <20210907195226.14b1d22a07c085b22968b933@linux-foundation.org> <20210908025842.MCdSIuFM5%akpm@linux-foundation.org> In-Reply-To: <20210908025842.MCdSIuFM5%akpm@linux-foundation.org> From: Linus Torvalds Date: Wed, 8 Sep 2021 11:29:31 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [patch 102/147] lib/string: optimized memmove To: Andrew Morton Cc: David Laight , drew@beagleboard.org, Guo Ren , Christoph Hellwig , kernel@esmil.dk, Linux-MM , mcroce@microsoft.com, mick@ics.forth.gr, mm-commits@vger.kernel.org, Nick Desaulniers , Palmer Dabbelt Content-Type: text/plain; charset="UTF-8" X-Stat-Signature: 38wuq14aag4mfxfzbd9cni5fd6cdtre5 Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b="DltejL/6"; dmarc=none; spf=pass (imf30.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.208.170 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 57D18E001980 X-HE-Tag: 1631125793-265563 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Tue, Sep 7, 2021 at 7:58 PM Andrew Morton wrote: > > When the destination buffer is before the source one, or when the buffers > doesn't overlap, it's safe to use memcpy() instead, which is optimized to > use a bigger data size possible. This one is actively buggy. It depends on the possibly incorrect assumption that memcpy() always copies upwards. That is admittedly commonly true, but it's not something we can depend on. Not even when the memcpy() implementation in the very same file ends up doing so - because architectures can and should replace that function with their own ones, and we have that __HAVE_ARCH_MEMCPY for exactly that case. Like 101/147, all reasonable architectures end up having their own implementation anyway, but the immediate reason I'm dropping this patch is that it's literally incorrect. Linus