From: Muchun Song <muchun.song@linux.dev>
To: Mike Rapoport <rppt@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
Alex Shi <alexs@kernel.org>,
Alexander Gordeev <agordeev@linux.ibm.com>,
Andreas Larsson <andreas@gaisler.com>,
Borislav Petkov <bp@alien8.de>, Brian Cain <bcain@kernel.org>,
"Christophe Leroy (CS GROUP)" <chleroy@kernel.org>,
Catalin Marinas <catalin.marinas@arm.com>,
"David S. Miller" <davem@davemloft.net>,
Dave Hansen <dave.hansen@linux.intel.com>,
David Hildenbrand <david@kernel.org>,
Dinh Nguyen <dinguyen@kernel.org>,
Geert Uytterhoeven <geert@linux-m68k.org>,
Guo Ren <guoren@kernel.org>, Heiko Carstens <hca@linux.ibm.com>,
Helge Deller <deller@gmx.de>, Huacai Chen <chenhuacai@kernel.org>,
Ingo Molnar <mingo@redhat.com>,
Johannes Berg <johannes@sipsolutions.net>,
John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>,
Jonathan Corbet <corbet@lwn.net>,
"Liam R. Howlett" <Liam.Howlett@oracle.com>,
Lorenzo Stoakes <lorenzo.stoakes@oracle.com>,
Magnus Lindholm <linmag7@gmail.com>,
Matt Turner <mattst88@gmail.com>,
Max Filippov <jcmvbkbc@gmail.com>,
Michael Ellerman <mpe@ellerman.id.au>,
Michal Hocko <mhocko@suse.com>, Michal Simek <monstr@monstr.eu>,
Oscar Salvador <osalvador@suse.de>,
Palmer Dabbelt <palmer@dabbelt.com>,
Pratyush Yadav <pratyush@kernel.org>,
Richard Weinberger <richard@nod.at>,
Russell King <linux@armlinux.org.uk>,
Stafford Horne <shorne@gmail.com>,
Suren Baghdasaryan <surenb@google.com>,
Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
Thomas Gleixner <tglx@linutronix.de>,
Vasily Gorbik <gor@linux.ibm.com>,
Vineet Gupta <vgupta@kernel.org>,
Vlastimil Babka <vbabka@suse.cz>, Will Deacon <will@kernel.org>,
x86@kernel.org, linux-alpha@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org,
linux-cxl@vger.kernel.org, linux-doc@vger.kernel.org,
linux-hexagon@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org,
linux-mm@kvack.org, linux-openrisc@vger.kernel.org,
linux-parisc@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-sh@vger.kernel.org,
linux-snps-arc@lists.infradead.org, linux-um@lists.infradead.org,
linuxppc-dev@lists.ozlabs.org, loongarch@lists.linux.dev,
sparclinux@vger.kernel.org
Subject: Re: [PATCH 27/28] mm/hugetlb: drop hugetlb_cma_check()
Date: Mon, 29 Dec 2025 11:13:03 +0800 [thread overview]
Message-ID: <2F5422EB-495E-4BC7-8174-13BED1147382@linux.dev> (raw)
In-Reply-To: <20251228124001.3624742-28-rppt@kernel.org>
> On Dec 28, 2025, at 20:39, Mike Rapoport <rppt@kernel.org> wrote:
>
> From: "Mike Rapoport (Microsoft)" <rppt@kernel.org>
>
> hugetlb_cma_check() was required when the ordering of hugetlb_cma_reserve()
> and hugetlb_bootmem_alloc() was architecture depended.
>
> Since hugetlb_cma_reserve() is always called before hugetlb_bootmem_alloc()
> there is no need to check whether hugetlb_cma_reserve() was already called.
>
> Drop unneeded hugetlb_cma_check() function.
>
> Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
Nice cleanup.
Acked-by: Muchun Song <muchun.song@linux.dev>
Thanks.
WARNING: multiple messages have this Message-ID (diff)
From: Muchun Song <muchun.song@linux.dev>
To: Mike Rapoport <rppt@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
Alex Shi <alexs@kernel.org>,
Alexander Gordeev <agordeev@linux.ibm.com>,
Andreas Larsson <andreas@gaisler.com>,
Borislav Petkov <bp@alien8.de>, Brian Cain <bcain@kernel.org>,
"Christophe Leroy (CS GROUP)" <chleroy@kernel.org>,
Catalin Marinas <catalin.marinas@arm.com>,
"David S. Miller" <davem@davemloft.net>,
Dave Hansen <dave.hansen@linux.intel.com>,
David Hildenbrand <david@kernel.org>,
Dinh Nguyen <dinguyen@kernel.org>,
Geert Uytterhoeven <geert@linux-m68k.org>,
Guo Ren <guoren@kernel.org>, Heiko Carstens <hca@linux.ibm.com>,
Helge Deller <deller@gmx.de>, Huacai Chen <chenhuacai@kernel.org>,
Ingo Molnar <mingo@redhat.com>,
Johannes Berg <johannes@sipsolutions.net>,
John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>,
Jonathan Corbet <corbet@lwn.net>,
"Liam R. Howlett" <Liam.Howlett@oracle.com>,
Lorenzo Stoakes <lorenzo.stoakes@oracle.com>,
Magnus Lindholm <linmag7@gmail.com>,
Matt Turner <mattst88@gmail.com>,
Max Filippov <jcmvbkbc@gmail.com>,
Michael Ellerman <mpe@ellerman.id.au>,
Michal Hocko <mhocko@suse.com>, Michal Simek <monstr@monstr.eu>,
Oscar Salvador <osalvador@suse.de>,
Palmer Dabbelt <palmer@dabbelt.com>,
Pratyush Yadav <pratyush@kernel.org>,
Richard Weinberger <richard@nod.at>,
Russell King <linux@armlinux.org.uk>,
Stafford Horne <shorne@gmail.com>,
Suren Baghdasaryan <surenb@google.com>,
Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
Thomas Gleixner <tglx@linutronix.de>,
Vasily Gorbik <gor@linux.ibm.com>,
Vineet Gupta <vgupta@kernel.org>,
Vlastimil Babka <vbabka@suse.cz>, Will Deacon <will@kernel.org>,
x86@kernel.org, linux-alpha@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org,
linux-cxl@vger.kernel.org, linux-doc@vger.kernel.org,
linux-hexagon@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org,
linux-mm@kvack.org, linux-openrisc@vger.kernel.org,
linux-parisc@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-sh@vger.kernel.org,
linux-snps-arc@lists.infradead.org, linux-um@lists.infradead.org,
linuxppc-dev@lists.ozlabs.org, loongarch@lists.linux.dev,
sparclinux@vger.kernel.org
Subject: Re: [PATCH 27/28] mm/hugetlb: drop hugetlb_cma_check()
Date: Mon, 29 Dec 2025 11:13:03 +0800 [thread overview]
Message-ID: <2F5422EB-495E-4BC7-8174-13BED1147382@linux.dev> (raw)
In-Reply-To: <20251228124001.3624742-28-rppt@kernel.org>
> On Dec 28, 2025, at 20:39, Mike Rapoport <rppt@kernel.org> wrote:
>
> From: "Mike Rapoport (Microsoft)" <rppt@kernel.org>
>
> hugetlb_cma_check() was required when the ordering of hugetlb_cma_reserve()
> and hugetlb_bootmem_alloc() was architecture depended.
>
> Since hugetlb_cma_reserve() is always called before hugetlb_bootmem_alloc()
> there is no need to check whether hugetlb_cma_reserve() was already called.
>
> Drop unneeded hugetlb_cma_check() function.
>
> Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
Nice cleanup.
Acked-by: Muchun Song <muchun.song@linux.dev>
Thanks.
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
WARNING: multiple messages have this Message-ID (diff)
From: Muchun Song <muchun.song@linux.dev>
To: Mike Rapoport <rppt@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
Alex Shi <alexs@kernel.org>,
Alexander Gordeev <agordeev@linux.ibm.com>,
Andreas Larsson <andreas@gaisler.com>,
Borislav Petkov <bp@alien8.de>, Brian Cain <bcain@kernel.org>,
"Christophe Leroy (CS GROUP)" <chleroy@kernel.org>,
Catalin Marinas <catalin.marinas@arm.com>,
"David S. Miller" <davem@davemloft.net>,
Dave Hansen <dave.hansen@linux.intel.com>,
David Hildenbrand <david@kernel.org>,
Dinh Nguyen <dinguyen@kernel.org>,
Geert Uytterhoeven <geert@linux-m68k.org>,
Guo Ren <guoren@kernel.org>, Heiko Carstens <hca@linux.ibm.com>,
Helge Deller <deller@gmx.de>, Huacai Chen <chenhuacai@kernel.org>,
Ingo Molnar <mingo@redhat.com>,
Johannes Berg <johannes@sipsolutions.net>,
John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>,
Jonathan Corbet <corbet@lwn.net>,
"Liam R. Howlett" <Liam.Howlett@oracle.com>,
Lorenzo Stoakes <lorenzo.stoakes@oracle.com>,
Magnus Lindholm <linmag7@gmail.com>,
Matt Turner <mattst88@gmail.com>,
Max Filippov <jcmvbkbc@gmail.com>,
Michael Ellerman <mpe@ellerman.id.au>,
Michal Hocko <mhocko@suse.com>, Michal Simek <monstr@monstr.eu>,
Oscar Salvador <osalvador@suse.de>,
Palmer Dabbelt <palmer@dabbelt.com>,
Pratyush Yadav <pratyush@kernel.org>,
Richard Weinberger <richard@nod.at>,
Russell King <linux@armlinux.org.uk>,
Stafford Horne <shorne@gmail.com>,
Suren Baghdasaryan <surenb@google.com>,
Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
Thomas Gleixner <tglx@linutronix.de>,
Vasily Gorbik <gor@linux.ibm.com>,
Vineet Gupta <vgupta@kernel.org>,
Vlastimil Babka <vbabka@suse.cz>, Will Deacon <will@kernel.org>,
x86@kernel.org, linux-alpha@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org,
linux-cxl@vger.kernel.org, linux-doc@vger.kernel.org,
linux-hexagon@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org,
linux-mm@kvack.org, linux-openrisc@vger.kernel.org,
linux-parisc@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-sh@vger.kernel.org,
linux-snps-arc@lists.infradead.org, linux-um@lists.infradead.org,
linuxppc-dev@lists.ozlabs.org, loongarch@lists.linux.dev,
sparclinux@vger.kernel.org
Subject: Re: [PATCH 27/28] mm/hugetlb: drop hugetlb_cma_check()
Date: Mon, 29 Dec 2025 11:13:03 +0800 [thread overview]
Message-ID: <2F5422EB-495E-4BC7-8174-13BED1147382@linux.dev> (raw)
In-Reply-To: <20251228124001.3624742-28-rppt@kernel.org>
> On Dec 28, 2025, at 20:39, Mike Rapoport <rppt@kernel.org> wrote:
>
> From: "Mike Rapoport (Microsoft)" <rppt@kernel.org>
>
> hugetlb_cma_check() was required when the ordering of hugetlb_cma_reserve()
> and hugetlb_bootmem_alloc() was architecture depended.
>
> Since hugetlb_cma_reserve() is always called before hugetlb_bootmem_alloc()
> there is no need to check whether hugetlb_cma_reserve() was already called.
>
> Drop unneeded hugetlb_cma_check() function.
>
> Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
Nice cleanup.
Acked-by: Muchun Song <muchun.song@linux.dev>
Thanks.
_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc
next prev parent reply other threads:[~2025-12-29 3:14 UTC|newest]
Thread overview: 114+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-28 12:39 [PATCH 00/28] arch, mm: consolidate hugetlb early reservation Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 01/28] alpha: introduce arch_zone_limits_init() Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-31 15:49 ` Magnus Lindholm
2025-12-31 15:49 ` Magnus Lindholm
2025-12-31 15:49 ` Magnus Lindholm
2025-12-28 12:39 ` [PATCH 02/28] arc: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 03/28] arm: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 04/28] arm64: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 05/28] csky: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-29 1:25 ` Guo Ren
2025-12-29 1:25 ` Guo Ren
2025-12-29 1:25 ` Guo Ren
2025-12-28 12:39 ` [PATCH 06/28] hexagon: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 07/28] loongarch: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 08/28] m68k: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 09/28] microblaze: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 10/28] mips: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 11/28] nios2: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-29 13:55 ` Dinh Nguyen
2025-12-29 13:55 ` Dinh Nguyen
2025-12-29 13:55 ` Dinh Nguyen
2025-12-28 12:39 ` [PATCH 12/28] openrisc: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 13/28] parisc: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 14/28] powerpc: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 15/28] riscv: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 16/28] s390: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 17/28] sh: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 18/28] sparc: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 19/28] um: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 20/28] x86: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 21/28] xtensa: " Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 22/28] arch, mm: consolidate initialization of nodes, zones and memory map Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 23/28] arch, mm: consolidate initialization of SPARSE memory model Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 24/28] mips: drop paging_init() Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 25/28] x86: don't reserve hugetlb memory in setup_arch() Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 13:29 ` Sergey Shtylyov
2025-12-28 13:29 ` Sergey Shtylyov
2025-12-28 13:29 ` Sergey Shtylyov
2025-12-28 12:39 ` [PATCH 26/28] mm, arch: consolidate hugetlb CMA reservation Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` [PATCH 27/28] mm/hugetlb: drop hugetlb_cma_check() Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-29 3:13 ` Muchun Song [this message]
2025-12-29 3:13 ` Muchun Song
2025-12-29 3:13 ` Muchun Song
2025-12-28 12:39 ` [PATCH 28/28] Revert "mm/hugetlb: deal with multiple calls to hugetlb_bootmem_alloc" Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-28 12:39 ` Mike Rapoport
2025-12-29 3:13 ` Muchun Song
2025-12-29 3:13 ` Muchun Song
2025-12-29 3:13 ` Muchun Song
2026-01-01 1:27 ` [PATCH 00/28] arch, mm: consolidate hugetlb early reservation Andrew Morton
2026-01-01 1:27 ` Andrew Morton
2026-01-01 1:27 ` Andrew Morton
2026-01-02 6:59 ` Mike Rapoport
2026-01-02 6:59 ` Mike Rapoport
2026-01-02 6:59 ` Mike Rapoport
2026-01-02 18:04 ` Andrew Morton
2026-01-02 18:04 ` Andrew Morton
2026-01-02 18:04 ` Andrew Morton
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=2F5422EB-495E-4BC7-8174-13BED1147382@linux.dev \
--to=muchun.song@linux.dev \
--cc=Liam.Howlett@oracle.com \
--cc=agordeev@linux.ibm.com \
--cc=akpm@linux-foundation.org \
--cc=alexs@kernel.org \
--cc=andreas@gaisler.com \
--cc=bcain@kernel.org \
--cc=bp@alien8.de \
--cc=catalin.marinas@arm.com \
--cc=chenhuacai@kernel.org \
--cc=chleroy@kernel.org \
--cc=corbet@lwn.net \
--cc=dave.hansen@linux.intel.com \
--cc=davem@davemloft.net \
--cc=david@kernel.org \
--cc=deller@gmx.de \
--cc=dinguyen@kernel.org \
--cc=geert@linux-m68k.org \
--cc=glaubitz@physik.fu-berlin.de \
--cc=gor@linux.ibm.com \
--cc=guoren@kernel.org \
--cc=hca@linux.ibm.com \
--cc=jcmvbkbc@gmail.com \
--cc=johannes@sipsolutions.net \
--cc=linmag7@gmail.com \
--cc=linux-alpha@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-csky@vger.kernel.org \
--cc=linux-cxl@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-hexagon@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-m68k@lists.linux-m68k.org \
--cc=linux-mips@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-openrisc@vger.kernel.org \
--cc=linux-parisc@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=linux-snps-arc@lists.infradead.org \
--cc=linux-um@lists.infradead.org \
--cc=linux@armlinux.org.uk \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=loongarch@lists.linux.dev \
--cc=lorenzo.stoakes@oracle.com \
--cc=mattst88@gmail.com \
--cc=mhocko@suse.com \
--cc=mingo@redhat.com \
--cc=monstr@monstr.eu \
--cc=mpe@ellerman.id.au \
--cc=osalvador@suse.de \
--cc=palmer@dabbelt.com \
--cc=pratyush@kernel.org \
--cc=richard@nod.at \
--cc=rppt@kernel.org \
--cc=shorne@gmail.com \
--cc=sparclinux@vger.kernel.org \
--cc=surenb@google.com \
--cc=tglx@linutronix.de \
--cc=tsbogend@alpha.franken.de \
--cc=vbabka@suse.cz \
--cc=vgupta@kernel.org \
--cc=will@kernel.org \
--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.