<?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>167468</bug_id>
          
          <creation_ts>2017-01-26 15:09:36 -0800</creation_ts>
          <short_desc>Web Inspector: iOS: Memory timeline shows impossible values for Page size (underflowed)</short_desc>
          <delta_ts>2017-01-26 16:58:08 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Joseph Pecoraro">joepeck</reporter>
          <assigned_to name="Joseph Pecoraro">joepeck</assigned_to>
          <cc>barraclough</cc>
    
    <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>joepeck</cc>
    
    <cc>kling</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1270366</commentid>
    <comment_count>0</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-01-26 15:09:36 -0800</bug_when>
    <thetext>Summary:
iOS: Memory timeline shows impossible values for Page size (underflowed)

Steps to Reproduce:
1. Inspect iOS 10 device
2. Enable Memory Timeline
3. Start and stop timeline recording
  =&gt; Page memory values are impossible

Notes:
- vmPageSize() is returning 0 on iOS (sandbox violation prevents accessing sysctlbyname)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270367</commentid>
    <comment_count>1</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-01-26 15:10:38 -0800</bug_when>
    <thetext>&lt;rdar://problem/30099051&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270369</commentid>
    <comment_count>2</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-01-26 15:14:07 -0800</bug_when>
    <thetext>This developer forum post seems to offer the most accurate information:
https://forums.developer.apple.com/thread/47532

Namely:

These should all match:

  - getpagesize
  - sysconf(_SC_PAGESIZE)
  - vm_page_size

As:

  • 16 KiB on 64-bit ARM platforms
  • 4 KiB on everything else

However, &quot;various low-level Mach APIs (which we are using here) continue to work in terms of 4 KiB pages.&quot;  You can get that value using vm_kernel_page_size.

---

So this ends up matching bmalloc&apos;s vmPageSizePhysical():

&gt; inline size_t vmPageSizePhysical()
&gt; {
&gt; #if (BPLATFORM(IOS) &amp;&amp; __IPHONE_OS_VERSION_MIN_REQUIRED &gt;= 100000)
&gt;     return vm_kernel_page_size;
&gt; #else
&gt;     static size_t cached;
&gt;     if (!cached)
&gt;         cached = sysconf(_SC_PAGESIZE);
&gt;     return cached;
&gt; #endif
&gt; }</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270372</commentid>
    <comment_count>3</comment_count>
      <attachid>299862</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2017-01-26 15:16:24 -0800</bug_when>
    <thetext>Created attachment 299862
[PATCH] Proposed Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270374</commentid>
    <comment_count>4</comment_count>
      <attachid>299862</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2017-01-26 15:19:44 -0800</bug_when>
    <thetext>Comment on attachment 299862
[PATCH] Proposed Fix

r=me!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270444</commentid>
    <comment_count>5</comment_count>
      <attachid>299862</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-26 16:58:04 -0800</bug_when>
    <thetext>Comment on attachment 299862
[PATCH] Proposed Fix

Clearing flags on attachment: 299862

Committed r211241: &lt;http://trac.webkit.org/changeset/211241&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270445</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-26 16:58:08 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>299862</attachid>
            <date>2017-01-26 15:16:24 -0800</date>
            <delta_ts>2017-01-26 16:58:04 -0800</delta_ts>
            <desc>[PATCH] Proposed Fix</desc>
            <filename>vm-page-size-1.patch</filename>
            <type>text/plain</type>
            <size>1899</size>
            <attacher name="Joseph Pecoraro">joepeck</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjM2QzNzU4MDVmNS4uYmU4N2QwN2JiYjkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNiBAQAorMjAxNy0wMS0yNiAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUu
Y29tPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IGlPUzogTWVtb3J5IHRpbWVsaW5lIHNob3dz
IGltcG9zc2libGUgdmFsdWVzIGZvciBQYWdlIHNpemUgKHVuZGVyZmxvd2VkKQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3NDY4CisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS8zMDA5OTA1MT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIHBhZ2UvY29jb2EvUmVzb3VyY2VVc2FnZVRocmVhZENvY29hLm1t
OgorICAgICAgICAoV2ViQ29yZTo6dm1QYWdlU2l6ZSk6CisgICAgICAgIFRoaXMgdmFsdWUgbWF0
Y2hlcyB0aGUgc3lzY3RsIHZhbHVlIHdlIHdlcmUgYXR0ZW1wdGluZyB0byBhY2Nlc3MsIGFuZCBp
cworICAgICAgICB0aGUgbW9zdCBhcHByb3ByaWF0ZSB3aGVuIGRlYWxpbmcgd2l0aCBtYWNoIEFQ
SXMsIGFzIHdlIGFyZSB1c2luZyBoZXJlLgorCiAyMDE3LTAxLTIzICBKb3NlcGggUGVjb3Jhcm8g
IDxwZWNvcmFyb0BhcHBsZS5jb20+CiAKICAgICAgICAgQ2xlYW51cCBXRUJfVElNSU5HIGNvZGUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvY29jb2EvUmVzb3VyY2VVc2FnZVRocmVh
ZENvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvcGFnZS9jb2NvYS9SZXNvdXJjZVVzYWdlVGhyZWFk
Q29jb2EubW0KaW5kZXggNmFiYTA5Y2Q3MmEuLjY5MTM2YWRmNGY3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL2NvY29hL1Jlc291cmNlVXNhZ2VUaHJlYWRDb2NvYS5tbQorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL2NvY29hL1Jlc291cmNlVXNhZ2VUaHJlYWRDb2NvYS5tbQpAQCAt
MzQsMjEgKzM0LDE3IEBACiAjaW5jbHVkZSA8bWFjaC9tYWNoLmg+CiAjaW5jbHVkZSA8bWFjaC92
bV9zdGF0aXN0aWNzLmg+CiAjaW5jbHVkZSA8cnVudGltZS9WTS5oPgotI2luY2x1ZGUgPHN5cy9z
eXNjdGwuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBzdGF0aWMgc2l6ZV90IHZtUGFnZVNp
emUoKQogewotICAgIHN0YXRpYyBzaXplX3QgcGFnZVNpemU7Ci0gICAgc3RhdGljIHN0ZDo6b25j
ZV9mbGFnIG9uY2VGbGFnOwotICAgIHN0ZDo6Y2FsbF9vbmNlKG9uY2VGbGFnLCBbJl0gewotICAg
ICAgICBzaXplX3Qgb3V0cHV0U2l6ZSA9IHNpemVvZihwYWdlU2l6ZSk7Ci0gICAgICAgIGludCBz
dGF0dXMgPSBzeXNjdGxieW5hbWUoInZtLnBhZ2VzaXplIiwgJnBhZ2VTaXplLCAmb3V0cHV0U2l6
ZSwgbnVsbHB0ciwgMCk7Ci0gICAgICAgIEFTU0VSVF9VTlVTRUQoc3RhdHVzLCBzdGF0dXMgIT0g
LTEpOwotICAgICAgICBBU1NFUlQocGFnZVNpemUpOwotICAgIH0pOwotICAgIHJldHVybiBwYWdl
U2l6ZTsKKyNpZiBQTEFURk9STShJT1MpICYmIF9fSVBIT05FX09TX1ZFUlNJT05fTUlOX1JFUVVJ
UkVEID49IDEwMDAwMAorICAgIHJldHVybiB2bV9rZXJuZWxfcGFnZV9zaXplOworI2Vsc2UKKyAg
ICBzdGF0aWMgc2l6ZV90IGNhY2hlZCA9IHN5c2NvbmYoX1NDX1BBR0VTSVpFKTsKKyAgICByZXR1
cm4gY2FjaGVkOworI2VuZGlmCiB9CiAKIHZvaWQgbG9nRm9vdHByaW50Q29tcGFyaXNvbihjb25z
dCBzdGQ6OmFycmF5PFRhZ0luZm8sIDI1Nj4mIGJlZm9yZSwgY29uc3Qgc3RkOjphcnJheTxUYWdJ
bmZvLCAyNTY+JiBhZnRlcikK
</data>

          </attachment>
      

    </bug>

</bugzilla>