On Mon, Jul 27, 2026 at 12:48:57PM +0100, Mark Brown wrote:
> On Mon, Jul 20, 2026 at 03:38:39PM +0100, Lorenzo Stoakes (ARM) wrote:
> > When mapping /dev/zero with MAP_PRIVATE, one ends up with strange VMAs
> > originating from Linux's distant past.
> >
> > These have vma->vm_file set but NULL vma->vm_ops, meaning they satisfy
> > vma_is_anonymous() but otherwise resemble a file-backed VMA.
>
> I'm seeing a test failure in the proc proc-self-map-files-0002 kselftest
> which bisects to this change in -next.  The test just says:
>
> # selftests: proc: proc-self-map-files-002
> not ok 11 selftests: proc: proc-self-map-files-002 # exit=1
>
> which isn't super informative.  Full log at:
>
>    https://lava.sirena.org.uk/scheduler/job/3030495#L13846

Thanks, will investigate!

It's likely making some assumptions that no longer apply about 
MAP_PRIVATE-/dev/zero mappings here.

>
> bisect log:
>
> # bad: [c5e32e86ca02b003f86e095d379b38148999293d] Add linux-next specific 
> files for 20260726
> # good: [692519a077bfb1a66d209e713d2210bb1d9adcaf] Merge branch 
> 'for-linux-next-fixes' of https://gitlab.freedesktop.org/drm/misc/kernel.git
> # good: [ef4f2357df6e9dd6213ce00d01253f3c458d5df0] regmap: clean up 
> kernel-doc comments
> # good: [86e9ba573c353afd1a46816682f4cc3dbabeeb23] irqchip/irq-imgpdc: Remove 
> unused driver
> git bisect start 'c5e32e86ca02b003f86e095d379b38148999293d' 
> '692519a077bfb1a66d209e713d2210bb1d9adcaf' 
> 'ef4f2357df6e9dd6213ce00d01253f3c458d5df0' 
> '86e9ba573c353afd1a46816682f4cc3dbabeeb23'
> # test job: [ef4f2357df6e9dd6213ce00d01253f3c458d5df0] 
> https://lava.sirena.org.uk/scheduler/job/3020719
> # test job: [86e9ba573c353afd1a46816682f4cc3dbabeeb23] 
> https://lava.sirena.org.uk/scheduler/job/2955047
> # test job: [c5e32e86ca02b003f86e095d379b38148999293d] 
> https://lava.sirena.org.uk/scheduler/job/3030495
> # bad: [c5e32e86ca02b003f86e095d379b38148999293d] Add linux-next specific 
> files for 20260726
> git bisect bad c5e32e86ca02b003f86e095d379b38148999293d
> # test job: [673a43d4e283e8fc3bee7a874766278427263bc1] 
> https://lava.sirena.org.uk/scheduler/job/3030777
> # bad: [673a43d4e283e8fc3bee7a874766278427263bc1] Merge branch 
> 'libcrypto-next' of 
> https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux.git
> git bisect bad 673a43d4e283e8fc3bee7a874766278427263bc1
> # test job: [5dd91aac4216c19e9eeea6e0c1a04bcb3e43a876] 
> https://lava.sirena.org.uk/scheduler/job/3031099
> # bad: [5dd91aac4216c19e9eeea6e0c1a04bcb3e43a876] Merge branch 
> 'xtensa-for-next' of https://github.com/jcmvbkbc/linux-xtensa.git
> git bisect bad 5dd91aac4216c19e9eeea6e0c1a04bcb3e43a876
> # test job: [457b365bc545636d75f65067d18afa86f6ced162] 
> https://lava.sirena.org.uk/scheduler/job/3031248
> # bad: [457b365bc545636d75f65067d18afa86f6ced162] Merge branch 'for-next' of 
> https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git
> git bisect bad 457b365bc545636d75f65067d18afa86f6ced162
> # test job: [a8fa5c7be42a37866fcc315470df3307f0583c47] 
> https://lava.sirena.org.uk/scheduler/job/3031351
> # good: [a8fa5c7be42a37866fcc315470df3307f0583c47] mm/vma: update 
> create_init_stack_vma() to use vma_flags_t
> git bisect good a8fa5c7be42a37866fcc315470df3307f0583c47
> # test job: [5c9f41c7115f0e16b7e133abca791a4860bee0b6] 
> https://lava.sirena.org.uk/scheduler/job/3031429
> # bad: [5c9f41c7115f0e16b7e133abca791a4860bee0b6] Merge branch 
> 'kbuild-for-next' of 
> https://git.kernel.org/pub/scm/linux/kernel/git/kbuild/linux.git
> git bisect bad 5c9f41c7115f0e16b7e133abca791a4860bee0b6
> # test job: [c68210527d235e59afa54bc6aba6ecc532488a82] 
> https://lava.sirena.org.uk/scheduler/job/3031482
> # bad: [c68210527d235e59afa54bc6aba6ecc532488a82] mm: page_alloc: fix 
> non-movable reclaim storm in defrag_mode
> git bisect bad c68210527d235e59afa54bc6aba6ecc532488a82
> # test job: [497078da29fbfe6ae057c020f1e5717ded142471] 
> https://lava.sirena.org.uk/scheduler/job/3031540
> # good: [497078da29fbfe6ae057c020f1e5717ded142471] mm/huge_memory: fold 
> split_folio_to_list_to_order() into split_folio_to_order()
> git bisect good 497078da29fbfe6ae057c020f1e5717ded142471
> # test job: [2afd297a9a621ad41892bc0a05481110f46ebfc2] 
> https://lava.sirena.org.uk/scheduler/job/3031619
> # bad: [2afd297a9a621ad41892bc0a05481110f46ebfc2] tools/testing/vma: add test 
> to assert MAP_PRIVATE-/dev/zero is anon
> git bisect bad 2afd297a9a621ad41892bc0a05481110f46ebfc2
> # test job: [a4beb459e21af80c1d8c37b079686753c21932ca] 
> https://lava.sirena.org.uk/scheduler/job/3031661
> # good: [a4beb459e21af80c1d8c37b079686753c21932ca] mm/vma: introduce VMA 
> virtual page offset field and add helpers
> git bisect good a4beb459e21af80c1d8c37b079686753c21932ca
> # test job: [84bd1aceb0233c3de9064028d31a16ecf50070d9] 
> https://lava.sirena.org.uk/scheduler/job/3031711
> # good: [84bd1aceb0233c3de9064028d31a16ecf50070d9] mm/rmap: track whether the 
> page VMA mapped walk is anonymous
> git bisect good 84bd1aceb0233c3de9064028d31a16ecf50070d9
> # test job: [880b6fe7442df760fe0a726b5f5e568bc6b450b6] 
> https://lava.sirena.org.uk/scheduler/job/3031752
> # good: [880b6fe7442df760fe0a726b5f5e568bc6b450b6] tools/testing/vma: expand 
> VMA merge tests to assert virt pgoff
> git bisect good 880b6fe7442df760fe0a726b5f5e568bc6b450b6
> # test job: [e2ad1c5a1f0a96a4a0435213b0a5cb963dc501c5] 
> https://lava.sirena.org.uk/scheduler/job/3031804
> # good: [e2ad1c5a1f0a96a4a0435213b0a5cb963dc501c5] mm/vma: only permit 
> MAP_PRIVATE /dev/zero to be mapped anonymous
> git bisect good e2ad1c5a1f0a96a4a0435213b0a5cb963dc501c5
> # test job: [9f2782812095787d87ee6b742899ae37966ef0f5] 
> https://lava.sirena.org.uk/scheduler/job/3031854
> # bad: [9f2782812095787d87ee6b742899ae37966ef0f5] mm/vma: make 
> MAP_PRIVATE-mapped /dev/zero mappings truly anonymous
> git bisect bad 9f2782812095787d87ee6b742899ae37966ef0f5
> # first bad commit: [9f2782812095787d87ee6b742899ae37966ef0f5] mm/vma: make 
> MAP_PRIVATE-mapped /dev/zero mappings truly anonymous

Cheers, Lorenzo

Reply via email to