Revision e700898fa075c69b3ae02b702ab57fb75e1a82ec authored by Mike Kravetz on 12 December 2022, 23:50:41 UTC, committed by Andrew Morton on 21 December 2022, 22:31:52 UTC
Commit bbff39cc6cbc ("hugetlb: allocate vma lock for all sharable vmas") removed the pmd sharable checks in the vma lock helper routines. However, it left the functional version of helper routines behind #ifdef CONFIG_ARCH_WANT_HUGE_PMD_SHARE. Therefore, the vma lock is not being used for sharable vmas on architectures that do not support pmd sharing. On these architectures, a potential fault/truncation race is exposed that could leave pages in a hugetlb file past i_size until the file is removed. Move the functional vma lock helpers outside the ifdef, and remove the non-functional stubs. Since the vma lock is not just for pmd sharing, rename the routine __vma_shareable_flags_pmd. Link: https://lkml.kernel.org/r/20221212235042.178355-1-mike.kravetz@oracle.com Fixes: bbff39cc6cbc ("hugetlb: allocate vma lock for all sharable vmas") Signed-off-by: Mike Kravetz <mike.kravetz@oracle.com> Reviewed-by: Miaohe Lin <linmiaohe@huawei.com> Cc: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com> Cc: David Hildenbrand <david@redhat.com> Cc: James Houghton <jthoughton@google.com> Cc: Mina Almasry <almasrymina@google.com> Cc: Muchun Song <songmuchun@bytedance.com> Cc: Naoya Horiguchi <naoya.horiguchi@linux.dev> Cc: Peter Xu <peterx@redhat.com> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
1 parent 7ba594d
File | Mode | Size |
---|---|---|
Kconfig | -rw-r--r-- | 25.3 KB |
Makefile | -rw-r--r-- | 3.0 KB |
bcma-hcd.c | -rw-r--r-- | 12.3 KB |
ehci-atmel.c | -rw-r--r-- | 6.1 KB |
ehci-brcm.c | -rw-r--r-- | 6.8 KB |
ehci-dbg.c | -rw-r--r-- | 27.6 KB |
ehci-exynos.c | -rw-r--r-- | 8.3 KB |
ehci-fsl.c | -rw-r--r-- | 19.5 KB |
ehci-fsl.h | -rw-r--r-- | 2.0 KB |
ehci-grlib.c | -rw-r--r-- | 3.8 KB |
ehci-hcd.c | -rw-r--r-- | 38.1 KB |
ehci-hub.c | -rw-r--r-- | 33.0 KB |
ehci-mem.c | -rw-r--r-- | 5.6 KB |
ehci-mv.c | -rw-r--r-- | 7.3 KB |
ehci-npcm7xx.c | -rw-r--r-- | 3.6 KB |
ehci-omap.c | -rw-r--r-- | 7.6 KB |
ehci-orion.c | -rw-r--r-- | 8.9 KB |
ehci-pci.c | -rw-r--r-- | 12.3 KB |
ehci-platform.c | -rw-r--r-- | 13.7 KB |
ehci-ppc-of.c | -rw-r--r-- | 5.2 KB |
ehci-ps3.c | -rw-r--r-- | 6.2 KB |
ehci-q.c | -rw-r--r-- | 42.5 KB |
ehci-sched.c | -rw-r--r-- | 63.7 KB |
ehci-sh.c | -rw-r--r-- | 3.8 KB |
ehci-spear.c | -rw-r--r-- | 4.1 KB |
ehci-st.c | -rw-r--r-- | 8.1 KB |
ehci-sysfs.c | -rw-r--r-- | 4.3 KB |
ehci-timer.c | -rw-r--r-- | 12.9 KB |
ehci-xilinx-of.c | -rw-r--r-- | 5.9 KB |
ehci.h | -rw-r--r-- | 28.6 KB |
fhci-dbg.c | -rw-r--r-- | 2.6 KB |
fhci-hcd.c | -rw-r--r-- | 18.4 KB |
fhci-hub.c | -rw-r--r-- | 8.5 KB |
fhci-mem.c | -rw-r--r-- | 2.4 KB |
fhci-q.c | -rw-r--r-- | 6.7 KB |
fhci-sched.c | -rw-r--r-- | 23.4 KB |
fhci-tds.c | -rw-r--r-- | 16.2 KB |
fhci.h | -rw-r--r-- | 18.2 KB |
fsl-mph-dr-of.c | -rw-r--r-- | 9.9 KB |
isp116x-hcd.c | -rw-r--r-- | 43.0 KB |
isp116x.h | -rw-r--r-- | 17.6 KB |
isp1362-hcd.c | -rw-r--r-- | 84.3 KB |
isp1362.h | -rw-r--r-- | 27.6 KB |
max3421-hcd.c | -rw-r--r-- | 50.4 KB |
octeon-hcd.c | -rw-r--r-- | 110.3 KB |
octeon-hcd.h | -rw-r--r-- | 71.8 KB |
ohci-at91.c | -rw-r--r-- | 17.7 KB |
ohci-da8xx.c | -rw-r--r-- | 13.1 KB |
ohci-dbg.c | -rw-r--r-- | 19.4 KB |
ohci-exynos.c | -rw-r--r-- | 7.4 KB |
ohci-hcd.c | -rw-r--r-- | 35.9 KB |
ohci-hub.c | -rw-r--r-- | 21.0 KB |
ohci-mem.c | -rw-r--r-- | 4.0 KB |
ohci-nxp.c | -rw-r--r-- | 7.4 KB |
ohci-omap.c | -rw-r--r-- | 11.0 KB |
ohci-pci.c | -rw-r--r-- | 8.0 KB |
ohci-platform.c | -rw-r--r-- | 9.1 KB |
ohci-ppc-of.c | -rw-r--r-- | 5.2 KB |
ohci-ps3.c | -rw-r--r-- | 5.8 KB |
ohci-pxa27x.c | -rw-r--r-- | 17.0 KB |
ohci-q.c | -rw-r--r-- | 33.6 KB |
ohci-s3c2410.c | -rw-r--r-- | 11.3 KB |
ohci-sa1111.c | -rw-r--r-- | 7.4 KB |
ohci-sm501.c | -rw-r--r-- | 6.7 KB |
ohci-spear.c | -rw-r--r-- | 4.5 KB |
ohci-st.c | -rw-r--r-- | 7.4 KB |
ohci-tmio.c | -rw-r--r-- | 9.2 KB |
ohci.h | -rw-r--r-- | 23.5 KB |
oxu210hp-hcd.c | -rw-r--r-- | 111.4 KB |
pci-quirks.c | -rw-r--r-- | 34.7 KB |
pci-quirks.h | -rw-r--r-- | 1.3 KB |
r8a66597-hcd.c | -rw-r--r-- | 62.4 KB |
r8a66597.h | -rw-r--r-- | 8.0 KB |
sl811-hcd.c | -rw-r--r-- | 45.4 KB |
sl811.h | -rw-r--r-- | 6.3 KB |
sl811_cs.c | -rw-r--r-- | 4.7 KB |
ssb-hcd.c | -rw-r--r-- | 6.6 KB |
u132-hcd.c | -rw-r--r-- | 89.7 KB |
uhci-debug.c | -rw-r--r-- | 15.6 KB |
uhci-grlib.c | -rw-r--r-- | 5.1 KB |
uhci-hcd.c | -rw-r--r-- | 25.2 KB |
uhci-hcd.h | -rw-r--r-- | 22.2 KB |
uhci-hub.c | -rw-r--r-- | 11.2 KB |
uhci-pci.c | -rw-r--r-- | 8.6 KB |
uhci-platform.c | -rw-r--r-- | 4.9 KB |
uhci-q.c | -rw-r--r-- | 46.2 KB |
xen-hcd.c | -rw-r--r-- | 37.7 KB |
xhci-dbg.c | -rw-r--r-- | 759 bytes |
xhci-dbgcap.c | -rw-r--r-- | 24.2 KB |
xhci-dbgcap.h | -rw-r--r-- | 6.0 KB |
xhci-dbgtty.c | -rw-r--r-- | 12.5 KB |
xhci-debugfs.c | -rw-r--r-- | 18.2 KB |
xhci-debugfs.h | -rw-r--r-- | 4.2 KB |
xhci-ext-caps.c | -rw-r--r-- | 2.5 KB |
xhci-ext-caps.h | -rw-r--r-- | 4.0 KB |
xhci-histb.c | -rw-r--r-- | 9.6 KB |
xhci-hub.c | -rw-r--r-- | 56.4 KB |
xhci-mem.c | -rw-r--r-- | 75.6 KB |
xhci-mtk-sch.c | -rw-r--r-- | 18.6 KB |
xhci-mtk.c | -rw-r--r-- | 21.0 KB |
xhci-mtk.h | -rw-r--r-- | 5.4 KB |
xhci-mvebu.c | -rw-r--r-- | 2.0 KB |
xhci-mvebu.h | -rw-r--r-- | 568 bytes |
xhci-pci-renesas.c | -rw-r--r-- | 15.5 KB |
xhci-pci.c | -rw-r--r-- | 23.6 KB |
xhci-pci.h | -rw-r--r-- | 466 bytes |
xhci-plat.c | -rw-r--r-- | 12.5 KB |
xhci-plat.h | -rw-r--r-- | 659 bytes |
xhci-rcar.c | -rw-r--r-- | 6.5 KB |
xhci-rcar.h | -rw-r--r-- | 1.6 KB |
xhci-ring.c | -rw-r--r-- | 129.9 KB |
xhci-tegra.c | -rw-r--r-- | 59.4 KB |
xhci-trace.c | -rw-r--r-- | 281 bytes |
xhci-trace.h | -rw-r--r-- | 16.4 KB |
xhci.c | -rw-r--r-- | 161.8 KB |
xhci.h | -rw-r--r-- | 88.0 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...