<?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>280294</bug_id>
          
          <creation_ts>2024-09-24 14:21:20 -0700</creation_ts>
          <short_desc>Distinguish always/trivially compactible allocations in libpas/bmalloc</short_desc>
          <delta_ts>2024-09-27 15:43:02 -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>bmalloc</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="David Degazio">d_degazio</reporter>
          <assigned_to name="David Degazio">d_degazio</assigned_to>
          <cc>ggaren</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2062843</commentid>
    <comment_count>0</comment_count>
    <who name="David Degazio">d_degazio</who>
    <bug_when>2024-09-24 14:21:20 -0700</bug_when>
    <thetext>rdar://136616671

Currently, we distinguish between compactible allocations and non-compactible allocations in bmalloc/libpas. Beyond this, we should also track allocations that are trivially compactible v.s. non-trivially compactible - some memory regions (like the JIT reservation, or libpas immortal heap) are already mapped as large contiguous ranges, so it&apos;s trivial to compress addresses within them as offsets from the base. This is as opposed to other allocations from libpas, where the allocator otherwise operates normally (i.e. we use the bmalloc heap), and might need to actively pick a different space to allocate objects out of when we ask for an allocation we intend to store as a compact or packed pointer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2062847</commentid>
    <comment_count>1</comment_count>
    <who name="David Degazio">d_degazio</who>
    <bug_when>2024-09-24 14:38:31 -0700</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/34187</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2063921</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2024-09-27 15:43:01 -0700</bug_when>
    <thetext>Committed 284395@main (2d71c4b7c91e): &lt;https://commits.webkit.org/284395@main&gt;

Reviewed commits have been landed. Closing PR #34187 and removing active labels.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>