From patchwork Wed Jan 16 18:25:17 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Logan Gunthorpe X-Patchwork-Id: 10766667 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 2F11C1580 for ; Wed, 16 Jan 2019 18:25:40 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 1FC4B2F3E1 for ; Wed, 16 Jan 2019 18:25:40 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 13DDC2F3F0; Wed, 16 Jan 2019 18:25:40 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 711B02F3E1 for ; Wed, 16 Jan 2019 18:25:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 704F98E0002; Wed, 16 Jan 2019 13:25:34 -0500 (EST) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 5FA5D8E000D; Wed, 16 Jan 2019 13:25:34 -0500 (EST) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 419A08E0002; Wed, 16 Jan 2019 13:25:34 -0500 (EST) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-io1-f72.google.com (mail-io1-f72.google.com [209.85.166.72]) by kanga.kvack.org (Postfix) with ESMTP id 0B96D8E0004 for ; Wed, 16 Jan 2019 13:25:34 -0500 (EST) Received: by mail-io1-f72.google.com with SMTP id t133so5333623iof.20 for ; Wed, 16 Jan 2019 10:25:34 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-original-authentication-results:x-gm-message-state:from:to:cc :date:message-id:mime-version:content-transfer-encoding:subject; bh=GdsR6viyph6liUPvg8wmWPNUrUkOx/pLEBP7XaGI4U0=; b=tUeyTTM230lZrOPPAwwUU1kPLsYRLceKxTqyzuSntx6Op0lX0Nv6kObjySbsqPQrgG h0ncURfBrbKRoBkAFkp8A1ahtVIJPTkjpED/8K7EF3tAoLl+mbmWEynX9z+b5wpteCpR SrZ7mjZcYijOzFbEq2+SfpCVvq9iEqimYP807kUuZpY7wDcKTLU05e6r/SKNKY+E6df6 geVqrT5gAadJEexCngQadCHaPeSpFzTFGsIKZ/mVQ91A/8xtTISzVZWlqUedKNu4F2Ki 2e1eAezDU/DCO8qEn9p9BikZhouSA7PE+Es8pKgw1lR6oWvbfrjjjtxOH4UVYq3xGwww o4mg== X-Original-Authentication-Results: mx.google.com; spf=pass (google.com: domain of gunthorp@deltatee.com designates 207.54.116.67 as permitted sender) smtp.mailfrom=gunthorp@deltatee.com X-Gm-Message-State: AJcUukejSPp4JqtlecYnqETRYzOm4YPy5VexwBTxTzvhbOZNlDUMAIi9 8MjBWZBUEU3D3ear40QEJXAvRXdNrpGcA9NsSneBwErc7kiptl1LBaDeZJr2PzNqhAKH4dZX34Y 47bXxt8QlKSDDZtL6qRjlC8ZaaOu1C/W1uIF53u7eBwsD4AVT6/InLKPIUAAkftI3aw== X-Received: by 2002:a5e:920d:: with SMTP id y13mr5080229iop.95.1547663133748; Wed, 16 Jan 2019 10:25:33 -0800 (PST) X-Google-Smtp-Source: ALg8bN7TIDGgIXv9pxIzFIMxaygZaFkS2NxZpMch8XZMVgTT8RmKwprzfx2Ef2enCRqvcMIUGiXS X-Received: by 2002:a5e:920d:: with SMTP id y13mr5080204iop.95.1547663132777; Wed, 16 Jan 2019 10:25:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1547663132; cv=none; d=google.com; s=arc-20160816; b=w/NN/84adt1rwjmQV92NHOd8plZFJnOVKxJ8Vlgt81+y7z7/KfeD3rHmSpssinBXva Lqc4Rb6EI9QwzeOIKdDhxEEewoVwXDkb+pceXWPKmFYCCySXejOqexv+DMzCL9qA/n9K dhjXRTRTRj/wQ1I1BmhvbURhHPK8zjCr5Cw7pJI57tu7dSOMZynXS192MEOTWRz7TYu9 g4T/Nqo7RjnqFEBDwMtJmmlzIOWKxroYQs9FbosD96Dz3PIEdBUf0PAmCdO2eJUO2rNS RNPjWmDBaVm+uYHxD4fONK40w7Pj93pI4lMEes2u8OcffD4jNAVErYGLTAwqlfL0uViL rwnQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=subject:content-transfer-encoding:mime-version:message-id:date:cc :to:from; bh=GdsR6viyph6liUPvg8wmWPNUrUkOx/pLEBP7XaGI4U0=; b=CjGQQSJoKSsEe/MWI1WmKJ4NCthe1DyBlsxRGDDoRV9ZNjgtvu0ibWjZGKl+gyLWbi +K4GvhQWtSH2Q+ZeGTNlLbNNa5vkbSJ4pmAd2euKaCAM8jTiz3kEFfs/RiwiZ4t9PjvJ g7fr+lTfdkm8XOCt1uqdX2UgZjWOdX7J0Px4Ixm7NlJ1SZgXDM7P7yr7SCKMHFw9NTP1 jgKIL8AhL3LpedFKXzqcFCjljpZCTrQ5TB0ZnIDxokiva/3rx7dlh/71yXqj9RxNG9fc +pt7s4C8md5Gi7mlZbp1uosKqfWvFKPguL33CzCy0vh1TP0+5vDQTndHj7qptXIo6yiQ 7TpQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of gunthorp@deltatee.com designates 207.54.116.67 as permitted sender) smtp.mailfrom=gunthorp@deltatee.com Received: from ale.deltatee.com (ale.deltatee.com. [207.54.116.67]) by mx.google.com with ESMTPS id t185si2707553itt.131.2019.01.16.10.25.32 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 16 Jan 2019 10:25:32 -0800 (PST) Received-SPF: pass (google.com: domain of gunthorp@deltatee.com designates 207.54.116.67 as permitted sender) client-ip=207.54.116.67; Authentication-Results: mx.google.com; spf=pass (google.com: domain of gunthorp@deltatee.com designates 207.54.116.67 as permitted sender) smtp.mailfrom=gunthorp@deltatee.com Received: from cgy1-donard.priv.deltatee.com ([172.16.1.31]) by ale.deltatee.com with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1gjpsV-0003NA-5B; Wed, 16 Jan 2019 11:25:29 -0700 Received: from gunthorp by cgy1-donard.priv.deltatee.com with local (Exim 4.89) (envelope-from ) id 1gjpsT-00054S-Po; Wed, 16 Jan 2019 11:25:25 -0700 From: Logan Gunthorpe To: linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, linux-ntb@googlegroups.com, linux-crypto@vger.kernel.org, linux-mm@kvack.org, Andrew Morton Cc: Arnd Bergmann , Greg Kroah-Hartman , Andy Shevchenko , =?utf-8?q?Horia_Geant=C4=83?= , Logan Gunthorpe Date: Wed, 16 Jan 2019 11:25:17 -0700 Message-Id: <20190116182523.19446-1-logang@deltatee.com> X-Mailer: git-send-email 2.19.0 MIME-Version: 1.0 X-SA-Exim-Connect-IP: 172.16.1.31 X-SA-Exim-Rcpt-To: linux-ntb@googlegroups.com, linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, linux-crypto@vger.kernel.org, linux-mm@kvack.org, akpm@linux-foundation.org, arnd@arndb.de, gregkh@linuxfoundation.org, andy.shevchenko@gmail.com, horia.geanta@nxp.com, logang@deltatee.com X-SA-Exim-Mail-From: gunthorp@deltatee.com Subject: [PATCH v25 0/6] Add io{read|write}64 to io-64-atomic headers X-SA-Exim-Version: 4.2.1 (built Tue, 02 Aug 2016 21:08:31 +0000) X-SA-Exim-Scanned: Yes (on ale.deltatee.com) 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: X-Virus-Scanned: ClamAV using ClamSMTP This is resend number 6 since the last change to this series. This cleanup was requested by Greg KH back in June of 2017. I've resent the series a couple times a cycle since then, updating and fixing as feedback was slowly recieved some patches were alread accepted by specific arches. In June 2018, Andrew picked the remainder of this up and it was in linux-next for a couple weeks. There were a couple problems that were identified and addressed back then and I'd really like to get the ball rolling again. A year and a half of sending this without much feedback is far too long. @Andrew, can you please pick this set up again so it can get into linux-next? Or let me know if there's something else I should be doing. Thanks, Logan --- Changes since v24: - Rebased onto v5.0-rc2 (No Changes) Changes since v23: - Rebased onto v4.20-rc4 (No Changes) Changes since v22: - Rebased onto v4.20-rc1 (No Changes) Changes since v21: - Rebased onto v4.19-rc6 (No Changes) Changes since v20: - Rebased onto v4.19-rc3 (No Changes) Changes since v19: - Rebased onto v4.19-rc1 (No Changes) Changes since v18: - Dropped the CAAM patch as it was subtly wrong and broke when people tested it in linux-next. Seeing the code is much trickier than it appears, we'll leave it to its maintainers to clean it up, should they chose. - Restored the ioread64/iowrite64 extern prototypes as despite appearing to be unusued, they are in fact used in a rare corner case by the caam driver on 64bit powerpc. This was reported by Guenter testing on linux-next. - Rebased onto v4.18-rc4 (No Changes) Changes since v17: - Rebased onto v4.18-rc1 (No Changes) Changes since v16: - Rebased onto v4.17-rc4 (No Changes) Changes since v15: - Rebased onto v4.17-rc1, dropping the powerpc patches which were picked up by Michael Changes since v14: - Rebased onto v4.16-rc7 - Replace the first two patches so that instead of correcting the endianness annotations we change to using writeX() and readX() with swabX() calls. This makes the big-endian functions more symmetric with the little-endian versions (with respect to barriers that are not included in the raw functions). As a side effect, it also fixes the kbuild warnings that the first two patches tried to address. Changes since v13: - Changed the subject of patch 0001 to correct a nit pointed out by Luc Changes since v12: - Rebased onto v4.16-rc6 - Split patch 0001 into two and reworked the commit log as requested by Luc Van Oostenryck Changes since v11: - Rebased onto v4.16-rc5 - Added a patch (0001) to fix some old and new sparse warnings that the kbuild robot warned about this cycle. The latest version of sparse was required to reproduce these. - Added a patch (0002) to add io{read|write}64 to parisc which the kbuild robot also found errors for this cycle Changes since v10: - Rebased onto v4.16-rc4, this droped the drm/tilcdc patch which was picked up by that tree and is already in 4.16. Changes since v9: - Rebased onto v4.15-rc6 - Fixed a couple of issues in the new version of the CAAM patch as pointed out by Horia Changes since v8: - Rebased onto v4.15-rc2, as a result rewrote patch 7 seeing someone did some similar cleanup in that area. - Added a patch to clean up the Switchtec NTB driver which landed in v4.15-rc1 Changes since v7: - Fix minor nits from Andy Shevchenko - Rebased onto v4.14-rc1 Changes since v6: ** none ** Changes since v5: - Added a fix to the tilcdc driver to ensure it doesn't use the non-atomic operation. (This includes adding io{read|write}64[be]_is_nonatomic defines). Changes since v4: - Add functions so the powerpc implementation of iomap.c compiles. (As noticed by Horia) Changes since v3: - I noticed powerpc didn't use the appropriate functions seeing readq/writeq were not defined when iomap.h was included. Thus I've included a patch to adjust this - Fixed some mistakes with a couple of the defines in io-64-nonatomic* headers - Fixed a typo noticed by Horia. (earlier versions were drastically different) -- Logan Gunthorpe (6): iomap: Use non-raw io functions for io{read|write}XXbe parisc: iomap: introduce io{read|write}64 iomap: introduce io{read|write}64_{lo_hi|hi_lo} io-64-nonatomic: add io{read|write}64[be]{_lo_hi|_hi_lo} macros ntb: ntb_hw_intel: use io-64-nonatomic instead of in-driver hacks ntb: ntb_hw_switchtec: Cleanup 64bit IO defines to use the common header arch/parisc/include/asm/io.h | 9 ++ arch/parisc/lib/iomap.c | 64 +++++++++++ arch/powerpc/include/asm/io.h | 2 + drivers/ntb/hw/intel/ntb_hw_intel.h | 30 +----- drivers/ntb/hw/mscc/ntb_hw_switchtec.c | 36 +------ include/asm-generic/iomap.h | 22 ++++ include/linux/io-64-nonatomic-hi-lo.h | 64 +++++++++++ include/linux/io-64-nonatomic-lo-hi.h | 64 +++++++++++ lib/iomap.c | 140 ++++++++++++++++++++++++- 9 files changed, 366 insertions(+), 65 deletions(-) -- 2.19.0