Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-127429

mmap / mprotect / munmap syscalls slower after vma maple tree implementation

Linking RHIVOS CVEs to...Migration: Automation ...RHELPRIO AssignedTeam ...SWIFT: POC ConversionSync from "Extern...XMLWordPrintable

    • None
    • Low
    • rhel-kernel-ft-plumbers-1
    • 0
    • False
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • None
    • None
    • Unspecified
    • Unspecified
    • Unspecified
    • All
    • None

      What were you trying to do that didn't work?

      After moving to the vma maple tree in the 9.5 503 kernel, the median and mean completion time on certain syscalls, in particular mmap, mprotect, and munmap, take nearly twice as long. Certain optimization have improved this, but the median completion time even in the most recent upstream kernel version is still a large increase from the rbtree implementation.

      What is the impact of this issue to you?

      Latency sensitive workloads will incur performance issues when migrating.

      Please provide the package NVR for which the bug is seen:

      kernel-5.14.0-503.1.1.el9_5

      How reproducible is this bug?:

      always

      Steps to reproduce

      1. Boot to various kernels pre and post vma maple tree implementation kernel
      2. run the reproducer
      3. observe differences in results

      Expected results

      Red Hat Enterprise Linux 8 results

      # ./mmap-test -z
      Test: /dev/zero, MAP_PRIVATE
      Ran 100000 iterations.
      Average mmap() time:     0.421030 us
      Average mprotect() time: 0.287795 us
      Average munmap() time:   0.417753 us
      Average total time:      1.126578 us
      

      Actual results

      Upstream

      # ./mmap-test -z
      Test: /dev/zero, MAP_PRIVATE
      Ran 100000 iterations.
      Average mmap() time:     1.060432 us
      Average mprotect() time: 0.555376 us
      Average munmap() time:   0.797092 us
      Average total time:      2.412900 us
      

      Red Hat Enterprise Linux 9

      # ./mmap-test -z
      Test: /dev/zero, MAP_PRIVATE
      Ran 100000 iterations.
      Average mmap() time:     1.120842 us
      Average mprotect() time: 0.616725 us
      Average munmap() time:   0.946954 us
      Average total time:      2.684522 us
      

              rhn-support-aubaker Audra Mitchell
              rhn-support-chaithco Charles Haithcock
              Kernel FT Plumbers Scrum Group Kernel FT Plumbers Scrum Group
              Kernel FT Plumbers QE group Kernel FT Plumbers QE group
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated: