<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>226122</bug_id>
          
          <creation_ts>2021-05-21 16:26:37 -0700</creation_ts>
          <short_desc>[bmalloc] Rollout r276266 because WebKit processes are spending much more time in madvise</short_desc>
          <delta_ts>2021-05-21 16:36:51 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Saboff">msaboff</reporter>
          <assigned_to name="Michael Saboff">msaboff</assigned_to>
          <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1762650</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2021-05-21 16:26:37 -0700</bug_when>
    <thetext>The change for https://bugs.webkit.org/show_bug.cgi?id=224706 causes more calls to madvise.  The way that the bmalloc scavenger calls madvise(..., MADV_FREE_REUSABLE) to decommit ranges is conservative, in that it merges free pages with adjacent free pages.  When we decommit via madvise(), we decommit the whole free range, including pages that have already been decomitted.  Rolling out r276266 to do some automated testing.  At the same time, we&apos;ll work on changing the madvise() decommitting to be more precise.

Note that the committing of pages by calling madvise(..., MADV_FREE_REUSE), making them available for bmalloc to use, is precise.  We only call it when are going to use the pages in the range.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1762651</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2021-05-21 16:26:56 -0700</bug_when>
    <thetext>&lt;rdar://78188389&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1762657</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2021-05-21 16:36:51 -0700</bug_when>
    <thetext>Committed r277898 (238032@main): &lt;https://commits.webkit.org/238032@main&gt;</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>