<?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>143200</bug_id>
          
          <creation_ts>2015-03-29 16:24:49 -0700</creation_ts>
          <short_desc>Use st_mtime instead of st_atime to track file access time</short_desc>
          <delta_ts>2015-03-30 11:17:53 -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>Page Loading</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>kling</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1081053</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2015-03-29 16:24:49 -0700</bug_when>
    <thetext>On OS X atime updates automatically so calling Storage::traverse() always ends up updating all access times. We update mtime manually on successful cache retrieve only.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081057</commentid>
    <comment_count>1</comment_count>
      <attachid>249701</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2015-03-29 16:34:26 -0700</bug_when>
    <thetext>Created attachment 249701
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081059</commentid>
    <comment_count>2</comment_count>
      <attachid>249701</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-03-29 16:36:35 -0700</bug_when>
    <thetext>Comment on attachment 249701
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=249701&amp;action=review

&gt; Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.cpp:592
&gt; +    // Modificiation time is updated on read. Don&apos;t use access time since OS may update it automatically on any read.

Typo: Modificiation

Comment is unclear. When you say “is updated on read” you mean “is updated by WebKit cache code when it reads an item from the cache”, but it sounds like “is updated by the file system when any process reads the file”.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081062</commentid>
    <comment_count>3</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2015-03-29 16:45:23 -0700</bug_when>
    <thetext>https://trac.webkit.org/r182124</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081229</commentid>
    <comment_count>4</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-03-30 10:54:41 -0700</bug_when>
    <thetext>Mild LOL at this bug. atime rarely does what anyone really wants :|</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081243</commentid>
    <comment_count>5</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2015-03-30 11:17:53 -0700</bug_when>
    <thetext>Wish there was at least a way to disable automatic atime updates for cache files. It is semantically nice.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>249701</attachid>
            <date>2015-03-29 16:34:26 -0700</date>
            <delta_ts>2015-03-29 16:36:35 -0700</delta_ts>
            <desc>patch</desc>
            <filename>atime-mtime.patch</filename>
            <type>text/plain</type>
            <size>5732</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MjEyMykKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBACisyMDE1LTAzLTI5ICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBVc2Ugc3RfbXRpbWUgaW5zdGVh
ZCBvZiBzdF9hdGltZSB0byB0cmFjayBmaWxlIGFjY2VzcyB0aW1lCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDMyMDAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBPbiBPUyBYIGF0aW1lIHVwZGF0ZXMgYXV0
b21hdGljYWxseSBvbiByZWFkIHNvIGNhbGxpbmcgU3RvcmFnZTo6dHJhdmVyc2UoKSB3b3VsZCBh
bHdheXMgZW5kcyB1cCB1cGRhdGluZyBhY2Nlc3MgdGltZXMKKyAgICAgICAgZm9yIGFsbCBjYWNo
ZSBlbnRyaWVzIHRvIHRoZSBjdXJyZW50IHRpbWUuIFRoaXMgd291bGQgbWFrZSBlbnRyeSB3b3J0
aCBjb21wdXRhdGlvbiBwcm9kdWNlIHVuZXhwZWN0ZWQgcmVzdWx0cy4KKyAgICAgICAgV2UgdXBk
YXRlIG10aW1lIG1hbnVhbGx5IG9uIHN1Y2Nlc3NmdWwgY2FjaGUgcmV0cmlldmUgb25seSBzbyBz
d2l0Y2hpbmcgdG8gaXQgZml4ZXMgdGhlIHByb2JsZW0uCisKKyAgICAgICAgKiBOZXR3b3JrUHJv
Y2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVGaWxlU3lzdGVtUG9zaXguaDoKKyAgICAgICAgKFdlYktp
dDo6TmV0d29ya0NhY2hlOjpmaWxlVGltZXMpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2Fj
aGU6OnVwZGF0ZUZpbGVNb2RpZmljYXRpb25UaW1lSWZOZWVkZWQpOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrQ2FjaGU6OnVwZGF0ZUZpbGVBY2Nlc3NUaW1lSWZOZWVkZWQpOiBEZWxldGVkLgor
ICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OlN0b3JhZ2U6OnVwZGF0ZUZpbGVNb2RpZmlj
YXRpb25UaW1lKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0NhY2hlOjpTdG9yYWdlOjpkaXNw
YXRjaFJlYWRPcGVyYXRpb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OmRlbGV0
aW9uUHJvYmFiaWxpdHkpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrQ2FjaGU6OlN0b3JhZ2U6
OnVwZGF0ZUZpbGVBY2Nlc3NUaW1lKTogRGVsZXRlZC4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vz
cy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmg6CisKIDIwMTUtMDMtMjcgIEd3YW5nIFlvb24g
SHdhbmcgIDx5b29uQGlnYWxpYS5jb20+CiAKICAgICAgICAgW1RleE1hcF0gU2VwZXJhdGUgQml0
bWFwVGV4dHVyZSByZWxhdGVkIGNsYXNzZXMgaW1wbGVtZW50YXRpb25zIGZyb20gVGV4dHVyZU1h
cHBlcgpJbmRleDogU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvY2FjaGUvTmV0d29ya0Nh
Y2hlRmlsZVN5c3RlbVBvc2l4LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvTmV0d29y
a1Byb2Nlc3MvY2FjaGUvTmV0d29ya0NhY2hlRmlsZVN5c3RlbVBvc2l4LmgJKHJldmlzaW9uIDE4
MjExNCkKKysrIFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNo
ZUZpbGVTeXN0ZW1Qb3NpeC5oCSh3b3JraW5nIGNvcHkpCkBAIC03MSw3ICs3MSw3IEBAIGlubGlu
ZSB2b2lkIHRyYXZlcnNlQ2FjaGVGaWxlcyhjb25zdCBTdHIKIAogc3RydWN0IEZpbGVUaW1lcyB7
CiAgICAgc3RkOjpjaHJvbm86OnN5c3RlbV9jbG9jazo6dGltZV9wb2ludCBjcmVhdGlvbjsKLSAg
ICBzdGQ6OmNocm9ubzo6c3lzdGVtX2Nsb2NrOjp0aW1lX3BvaW50IGFjY2VzczsKKyAgICBzdGQ6
OmNocm9ubzo6c3lzdGVtX2Nsb2NrOjp0aW1lX3BvaW50IG1vZGlmaWNhdGlvbjsKIH07CiAKIGlu
bGluZSBGaWxlVGltZXMgZmlsZVRpbWVzKGNvbnN0IFN0cmluZyYgcGF0aCkKQEAgLTc5LDE4ICs3
OSwxOCBAQCBpbmxpbmUgRmlsZVRpbWVzIGZpbGVUaW1lcyhjb25zdCBTdHJpbmcmCiAgICAgc3Ry
dWN0IHN0YXQgZmlsZUluZm87CiAgICAgaWYgKHN0YXQoV2ViQ29yZTo6ZmlsZVN5c3RlbVJlcHJl
c2VudGF0aW9uKHBhdGgpLmRhdGEoKSwgJmZpbGVJbmZvKSkKICAgICAgICAgcmV0dXJuIHsgfTsK
LSAgICByZXR1cm4geyBzdGQ6OmNocm9ubzo6c3lzdGVtX2Nsb2NrOjpmcm9tX3RpbWVfdChmaWxl
SW5mby5zdF9iaXJ0aHRpbWUpLCBzdGQ6OmNocm9ubzo6c3lzdGVtX2Nsb2NrOjpmcm9tX3RpbWVf
dChmaWxlSW5mby5zdF9hdGltZSkgfTsKKyAgICByZXR1cm4geyBzdGQ6OmNocm9ubzo6c3lzdGVt
X2Nsb2NrOjpmcm9tX3RpbWVfdChmaWxlSW5mby5zdF9iaXJ0aHRpbWUpLCBzdGQ6OmNocm9ubzo6
c3lzdGVtX2Nsb2NrOjpmcm9tX3RpbWVfdChmaWxlSW5mby5zdF9tdGltZSkgfTsKIH0KIAotaW5s
aW5lIHZvaWQgdXBkYXRlRmlsZUFjY2Vzc1RpbWVJZk5lZWRlZChjb25zdCBTdHJpbmcmIHBhdGgp
CitpbmxpbmUgdm9pZCB1cGRhdGVGaWxlTW9kaWZpY2F0aW9uVGltZUlmTmVlZGVkKGNvbnN0IFN0
cmluZyYgcGF0aCkKIHsKICAgICBhdXRvIHRpbWVzID0gZmlsZVRpbWVzKHBhdGgpOwotICAgIGlm
ICh0aW1lcy5jcmVhdGlvbiAhPSB0aW1lcy5hY2Nlc3MpIHsKLSAgICAgICAgLy8gRG9uJ3QgdXBk
YXRlIG1vcmUgdGhhbiBvbmNlIHBlciBob3VyOwotICAgICAgICBpZiAoc3RkOjpjaHJvbm86OnN5
c3RlbV9jbG9jazo6bm93KCkgLSB0aW1lcy5hY2Nlc3MgPCBzdGQ6OmNocm9ubzo6aG91cnMoMSkp
CisgICAgaWYgKHRpbWVzLmNyZWF0aW9uICE9IHRpbWVzLm1vZGlmaWNhdGlvbikgeworICAgICAg
ICAvLyBEb24ndCB1cGRhdGUgbW9yZSB0aGFuIG9uY2UgcGVyIGhvdXIuCisgICAgICAgIGlmIChz
dGQ6OmNocm9ubzo6c3lzdGVtX2Nsb2NrOjpub3coKSAtIHRpbWVzLm1vZGlmaWNhdGlvbiA8IHN0
ZDo6Y2hyb25vOjpob3VycygxKSkKICAgICAgICAgICAgIHJldHVybjsKICAgICB9Ci0gICAgLy8g
VGhpcyByZWFsbHkgdXBkYXRlcyBib3RoIGFjY2VzcyB0aW1lIGFuZCBtb2RpZmljYXRpb24gdGlt
ZS4KKyAgICAvLyBUaGlzIHJlYWxseSB1cGRhdGVzIGJvdGggdGhlIGFjY2VzcyB0aW1lIGFuZCB0
aGUgbW9kaWZpY2F0aW9uIHRpbWUuCiAgICAgdXRpbWVzKFdlYkNvcmU6OmZpbGVTeXN0ZW1SZXBy
ZXNlbnRhdGlvbihwYXRoKS5kYXRhKCksIDApOwogfQogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9O
ZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdl
LmNwcAkocmV2aXNpb24gMTgyMTE0KQorKysgU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3Mv
Y2FjaGUvTmV0d29ya0NhY2hlU3RvcmFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5MiwxMSAr
MjkyLDExIEBAIHZvaWQgU3RvcmFnZTo6cmVtb3ZlKGNvbnN0IEtleSYga2V5KQogICAgIH0pOwog
fQogCi12b2lkIFN0b3JhZ2U6OnVwZGF0ZUZpbGVBY2Nlc3NUaW1lKElPQ2hhbm5lbCYgY2hhbm5l
bCkKK3ZvaWQgU3RvcmFnZTo6dXBkYXRlRmlsZU1vZGlmaWNhdGlvblRpbWUoSU9DaGFubmVsJiBj
aGFubmVsKQogewogICAgIFN0cmluZ0NhcHR1cmUgZmlsZVBhdGhDYXB0dXJlKGNoYW5uZWwucGF0
aCgpKTsKICAgICBzZXJpYWxCYWNrZ3JvdW5kSU9RdWV1ZSgpLmRpc3BhdGNoKFtmaWxlUGF0aENh
cHR1cmVdIHsKLSAgICAgICAgdXBkYXRlRmlsZUFjY2Vzc1RpbWVJZk5lZWRlZChmaWxlUGF0aENh
cHR1cmUuc3RyaW5nKCkpOworICAgICAgICB1cGRhdGVGaWxlTW9kaWZpY2F0aW9uVGltZUlmTmVl
ZGVkKGZpbGVQYXRoQ2FwdHVyZS5zdHJpbmcoKSk7CiAgICAgfSk7CiB9CiAKQEAgLTMxNiw3ICsz
MTYsNyBAQCB2b2lkIFN0b3JhZ2U6OmRpc3BhdGNoUmVhZE9wZXJhdGlvbihjb25zCiAgICAgICAg
ICAgICAgICAgYXV0byByZWNvcmQgPSBkZWNvZGVSZWNvcmQoZmlsZURhdGEsIGNoYW5uZWwtPmZp
bGVEZXNjcmlwdG9yKCksIHJlYWQua2V5KTsKICAgICAgICAgICAgICAgICBib29sIHN1Y2Nlc3Mg
PSByZWFkLmNvbXBsZXRpb25IYW5kbGVyKFdURjo6bW92ZShyZWNvcmQpKTsKICAgICAgICAgICAg
ICAgICBpZiAoc3VjY2VzcykKLSAgICAgICAgICAgICAgICAgICAgdXBkYXRlRmlsZUFjY2Vzc1Rp
bWUoKmNoYW5uZWwpOworICAgICAgICAgICAgICAgICAgICB1cGRhdGVGaWxlTW9kaWZpY2F0aW9u
VGltZSgqY2hhbm5lbCk7CiAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAg
ICByZW1vdmUocmVhZC5rZXkpOwogICAgICAgICAgICAgfQpAQCAtNTg5LDcgKzU4OSw4IEBAIHN0
YXRpYyBkb3VibGUgZGVsZXRpb25Qcm9iYWJpbGl0eShGaWxlVGkKIAogICAgIHVzaW5nIG5hbWVz
cGFjZSBzdGQ6OmNocm9ubzsKICAgICBhdXRvIGFnZSA9IHN5c3RlbV9jbG9jazo6bm93KCkgLSB0
aW1lcy5jcmVhdGlvbjsKLSAgICBhdXRvIGFjY2Vzc0FnZSA9IHRpbWVzLmFjY2VzcyAtIHRpbWVz
LmNyZWF0aW9uOworICAgIC8vIE1vZGlmaWNpYXRpb24gdGltZSBpcyB1cGRhdGVkIG9uIHJlYWQu
IERvbid0IHVzZSBhY2Nlc3MgdGltZSBzaW5jZSBPUyBtYXkgdXBkYXRlIGl0IGF1dG9tYXRpY2Fs
bHkgb24gYW55IHJlYWQuCisgICAgYXV0byBhY2Nlc3NBZ2UgPSB0aW1lcy5tb2RpZmljYXRpb24g
LSB0aW1lcy5jcmVhdGlvbjsKIAogICAgIC8vIEZvciBzYW5pdHkuCiAgICAgaWYgKGFnZSA8PSBz
ZWNvbmRzOjp6ZXJvKCkgfHwgYWNjZXNzQWdlIDwgc2Vjb25kczo6emVybygpIHx8IGFjY2Vzc0Fn
ZSA+IGFnZSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdv
cmtDYWNoZVN0b3JhZ2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJv
Y2Vzcy9jYWNoZS9OZXR3b3JrQ2FjaGVTdG9yYWdlLmgJKHJldmlzaW9uIDE4MjExNCkKKysrIFNv
dXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL2NhY2hlL05ldHdvcmtDYWNoZVN0b3JhZ2UuaAko
d29ya2luZyBjb3B5KQpAQCAtOTcsNyArOTcsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlzcGF0
Y2hIZWFkZXJXcml0ZU9wZXJhdGlvbihjb25zdCBXcml0ZU9wZXJhdGlvbiYpOwogICAgIHZvaWQg
ZGlzcGF0Y2hQZW5kaW5nV3JpdGVPcGVyYXRpb25zKCk7CiAKLSAgICB2b2lkIHVwZGF0ZUZpbGVB
Y2Nlc3NUaW1lKElPQ2hhbm5lbCYpOworICAgIHZvaWQgdXBkYXRlRmlsZU1vZGlmaWNhdGlvblRp
bWUoSU9DaGFubmVsJik7CiAKICAgICBXb3JrUXVldWUmIGlvUXVldWUoKSB7IHJldHVybiBtX2lv
UXVldWUuZ2V0KCk7IH0KICAgICBXb3JrUXVldWUmIGJhY2tncm91bmRJT1F1ZXVlKCkgeyByZXR1
cm4gbV9iYWNrZ3JvdW5kSU9RdWV1ZS5nZXQoKTsgfQo=
</data>
<flag name="review"
          id="274532"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>