[webkit-changes] [WebKit/WebKit] 990d13: Explicitly invalidate grant for locked files

Per Arne Vollan noreply at github.com
Wed Jan 31 15:21:18 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 990d138133d5746825ec0e3e0d0e1236f83acfda
      https://github.com/WebKit/WebKit/commit/990d138133d5746825ec0e3e0d0e1236f83acfda
  Author: Per Arne Vollan <pvollan at apple.com>
  Date:   2024-01-31 (Wed, 31 Jan 2024)

  Changed paths:
    M Source/WebKit/NetworkProcess/cocoa/NetworkProcessCocoa.mm
    M Source/WebKit/Shared/AuxiliaryProcessExtensions/NetworkingProcessExtension.swift
    M Source/WebKit/Shared/Cocoa/WKProcessExtension.h
    M Source/WebKit/Shared/Cocoa/WKProcessExtension.mm

  Log Message:
  -----------
  Explicitly invalidate grant for locked files
https://bugs.webkit.org/show_bug.cgi?id=268473
rdar://121746578

Reviewed by Chris Dumez.

Explicitly invalidate grant for locked files in the Networking process. This is a speculative fix for a crash
we're seeing in the Networking process because it has taken too many assertions. The assertions are currently
being invalidated when the grant object is being destroyed. The grant object is autoreleased, and will
therefore be destroyed in an autorelease pool. The reasoning behind this change is that we should explicitly
invalidate the assertions without relying on when they are being destroyed, since that is outside of WebKit
control. This patch also adds some new logs and faults.

* Source/WebKit/NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::acquireLockedFileGrant):
(WebKit::NetworkProcess::invalidateGrant):
* Source/WebKit/Shared/AuxiliaryProcessExtensions/NetworkingProcessExtension.swift:
(Grant.invalidateGrant):
(NetworkingProcessExtension.grant(_:name:)):
(Grant.invalidate): Deleted.
* Source/WebKit/Shared/Cocoa/WKProcessExtension.h:
* Source/WebKit/Shared/Cocoa/WKProcessExtension.mm:
(-[WKGrant invalidateGrant]):

Canonical link: https://commits.webkit.org/273865@main




More information about the webkit-changes mailing list