All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@infradead.org>
To: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Borislav Petkov <bp@alien8.de>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Sathyanarayanan Kuppuswamy 
	<sathyanarayanan.kuppuswamy@linux.intel.com>,
	linux-efi@vger.kernel.org, Brijesh Singh <brijesh.singh@amd.com>,
	kvm@vger.kernel.org, dri-devel@lists.freedesktop.org,
	platform-driver-x86@vger.kernel.org,
	Paul Mackerras <paulus@samba.org>,
	linux-s390@vger.kernel.org, Andi Kleen <ak@linux.intel.com>,
	Joerg Roedel <joro@8bytes.org>,
	x86@kernel.org, amd-gfx@lists.freedesktop.org,
	Christoph Hellwig <hch@infradead.org>,
	linux-graphics-maintainer@vmware.com,
	Tom Lendacky <thomas.lendacky@amd.com>,
	Tianyu Lan <Tianyu.Lan@microsoft.com>,
	kexec@lists.infradead.org, linux-kernel@vger.kernel.org,
	iommu@lists.linux-foundation.org, linux-fsdevel@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v3 4/8] powerpc/pseries/svm: Add a powerpc version of cc_platform_has()
Date: Thu, 16 Sep 2021 08:35:16 +0100	[thread overview]
Message-ID: <YULztMRLJ55YLVU9@infradead.org> (raw)
In-Reply-To: <f8388f18-5e90-5d0f-d681-0b17f8307dd4@csgroup.eu>

On Wed, Sep 15, 2021 at 07:18:34PM +0200, Christophe Leroy wrote:
> Could you please provide more explicit explanation why inlining such an
> helper is considered as bad practice and messy ?

Because now we get architectures to all subly differ.  Look at the mess
for ioremap and the ioremap* variant.

The only good reason to allow for inlines if if they are used in a hot
path.  Which cc_platform_has is not, especially not on powerpc.

WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@infradead.org>
To: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: linux-efi@vger.kernel.org, Brijesh Singh <brijesh.singh@amd.com>,
	kvm@vger.kernel.org, dri-devel@lists.freedesktop.org,
	platform-driver-x86@vger.kernel.org,
	Paul Mackerras <paulus@samba.org>,
	linux-s390@vger.kernel.org, Andi Kleen <ak@linux.intel.com>,
	Michael Ellerman <mpe@ellerman.id.au>,
	x86@kernel.org, amd-gfx@lists.freedesktop.org,
	Christoph Hellwig <hch@infradead.org>,
	linux-graphics-maintainer@vmware.com,
	Tom Lendacky <thomas.lendacky@amd.com>,
	Tianyu Lan <Tianyu.Lan@microsoft.com>,
	Borislav Petkov <bp@alien8.de>,
	kexec@lists.infradead.org, linux-kernel@vger.kernel.org,
	iommu@lists.linux-foundation.org, linux-fsdevel@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v3 4/8] powerpc/pseries/svm: Add a powerpc version of cc_platform_has()
Date: Thu, 16 Sep 2021 08:35:16 +0100	[thread overview]
Message-ID: <YULztMRLJ55YLVU9@infradead.org> (raw)
In-Reply-To: <f8388f18-5e90-5d0f-d681-0b17f8307dd4@csgroup.eu>

On Wed, Sep 15, 2021 at 07:18:34PM +0200, Christophe Leroy wrote:
> Could you please provide more explicit explanation why inlining such an
> helper is considered as bad practice and messy ?

Because now we get architectures to all subly differ.  Look at the mess
for ioremap and the ioremap* variant.

The only good reason to allow for inlines if if they are used in a hot
path.  Which cc_platform_has is not, especially not on powerpc.
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@infradead.org>
To: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Sathyanarayanan Kuppuswamy
	<sathyanarayanan.kuppuswamy@linux.intel.com>,
	linux-efi@vger.kernel.org, Brijesh Singh <brijesh.singh@amd.com>,
	kvm@vger.kernel.org, dri-devel@lists.freedesktop.org,
	platform-driver-x86@vger.kernel.org,
	Paul Mackerras <paulus@samba.org>,
	linux-s390@vger.kernel.org, Andi Kleen <ak@linux.intel.com>,
	Joerg Roedel <joro@8bytes.org>,
	x86@kernel.org, amd-gfx@lists.freedesktop.org,
	Christoph Hellwig <hch@infradead.org>,
	linux-graphics-maintainer@vmware.com,
	Tom Lendacky <thomas.lendacky@amd.com>,
	Tianyu Lan <Tianyu.Lan@microsoft.com>,
	Borislav Petkov <bp@alien8.de>,
	kexec@lists.infradead.org, linux-kernel@vger.kernel.org,
	iommu@lists.linux-foundation.org, linux-fsdevel@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v3 4/8] powerpc/pseries/svm: Add a powerpc version of cc_platform_has()
Date: Thu, 16 Sep 2021 08:35:16 +0100	[thread overview]
Message-ID: <YULztMRLJ55YLVU9@infradead.org> (raw)
In-Reply-To: <f8388f18-5e90-5d0f-d681-0b17f8307dd4@csgroup.eu>

On Wed, Sep 15, 2021 at 07:18:34PM +0200, Christophe Leroy wrote:
> Could you please provide more explicit explanation why inlining such an
> helper is considered as bad practice and messy ?

Because now we get architectures to all subly differ.  Look at the mess
for ioremap and the ioremap* variant.

The only good reason to allow for inlines if if they are used in a hot
path.  Which cc_platform_has is not, especially not on powerpc.

WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@infradead.org>
To: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: Borislav Petkov <bp@alien8.de>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Sathyanarayanan Kuppuswamy
	<sathyanarayanan.kuppuswamy@linux.intel.com>,
	linux-efi@vger.kernel.org, Brijesh Singh <brijesh.singh@amd.com>,
	kvm@vger.kernel.org, dri-devel@lists.freedesktop.org,
	platform-driver-x86@vger.kernel.org,
	Paul Mackerras <paulus@samba.org>,
	linux-s390@vger.kernel.org, Andi Kleen <ak@linux.intel.com>,
	Joerg Roedel <joro@8bytes.org>,
	x86@kernel.org, amd-gfx@lists.freedesktop.org,
	Christoph Hellwig <hch@infradead.org>,
	linux-graphics-maintainer@vmware.com,
	Tom Lendacky <thomas.lendacky@amd.com>,
	Tianyu Lan <Tianyu.Lan@microsoft.com>,
	kexec@lists.infradead.org, linux-kernel@vger.kernel.org,
	iommu@lists.linux-foundation.org, linux-fsdevel@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v3 4/8] powerpc/pseries/svm: Add a powerpc version of cc_platform_has()
Date: Thu, 16 Sep 2021 08:35:16 +0100	[thread overview]
Message-ID: <YULztMRLJ55YLVU9@infradead.org> (raw)
In-Reply-To: <f8388f18-5e90-5d0f-d681-0b17f8307dd4@csgroup.eu>

On Wed, Sep 15, 2021 at 07:18:34PM +0200, Christophe Leroy wrote:
> Could you please provide more explicit explanation why inlining such an
> helper is considered as bad practice and messy ?

Because now we get architectures to all subly differ.  Look at the mess
for ioremap and the ioremap* variant.

The only good reason to allow for inlines if if they are used in a hot
path.  Which cc_platform_has is not, especially not on powerpc.

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

  parent reply	other threads:[~2021-09-16  7:37 UTC|newest]

Thread overview: 233+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-08 22:58 [PATCH v3 0/8] Implement generic cc_platform_has() helper function Tom Lendacky
2021-09-08 22:58 ` Tom Lendacky
2021-09-08 22:58 ` Tom Lendacky
2021-09-08 22:58 ` Tom Lendacky
2021-09-08 22:58 ` Tom Lendacky via iommu
2021-09-08 22:58 ` [PATCH v3 1/8] x86/ioremap: Selectively build arch override encryption functions Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky via iommu
2021-09-08 22:58 ` [PATCH v3 2/8] mm: Introduce a function to check for confidential computing features Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky via iommu
2021-09-09  7:35   ` Christophe Leroy
2021-09-09  7:35     ` Christophe Leroy
2021-09-09  7:35     ` Christophe Leroy
2021-09-09  7:35     ` Christophe Leroy
2021-09-10 15:02   ` Borislav Petkov
2021-09-10 15:02     ` Borislav Petkov
2021-09-10 15:02     ` Borislav Petkov
2021-09-10 15:02     ` Borislav Petkov
2021-09-10 15:02     ` Borislav Petkov
2021-09-08 22:58 ` [PATCH v3 3/8] x86/sev: Add an x86 version of cc_platform_has() Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky via iommu
2021-09-11 10:10   ` Borislav Petkov
2021-09-11 10:10     ` Borislav Petkov
2021-09-11 10:10     ` Borislav Petkov
2021-09-11 10:10     ` Borislav Petkov
2021-09-11 10:10     ` Borislav Petkov
2021-09-08 22:58 ` [PATCH v3 4/8] powerpc/pseries/svm: Add a powerpc " Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky via iommu
2021-09-09  7:40   ` Christophe Leroy
2021-09-09  7:40     ` Christophe Leroy
2021-09-09  7:40     ` Christophe Leroy
2021-09-09  7:40     ` Christophe Leroy
2021-09-14 11:58   ` Borislav Petkov
2021-09-14 11:58     ` Borislav Petkov
2021-09-14 11:58     ` Borislav Petkov
2021-09-14 11:58     ` Borislav Petkov
2021-09-14 11:58     ` Borislav Petkov
2021-09-14 14:47     ` Christophe Leroy
2021-09-14 14:47       ` Christophe Leroy
2021-09-14 14:47       ` Christophe Leroy
2021-09-14 14:47       ` Christophe Leroy
2021-09-14 14:47       ` Christophe Leroy
2021-09-14 14:56       ` Borislav Petkov
2021-09-14 14:56         ` Borislav Petkov
2021-09-14 14:56         ` Borislav Petkov
2021-09-14 14:56         ` Borislav Petkov
2021-09-14 14:56         ` Borislav Petkov
2021-09-15  0:28     ` Michael Ellerman
2021-09-15  0:28       ` Michael Ellerman
2021-09-15  0:28       ` Michael Ellerman
2021-09-15  0:28       ` Michael Ellerman
2021-09-15  0:28       ` Michael Ellerman
2021-09-15 10:08       ` Borislav Petkov
2021-09-15 10:08         ` Borislav Petkov
2021-09-15 10:08         ` Borislav Petkov
2021-09-15 10:08         ` Borislav Petkov
2021-09-15 10:08         ` Borislav Petkov
2021-09-15 17:18         ` Christophe Leroy
2021-09-15 17:18           ` Christophe Leroy
2021-09-15 17:18           ` Christophe Leroy
2021-09-15 17:18           ` Christophe Leroy
2021-09-15 17:18           ` Christophe Leroy
2021-09-15 18:47           ` Borislav Petkov
2021-09-15 18:47             ` Borislav Petkov
2021-09-15 18:47             ` Borislav Petkov
2021-09-15 18:47             ` Borislav Petkov
2021-09-15 18:47             ` Borislav Petkov
2021-09-16  7:35           ` Christoph Hellwig [this message]
2021-09-16  7:35             ` Christoph Hellwig
2021-09-16  7:35             ` Christoph Hellwig
2021-09-16  7:35             ` Christoph Hellwig
2021-09-16  7:35             ` Christoph Hellwig
2021-09-16 11:51             ` Michael Ellerman
2021-09-16 11:51               ` Michael Ellerman
2021-09-16 11:51               ` Michael Ellerman
2021-09-16 11:51               ` Michael Ellerman
2021-09-16 11:51               ` Michael Ellerman
2021-09-08 22:58 ` [PATCH v3 5/8] x86/sme: Replace occurrences of sme_active() with cc_platform_has() Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky via iommu
2021-09-14 18:24   ` Borislav Petkov
2021-09-14 18:24     ` Borislav Petkov
2021-09-14 18:24     ` Borislav Petkov
2021-09-14 18:24     ` Borislav Petkov
2021-09-14 18:24     ` Borislav Petkov
2021-09-20 19:23   ` Kirill A. Shutemov
2021-09-20 19:23     ` Kirill A. Shutemov
2021-09-20 19:23     ` Kirill A. Shutemov
2021-09-20 19:23     ` Kirill A. Shutemov
2021-09-20 19:23     ` Kirill A. Shutemov
2021-09-21 17:04     ` Tom Lendacky
2021-09-21 17:04       ` Tom Lendacky
2021-09-21 17:04       ` Tom Lendacky
2021-09-21 17:04       ` Tom Lendacky
2021-09-21 17:04       ` Tom Lendacky via iommu
2021-09-21 17:47       ` Borislav Petkov
2021-09-21 17:47         ` Borislav Petkov
2021-09-21 17:47         ` Borislav Petkov
2021-09-21 17:47         ` Borislav Petkov
2021-09-21 17:47         ` Borislav Petkov
2021-09-21 21:20         ` Kirill A. Shutemov
2021-09-21 21:20           ` Kirill A. Shutemov
2021-09-21 21:20           ` Kirill A. Shutemov
2021-09-21 21:20           ` Kirill A. Shutemov
2021-09-21 21:20           ` Kirill A. Shutemov
2021-09-21 21:27           ` Borislav Petkov
2021-09-21 21:27             ` Borislav Petkov
2021-09-21 21:27             ` Borislav Petkov
2021-09-21 21:27             ` Borislav Petkov
2021-09-21 21:27             ` Borislav Petkov
2021-09-21 21:34             ` Kirill A. Shutemov
2021-09-21 21:34               ` Kirill A. Shutemov
2021-09-21 21:34               ` Kirill A. Shutemov
2021-09-21 21:34               ` Kirill A. Shutemov
2021-09-21 21:34               ` Kirill A. Shutemov
2021-09-21 21:43               ` Tom Lendacky
2021-09-21 21:43                 ` Tom Lendacky
2021-09-21 21:43                 ` Tom Lendacky
2021-09-21 21:43                 ` Tom Lendacky
2021-09-21 21:43                 ` Tom Lendacky via iommu
2021-09-21 21:58                 ` Kirill A. Shutemov
2021-09-21 21:58                   ` Kirill A. Shutemov
2021-09-21 21:58                   ` Kirill A. Shutemov
2021-09-21 21:58                   ` Kirill A. Shutemov
2021-09-21 21:58                   ` Kirill A. Shutemov
2021-09-22 13:40                   ` Tom Lendacky
2021-09-22 13:40                     ` Tom Lendacky
2021-09-22 13:40                     ` Tom Lendacky
2021-09-22 13:40                     ` Tom Lendacky
2021-09-22 13:40                     ` Tom Lendacky via iommu
2021-09-22 14:30                     ` Kirill A. Shutemov
2021-09-22 14:30                       ` Kirill A. Shutemov
2021-09-22 14:30                       ` Kirill A. Shutemov
2021-09-22 14:30                       ` Kirill A. Shutemov
2021-09-22 14:30                       ` Kirill A. Shutemov
2021-09-22 19:52                       ` Borislav Petkov
2021-09-22 19:52                         ` Borislav Petkov
2021-09-22 19:52                         ` Borislav Petkov
2021-09-22 19:52                         ` Borislav Petkov
2021-09-22 19:52                         ` Borislav Petkov
2021-09-22 21:05                         ` Kirill A. Shutemov
2021-09-22 21:05                           ` Kirill A. Shutemov
2021-09-22 21:05                           ` Kirill A. Shutemov
2021-09-22 21:05                           ` Kirill A. Shutemov
2021-09-22 21:05                           ` Kirill A. Shutemov
2021-09-23 18:21                           ` Borislav Petkov
2021-09-23 18:21                             ` Borislav Petkov
2021-09-23 18:21                             ` Borislav Petkov
2021-09-23 18:21                             ` Borislav Petkov
2021-09-23 18:21                             ` Borislav Petkov
2021-09-24  9:41                             ` Kirill A. Shutemov
2021-09-24  9:41                               ` Kirill A. Shutemov
2021-09-24  9:41                               ` Kirill A. Shutemov
2021-09-24  9:41                               ` Kirill A. Shutemov
2021-09-24  9:41                               ` Kirill A. Shutemov
2021-09-24  9:51                               ` Borislav Petkov
2021-09-24  9:51                                 ` Borislav Petkov
2021-09-24  9:51                                 ` Borislav Petkov
2021-09-24  9:51                                 ` Borislav Petkov
2021-09-24  9:51                                 ` Borislav Petkov
2021-09-24 13:31                                 ` Tom Lendacky
2021-09-24 13:31                                   ` Tom Lendacky
2021-09-24 13:31                                   ` Tom Lendacky
2021-09-24 13:31                                   ` Tom Lendacky
2021-09-24 13:31                                   ` Tom Lendacky via iommu
2021-09-08 22:58 ` [PATCH v3 6/8] x86/sev: Replace occurrences of sev_active() " Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky via iommu
2021-09-08 22:58 ` [PATCH v3 7/8] x86/sev: Replace occurrences of sev_es_active() " Tom Lendacky via iommu
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58 ` [PATCH v3 8/8] treewide: Replace the use of mem_encrypt_active() " Tom Lendacky via iommu
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-08 22:58   ` Tom Lendacky
2021-09-09  7:25   ` Christophe Leroy
2021-09-09  7:25     ` Christophe Leroy
2021-09-09  7:25     ` Christophe Leroy
2021-09-09  7:25     ` Christophe Leroy
2021-09-09  7:25     ` Christophe Leroy
2021-09-09 13:10     ` Tom Lendacky via iommu
2021-09-09 13:10       ` Tom Lendacky
2021-09-09 13:10       ` Tom Lendacky
2021-09-09 13:10       ` Tom Lendacky
2021-09-09 13:10       ` Tom Lendacky
2021-09-09  7:32 ` [PATCH v3 0/8] Implement generic cc_platform_has() helper function Christian Borntraeger
2021-09-09  7:32   ` Christian Borntraeger
2021-09-09  7:32   ` Christian Borntraeger
2021-09-09  7:32   ` Christian Borntraeger
2021-09-09  7:32   ` Christian Borntraeger
2021-09-09 13:01   ` Tom Lendacky
2021-09-09 13:01     ` Tom Lendacky
2021-09-09 13:01     ` Tom Lendacky
2021-09-09 13:01     ` Tom Lendacky
2021-09-09 13:01     ` Tom Lendacky via iommu
2021-09-15 16:46 ` Borislav Petkov
2021-09-15 16:46   ` Borislav Petkov
2021-09-15 16:46   ` Borislav Petkov
2021-09-15 16:46   ` Borislav Petkov
2021-09-15 16:46   ` Borislav Petkov
2021-09-15 17:26   ` Kuppuswamy, Sathyanarayanan
2021-09-15 17:26     ` Kuppuswamy, Sathyanarayanan
2021-09-15 17:26     ` Kuppuswamy, Sathyanarayanan
2021-09-15 17:26     ` Kuppuswamy, Sathyanarayanan
2021-09-15 17:26     ` Kuppuswamy, Sathyanarayanan
2021-09-16 15:02     ` Borislav Petkov
2021-09-16 15:02       ` Borislav Petkov
2021-09-16 15:02       ` Borislav Petkov
2021-09-16 15:02       ` Borislav Petkov
2021-09-16 15:02       ` Borislav Petkov
2021-09-16 18:38       ` Kuppuswamy, Sathyanarayanan
2021-09-16 18:38         ` Kuppuswamy, Sathyanarayanan
2021-09-16 18:38         ` Kuppuswamy, Sathyanarayanan
2021-09-16 18:38         ` Kuppuswamy, Sathyanarayanan
2021-09-16 18:38         ` Kuppuswamy, Sathyanarayanan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YULztMRLJ55YLVU9@infradead.org \
    --to=hch@infradead.org \
    --cc=Tianyu.Lan@microsoft.com \
    --cc=ak@linux.intel.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=bp@alien8.de \
    --cc=brijesh.singh@amd.com \
    --cc=christophe.leroy@csgroup.eu \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=iommu@lists.linux-foundation.org \
    --cc=joro@8bytes.org \
    --cc=kexec@lists.infradead.org \
    --cc=kvm@vger.kernel.org \
    --cc=linux-efi@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-graphics-maintainer@vmware.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mpe@ellerman.id.au \
    --cc=paulus@samba.org \
    --cc=platform-driver-x86@vger.kernel.org \
    --cc=sathyanarayanan.kuppuswamy@linux.intel.com \
    --cc=thomas.lendacky@amd.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.