)]}'
{
  "log": [
    {
      "commit": "375f32539f8eeff838644074b4f8e47ed82e64ee",
      "tree": "537c93dba4c38c1add1e5bb14d467fdf1e912335",
      "parents": [
        "1f6f9f2742cf8fb67579e405876f0621aed36985"
      ],
      "author": {
        "name": "Tom Anderson",
        "email": "thomasanderson@chromium.org",
        "time": "Wed Oct 14 02:20:56 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 14 02:27:25 2026"
      },
      "message": "[Linux] Add a shared Flatpak/Snap sandbox detection helper\n\nCallers that need to know whether the browser runs inside a Flatpak or\nSnap sandbox each checked environment variables themselves, and not\nconsistently (e.g. FLATPAK_SANDBOX_DIR vs FLATPAK_ID).\n\nAdd base::nix::GetAppSandbox(), which returns kNone, kFlatpak or kSnap.\nFlatpak is detected by the existence of /.flatpak-info, which Flatpak\ncreates in every sandbox, with $FLATPAK_ID as a fallback. Environment\nvariables alone are not relied on, since they may be inherited by host\nprocesses launched from a sandboxed app. Snap is detected by $SNAP and\n$SNAP_NAME. The result is computed once and cached.\n\nAdd ScopedAppSandboxOverrideForTesting, since the cached result can\u0027t be\nchanged by setting environment variables in tests.\n\nMigrate SetSystemdScopeUnitNameForXdgPortal() to the helper.\n\nBug: 537480522\nChange-Id: Ie5e266d4636934897d568fe170dcaa308f59aafa\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8561087\nCommit-Queue: Thomas Anderson \u003cthomasanderson@chromium.org\u003e\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1718239}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 5b7b7af1c5c8aa5717f937be2c7c733cf7e69503\n"
    },
    {
      "commit": "1f6f9f2742cf8fb67579e405876f0621aed36985",
      "tree": "229031afa42741c3abd9d2b09ad94a986632d22b",
      "parents": [
        "fac849cb94ada903cd55184f4cc4e737ed38959e"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Oct 14 00:42:24 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 14 00:48:28 2026"
      },
      "message": "NullAway: Enable WarnOnGenericInferenceFailure\n\nMakes NullAway warn when it cannot infer a type argument because a\n@Nullable value flows into a position inferred as non-null (e.g. \"new\nPair\u003c\u003e(nonNull, nullable)\" assigned to a Pair\u003cA, B\u003e). Previously such\ncalls were silently unchecked.\n\nFixes fall into a few buckets:\n * Declare the nullable type argument honestly, e.g.\n   Pair\u003cBoolean, @Nullable String\u003e, Map\u003cInteger, @Nullable Foo\u003e,\n   FutureTask\u003c@Nullable Void\u003e, WeakReference\u003c@Nullable Foo\u003e,\n   List\u003c? extends @Nullable Foo\u003e, and propagate to callers.\n * assertNonNull() on arguments that are non-null in context\n * Objects.requireNonNull() -\u003e assertNonNull() (requireNonNull is not\n   understood by the inference).\n\nBehavior note: ChromeOriginVerifier now passes a null fingerprint list\nrather than a one-element [null] list when a package has no signature\n(only happens for non-existent packages in tests, which are handled by\nthe verification override path).\n\nSkipped presubmit since the webapk shell_apk change is annotation-only\n(no bytecode change), so its version does not need to be revved.\n\nBug: 568003583\nChange-Id: I3e769631a16d32d36efd1abbb240c55defe5b6c9\nAgent-Generated: true\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8519443\nReviewed-by: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nOwners-Override: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1718149}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: e8304768c8e718b500d139ea8ae9163b4c7ad44a\n"
    },
    {
      "commit": "fac849cb94ada903cd55184f4cc4e737ed38959e",
      "tree": "b959753d7fcaddb5c2a17389d1a0ee1b04ccdb09",
      "parents": [
        "6bad0c7ae2a288d64532b9b7f9110d4ff5259817"
      ],
      "author": {
        "name": "Jack Miller",
        "email": "jackmil@google.com",
        "time": "Tue Oct 13 23:30:49 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 13 23:35:51 2026"
      },
      "message": "Add jackmil to OWNERs files for Windows related components.\n\nChange-Id: I83ad2b02cf984b86e3f6926df4d61c9da62647b3\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8574220\nReviewed-by: David Bienvenu \u003cdavidbienvenu@chromium.org\u003e\nCommit-Queue: Jack Miller \u003cjackmil@google.com\u003e\nReviewed-by: Will Harris \u003cwfh@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1718092}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 0413ab72559a5c9bc04cc73b5b57e6e0e997677c\n"
    },
    {
      "commit": "6bad0c7ae2a288d64532b9b7f9110d4ff5259817",
      "tree": "6596dbf00e2b9b346eb4367b706a6090e8a4a7ed",
      "parents": [
        "6ed1cbfe83b458089ab260dec3c35e89f54be1c4"
      ],
      "author": {
        "name": "Roger McFarlane",
        "email": "rogerm@chromium.org",
        "time": "Tue Oct 13 22:54:54 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 13 23:02:18 2026"
      },
      "message": "[base] Remove dead Feature::HasRuntimeMutabilityDisabled declaration\n\nThe definition of Feature::HasRuntimeMutabilityDisabled() was removed in\nhttps://crrev.com/c/7909881, leaving an unimplemented declaration in\nbase/feature.h. Remove the leftover declaration.\n\nBug: 482451012\nChange-Id: I9d5c6326d993aeaa9e6a83a285cc59ce6076223a\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8568400\nAuto-Submit: Roger McFarlane \u003crogerm@chromium.org\u003e\nCommit-Queue: Luc Nguyen \u003clucnguyen@google.com\u003e\nCommit-Queue: Roger McFarlane \u003crogerm@chromium.org\u003e\nReviewed-by: Luc Nguyen \u003clucnguyen@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1718056}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 31064467416ecc1f291e4cc665c313366a1ae9c1\n"
    },
    {
      "commit": "6ed1cbfe83b458089ab260dec3c35e89f54be1c4",
      "tree": "e04a4f13e8f1463f26cb3f2b06b1afa48fc56524",
      "parents": [
        "e88a0b15d86713458227b70563e76041b31aaea6"
      ],
      "author": {
        "name": "Andres Ricardo Perez",
        "email": "andresrperez@chromium.org",
        "time": "Tue Oct 13 22:23:24 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 13 22:29:57 2026"
      },
      "message": "[base] Expose compressor and wired memory in SystemMemoryInfo on Apple\n\nBefore this CL, SystemMemoryInfo on Apple platforms only surfaced free,\nspeculative, file-backed and purgeable memory out of host_statistics64.\nThe compressor and wired counters, which are two quantities that\nprecede swapping on macOS, were left behind.\n\nThis CL adds four Apple-only fields to SystemMemoryInfo: compressor\n(compressor_page_count, the RAM occupied by compressed data),\ncompressor_uncompressed (total_uncompressed_pages_in_compressor, the\nlogical size of that data), compressor_swapped (swapped_count, the part\ncurrently on disk) and wired (wire_count).\n\nswapped_count was added in rev2 of vm_statistics64, so it is only read\nwhen the count returned by host_statistics64 is at least\nHOST_VM_INFO64_REV2_COUNT; otherwise it stays zero. The existing fields\nand the Windows/Linux layouts of the struct are unchanged.\n\nBug: 529835192\nChange-Id: I3a0a9d583803ea49b7f5189348286c5ffe835dba\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8539470\nCommit-Queue: Andres Ricardo Perez Rojas \u003candresrperez@chromium.org\u003e\nReviewed-by: Francois Pierre Doray \u003cfdoray@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1717990}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 342a7ec87e1a17989aa7773e8ef0df3e3ed742c3\n"
    },
    {
      "commit": "e88a0b15d86713458227b70563e76041b31aaea6",
      "tree": "cdde510d53539cc7c1e46701f1ce651d73c12584",
      "parents": [
        "aedf93e6a528d4eefabae6cd0b4c830b344bfcf6"
      ],
      "author": {
        "name": "Sangwhan Moon",
        "email": "sxm@google.com",
        "time": "Tue Oct 13 22:21:23 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 13 22:29:00 2026"
      },
      "message": "Clean up stale base::Feature \"SchedUtilHints\"\n\nSchedUtilHints has been enabled by default since 2023. Remove the\nfeature flag and its associated field trial parameters while keeping\nthe enabled behavior and the --scheduler-boost-urgent switch override.\n\nBug: 356234968\nChange-Id: I9c81fc3abbc5bec14d144f51c61f232e5cc29634\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8544977\nReviewed-by: Francois Pierre Doray \u003cfdoray@chromium.org\u003e\nReviewed-by: David Stevens \u003cstevensd@chromium.org\u003e\nCommit-Queue: Sangwhan Moon \u003csxm@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1717985}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 3f2d7828eccaca232c81a0069638472127888ccb\n"
    },
    {
      "commit": "aedf93e6a528d4eefabae6cd0b4c830b344bfcf6",
      "tree": "8a37b2486faa053a6f0d659efbac26a4d47034d3",
      "parents": [
        "09fd68f9cc3b25e9b4b9d0d06938b5580c974098"
      ],
      "author": {
        "name": "Nicolas Ouellet-Payeur",
        "email": "nicolaso@chromium.org",
        "time": "Tue Oct 13 21:58:29 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 13 22:06:52 2026"
      },
      "message": "base/i18n: Cache HourClockType in DateTimeFormatter\n\nDateTimeFormatter::GetHourClockType created an\nicu::DateTimePatternGenerator on every call (~101 us per call) and used\nthe global default locale instead of the formatter\u0027s locale.\n\nCompute the hour clock type from the formatter\u0027s locale in the\nDateTimeFormatter constructor and store it in a member variable.\n\nBenchmark timing (before -\u003e after):\n- GetHourClockType: 101 us -\u003e 30 ns (3367x faster)\n\nBug: 571666827\nChange-Id: Ie7612d923b9f4d68e3e41b759b7d97f16a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8521260\nReviewed-by: Danilo Tedeschi \u003cdanft@google.com\u003e\nCommit-Queue: Nicolas Ouellet-Payeur \u003cnicolaso@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1717918}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 35adbfc0353c9ffbcc64a4c274161b0c7d8561ae\n"
    },
    {
      "commit": "09fd68f9cc3b25e9b4b9d0d06938b5580c974098",
      "tree": "757d1cddf788c047ef72afd0aa473cf03529b141",
      "parents": [
        "95cb986c527f270ffe77659fd7942865bf70aba7"
      ],
      "author": {
        "name": "Patrick Monette",
        "email": "pmonette@chromium.org",
        "time": "Tue Oct 13 21:12:02 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 13 21:19:06 2026"
      },
      "message": "Migrate LevelDB block caches to MemoryConsumer\n\nLevelDB\u0027s shared block caches used a MemoryPressureListener that pruned\nthem on memory pressure. This CL replaces it with a MemoryConsumer, and\nsupports the StatefulMemoryPressure experiment using the new\nleveldb::Cache::SetCapacity() method.\n\nThe new SharedBlockCaches class owns the browser and web block caches,\nwhich used to be owned by the leveldb_chrome globals, and adapts their\ncapacity to the memory limit when kStatefulMemoryPressure is enabled:\n  - OnUpdateMemoryLimit() grows the capacity, or caps it at the current\n    usage when the limit is lowered, so that the caches stop growing\n    while evicting as few entries as possible.\n  - OnReleaseMemory() sets the capacity to the scaled default, evicting\n    entries if needed. The reduced capacity persists until the limit is\n    raised again.\nWhen the feature is disabled, the caches are pruned on moderate and\ncritical memory pressure, which matches the legacy behavior.\n\nThe caches are used from any sequence, but memory coordinator\nnotifications are handled on a dedicated sequence. Previously, they were\ndelivered to whichever sequence first used the globals, which could go\naway. Evicting entries also acquires the caches\u0027 locks, which must not\nhappen on the main thread.\n\nThe kLevelDb MemoryPressureListenerTag is now unused and deprecated.\n\nBug: 465068849, 489349561\nChange-Id: I84c6d9bc544f774d351a543f02d5e1e11b491491\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8545554\nReviewed-by: Francois Pierre Doray \u003cfdoray@chromium.org\u003e\nCommit-Queue: Patrick Monette \u003cpmonette@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1717799}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8d7e6eb2778b835fec9b67ad2ce6367353776147\n"
    },
    {
      "commit": "95cb986c527f270ffe77659fd7942865bf70aba7",
      "tree": "bd4bf4ac979bc221c5be76fe98af6461c97b2e68",
      "parents": [
        "61475bc099295ef3c5252aeaafd6bfb10d3cd383"
      ],
      "author": {
        "name": "Nicolas Ouellet-Payeur",
        "email": "nicolaso@chromium.org",
        "time": "Tue Oct 13 20:50:53 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 13 20:57:52 2026"
      },
      "message": "base/i18n: Cache patterns in DateTimeFormatter\n\nDateTimeFormatter::Format created an icu::DateTimePatternGenerator on\nevery call. This made time formatting 3x to 20x slower after the\nIcuBridge migration.\n\nCache the pattern strings in DateTimeFormatter, keyed by\nDateTimeFormatterOptions.\n\nAlso use one return statement in CreateSimpleDateFormatter. Multiple\nreturn statements prevent copy elision and copy ~12 KB of symbols on\nevery call.\n\nBenchmark timings (before -\u003e after):\n- TimeFormatHTTP: 318 us -\u003e 37 us (8.6x faster)\n- TimeFormatTimeOfDayWithMilliseconds: 299 us -\u003e 16 us (18.7x faster)\n- TimeFormatShortDateAndTime: 168 us -\u003e 17 us (9.9x faster)\n- TimeFormatTimeOfDay: 159 us -\u003e 16 us (9.9x faster)\n- TimeFormatShortDate: 45 us -\u003e 16 us (2.8x faster)\n\nBug: 571666827\nChange-Id: Ib2cb84fc44ac8c794959bd71d7c216946a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8502541\nReviewed-by: Danilo Tedeschi \u003cdanft@google.com\u003e\nCommit-Queue: Nicolas Ouellet-Payeur \u003cnicolaso@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1717736}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 0deedaa8767d44c26127052b1f649f2f2aa1d234\n"
    },
    {
      "commit": "61475bc099295ef3c5252aeaafd6bfb10d3cd383",
      "tree": "5ca553ec43f0ce5f642856e5f8ccf2b6914424db",
      "parents": [
        "216c166a827047078d661d241959297252ffb553"
      ],
      "author": {
        "name": "Benoît Lizé",
        "email": "lizeb@google.com",
        "time": "Tue Oct 13 18:42:55 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 13 18:51:47 2026"
      },
      "message": "[pa] Trigger a memory pressure event when GigaCage is almost full\n\nPartitionAlloc has a hard limit on memory that can be allocated: if an\nallocation request doesn\u0027t fit in the GigaCage limits, the allocation\nrequest fails, which (in Chromium) typically crashes the\napplication. There are known cases in the codebase (from field crashes)\nwhere a renderer (or an extension) can trigger multiple GiB allocations\nin the browser process, which can make it crash due to GigaCage\nexhaustion.\n\nAn (imperfect) solution is to allow the GigaCage to communicate that\nit\u0027s almost full to the application. This is what this CL does, namely:\n- When the GigaCage gets 90% full, it calls an application-level\n  function\n- This function then triggers a critical memory pressure notification\n\nTo make this CL simpler, it only handles 64 bit POSIX builds. This\napproach would likely not work on 32 bit builds anyway due to the\ndifferent GigaCage implementation and the address space layout. POSIX is\nthe only target in scope for this CL, as it makes code easier to review,\nand I cannot test locally on Windows. However, a similar async-safe\nnotification mechanism exists on Windows, and will be added later.\n\nBug: 562457545\nChange-Id: I8886806cd45d3af2d8235e535f2fe9d396ad0b81\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8425821\nCommit-Queue: Benoit Lize \u003clizeb@chromium.org\u003e\nReviewed-by: Takashi Sakamoto \u003ctasak@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1717663}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 04875c40bc09f67a965de0cb349d0dde2faaaa0f\n"
    },
    {
      "commit": "216c166a827047078d661d241959297252ffb553",
      "tree": "c8e7f1b810293e35577399e21f92cf14e59488c4",
      "parents": [
        "9540ba61dc74062f269eb7ee41816ede31d1c58a"
      ],
      "author": {
        "name": "Egor Pasko",
        "email": "pasko@chromium.org",
        "time": "Tue Oct 13 18:33:22 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 13 18:39:08 2026"
      },
      "message": "cleanup: Remove kUseBoringSSLForRandBytes (take 2)\n\nThe feature has been ON by default on Stable for some time now.\n\nThis is not a trivial flag removal change, because the flag is getting\nenabled at a late initialization stage.\n\nPrevious attempt to do this cleanup was in crrev.com/1623847 and was\nreverted because of crbug.com/513491819 (using getenv() too early on\nWindows). This was mitigated by crrev.com/c/7853761 (making thread_local\nMetricsSubSampler instance also a function-local).\n\nBug: 40212695, 356235160, 513491819\nChange-Id: I75128600aa97719d7775ce9ee4777ed3b6a577d0\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8560817\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCommit-Queue: Egor Pasko \u003cpasko@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1717651}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 43187c150a0ad9b78129a25fc7bd540afa4adb42\n"
    },
    {
      "commit": "9540ba61dc74062f269eb7ee41816ede31d1c58a",
      "tree": "59fb1470f952f7a4c6559719b8e5f0c0f2718cfa",
      "parents": [
        "66887ab5774ccfdf65453820cd5b12d90d475394"
      ],
      "author": {
        "name": "Nicolas Ouellet-Payeur",
        "email": "nicolaso@chromium.org",
        "time": "Tue Oct 13 18:13:50 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 13 18:23:48 2026"
      },
      "message": "base/i18n: Add benchmarks for time and number formatting\n\nAdd Google Benchmark tests for time and number formatting functions.\nThis allows performance measurements before and after pattern caching\nchanges in DateTimeFormatter.\n\nInitial benchmark timings:\n- TimeFormatHTTP: 318 us\n- TimeFormatTimeOfDayWithMilliseconds: 299 us\n- TimeFormatShortDateAndTime: 168 us\n- TimeFormatTimeOfDay: 159 us\n- GetHourClockType: 101 us\n- TimeFormatShortDate: 45 us\n- TimeDurationFormat: 29 us\n- FormatPercent: 23 us\n- FormatDouble: 540 ns\n- FormatNumber: 119 ns\n\nBug: 571666827\nChange-Id: I87452a0c6a64f00cd2303ef318683ccf6a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8519578\nReviewed-by: Danilo Tedeschi \u003cdanft@google.com\u003e\nCommit-Queue: Nicolas Ouellet-Payeur \u003cnicolaso@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1717624}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 367606b543eb28a37a840c599fd8ca3e0ea06660\n"
    },
    {
      "commit": "66887ab5774ccfdf65453820cd5b12d90d475394",
      "tree": "6c52992a3effa0dc6382de8a6aa63ce92aa388c9",
      "parents": [
        "f742a3cb34489db0a77ef9b5543b9a833deeb5c6"
      ],
      "author": {
        "name": "Keishi Hattori",
        "email": "keishi@google.com",
        "time": "Tue Oct 13 13:17:34 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 13 13:24:18 2026"
      },
      "message": "Write directly to stderr/report_fd in AsanService::Log\n\nAsanService::Log() previously abused __sanitizer_report_error_summary()\nto print additional debugging info (such as task traces and MiraclePtr\nstatus) to ASan\u0027s output stream. __sanitizer_report_error_summary() is a\nnotification callback intended to be overridden by fuzzers and test\nharnesses rather than a general logging function.\n\nAfter FuzzTest rolled in crrev.com/c/8445276 and unconditionally defined\nan override for __sanitizer_report_error_summary() in\nsanitizer_interface.cc (which parses the crash type for a registered\ncallback or returns early without printing the summary), all calls to\nAsanService::Log() in binaries linking FuzzTest were silently swallowed\n(or treated as malformed sanitizer summaries when a callback was\nregistered).\n\nFix AsanService::Log() to write directly to STDERR_FILENO on\nPOSIX/Fuchsia and to the configured report handle (or STD_ERROR_HANDLE\nby default) on Windows, and re-enable AsanBackupRefPtrTest.* on\nChromeOS.\n\nBug: 565331388\nChange-Id: Iaf23af11b83ef7de4226b935e05d53c0792cfade\nCq-Include-Trybots: luci.chromium.try:linux_chromium_chromeos_asan_rel_ng,win-asan,mac_chromium_asan_rel_ng\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8457485\nCommit-Queue: Keishi Hattori \u003ckeishi@chromium.org\u003e\nReviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1717522}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8adef9e303cb3d983f01d0fbbcaf877cdb76f1df\n"
    },
    {
      "commit": "f742a3cb34489db0a77ef9b5543b9a833deeb5c6",
      "tree": "0ef86e5ba70ff9bc60e6de78e2d739e819ccae0a",
      "parents": [
        "f4d91d76350186d42799d5dbaf38fb76993bf640"
      ],
      "author": {
        "name": "Arthur Sonzogni",
        "email": "arthursonzogni@chromium.org",
        "time": "Mon Oct 12 19:04:41 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 12 19:11:49 2026"
      },
      "message": "Return std::string from base::debug::ReadElfBuildId()\n\nSimplify ReadElfBuildId() to return std::string directly instead of\nwriting to a fixed-size out-parameter (ElfBuildIdBuffer) and returning\nthe byte length, and remove ElfBuildIdBuffer.\n\nHistorically, ReadElfBuildId() returned base::Optional\u003cstd::string\u003e\nuntil https://crrev.com/c/1474251 (2019), which switched to a\nfixed-size buffer with comments stating that elf_reader.cc may be used\nin crash-handling / signal-handler code and must avoid dynamic memory\nallocation.\n\nHowever, none of the functions in elf_reader.cc (ReadElfBuildId(),\nReadElfLibraryName(), GetElfProgramHeaders(), GetRelocationOffset())\nare used in crash handling or signal handlers:\n- stack_trace_posix.cc (which implements the in-process crash signal\n  handler) does not use elf_reader.cc at all.\n- stack_trace_fuchsia.cc delegates crash stack dumping to the system\n  crashlogger (Fuchsia does not use POSIX signal handlers), and\n  StackTrace::OutputToStreamWithPrefixImpl() writes to std::ostream\n  and LOG(WARNING).\n- stack_trace_android.cc only uses ReadElfBuildId() inside\n  StackTrace::OutputToStreamWithPrefixImpl(), which already allocates\n  std::string and std::vector on the heap.\n- All other callers (module_cache_posix.cc, anr_build_id_provider.cc,\n  os_metrics_linux.cc, tracing_sampler_profiler.cc) immediately\n  convert the buffer into a heap-allocated std::string.\n\nReturning std::string directly via HexEncode() / HexEncodeLower()\nsimplifies all callers and removes manual buffer sizing.\n\nBug: 559576258\nChange-Id: I8c70698e98a3fe9e3046cb8f59588f3f87383f9d\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8537546\nCommit-Queue: Arthur Sonzogni \u003carthursonzogni@chromium.org\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nReviewed-by: Tibor Goldschwendt \u003ctiborg@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1716998}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b7319baa74e502abd5a6bd022691472faa2a2666\n"
    },
    {
      "commit": "f4d91d76350186d42799d5dbaf38fb76993bf640",
      "tree": "e3f79c64e81d0a683ab52fc5cdf2eec6feb8b40a",
      "parents": [
        "7d1246e8a71ec7740b3b05c28b88a71c68dc3196"
      ],
      "author": {
        "name": "Benoît Lizé",
        "email": "lizeb@google.com",
        "time": "Mon Oct 12 12:24:28 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 12 12:30:23 2026"
      },
      "message": "[base] Fix TextureOwner and remove URLRequestContext in memory allowlist\n\nURLRequestContext was removed as a MemoryDumpProvider in\ncrrev.com/c/3153098, and a missing comma after TextureOwner caused\nstring literal concatenation.\n\nThe other one is still there, though never returned data in background\ndue to the typo.\n\nChange-Id: I006ff591b1c85bf5fb42ec8832a2da116a142eb9\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8549775\nReviewed-by: Eric Seckler \u003ceseckler@chromium.org\u003e\nAuto-Submit: Benoit Lize \u003clizeb@chromium.org\u003e\nCommit-Queue: Eric Seckler \u003ceseckler@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1716700}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 9bf81c399ef2a3f541af05a1cb98c0569f470740\n"
    },
    {
      "commit": "7d1246e8a71ec7740b3b05c28b88a71c68dc3196",
      "tree": "706844d7c321621bd944bc281607084a903318ba",
      "parents": [
        "e232dd1bea6ae7cd998ab15374d76909360660d1"
      ],
      "author": {
        "name": "Ting Shao",
        "email": "tingshao@microsoft.com",
        "time": "Mon Oct 12 08:53:40 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 12 09:04:19 2026"
      },
      "message": "Reserve the temp file as restore candidate in ImportantFileWriter\n\nIn ImportantFileWriter::WriteFileAtomicallyImpl when the replace\nfile operation failed and the target file is lost, the temp file\nis also removed. This file can actually be reserved as recovery\ncandidate since we have already introduced temp file based recovery\nin ImportantFileWriter::RestoreMissingFileIfNeeded.\n\nThis change skips the remove operation when replace file failed and\ntarget file is lost. Unit tests are also added.\n\nBug: 478086885\nChange-Id: I7959fe59e814a3556b906c9ebc045987b264c686\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8447533\nReviewed-by: Greg Thompson \u003cgrt@chromium.org\u003e\nCommit-Queue: Ting Shao \u003ctingshao@microsoft.com\u003e\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1716606}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a6c86eef1f4f783ea29698079203f2eae8411dd5\n"
    },
    {
      "commit": "e232dd1bea6ae7cd998ab15374d76909360660d1",
      "tree": "0bb2b15d0d708a4eb522c0a01c2c709b6b510e7a",
      "parents": [
        "ec2d7134f479287656bc167fd9ea78a9c65c642a"
      ],
      "author": {
        "name": "Henrique Nakashima",
        "email": "hnakashima@chromium.org",
        "time": "Fri Oct 09 22:58:45 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 09 23:03:49 2026"
      },
      "message": "[Android] Inline ViewUtils.waitForView() to ViewFinder\n\nViewUtils.waitForView(ViewGroup root, Matcher\u003cView\u003e viewMatcher) was a\nthin wrapper around ViewFinder.waitForView(allOf(..., isDescendantOfA(is(root)))).\n\nMigrate all callers directly to ViewFinder.waitForView():\n- In AccountPickerBottomSheetTest, RestoreTabsUiRenderTest,\n  SeamlessSigninTest, AccessorySheetRenderTest, and BookmarkTest, the\n  views have unique IDs in their window and don\u0027t need root scoping.\n- Drop redundant isDisplayed() matchers and (ViewGroup) casts.\n- Remove uncalled helper methods waitForViewOnRoot() and\n  waitForViewOnActivityRoot() in ManualFillingTestHelper.\n- Remove ViewUtils.waitForView() from ViewUtils.java.\n\nBug: 481024569\nChange-Id: Ic3837e6ee3a73de5d65ffeb39f1411010ad00eb8\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8526553\nOwners-Override: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nCommit-Queue: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nReviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1716117}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b66bed488da864b62bb4ef8df41d3513cda70e45\n"
    },
    {
      "commit": "ec2d7134f479287656bc167fd9ea78a9c65c642a",
      "tree": "5699c3d848ada7ae8e21b0d47eac8f88d84a5d42",
      "parents": [
        "96fe1db5cf65aa6d16be320559b3515a6671d4cc"
      ],
      "author": {
        "name": "Alexei Svitkine",
        "email": "asvitkine@chromium.org",
        "time": "Fri Oct 09 18:20:58 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 09 18:36:53 2026"
      },
      "message": "Improve FilePersistentMemoryAllocator Windows flushing\n\nOn Windows, ::FlushViewOfFile() writes modified pages only to the\noperating system cache, not to the underlying physical disk. When a\nsynchronous flush is requested, calling ::FlushFileBuffers() on the\nunderlying file handle after flushing the mapped view ensures data\nis durably committed to physical media and survives sudden system\ntermination or power loss.\n\nBecause ::FlushFileBuffers() can introduce significant disk I/O\nlatency, gate this behind a new base::features feature\n(kFlushFileBuffersOnSyncFlush, disabled by default) per reviewer\nrecommendation to allow evaluating its performance cost/benefit.\n\nIn production, the sole synchronous flush call path is triggered by\nMetricsService::RecordCurrentEnvironment() in components/metrics:\n  allocator-\u003ememory_allocator()-\u003eFlush(/*sync\u003d*/true);\nThis call is gated behind the kFlushPersistentSystemProfileOnWrite\nfeature experiment and dispatched asynchronously to a background\nThreadPool task runner with TaskPriority::BEST_EFFORT and MayBlock().\nWhen kFlushFileBuffersOnSyncFlush is enabled, calling\n::FlushFileBuffers() ensures the updated system profile is safely\ncommitted to physical storage, protecting against unparsable\ncorrupted profiles across sudden power loss or OS crashes, while\navoiding any UI thread blocking.\n\nTAG\u003dagy\nCONV\u003de7bcd679-5d34-4ddc-9706-7890259066f8\n\nBug: 40063510\nChange-Id: Id397008a2a62375593be4a48b35823979a53fec8\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8516337\nReviewed-by: Luc Nguyen \u003clucnguyen@google.com\u003e\nAuto-Submit: Alexei Svitkine \u003casvitkine@chromium.org\u003e\nCommit-Queue: Alexei Svitkine \u003casvitkine@chromium.org\u003e\nReviewed-by: Francois Pierre Doray \u003cfdoray@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1715812}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: de1f70ab5f92a8bfa15abe10ba60655bed229804\n"
    },
    {
      "commit": "96fe1db5cf65aa6d16be320559b3515a6671d4cc",
      "tree": "a0d6248f73aa8c9fcb49d575f22cc6693bc719be",
      "parents": [
        "9d9b5d289c131d6fbe1255e5fc4b6b38f18fff5e"
      ],
      "author": {
        "name": "Calder Kitagawa",
        "email": "ckitagawa@chromium.org",
        "time": "Fri Oct 09 18:13:25 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 09 18:25:35 2026"
      },
      "message": "Android: Use FromReflectedMethod in InputHintChecker\n\nInputHintChecker::HasInputImpl() is polled every 1ms on the Browser UI\nthread (kYieldWithInputHint), previously invoking\nandroid.view.View#probablyHasInput() via reflective Method.invoke() and\nunboxing the boxed Boolean with Boolean.booleanValue().\n\nKey changes and performance evidence:\n* Resolve the direct jmethodID once during off-thread initialization via\n  env-\u003eFromReflectedMethod() and invoke env-\u003eCallBooleanMethod()\n  directly in HasInputImpl().\n* Drops the reflect_method_for_has_input_ JNI global ref and shrinks\n  sizeof(InputHintChecker) by 16 bytes.\n* In a release build benchmark on Android 16 (x86_64, 1M calls across 10\n  trials), this reduces HasInputImpl() mean wall time from 957.0 ns to\n  259.0 ns (3.69x faster, 4.05x at p95) and thread CPU time from 940.1\n  ns to 254.8 ns (-72.9%).\n* Adds InputHintCheckerTest.RealViewInitialization in base_unittests.\n\nFixed: 571601634\nChange-Id: I346aa5fe825a676714fb1eb87212cc9f6a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8539865\nReviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCommit-Queue: Calder Kitagawa \u003cckitagawa@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1715804}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 5c24d616a84d04e53177b90c133025f31d273420\n"
    },
    {
      "commit": "9d9b5d289c131d6fbe1255e5fc4b6b38f18fff5e",
      "tree": "76f5ead90f148c31e16143a5bd521bda25460947",
      "parents": [
        "8b445a06dfa7fee34e65f8e9ccc8685fa5dc9f5a"
      ],
      "author": {
        "name": "Anthony Vallee-Dubois",
        "email": "anthonyvd@google.com",
        "time": "Fri Oct 09 18:01:08 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 09 18:07:12 2026"
      },
      "message": "Enable UtfConversionAsciiFastPath by default\n\nModest jank/inp/page load improvements on some platforms (see\ngo/utfconversionasciifastpath-metrics). Enabling by default in\npreparation for full launch.\n\nBug: 498150713\nChange-Id: I57c671c848e540f7c74b478bd8269da8c4b8821b\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8551053\nReviewed-by: Francois Pierre Doray \u003cfdoray@chromium.org\u003e\nCommit-Queue: Anthony Vallee-Dubois \u003canthonyvd@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1715788}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: d62e9d018bca675144c0ef58680fba6a417318e2\n"
    },
    {
      "commit": "8b445a06dfa7fee34e65f8e9ccc8685fa5dc9f5a",
      "tree": "4795d507047d5c2843db2a75dcbe97179625d6e6",
      "parents": [
        "609764efb4a2a9283d7abbf91621f2e098492437"
      ],
      "author": {
        "name": "Tomasz Wiszkowski",
        "email": "ender@google.com",
        "time": "Fri Oct 09 16:46:19 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 09 16:55:26 2026"
      },
      "message": "Accept Callback\u003c? super T\u003e in ObservableSupplier observer methods\n\nUpdate add*Observer and removeObserver on NullableObservableSupplier,\nMonotonicObservableSupplier, NonNullObservableSupplier, and\nLookAheadObservableSupplier (along with their implementations) to take\ncontravariant Callback\u003c? super T\u003e instead of invariant Callback\u003cT\u003e.\n\nThis allows callers to register callbacks that capture base classes or\ninterfaces rather than requiring exact concrete types.\n\nChange-Id: Idaac86710f669d2ec7226df54570b3d1749e7763\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8542496\nCommit-Queue: Tomasz Wiszkowski \u003cender@google.com\u003e\nReviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\nReviewed-by: Calder Kitagawa \u003cckitagawa@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1715705}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8f99fa3533fb7fe09344751e5aca16ec42fe16c8\n"
    },
    {
      "commit": "609764efb4a2a9283d7abbf91621f2e098492437",
      "tree": "d386b842944168e2d7b651a438f221ebdd6cb2e3",
      "parents": [
        "b4f3b23a6ab058b9c9f47644869afbf565c898e2"
      ],
      "author": {
        "name": "Jose Arturo Barrera",
        "email": "jabgonzalez@google.com",
        "time": "Fri Oct 09 16:41:01 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 09 16:49:55 2026"
      },
      "message": "[MiraclePtr] Enforce raw_ptr in templated containers in base/process/launch\n\nThis change replaces instances of raw C-style pointers (`T*`) with\n`raw_ptr\u003cT\u003e` for elements stored inside templated containers (such as\n`std::vector` and `std::array`). This aligns with the broader MiraclePtr\nsafety initiative to protect against use-after-free vulnerabilities.\n\nThis advances MiraclePtr\u0027s expansion to containers and preempts an\nupcoming clang-plugin update that will strictly ban these un-rewritten\ninstances.\n\nBug: b:501142609\nDoc: go/miracleptr-in-containers\nMax-Compile-Failures: 100\nChange-Id: I74aff9f7f42928a61d22aec506e23f7954411eee\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8469207\nCommit-Queue: José Arturo Barrera \u003cjabgonzalez@google.com\u003e\nReviewed-by: Arthur Sonzogni \u003carthursonzogni@chromium.org\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1715698}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 9fed7e6fba8b6afd6f2731b0da2c0f9cb64b9f2d\n"
    },
    {
      "commit": "b4f3b23a6ab058b9c9f47644869afbf565c898e2",
      "tree": "1bc5cbc10e35831d39244e5e70c90fd9826d6d9d",
      "parents": [
        "c4c6573ee3ae5363d43d0d69fc3dc6b68efcbd65"
      ],
      "author": {
        "name": "Danilo Tedeschi",
        "email": "danft@google.com",
        "time": "Fri Oct 09 14:55:41 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 09 15:05:55 2026"
      },
      "message": "Unify //base/i18n:language_tag_no_icu with //base/i18n:language_tag\n\nThe //base/i18n:language_tag target only depends on ICU4X locale\ncanonicalization, which is fine to depend on by all the users of\nlanguage_tag_no_icu.\n\nChange-Id: Ib60c0569c45193558bc3d680bd04026710812893\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8481891\nCommit-Queue: Danilo Tedeschi \u003cdanft@google.com\u003e\nReviewed-by: Gabriel Charette \u003cgab@chromium.org\u003e\nReviewed-by: Stefano Duo \u003cstefanoduo@google.com\u003e\nReviewed-by: Gauthier Ambard \u003cgambard@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1715569}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: e89a9b02e2681db6910d24e56b25d8ced554f84a\n"
    },
    {
      "commit": "c4c6573ee3ae5363d43d0d69fc3dc6b68efcbd65",
      "tree": "ac17ec7823b976b3c12b1257bc4a88fdd7e5edc4",
      "parents": [
        "154aaa84632e39e5e55b089e0f71a8176d6792b1"
      ],
      "author": {
        "name": "Wenyu Fu",
        "email": "wenyufu@chromium.org",
        "time": "Fri Oct 09 13:39:07 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 09 13:47:20 2026"
      },
      "message": "[Android] Add getBaseContext and isSameActivity to ContextUtils\n\nAdd ContextUtils.getBaseContext(Context) to unwrap nested ContextWrapper\ninstances and ContextUtils.isSameActivity(Context, Context) to check\nwhether two contexts belong to the same Activity. Migrate existing base/\nunwrap call sites (BundleUtils, BindService) to\nContextUtils.getBaseContext, and replace the duplicate\nActivityUtil.getActivityFromContext helper in chrome/browser/settings/\nwith ContextUtils.activityFromContext.\n\nThis prepares for validating popup content view contexts in ListMenuHost\n(https://crrev.com/c/8513259).\n\nBug: 568860935\nChange-Id: I28a9f420dd8784236d2e81f453843a3ff0751c9d\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8524111\nAuto-Submit: Wenyu Fu \u003cwenyufu@chromium.org\u003e\nReviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCommit-Queue: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1715509}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: eee717438911c8c6c7d72fb5517fe761ad7ff08f\n"
    },
    {
      "commit": "154aaa84632e39e5e55b089e0f71a8176d6792b1",
      "tree": "8e3bdd6fecfa03f44ace088cbf6bc3cd910d568b",
      "parents": [
        "94d8b939ba9c2e46da5ec9d85b638c6289971a59"
      ],
      "author": {
        "name": "Martin Kong",
        "email": "martinkong@google.com",
        "time": "Thu Oct 08 20:32:06 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 08 20:36:48 2026"
      },
      "message": "Create v1 of java_flag_generator\n\nThis CL creates v1 of the java_flag_generator, which parses C++\nfeature list files and generate Java file with typed accessor functions\nfor the features in kFeaturesExposedToJava.\n\nSee the README.md for more details.\n\nMore improvements to come in the future:\n- Add tests for this generator\n- Parse params in addition to features\n- Parse preprocessor directives correctly\n- Parse fieldtrial_testing_config.json\n\nBug: 565402852, 555377820\nChange-Id: Id7d341437f239e9d12e367272fe73039a0c57ef4\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8526828\nReviewed-by: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nReviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCommit-Queue: Martin Kong \u003cmartinkong@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1714886}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: c752f46c8fa49edc9750b8baa6f116e39582e91a\n"
    },
    {
      "commit": "94d8b939ba9c2e46da5ec9d85b638c6289971a59",
      "tree": "c486e5e13a5e2e938a61c9bb060760ae58457039",
      "parents": [
        "d159d0e0cb55807e3baf90169b7c7c563388f207"
      ],
      "author": {
        "name": "Henrique Nakashima",
        "email": "hnakashima@chromium.org",
        "time": "Thu Oct 08 17:46:50 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 08 17:54:15 2026"
      },
      "message": "[Android] Fix --force-desktop-android leak in DeviceInfoUnitTest\n\nDeviceInfoUnitTest#testForceDesktopSwitchAddedAfterCachingIsPickedUp\n(added in the DeviceInfo caching reland, crrev.com/c/8513297) appends\n--force-desktop-android to the CommandLine directly and never removes\nit. CommandLineFlags.reset() only undoes switches it applied from\nannotations, so the switch leaked into later tests in the same JVM.\nCommandLineFlagsNoClassAnnotationCheckTest#testNoAnnotation and\nCommandLineFlagsWithClassAnnotationCheckTest#testRemoveSwitch_method\nshare a shard with DeviceInfoUnitTest on android-x86-rel and the cast\nbots, so they failed on the first attempt in ~99% of builds. Most of\nthose runs passed on retry, which reruns only the failed tests.\n\nRemove the switch in a finally block, and re-enable the two tests that\ncrrev.com/c/8534628 disabled.\n\nBug: 570781966, 568001105\nChange-Id: I3205328ec415d606b9c47a14a9bc8afbf9a37707\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8541690\nReviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCommit-Queue: Andrew Grieve \u003cagrieve@chromium.org\u003e\nAuto-Submit: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1714707}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: dcc9d4c9202f40b187f4212532e47916cb9fc810\n"
    },
    {
      "commit": "d159d0e0cb55807e3baf90169b7c7c563388f207",
      "tree": "2380b0fa64251fe9dffa9d53c6567d01ef3156e1",
      "parents": [
        "49b8448e430eeb1f73aa7c933d569f9ac7aff706"
      ],
      "author": {
        "name": "François Doray",
        "email": "fdoray@chromium.org",
        "time": "Thu Oct 08 15:10:48 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 08 15:18:03 2026"
      },
      "message": "[icu] Fast-path TimeFormatAsIso8601 and optimize TimeZone::GMT/Unknown\n\nbase::TimeFormatAsIso8601 accounts for ~1.34% of browser UI-thread jank\non Windows Stable:\nhttp://pprof/?id\u003d8f1c2496b26f253176d7e249f70d384f\u0026pivot\u003dbase::TimeFormatAsIso8601\n\nPreviously, TimeFormatAsIso8601(Time) delegated to the 4-argument\noverload, which uses UTCExplode() to format the timestamp, but also\nconstructs base::i18n::TimeZone::GMT() twice per call (once as the\ntime_zone argument, and once to check time_zone \u003d\u003d TimeZone::GMT()).\nBecause TimeZone::GMT() called TimeZone::FromString(\"GMT\"), each call\nopened and binary-searched the zoneinfo64 resource bundle in icudtl.dat\nto construct an icu::OlsonTimeZone, acquiring ICU\u0027s global resource\nbundle mutex (resbMutex) and triggering hard page faults when those\nicudtl.dat pages were not resident in RAM.\n\nRelated CLs also address this jank:\n- crrev.com/c/8481992: Reduces calls to web_app::PersistableLog::Append,\n  which is the main caller in TimeFormatAsIso8601 jank samples.\n- crrev.com/c/8482623: Pre-reads icudtl.dat during startup to reduce\n  hard page faults on the UI thread. However, on memory-constrained\n  systems, the OS can still evict pre-read pages from RAM later.\n\nTo eliminate unnecessary ICU timezone lookups from existing and future\ncallers:\n1. Fast-path base::TimeFormatAsIso8601(Time) using UTCExplode() and a\n   single StringPrintf() call directly, avoiding TimeZone::GMT() and\n   redundant intermediate string allocations.\n2. In the 4-argument TimeFormatAsIso8601() overload, check\n   time_zone.GetID() \u003d\u003d \"GMT\" instead of constructing a temporary\n   TimeZone::GMT().\n3. Implement base::i18n::TimeZone::GMT() and TimeZone::Unknown() by\n   cloning icu::TimeZone::getGMT() and icu::TimeZone::getUnknown()\n   (statically allocated SimpleTimeZone instances) instead of calling\n   FromString(), avoiding zoneinfo64 resource bundle lookups.\n\nAll optimizations in this CL are guarded behind the kI18nOptimizations\nBASE_FEATURE, in accordance with docs/flag_guarding_guidelines.md.\n\nOn the browser UI thread, base::TimeFormatAsIso8601(Time) is the only\nsignificant caller of icu::OlsonTimeZone::OlsonTimeZone. We hope that\nthis change will prevent bringing the zoneinfo64 resource bundle in\nicudtl.dat back into RAM once it has been evicted. (Follow-up work:\ncheck callers of icu::OlsonTimeZone::OlsonTimeZone in other\nprocesses/threads.)\n\nBug: 568824848\nChange-Id: Iaf5b68af044282e50edfbb081ca9730c9adc37db\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8483536\nReviewed-by: Danilo Tedeschi \u003cdanft@google.com\u003e\nCommit-Queue: Francois Pierre Doray \u003cfdoray@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1714533}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 397955cc01b0c1cbe3e896a5ca346224b8afa207\n"
    },
    {
      "commit": "49b8448e430eeb1f73aa7c933d569f9ac7aff706",
      "tree": "a43af493ff3254673e47b48cfaee3d61521e7ce1",
      "parents": [
        "acd070a3ca015bf4626c2c0aa4197e232f720eca"
      ],
      "author": {
        "name": "Tomasz Wiszkowski",
        "email": "ender@google.com",
        "time": "Thu Oct 08 14:56:38 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 08 15:03:18 2026"
      },
      "message": "[🌺] Disable 2 consistently failing tests\n\nThe following tests failed all retry attempts (hard-failed) in 3/25\nrecent builds on android-x86-rel.\n\nDisabled here:\n  CommandLineFlagsNoClassAnnotationCheckTest.testNoAnnotation (all platforms)\n  CommandLineFlagsWithClassAnnotationCheckTest.testRemoveSwitch_method (all platforms)\n\nExample failing run:\nhttps://ci.chromium.org/ui/p/chromium/builders/try/android-x86-rel/1388430\n\nWhy disable rather than revert:\nRange is unresolved in the 120-build walk window and the commit that\nintroduced the leak (62f8d2eb64272, Reland \"[Android] Cache DeviceInfo\nin test builds\", refs/heads/main@{#1712879}) is a reland. Specifically,\nDeviceInfoUnitTest#testForceDesktopSwitchAddedAfterCachingIsPickedUp\ncalls CommandLine.getInstance().appendSwitch(BaseSwitches.FORCE_DESKTOP_\nANDROID) directly without removing it in tearDown/finally, so\nCommandLineFlags.reset() does not remove --force-desktop-android and\nthese two tests fail deterministically whenever they run after\nDeviceInfoUnitTest on the same Robolectric shard.\n\nThis is mitigation, not a fix. The bug tracks the real investigation and\nis assigned to the owning team.\n\nBug: 570781966\nChange-Id: Iae9ee5dde6395259bc8b87372445a81493d29a83\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8534628\nAuto-Submit: Tomasz Wiszkowski \u003cender@google.com\u003e\nReviewed-by: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nOwners-Override: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nCommit-Queue: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1714509}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f5cd9cec7cd4a33af054609ee540d7f799b1a798\n"
    },
    {
      "commit": "acd070a3ca015bf4626c2c0aa4197e232f720eca",
      "tree": "3f74bd13e555109a5c0e9ac74a6bfa291f7845b5",
      "parents": [
        "76e947fc20ed86f210242663752dcc45c1a5484e"
      ],
      "author": {
        "name": "Arthur Sonzogni",
        "email": "arthursonzogni@chromium.org",
        "time": "Thu Oct 08 09:46:55 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 08 09:52:01 2026"
      },
      "message": "Spanification: Migrate C-style arrays to std::array in base.\n\nMigrate C-style arrays with unsafe accesses to std::array and\nbase::span across base to modernize storage and eliminate\nunsafe indexing.\n\nThis is split from a large CL removing ~800 UNSAFE_TODOs. Using data\nfrom http://x20web/~arthursonzogni/state-of-spanification, a swarm of\nGemini agents resolved the reported C-style array unsafe accesses.\n\nBug: 559576258\nChange-Id: I08791089331d46d1410eaf9967708ecd22ee142c\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8404405\nReviewed-by: Tibor Goldschwendt \u003ctiborg@chromium.org\u003e\nAuto-Submit: Arthur Sonzogni \u003carthursonzogni@chromium.org\u003e\nCommit-Queue: Arthur Sonzogni \u003carthursonzogni@chromium.org\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nOwners-Override: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1714314}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ec61d063655768da84919c3ebf0df66cb8ec5419\n"
    },
    {
      "commit": "76e947fc20ed86f210242663752dcc45c1a5484e",
      "tree": "432e34b71b5d5f0f0978c051ecf6384c3a822f28",
      "parents": [
        "fa14f110e7cd021641a8b94e531e6995502c644a"
      ],
      "author": {
        "name": "Keishi Hattori",
        "email": "keishi@google.com",
        "time": "Thu Oct 08 04:26:46 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 08 04:48:49 2026"
      },
      "message": "MiraclePtr: Introduce UnprotectedInReleaseForPerformance trait\n\nAdd UnprotectedInReleaseForPerformance to RawPtrTraits in PartitionAlloc\nfor pointers identified as verified performance hotspots (e.g. in\nSpeedometer 3).\n\nAlso add the remove_unprotected_in_release_trait GN argument and\nREMOVE_UNPROTECTED_IN_RELEASE_TRAIT buildflag (default false), allowing\nprotection on UnprotectedInRelease to subsequently be enabled without\naffecting performance hotspots or debug/DCHECK builds.\n\nAnnotate verified performance hotspot fields across Blink HTML\ntokenizer/parser, graphics/font metrics, and base task runner/message\nloop with UnprotectedInReleaseForPerformance.\nPlan: https://docs.google.com/document/d/1QnD9RuBDKb7j4f0eM7izoaYU7yx4vg5WBXugLCHWcM8/edit?usp\u003dsharing\n\nTAG\u003dagy\nCONV\u003daced7526-7cac-4267-a5f8-8c57c34bc538\n\nBug: 566006164\nChange-Id: Ie5c9a3f1deb3ce91029c0a83e2ec282b5759b0f1\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8521662\nReviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\nReviewed-by: Francois Pierre Doray \u003cfdoray@chromium.org\u003e\nCommit-Queue: Keishi Hattori \u003ckeishi@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1714148}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8ac71046803ea7b9e38e9d0d07cf59f3bebba1ba\n"
    },
    {
      "commit": "fa14f110e7cd021641a8b94e531e6995502c644a",
      "tree": "4ffe9afb01648c59e8e9c757b5ccc040b2f87be4",
      "parents": [
        "b026b0afca345dea38d4acea64e9c45365f35a9d"
      ],
      "author": {
        "name": "SeungJun Lee",
        "email": "mps756@gmail.com",
        "time": "Thu Oct 08 02:27:43 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 08 02:43:36 2026"
      },
      "message": "base: Check ThreadPool worker creation succeeds\n\nCheck that WorkerThread::Start() obtained a valid thread handle instead\nof returning false. Pooled single-thread task runners ignore this return\nvalue and can accept tasks for a worker that will never execute them.\n\nUse NotFatalUntil::M160 to collect non-fatal reports in official builds\nbefore making thread creation failure fatal in M160, like memory\nallocation failure. This allows evaluating the failure rate before\nenabling process termination.\n\nBug: 564635823\nChange-Id: Id7e9779b80c1d64f5e688fa1606612e8a360f60b\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8483655\nReviewed-by: Francois Pierre Doray \u003cfdoray@chromium.org\u003e\nReviewed-by: Gabriel Charette \u003cgab@chromium.org\u003e\nCommit-Queue: Gabriel Charette \u003cgab@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1714097}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 071f689d2110f4ca92435aa5e7dd61cc47c835df\n"
    },
    {
      "commit": "b026b0afca345dea38d4acea64e9c45365f35a9d",
      "tree": "2e9561ab401b5c6c1130aa573406858190e19f6b",
      "parents": [
        "b1cb775348f1aa7ccf13093d04a625f5a01cc48e"
      ],
      "author": {
        "name": "François Doray",
        "email": "fdoray@chromium.org",
        "time": "Thu Oct 08 02:27:27 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Oct 08 02:42:00 2026"
      },
      "message": "[icu] Handle infinite Time values in TimeZone::GetOffset/InDaylightTime\n\ncrrev.com/c/8483536 switches base::i18n::TimeZone::GMT() from\nicu::OlsonTimeZone(\"GMT\") (loaded from the zoneinfo64 resource bundle)\nto icu::SimpleTimeZone (cloned from icu::TimeZone::getGMT()).\n\nWithout this CL, that switch would introduce a DCHECK failure when\ncalling TimeZone::GMT().GetOffset() (or the 4-argument\nTimeFormatAsIso8601() / TimeFormatAsIso8601WithTimeZone() with\nTimeZone::GMT()) on Time::Min() or Time::Max():\n- Time::Min() and Time::Max() return -infinity and +infinity from\n  InMillisecondsFSinceUnixEpoch().\n- icu::OlsonTimeZone(\"GMT\") has no finalZone and returns 0 from\n  getOffset() without inspecting the UDate argument.\n- icu::SimpleTimeZone::getOffset() converts the UDate argument to\n  calendar fields via Grego::timeToFields(), which fails with\n  U_ILLEGAL_ARGUMENT_ERROR on non-finite values and trips\n  DCHECK(U_SUCCESS(status)) in TimeZone::GetOffset().\n\nWe land this CL before crrev.com/c/8483536 to prevent this regression\nby handling time.is_inf() explicitly in TimeZone::GetOffset() and\nTimeZone::InDaylightTime(). At the same time, this fixes pre-existing\nDCHECK(U_SUCCESS(status)) failures on Time::Min() and Time::Max() for:\n- TimeZone::GetOffset() on SimpleTimeZone instances (such as\n  TimeZone::Unknown()) and on OlsonTimeZone instances with a finalZone\n  (such as \"America/Los_Angeles\" on Time::Max()).\n- TimeZone::InDaylightTime() on all timezones (since\n  icu::TimeZone::inDaylightTime() always converts UDate via\n  GregorianCalendar).\n\nBug: 568824848\nChange-Id: If7447a836bc1fe3ab769881a90d94428dfe04c7d\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8507066\nReviewed-by: Danilo Tedeschi \u003cdanft@google.com\u003e\nCommit-Queue: Francois Pierre Doray \u003cfdoray@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1714096}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 248dbdaf0dc87a39f649c55c4baa970fde54692c\n"
    },
    {
      "commit": "b1cb775348f1aa7ccf13093d04a625f5a01cc48e",
      "tree": "0de2990f8e030aa452093416b0ef7a7eedf95223",
      "parents": [
        "eb84ece0d3d3a25b949cd22d2df5dde1cadcbe32"
      ],
      "author": {
        "name": "Sergio Solano",
        "email": "sergiosolano@google.com",
        "time": "Wed Oct 07 23:46:35 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 23:57:02 2026"
      },
      "message": "Replace TODO(sergiosolano) with bug references\n\n- PartitionAlloc span.h: set start_lifetime_as_array TODO comment\n  to crbug.com/570737624.\n- PartitionAlloc span_unittest.cc: remove redundant TODO comment.\n- base/cpu_unittest.cc: set byte_span_from_ref() TODO comment to\n  crbug.com/570746342.\n\nBug: 570737624, 570746342\nChange-Id: I565918a1bf724825237ca739bd55f16d86aab5a1\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8528386\nAuto-Submit: Sergio Solano \u003csergiosolano@google.com\u003e\nReviewed-by: Sergio Solano \u003csergiosolano@google.com\u003e\nCommit-Queue: Sergio Solano \u003csergiosolano@google.com\u003e\nReviewed-by: Mark Mentovai \u003cmark@chromium.org\u003e\nReviewed-by: Arthur Sonzogni \u003carthursonzogni@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1714003}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: dd2db3b624b14ae13a6f6501782cd38804009681\n"
    },
    {
      "commit": "eb84ece0d3d3a25b949cd22d2df5dde1cadcbe32",
      "tree": "766d563dcaf55ae8c320851caaee3552261427b5",
      "parents": [
        "ba939b89930a3957d3a0bdfd68893816a2b90d24"
      ],
      "author": {
        "name": "Simeon Anfinrud",
        "email": "sanfin@chromium.org",
        "time": "Wed Oct 07 23:06:05 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 23:17:43 2026"
      },
      "message": "[chromecast] Fix ScopedServiceBindingBatch JNI interface desugaring\n\n`ScopedServiceBindingBatch` was converted from a class to an interface\nin crrev.com/c/7130766, placing `@CalledByNative` on the static\ninterface method `ScopedServiceBindingBatch.scoped()` and interface\nmethod `close()`.\n\nWhen `cast_browser.aar` is imported into a downstream build pipeline\nthat runs Java 8 interface desugaring on library AARs, static interface\nmethods are moved onto the synthetic companion class\n`ScopedServiceBindingBatch$-CC`. At runtime, native JNI registration\nand invocation look up `ScopedServiceBindingBatch.scoped()` on the\noriginal type and crash on browser startup with:\n`java.lang.NoSuchMethodError: no static method \"Lorg/chromium/base/`\n`process_launcher/ScopedServiceBindingBatch;.scoped()...\"`.\n\nConvert `ScopedServiceBindingBatch` from an `interface` to a `public\nabstract class` implementing `AutoCloseable` so that its static\n`@CalledByNative` methods remain on `ScopedServiceBindingBatch` across\nbytecode desugaring pipelines, and add a unit test asserting that\n`ScopedServiceBindingBatch` is not an interface.\n\nBug: 436110326, 548679569\nTest: autoninja -C out/atv_x86_eng base_junit_tests\nTest: run_base_junit_tests -f \"*ScopedServiceBindingBatchImplTest*\"\nChange-Id: I40d3b2792e1750bbfcd1e75cafe4e70fb0af5a69\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8134436\nReviewed-by: Bo Liu \u003cboliu@chromium.org\u003e\nAuto-Submit: Simeon Anfinrud \u003csanfin@chromium.org\u003e\nCommit-Queue: Simeon Anfinrud \u003csanfin@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1713975}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: cc54818c6a8ed13e7fc7cac52c81ed9f8b3b1dc7\n"
    },
    {
      "commit": "ba939b89930a3957d3a0bdfd68893816a2b90d24",
      "tree": "e8d5557561b696afb4e46f6bf064a6b26cb571a0",
      "parents": [
        "e8705a2258ede3211a0b26d7b2c33020447383da"
      ],
      "author": {
        "name": "Kaan Alsan",
        "email": "alsan@chromium.org",
        "time": "Wed Oct 07 22:39:33 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 22:49:41 2026"
      },
      "message": "Fix deadlock in Windows drag-and-drop interactive UI tests\n\nFor full context, see\nhttps://docs.google.com/document/d/1HEnXwZtDZ4MXhRnEXW-h8CfmwxaITPqjAU1d38iDfgI.\n\nThe TL;DR is that starting a drag-loop on Windows causes a deadlock\nbecause the native modal loop expects a _second_ mouse event to unblock\nthe application message loop.\n\nOn Windows, ::DoDragDrop enters a modal loop that blocks the application\nmessage loop. While in this loop, it expects an input event before it\nwill dispatch other messages, including kMsgHaveWork which is used by\nChrome to run pending tasks. This creates a deadlock because the test\n(which runs via tasks) cannot send the next input event until it is\nunblocked.\n\nWhat this CL does: A global test-only callback is registered on\nDesktopDragDropClient that runs just before the drag-loop starts. This\ncallback queues a 1px away-and-back nudge via ::SendInput so Windows\ncannot coalesce it into the triggering move before ::DoDragDrop()\nstarts.\n\nAdditionally, fixing dnd tests exposed a minor issue in\nMessagePumpForUI, which allowed native timers to leak out of nested run\nloops, which was hitting a DCHECK. This CL fixes it by killing any\ninstalled native timer when exiting a nested native loop. A regression\ntest is added for this too.\n\nOther DnD tests will be enabled in follow-up CLs.\n\nBug: 40249472\nChange-Id: If5637b630d610d72ae49c9e8325bc226bc3b179d\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7915696\nReviewed-by: Francois Pierre Doray \u003cfdoray@chromium.org\u003e\nReviewed-by: Dana Fried \u003cdfried@chromium.org\u003e\nCommit-Queue: Kaan Alsan \u003calsan@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1713952}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 2ae82d256cd7745d35b3ee00b05f937d1d468b19\n"
    },
    {
      "commit": "e8705a2258ede3211a0b26d7b2c33020447383da",
      "tree": "ee513dbe35619eac9916cec67b5588ebe327e673",
      "parents": [
        "accfef42bea10f2accb33c0fcbfa33670f74f239"
      ],
      "author": {
        "name": "Andrea Orru",
        "email": "andreaorru@chromium.org",
        "time": "Wed Oct 07 21:58:36 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 22:09:44 2026"
      },
      "message": "mojo: Clean up miscellaneous legacy Mojo Core leftovers\n\n* Delete mojo/core/mojo_core_unittest.h, which nothing includes.\n* Delete mojo/core/handle_signals_state.h, an internal copy of\n  mojo::HandleSignalsState, and switch the two tests that use it to the\n  public header.\n* Delete SharedMemoryUtils. Since the removal of legacy Mojo Core,\n  InstallBaseHooks() only forwards to\n  mojo::core::InstallMojoIpczBaseSharedMemoryHooks(), so call that\n  directly from content\u0027s InitializeMojoCore(), its only caller. Also\n  remove the unused includes, the friend declaration in\n  base::SharedMemoryHooks, the viz DEPS rule and the now-unneeded\n  //mojo/core/embedder dependency of //mojo/public/cpp/base.\n* Remove the MojoIpcz feature, which no longer exists, from the app\n  shim\u0027s early access feature list and WebView\u0027s\n  ProductionSupportedFlagList.\n* Point comments that cite NodeController::CreateSharedBuffer() and\n  //mojo/core/core.cc to BaseSharedMemoryService::CreateWritableRegion()\n  and core_ipcz.cc.\n\nBug: 359926651\nChange-Id: Id17de72b7cb6725dad8b47ca2e49fc375ba09e68\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8522656\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCommit-Queue: Andrea Orru \u003candreaorru@chromium.org\u003e\nOwners-Override: Daniel Cheng \u003cdcheng@chromium.org\u003e\nReviewed-by: Avi Drissman \u003cavi@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1713909}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b4d9330e3a770ca61e5b9406d1c1147db0c61e35\n"
    },
    {
      "commit": "accfef42bea10f2accb33c0fcbfa33670f74f239",
      "tree": "4a9e5c6a61df0b0a488ee7d48f1a77e4688dea33",
      "parents": [
        "b3191750b4cd068bd3633aafc0ac158014676915"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Oct 07 21:55:03 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 22:04:40 2026"
      },
      "message": "Android: Wait for FLAG_SECURE to be applied before failure screenshots\n\nhttps://crrev.com/c/8377632 cleared FLAG_SECURE before taking post-test\nscreenshots, but they were still black. clearFlags() only updates the\nwindow\u0027s LayoutParams; the change reaches the WindowManager on the next\nViewRootImpl traversal and is then applied asynchronously by\nWindowManager / SurfaceFlinger, so the screenshot was racing it.\n\nNow wait for a pre-draw traversal on the affected window.\n\nBug: 559237438\nChange-Id: I0fad7017222a5611302c05628cd7d8dea31dc88f\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8528408\nReviewed-by: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nCommit-Queue: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1713905}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 980f28d3049587cc0fd39af81ee8816c257d9a75\n"
    },
    {
      "commit": "b3191750b4cd068bd3633aafc0ac158014676915",
      "tree": "c6e8645fbd01eaaf3089d8a5634af4e212c80940",
      "parents": [
        "ca599894b153b05ba5897850ac99d1358a0bcd77"
      ],
      "author": {
        "name": "Roger McFarlane",
        "email": "rogerm@chromium.org",
        "time": "Wed Oct 07 20:41:43 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 20:56:27 2026"
      },
      "message": "Add FeatureListTest to testing PassKey for PrepareRuntimeMutableFeatureStateUpdate\n\n`FeatureList::PrepareRuntimeMutableFeatureStateUpdate()` was previously\noverloaded for `base::PassKey\u003cbase::test::ScopedFeatureList\u003e`.\n\nRename this testing overload to\n`PrepareRuntimeMutableFeatureStateUpdateForTesting` and update its\nPassKey to accept both `base::test::ScopedFeatureList` and\n`FeatureListTest`:\n`base::PassKey\u003cbase::test::ScopedFeatureList, FeatureListTest\u003e`.\n\nThis allows `FeatureListTest` to test `FeatureList`\u0027s internal\nvalidation directly using its own PassKey, eliminating the fake\n`namespace variations { class VariationsService }` surrogate from\n`base/feature_list_unittest.cc`.\n\nBug: 536852160, 536851701\nChange-Id: I137609ec7574167e63e4b5c5d295eab578b66e96\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8475231\nReviewed-by: Luc Nguyen \u003clucnguyen@google.com\u003e\nCommit-Queue: Roger McFarlane \u003crogerm@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1713824}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 315ed025aee089ca597b659d9d16f69ac6cf7e45\n"
    },
    {
      "commit": "ca599894b153b05ba5897850ac99d1358a0bcd77",
      "tree": "a4d0671036f8f039309ff42274700aa857038651",
      "parents": [
        "313c11140ae58727709d2d45295d30fd6df42b8f"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Oct 07 20:05:29 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 20:12:25 2026"
      },
      "message": "NullAway: Enable HandleWildcardGenerics\n\nEnables checking of nullness within wildcard type arguments. Fixes the\nhandful of sites that this surfaced:\n * RootSpec: Element is a Supplier\u003c@Nullable T\u003e, so accept\n   Supplier\u003c? extends @Nullable Activity\u003e (the implementation already\n   handled null).\n * NotificationPlatformBridge: Use whenComplete() rather than a\n   null-returning exceptionally() Function.\n\nBug: 568003583\nChange-Id: Ia196d6614932477dde74c8f94ad89b2f0e41d388\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8528508\nReviewed-by: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nCommit-Queue: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1713776}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 7bb692f28d518a7ad2377505663992f57538cba7\n"
    },
    {
      "commit": "313c11140ae58727709d2d45295d30fd6df42b8f",
      "tree": "b30ae07fc8372a050fbe51fe323be6c74be1c5f6",
      "parents": [
        "963c6df98a652438c97cf60ee35243307e7d2a72"
      ],
      "author": {
        "name": "Jordan Bayles",
        "email": "jophba@chromium.org",
        "time": "Wed Oct 07 18:47:21 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 18:53:26 2026"
      },
      "message": "[base] Dynamically synchronize C++ and Rust logging level\n\nThis CL synchronizes the C++ and Rust logging levels, in order to avoid\nwastefully passes log events from Rust to C++ that we already know we\nwant to discard.\n\n* Maps C++ log severity to log::LevelFilter and updates\n  log::set_max_level dynamically when SetMinLogLevel is called.\n\n* Implements RustLogger::enabled using an atomic min log level check to\n  avoid formatting arguments when logging is disabled.\n\n* Uses a stack-allocated buffer for log file names in RustLogger::log\n  to eliminate heap allocations (resolving crbug.com/371112531).\n\nBug: 566200748, 371112531\nChange-Id: Ia719962607e32a505e81ed2815837571c9fc9803\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8468470\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nReviewed-by: Łukasz Anforowicz \u003clukasza@chromium.org\u003e\nCommit-Queue: Jordan Bayles \u003cjophba@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1713678}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 6266aa3198ac66a6bbd57fee33a08d2138eb38d5\n"
    },
    {
      "commit": "963c6df98a652438c97cf60ee35243307e7d2a72",
      "tree": "a24608a08b120a0748cb0c36867f1237cf518b8f",
      "parents": [
        "b9c4a75136af667d80e03e5308bd5430bb8c5e3a"
      ],
      "author": {
        "name": "Greg Thompson",
        "email": "grt@chromium.org",
        "time": "Wed Oct 07 16:44:29 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 16:50:33 2026"
      },
      "message": "[DynamicPatching] Extract InstallProductComponent\n\nExtract the Windows product component installation logic from\nPlatformRuntimeComponentInstallerPolicy into a shared\ncomponent_updater::InstallProductComponent helper so that it can be\nreused by other product-scoped components (such as the dynamic patch\ncomponent).\n\nInstallProductComponent installs a .crx3 payload into the Chrome\ninstallation directory:\n- For system-level installs on Windows, it invokes an elevated\n  AppCommand via IAppCommandWeb: install-component with the inner CRX\n  path (%1) or, if a User Data directory is provided,\n  install-component-for-user with the inner CRX path (%1) and the\n  canonicalized User Data directory (%2). It polls until the command\n  completes.\n- For per-user installs on Windows, it launches setup.exe with\n  --install-component and --udd (if provided) and waits for it to exit.\n- On other platforms, a stub returns kLaunchFailed for now.\n\nAs with PlatformRuntime\u0027s installation today, there is no timeout.\n\nA User Data directory is canonicalized with\nchild_module::CanonicalizeUserDataDir(), since setup derives the\ncomponent\u0027s destination from it without accessing it. Installation\nfails without running setup if it cannot be canonicalized.\n\nProductComponentInstallResult distinguishes the same failure modes that\nPlatformRuntime reports (missing command, Chrome not installed, internal\nsetup failures, and COM/RPC errors).\nPlatformRuntimeComponentInstallerPolicy now delegates to\nInstallProductComponent and maps each result to its existing\nPlatformRuntimeInstallationResult, retaining the managed device and\nnetwork path breakdown of internal failures, so that\nComponentUpdater.PlatformRuntime.InstallationResult.* is unchanged.\nPlatformRuntime\u0027s unit tests are unchanged and continue to verify this\nend-to-end. install_product_component_unittest.cc tests the helper\nitself, including command selection, parameter passing, and User Data\ndirectory canonicalization.\n\nBug: 558351432\nChange-Id: I7e1abcf858ea62a0c4c0cce1c6c076544dd1ad39\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8505102\nReviewed-by: Marwan Tammam \u003cquarz@chromium.org\u003e\nCommit-Queue: Greg Thompson \u003cgrt@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1713548}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: e1cf8ac877fb0f88d6d61ed93be43586ba5b8eda\n"
    },
    {
      "commit": "b9c4a75136af667d80e03e5308bd5430bb8c5e3a",
      "tree": "d1d6f58e8ded5ec13c42fff78a92ece235c0525c",
      "parents": [
        "d2d0781a6fdc883f3c4e92e5eabe4e6ef729a645"
      ],
      "author": {
        "name": "mikt",
        "email": "mikt@google.com",
        "time": "Wed Oct 07 12:22:42 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 12:29:42 2026"
      },
      "message": "Reland \"[PA] Introduce PartitionTlsRegistry to track PartitionTls instances\"\n\nThis reverts commit 9467d08d9e085700a4e184f5ff22568291b718eb.\n\nReason for revert: Parent CL relanded https://crrev.com/c/8483734\n\nOriginal change\u0027s description:\n\u003e Revert \"[PA] Introduce PartitionTlsRegistry to track PartitionTls instances\"\n\u003e\n\u003e This reverts commit 33ce22068bdb197fc227e9313a5d49432b30bd6b.\n\u003e\n\u003e Reason for revert: Dependent on CL chain suspected to cause memory regression\n\u003e\n\u003e Failure Link: https://pinpoint-dot-chromeperf.appspot.com/job/157bfe49690000\n\u003e\n\u003e Original change\u0027s description:\n\u003e \u003e [PA] Introduce PartitionTlsRegistry to track PartitionTls instances\n\u003e \u003e\n\u003e \u003e With this, we can iterate through active `PartitionTls` members.\n\u003e \u003e\n\u003e \u003e Change-Id: Id7b0ed89c768cf70b351e00e6ab521377c78f372\n\u003e \u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8366011\n\u003e \u003e Commit-Queue: Mikihito Matsuura \u003cmikt@google.com\u003e\n\u003e \u003e Reviewed-by: Takashi Sakamoto \u003ctasak@google.com\u003e\n\u003e \u003e Cr-Commit-Position: refs/heads/main@{#1695581}\n\u003e\n\u003e Change-Id: I5e7d58532c3789beb8433234c157057ede2575e5\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8413365\n\u003e Owners-Override: Anna Tsvirchkova \u003catsvirchkova@google.com\u003e\n\u003e Bot-Commit: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\n\u003e Reviewed-by: Mateusz Zbikowski \u003czbikowski@google.com\u003e\n\u003e Commit-Queue: Alex Mitra \u003calexmitra@chromium.org\u003e\n\u003e Cr-Commit-Position: refs/heads/main@{#1698070}\n\nChange-Id: I3e88ab4606858b0ee5e3aa46d89afa9ee7be056f\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8494351\nReviewed-by: Takuto Ikuta \u003ctikuta@chromium.org\u003e\nCommit-Queue: Mikihito Matsuura \u003cmikt@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1713331}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a52590b208ce1cf2d64865443c3f2e6acf29af6b\n"
    },
    {
      "commit": "d2d0781a6fdc883f3c4e92e5eabe4e6ef729a645",
      "tree": "f571890a0223b265048c84a1063807aa6690489e",
      "parents": [
        "3ad5d9e099213494a82e98c43f3e9170d3c62002"
      ],
      "author": {
        "name": "mikt",
        "email": "mikt@google.com",
        "time": "Wed Oct 07 09:14:18 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 09:24:25 2026"
      },
      "message": "[PA] Simplify BucketIndexLookup and PartitionRoot::SizeToBucketIndex()\n\nUnify the linear and exponential bucket mappings directly in\nBucketIndexLookup::GetIndexForDenserBuckets() and GetBucketSize()\nwithout separate helper classes, 64-bit rotations, or branches.\n\nAlso move BucketDistribution to bucket_lookup.h and add\nBucketIndexLookup::GetIndex() so PartitionRoot::SizeToBucketIndex()\ncompiles to a single branchless sequence without duplicating\nGetIndexForDenserBuckets().\n\nNo behavior change.\n\nOn x86_64, this reduces the inlined SizeToBucketIndex() sequence in\nPartitionRoot::Alloc() from 230 bytes (two duplicated 28-instruction\nblocks) to 68 bytes (~17 instructions on the denser path), improving\npartition_alloc_perftests throughput by +6.1% to +7.8% in\nMultiBucketWithFreeWithSize and up to +13.5% in SingleBucket.\n\nNO_IFTTT\u003dNo behavior change to bucket sizes or constants.\n\nChange-Id: Ib2fd0bcab607e5566e242c7c2ce163ed3776342f\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8514458\nReviewed-by: Keishi Hattori \u003ckeishi@chromium.org\u003e\nCommit-Queue: Mikihito Matsuura \u003cmikt@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1713235}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 138956eb878297a352aa9fa03a2f6eaf35f3cbd5\n"
    },
    {
      "commit": "3ad5d9e099213494a82e98c43f3e9170d3c62002",
      "tree": "777a8b76392bf1c7526de0ddbd0d551bae084360",
      "parents": [
        "baf038bf25ce2c6d98afac60be43fa4cd1865662"
      ],
      "author": {
        "name": "mikt",
        "email": "mikt@google.com",
        "time": "Wed Oct 07 06:04:05 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 06:12:14 2026"
      },
      "message": "Reland \"[PA] Replace largest_active_bucket_index_ with active_bucket_count_\"\n\nThis reverts commit 7722d5682e81c10e435d72e0b4a6ed1fc67853a9.\n\nReason for revert: Parent CL relanded https://crrev.com/c/8483734\n\nOriginal change\u0027s description:\n\u003e Revert \"[PA] Replace largest_active_bucket_index_ with active_bucket_count_\"\n\u003e\n\u003e This reverts commit 75f790d6fca4e88282c5d68c8f0faa40c45022c7.\n\u003e\n\u003e Reason for revert: Parent CL is suspected cause of memory regression\n\u003e\n\u003e Failure Link: https://pinpoint-dot-chromeperf.appspot.com/job/157bfe49690000\n\u003e\n\u003e Original change\u0027s description:\n\u003e \u003e [PA] Replace largest_active_bucket_index_ with active_bucket_count_\n\u003e \u003e\n\u003e \u003e This CL renames `largest_active_bucket_index_` to `active_bucket_count_`\n\u003e \u003e in `ThreadCache` and `ThreadCacheRegistry`, and optimizes hot-path\n\u003e \u003e validity and bucket bounds checks in PartitionAlloc (`bucket_index \u003c\n\u003e \u003e tcache-\u003eactive_bucket_count()`).\n\u003e \u003e\n\u003e \u003e This makes use of zero-initialized `ThreadCache` safer - it simply\n\u003e \u003e denotes there is no active bucket and routes every allocation to the\n\u003e \u003e global root instead.\n\u003e \u003e\n\u003e \u003e TAG\u003dagy\n\u003e \u003e CONV\u003d80980e77-c356-4c8b-a00b-3a2c47533fbb\n\u003e \u003e\n\u003e \u003e Change-Id: Ie599f94695b8f5d1662da26f5efd2ad9fa6b021a\n\u003e \u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8254723\n\u003e \u003e Reviewed-by: Takashi Sakamoto \u003ctasak@google.com\u003e\n\u003e \u003e Commit-Queue: Mikihito Matsuura \u003cmikt@google.com\u003e\n\u003e \u003e Cr-Commit-Position: refs/heads/main@{#1690469}\n\u003e\n\u003e Change-Id: I399006f53b684b1575abf5ffe32eae791e4fa03f\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8408627\n\u003e Owners-Override: Anna Tsvirchkova \u003catsvirchkova@google.com\u003e\n\u003e Bot-Commit: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\n\u003e Commit-Queue: Alex Mitra \u003calexmitra@chromium.org\u003e\n\u003e Reviewed-by: Mateusz Zbikowski \u003czbikowski@google.com\u003e\n\u003e Cr-Commit-Position: refs/heads/main@{#1698072}\n\nChange-Id: I13150a4521b8734bbcf37c741b7278fa6c72e2e5\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8494331\nCommit-Queue: Mikihito Matsuura \u003cmikt@google.com\u003e\nReviewed-by: Takashi Sakamoto \u003ctasak@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1713096}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b80cc90857d3b89dfaed62fbfb201ad888795b6c\n"
    },
    {
      "commit": "baf038bf25ce2c6d98afac60be43fa4cd1865662",
      "tree": "857942eec55b09b0e0b4d590a9a33d440f3031a8",
      "parents": [
        "0a09ce6cb627b0936243f10813b6bc8f78296413"
      ],
      "author": {
        "name": "Bo Liu",
        "email": "boliu@chromium.org",
        "time": "Wed Oct 07 04:49:49 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 04:56:35 2026"
      },
      "message": "android: Remove supportVariableConnections\n\nVariable connections is always supported on Q.\n\nChange-Id: I98c02b06005d0d33f772d763bbc1455641f6e341\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6945140\nReviewed-by: Simeon Anfinrud \u003csanfin@chromium.org\u003e\nReviewed-by: Ted Choc \u003ctedchoc@chromium.org\u003e\nCommit-Queue: Bo Liu \u003cboliu@chromium.org\u003e\nReviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1713066}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ad1ce9b3a02cea1a4b060e8072d1f7c0b3b86944\n"
    },
    {
      "commit": "0a09ce6cb627b0936243f10813b6bc8f78296413",
      "tree": "ac6355dc05221145f373a5f8ea7ff6cb409cdb56",
      "parents": [
        "d9beadf7a109f67dae39d99f342b8db7a61f4f23"
      ],
      "author": {
        "name": "Jan Wilken Dörrie",
        "email": "jdoerrie@chromium.org",
        "time": "Wed Oct 07 04:41:15 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 04:49:48 2026"
      },
      "message": "Reland \"Migrate base::Reversed to std::views::reverse\"\n\nThis is a reland of commit 08815e67f05ca8d96002048cd4bb5ad4e65c92b7\n\nThe original change broke the linux-cast-x64-rel build:\noverlay_strategy_underlay_cast.cc passed a QuadList to\nstd::views::reverse, but QuadList does not model\nstd::bidirectional_range yet. The reland leaves that file on\nbase::Reversed; it is migrated together with the ListContainer fix in\nhttps://crrev.com/c/8500689.\n\nOriginal change\u0027s description: \u003e Migrate base::Reversed to\nstd::views::reverse \u003e \u003e This is a mechanical migration. \u003e \u003e Bug:\n493534962 \u003e Change-Id: I20e17473c96aca7f18675a4da7bdb5a66a6a6964 \u003e\nReviewed-on:\nhttps://chromium-review.googlesource.com/c/chromium/src/+/8500683 \u003e\nSLSA-Policy-Verified: SLSA Policy Verification Service\n\u003cdevtools-gerritcodereview-exitgate@google.com\u003e \u003e Owners-Override:\nDaniel Cheng \u003cdcheng@chromium.org\u003e \u003e Commit-Queue: Daniel Cheng\n\u003cdcheng@chromium.org\u003e \u003e Reviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\n\u003e Auto-Submit: Jan Wilken Dörrie \u003cjdoerrie@chromium.org\u003e \u003e\nCr-Commit-Position: refs/heads/main@{#1712516}\n\nBug: 493534962\nCq-Include-Trybots: luci.chromium.try:linux-cast-x64-rel\nChange-Id: I79aa08d9f9d2410960ab8662ea401541fdeb2b52\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8519503\nSLSA-Policy-Verified: SLSA Policy Verification Service \u003cdevtools-gerritcodereview-exitgate@google.com\u003e\nOwners-Override: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCommit-Queue: Daniel Cheng \u003cdcheng@chromium.org\u003e\nAuto-Submit: Jan Wilken Dörrie \u003cjdoerrie@chromium.org\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1713058}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b6ae90def7daaa1d117ca983bf05dcf5e319d143\n"
    },
    {
      "commit": "d9beadf7a109f67dae39d99f342b8db7a61f4f23",
      "tree": "ecbe90416e234590b3246e29b223a0a8479b1fca",
      "parents": [
        "334366341d7b8080875d82b75d80a519069d75ca"
      ],
      "author": {
        "name": "mikt",
        "email": "mikt@google.com",
        "time": "Wed Oct 07 03:32:51 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 03:42:47 2026"
      },
      "message": "[PA] Split PartitionRoot entry points after their prologue\n\nMove what several PartitionRoot entry points do after their prologue\ninto functions of their own, and likewise how the scheduler-loop\nquarantine releases a purged slot. No behavior change.\n\nThis prepares for event hooks (https://crrev.com/c/8302832), which\nfire an event between an entry point\u0027s prologue and the rest, and then\ncall the rest, as a function, unless a hook took the operation over:\n- FreeAfterProlog(): what FreeInlineInternal() does after FreeProlog():\n  looks up the object\u0027s slot and frees it. FreeInlineInUnknownRoot()\n  now calls FreeAfterProlog() directly, rather than\n  FreeInlineInternal\u003ckNoHooks\u003e(), whose second FreeProlog() did\n  nothing.\n- ReallocInPlaceOrMove(): what ReallocInline() does once the request\n  is neither an allocation, a free nor too large: resizes the object\n  in place if it can, and moves it otherwise. The allocation it moves\n  the object to is AllocForRealloc(), which event hooks also hand to\n  the early reallocation hook.\n- GetExternalUsableSizeFromMetadata(): what GetExternalUsableSize()\n  does for a non-null pointer.\n- ZapBrpQuarantinedObject(): what QuarantineForBrp() does without a\n  QuarantineOverrideHook.\n- ReleaseDequarantinedSlot(): how the scheduler-loop quarantine\n  releases a purged slot, into the thread cache or batched in its\n  BatchFreeQueue. The purge now takes the entry off its list before\n  releasing it, rather than after, so that a release that re-enters\n  the purge cannot find the entry again.\n\nChange-Id: I20666743027d9194b858150ca4e9c7c64448554a\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8492673\nCommit-Queue: Mikihito Matsuura \u003cmikt@google.com\u003e\nReviewed-by: Takashi Sakamoto \u003ctasak@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1713016}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 2c4ab6adfb4563898f394b9e060e876549d953ad\n"
    },
    {
      "commit": "334366341d7b8080875d82b75d80a519069d75ca",
      "tree": "b9645f871d278097f1f735a007bd8aebba7a2792",
      "parents": [
        "f791bbbadf0662e03d85f21fe469475d2355fde2"
      ],
      "author": {
        "name": "mikt",
        "email": "mikt@google.com",
        "time": "Wed Oct 07 03:32:37 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 03:41:35 2026"
      },
      "message": "[PA] Replace FreeFlags::kWith*Hint with typed FreeHint arguments\n\nReplace FreeFlags::kWithSizeHint, FreeFlags::kWithAlignmentHint, and\nFreeFlags::kWithTypeIdHint (and the FreeHintType\u003c...\u003e struct) with\nstrongly-typed hint arguments (FreeSizeHint, FreeAlignmentHint,\nFreeTypeIdHint) constrained by the FreeHint concept.\n\nThis unifies the hinted and unhinted overloads of PartitionRoot\u0027s\nFree*() entry points into a single variadic template:\n  template \u003cFreeFlags flags \u003d FreeFlags::kNone, FreeHint... Hint\u003e\nand moves the alignment-adjusted size calculation into\nFreeNoHooksImmediate() so that FreeInlineInUnknownRoot() can call\nFreeInlineInternal\u003ckNoHooks\u003e() directly instead of the out-of-line\nFreeInline\u003ckNoHooks\u003e() when a hint is provided.\n\nNo behavior change.\n\nChange-Id: Ie70b59fb5c34a05fc033fb58e60db729e03930ae\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8522224\nReviewed-by: Takashi Sakamoto \u003ctasak@google.com\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCommit-Queue: Mikihito Matsuura \u003cmikt@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1713015}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 0af2c54dcc1d0bc9f8436429800d963cd4736d04\n"
    },
    {
      "commit": "f791bbbadf0662e03d85f21fe469475d2355fde2",
      "tree": "06a60b540d970d57278a51dda9af724c4faa135d",
      "parents": [
        "a7f755cf107e2b83e9b678eaac40caa5469d77de"
      ],
      "author": {
        "name": "Henrique Nakashima",
        "email": "hnakashima@chromium.org",
        "time": "Wed Oct 07 01:44:04 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 01:49:37 2026"
      },
      "message": "Reland \"[Tab UI] Convert TabUiTestHelper#enterTabSwitcher() to hop on Public Transit\"\n\nThis is a reland of commit a17f49c0a20027255d94c38bc707bb5f7d3a8815\n\nReverted because ArchivedTabsDialogCoordinatorTest#testMessageResizedOnTablet\nfailed consistently on android-desktop-x64-rel: the tab switcher button\nclick did not open the HUB. The test rotated to portrait right before\nentering the tab switcher, which letterboxes Chrome on landscape\ndesktops, and Android\u0027s first-time letterbox education popup swallowed\nthe Espresso click. The old performClick() bypassed input dispatch.\n\ncrrev.com/c/8520058 restricted that test to tablets, since desktop\ncan\u0027t rotate to portrait. The popup also shows on large tablets\n(android-14-tablet-landscape-arm64-rel), so this also adds\nTabUiTestHelper#enterTabSwitcherProgrammatically(), which keeps the old\nperformClick() behavior, with a TODO to remove it, and uses it in that\ntest.\n\nOriginal change\u0027s description:\n\u003e [Tab UI] Convert TabUiTestHelper#enterTabSwitcher() to hop on Public Transit\n\u003e\n\u003e First conversion of a legacy test util with TrafficControl#hopOnAt().\n\u003e\n\u003e enterTabSwitcher(), used by 31 test files, now hops on at the current\n\u003e page (a CtaPageStation) and travels to the TabSwitcherStation by\n\u003e clicking CtaPageStation#tabSwitcherButtonElement, via the existing\n\u003e openRegularTabSwitcher()/openIncognitoTabSwitcher(). This replaces\n\u003e performClick() on a raw findViewById() plus a layout wait, and resolves\n\u003e the crbug.com/40155797 TODO to click the button through Espresso. The\n\u003e util now returns the TabSwitcherStation. Public Transit callers can\n\u003e continue from that Station; the others ignore it. Hopping on over a live\n\u003e Station in the same Activity logs a warning pointing the caller at\n\u003e CtaPageStation#openRegularTabSwitcher() instead.\n\u003e\n\u003e Also adds TrafficControl#hopOnAt(Activity, Station), the shorthand for\n\u003e the common case of hopping on without any action, i.e.\n\u003e Triggers.noopTo().hopOnTo(), the counterpart of hopOffPublicTransit(),\n\u003e and uses it in HopOnOffUnitTest.\n\u003e\n\u003e tab_ui:test_support_javalib gains direct deps on public_transit_java and\n\u003e chrome_java_transit, whose types TabUiTestHelper now uses.\n\u003e\n\u003e The waitForLayout(BROWSING) after addBlankTabs() in TabGridDialogTest is\n\u003e removed: addBlankTabs() already waits for the BROWSING layout, and the\n\u003e duplicate wait was dead code.\n\u003e\n\u003e Change-Id: If6866b265c196cd56c926ef10a107be5d018dbc5\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8503109\n\nBug: 428024864, 564028907\nChange-Id: I5ac9c58b4785b4e034a3cb8c5e4b76cafe05a844\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8520660\nReviewed-by: Calder Kitagawa \u003cckitagawa@chromium.org\u003e\nCommit-Queue: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712940}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 3fa5a81b60c86df22abeb6b369b0fcfff184fe60\n"
    },
    {
      "commit": "a7f755cf107e2b83e9b678eaac40caa5469d77de",
      "tree": "72ea944da74f39bae077dc5943b07243cd77a940",
      "parents": [
        "b5eecb016f905a1622ff1ba9e08554287cacf78d"
      ],
      "author": {
        "name": "Robert Liao",
        "email": "robliao@chromium.org",
        "time": "Wed Oct 07 00:42:07 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 00:47:20 2026"
      },
      "message": "Convert ChromotingModule and RdpDesktopSession from ATL to WRL\n\nBug: 41184135\nChange-Id: I2ab6c2d6f686125503c72f833bb371b0d6d521ac\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8521063\nReviewed-by: Jesse McKenna \u003cjessemckenna@google.com\u003e\nCommit-Queue: Robert Liao \u003crobliao@chromium.org\u003e\nReviewed-by: Joe Downing \u003cjoedow@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712901}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: cbb8e3806b1feeec999a48ba455775f004b85db1\n"
    },
    {
      "commit": "b5eecb016f905a1622ff1ba9e08554287cacf78d",
      "tree": "db5908159ebfc0c0f9b525601c3b387361341044",
      "parents": [
        "05e43a61bc1c38a87150c28938f47621f9869fbf"
      ],
      "author": {
        "name": "Henrique Nakashima",
        "email": "hnakashima@chromium.org",
        "time": "Wed Oct 07 00:24:06 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 00:31:35 2026"
      },
      "message": "Reland \"[Android] Cache DeviceInfo in test builds\"\n\nThis is a reland of commit d7d74add46d2971946a3ade2a5b990e3e30dfd4a\n\nThe original was reverted because android_browsertests (e.g.\nBookmarksApiTest, GlicSidePanelCoordinatorDesktopAndroidBrowserTest)\nfailed on android-desktop-x64-rel. Those emulators lack FEATURE_PC and\nrely on --force-desktop-android, which native browser tests apply after\nthe Java CommandLine is initialized (NativeBrowserTestApplication starts\nwith an empty one), and ResettersForTesting does not run there. The\ncached DeviceInfo therefore kept isDesktop() \u003d\u003d false.\n\nFix: remember the --force-desktop-android value each instance was built\nwith, and in test builds rebuild the instance in getInstance() if the\nswitch has changed. Production builds are unaffected. Added a unit test.\n\nOriginal change\u0027s description:\n\u003e [Android] Cache DeviceInfo in test builds\n\u003e\n\u003e DeviceInfo.getInstance() rebuilt the object on every call in test\n\u003e builds so that mocked inputs were not defeated by caching. Each rebuild\n\u003e calls PackageManager.getSystemAvailableFeatures(), which costs two\n\u003e synchronous binder calls, and isDesktop() is on hot paths such as\n\u003e toolbar invalidation. In traces this was ~11% of main-thread CPU in\n\u003e Desktop instrumentation tests.\n\u003e\n\u003e Cache the instance in tests as well. Invalidate it via\n\u003e ResettersForTesting between tests, from the *ForTesting setters, and\n\u003e from OverrideContextWrapperTestRule when it changes system features.\n\u003e\n\u003e Bug: 562154154, 568001105\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8466502\n\u003e Reviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\n\u003e Commit-Queue: Henrique Nakashima \u003chnakashima@chromium.org\u003e\n\u003e Cr-Commit-Position: refs/heads/main@{#1709361}\n\nBug: 562154154, 568001105\nChange-Id: I92f0b118383872c5a09b3972355452ba597ee22d\nCq-Include-Trybots: luci.chromium.try:android-desktop-x64-rel\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8513297\nCommit-Queue: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nReviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712879}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 62f8d2eb6427293a691e937dd7638c2abf66e58d\n"
    },
    {
      "commit": "05e43a61bc1c38a87150c28938f47621f9869fbf",
      "tree": "30d63f722cdafac6f9b2215fdcbbf5d645384608",
      "parents": [
        "963bf14995af1fd1445fbb2d6095ff8add5d235d"
      ],
      "author": {
        "name": "Phil Yan",
        "email": "philyan@chromium.org",
        "time": "Wed Oct 07 00:00:14 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Oct 07 00:08:08 2026"
      },
      "message": "[viz] Implement MixedFixedIntervalMatcher with cadence matching (2/6)\n\nIntroduce MixedFixedIntervalMatcher to harmonize multiple concurrent\nfixed-rate content streams (such as videos, animated images, scrollbar\nfade animations, or stepped compositor animations) to an optimal\ndisplay refresh rate.\n\nKey design decisions in this CL:\n- Universal Multi-Stream Cadence: Generalizes fixed-rate cadence\n  matching across any combination of active fixed-rate streams (e.g.,\n  video + stepped ambient glow).\n- Time-Domain Cadence Evaluation: Evaluates presentation intervals in\n  the time domain (via VideoCadenceEstimator::HasSimpleCadence) rather\n  than integer frequency GCD/LCM math, natively supporting fractional\n  and sub-1Hz intervals (e.g., 23.976 FPS) without rounding errors.\n- Single-Pass Bounded Harmonic Search: Subdivides the candidate\n  interval in a single pass across active streams (capped at\n  kMaxHarmonicMultiple\u003d32) to guarantee O(1) termination while\n  covering up to 240Hz panels.\n- Hardware Mode Support: Supports discrete display refresh rate modes\n  (FixedIntervalSettings) by selecting the lowest integer-multiple mode,\n  and VRR ranges (ContinuousRangeSettings) with Low Framerate\n  Compensation (LFC) clamping.\n- Scroll Exclusion: Continuous compositor scrolling (kCompositorScroll)\n  is intentionally excluded so variable, velocity-dependent rates are\n  not throttled.\n\nTAG\u003dagy\nCONV\u003d87d4c49d-8835-4802-90a4-408b2cc32b0f\n\nDesign: https://docs.google.com/document/d/1nFnUcRda6CeNFBhuFyxTTn1ISgbLlxaXgGHxmDsROYE\nBug: 555345506\nChange-Id: Ib9848b9f582f0c1ca42e70bf23ec4949d88c0d5f\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8283180\nReviewed-by: Jonathan Ross \u003cjonross@chromium.org\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nReviewed-by: Vasiliy Telezhnikov \u003cvasilyt@chromium.org\u003e\nReviewed-by: Bo Liu \u003cboliu@chromium.org\u003e\nCommit-Queue: Phil Yan \u003cphilyan@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712861}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ca41eb5b521f3d1e193ca57f82905e84da06efec\n"
    },
    {
      "commit": "963bf14995af1fd1445fbb2d6095ff8add5d235d",
      "tree": "d8e86b7ede5d1c57c3ce4e35b54c915e7dd83d19",
      "parents": [
        "47434b97ca80b375bd494977fc26e9e7493ffab0"
      ],
      "author": {
        "name": "Jose Arturo Barrera",
        "email": "jabgonzalez@google.com",
        "time": "Tue Oct 06 22:21:28 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 22:28:40 2026"
      },
      "message": "[MiraclePtr] Enforce raw_ptr in templated containers in pre_freeze_background_memory_trimmer.h\n\nThis change replaces instances of raw C-style pointers (`T*`) with\n`raw_ptr\u003cT\u003e` for elements stored inside templated containers (such as\n`std::vector` and `std::array`). This aligns with the broader MiraclePtr\nsafety initiative to protect against use-after-free vulnerabilities.\n\nThis advances MiraclePtr\u0027s expansion to containers and preempts an\nupcoming clang-plugin update that will strictly ban these un-rewritten\ninstances.\n\nBug: b:501142609\nDoc: go/miracleptr-in-containers\nChange-Id: I50be5903f05035587d907c6f803c08302117df6f\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8501942\nReviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCommit-Queue: José Arturo Barrera \u003cjabgonzalez@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1712778}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 658d5960e26c0082177076d061fc273e48aa9135\n"
    },
    {
      "commit": "47434b97ca80b375bd494977fc26e9e7493ffab0",
      "tree": "2f417d0d20ded4a0d730355212ff4b7805f3f3d9",
      "parents": [
        "a140ec5e32c834c156b38770e785c4bfa3b6610d"
      ],
      "author": {
        "name": "Michael Thiessen",
        "email": "mthiesse@chromium.org",
        "time": "Tue Oct 06 20:46:33 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 20:52:31 2026"
      },
      "message": "Clean up my stale feature flags\n\nPeriodic cleanup of all of my kill switches/feature flags that are no\nlonger needed.\n\nkAbortNavigationsFromTabClosures\nkAvoidDoubleMultiwindowChanges\nkLaunchCauseScreenOffFix\nkUnparcelIntentFileDescriptors\n\nChange-Id: Ia767fa60d71479270efe8ecbecaf7281a37fa389\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8504200\nReviewed-by: Yaron Friedman \u003cyfriedman@chromium.org\u003e\nCommit-Queue: Michael Thiessen \u003cmthiesse@chromium.org\u003e\nAuto-Submit: Michael Thiessen \u003cmthiesse@chromium.org\u003e\nReviewed-by: Dave Tapuska \u003cdtapuska@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712645}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: be9a67d11af6b28d5ba7bc0d8faf756b35051f97\n"
    },
    {
      "commit": "a140ec5e32c834c156b38770e785c4bfa3b6610d",
      "tree": "451b4b556ff7acfa7a75b79cbe0681c97829b09d",
      "parents": [
        "51d03646fe4a5d0bd6cea8b696577e782e33d162"
      ],
      "author": {
        "name": "Atharv Maan",
        "email": "atharvmaan@chromium.org",
        "time": "Tue Oct 06 19:04:21 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 19:10:31 2026"
      },
      "message": "Revert \"Migrate base::Reversed to std::views::reverse\"\n\nThis reverts commit 08815e67f05ca8d96002048cd4bb5ad4e65c92b7.\n\nReason for revert: This CL breaks linux-cast-x64-rel builder\n\nFailure Link: https://ci.chromium.org/ui/p/chromium/builders/ci/linux-cast-x64-rel/57260/overview\n\nOriginal change\u0027s description:\n\u003e Migrate base::Reversed to std::views::reverse\n\u003e\n\u003e This is a mechanical migration.\n\u003e\n\u003e Bug: 493534962\n\u003e Change-Id: I20e17473c96aca7f18675a4da7bdb5a66a6a6964\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8500683\n\u003e SLSA-Policy-Verified: SLSA Policy Verification Service \u003cdevtools-gerritcodereview-exitgate@google.com\u003e\n\u003e Owners-Override: Daniel Cheng \u003cdcheng@chromium.org\u003e\n\u003e Commit-Queue: Daniel Cheng \u003cdcheng@chromium.org\u003e\n\u003e Reviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\n\u003e Auto-Submit: Jan Wilken Dörrie \u003cjdoerrie@chromium.org\u003e\n\u003e Cr-Commit-Position: refs/heads/main@{#1712516}\n\nBug: 493534962\nNo-Presubmit: true\nNo-Tree-Checks: true\nNo-Try: true\nChange-Id: I780336d8ad6316a66e96c2c73118c7f34a61ec08\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8527527\nSLSA-Policy-Verified: SLSA Policy Verification Service \u003cdevtools-gerritcodereview-exitgate@google.com\u003e\nReviewed-by: Hamzah Behery \u003cbehery@chromium.org\u003e\nCommit-Queue: Atharv Maan \u003catharvmaan@chromium.org\u003e\nOwners-Override: Atharv Maan \u003catharvmaan@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712530}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 9c9704ebe49ac53734f84175f0abbaf0870ce1c7\n"
    },
    {
      "commit": "51d03646fe4a5d0bd6cea8b696577e782e33d162",
      "tree": "3a87bc1a64da9660738f9ab8baf0a48dbcf7549c",
      "parents": [
        "6c354d1224a242da75fbccf576ce49c1c72686fb"
      ],
      "author": {
        "name": "Jan Wilken Dörrie",
        "email": "jdoerrie@chromium.org",
        "time": "Tue Oct 06 18:33:52 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 18:42:07 2026"
      },
      "message": "Migrate base::Reversed to std::views::reverse\n\nThis is a mechanical migration.\n\nBug: 493534962\nChange-Id: I20e17473c96aca7f18675a4da7bdb5a66a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8500683\nSLSA-Policy-Verified: SLSA Policy Verification Service \u003cdevtools-gerritcodereview-exitgate@google.com\u003e\nOwners-Override: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCommit-Queue: Daniel Cheng \u003cdcheng@chromium.org\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nAuto-Submit: Jan Wilken Dörrie \u003cjdoerrie@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712516}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 08815e67f05ca8d96002048cd4bb5ad4e65c92b7\n"
    },
    {
      "commit": "6c354d1224a242da75fbccf576ce49c1c72686fb",
      "tree": "451b4b556ff7acfa7a75b79cbe0681c97829b09d",
      "parents": [
        "6e5987a2b6afa8dd94131b87c74e2abbde900a5e"
      ],
      "author": {
        "name": "Egor Pasko",
        "email": "pasko@chromium.org",
        "time": "Tue Oct 06 17:03:25 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 17:11:55 2026"
      },
      "message": "android: linker: UMA histogram for percentage of RELRO shared\n\nIn crrev.com/c/8495566 we started allowing partial RELRO sharing. Add a\nsimple process-agnostic metric to tell how much we are not sharing.\n\nThe buckets are logarithmically distributed because regressions on small\npercentages are interesting in details, while missing a large chunk of\nRELRO is a sign of the mechanism not being useful at all - no need in\ngranularity in this case.\n\nBug: 564444019\nChange-Id: I715fc2248f7847502c7837743b39830ef2b78c63\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8525409\nReviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\nAuto-Submit: Egor Pasko \u003cpasko@chromium.org\u003e\nReviewed-by: Calder Kitagawa \u003cckitagawa@chromium.org\u003e\nCommit-Queue: Egor Pasko \u003cpasko@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712460}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ebd56c008e547f4f39522fe121bf5ab3706e7e19\n"
    },
    {
      "commit": "6e5987a2b6afa8dd94131b87c74e2abbde900a5e",
      "tree": "bd58050b36714be0f1d37543265a29a3f0b6323a",
      "parents": [
        "1c89e3afc5b21c2da27840af374dd7a48ff2cba4"
      ],
      "author": {
        "name": "Anand Ravi",
        "email": "anandrv@google.com",
        "time": "Tue Oct 06 16:48:44 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 16:58:52 2026"
      },
      "message": "[base] Reduce LockMetricsRecorder::kMaxSamples from 512 to 32\n\nLowering `kMaxSamples` from 512 to 32 reduces the per-thread buffer\nfootprint by ~94% (from 45 KB to 2.8 KB) with virtually zero probability\nof dropping samples.\n\nBug: 518786382\nChange-Id: I44ec49a06a187bd683419ac299fa054993da0eec\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8518997\nReviewed-by: Gabriel Charette \u003cgab@chromium.org\u003e\nCommit-Queue: Anand Ravi \u003canandrv@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1712439}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f1a25ef36e103ba360d81b1f19288c81b8cb6bc8\n"
    },
    {
      "commit": "1c89e3afc5b21c2da27840af374dd7a48ff2cba4",
      "tree": "8a89223ba45bd4d532270c6e3d0de9d2542cf73f",
      "parents": [
        "e389965c0f697c1400bc313bb96c110b9b604e1f"
      ],
      "author": {
        "name": "Marco Bartoli",
        "email": "marcobartoli@microsoft.com",
        "time": "Tue Oct 06 16:42:03 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 16:47:32 2026"
      },
      "message": "[base] Add AlignedCalloc() and use it for Dawn wire buffers\n\nTo get zeroed aligned memory, code calls AlignedAlloc() or\nAlignedUninit() and then fills the memory with zeros. For a large\nallocation, this writes to every page, so every page gets physical\nmemory. When PartitionAlloc is malloc, it direct-maps allocations\nlarger than its largest bucket (983040 bytes), so their pages are new\npages from the OS, which are zeroed already.\n\nAdd base::AlignedCalloc(num_items, size, alignment), which returns\nzeroed aligned memory that is freed with AlignedFree(). Add\nbase::AlignedZeroed\u003cT\u003e(capacity, alignment), which returns it as an\nAlignedHeapArray\u003cT\u003e, like AlignedUninit\u003cT\u003e(). AlignedZeroed() only\naccepts arithmetic types and std::byte, whose value is zero when all\ntheir bytes are zero.\n\nWhen PartitionAlloc is malloc, AlignedCalloc() uses\nallocator_shim::UncheckedAlignedCalloc() (crrev.com/c/8479893) for the\nsizes that PartitionAlloc always direct-maps. PartitionAlloc doesn\u0027t\nzero their pages again, and the pages that are never written are never\nfaulted in. On Apple platforms, this is only done after PartitionAlloc\nreplaces the default malloc zone, because free() can\u0027t free the shim\u0027s\nmemory before that. If UncheckedAlignedCalloc() returns null,\nAlignedCalloc() calls TerminateBecauseOutOfMemory(), so that the crash\nis reported as out of memory, like when AlignedAlloc() fails.\n\nFor smaller sizes, and in other builds, AlignedCalloc() uses\nAlignedAlloc() and memset(). These allocations usually reuse freed\nmemory, which has to be zeroed anyway, and calloc() would zero their\nwhole slot rather than only the requested size. Both ways return zeroed\nmemory, so the size check only affects performance.\n\nEach WebGPU decoder in the GPU process owns a DawnServiceSerializer,\nwhich has two 1 MiB buffers that were filled with zeros. Use\nAlignedZeroed() for them. In a local run of a WebGPU page on macOS, 1\nof the 64 pages (16 KiB each) of each buffer was resident, instead of\nall 64: 32 KiB instead of 2 MiB per decoder.\n\nTime to allocate and free with an alignment of 64 when the memory isn\u0027t\nused (Apple M4 Pro, release build, fastest of 2 runs):\n\n  Size          AlignedAlloc() + memset()  AlignedCalloc()  Speedup\n  983041 bytes  42.6 us                    5.8 us           7x\n  1 MiB         45.4 us                    6.5 us           7x\n  4 MiB         171 us                     10.9 us          16x\n  16 MiB        674 us                     26.3 us          26x\n  64 MiB        2.79 ms                    27.7 us          100x\n\nWhen every page is used, it\u0027s 7-12% faster. Sizes up to 983040 bytes\nrun the same code as before.\n\nTests:\n* AlignedMemoryTest.AlignedCalloc: the memory is aligned and zeroed for\n  sizes on both sides of the threshold, after freeing memory with\n  non-zero bytes that the allocator can reuse.\n* AlignedMemoryTest.AlignedCallocMultipleItems and\n  AlignedMemoryTest.AlignedZeroed.\n* AlignedMemoryDeathTest.AlignedCallocOverflow: num_items * size\n  overflows.\n* OutOfMemoryDeathTest.AlignedCalloc and SecurityAlignedCalloc: too\n  large sizes crash, as with AlignedAlloc().\n\nBug: 567953858\nChange-Id: I9c1b594d2219fb447cd3f2d718db52911fcf847b\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8494800\nReviewed-by: Mark Mentovai \u003cmark@chromium.org\u003e\nCommit-Queue: Marco Bartoli \u003cmarcobartoli@microsoft.com\u003e\nReviewed-by: Kai Ninomiya \u003ckainino@chromium.org\u003e\nReviewed-by: Benoit Lize \u003clizeb@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712429}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 06f351608c89df176002e64cc88afc5c032a3d96\n"
    },
    {
      "commit": "e389965c0f697c1400bc313bb96c110b9b604e1f",
      "tree": "96c81f853505423051b013edfa053fb50e345479",
      "parents": [
        "f2d4fa76242cbfa35d5911b985709b9418e800bb"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Oct 06 16:04:27 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 16:10:54 2026"
      },
      "message": "Android: Remove incremental_install compile mode\n\nCq-Include-Trybots: luci.chrome.try:android-internal-dbg,android-internal-binary-size\nChange-Id: Ie8b5bf362ad56079ac09e1d37ada1dad2c731010\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8517557\nOwners-Override: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCommit-Queue: Andrew Grieve \u003cagrieve@chromium.org\u003e\nReviewed-by: Peter Wen \u003cwnwen@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712392}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ea4faf2206fe4f2a9e21236e3ab8a7fd5fde2705\n"
    },
    {
      "commit": "f2d4fa76242cbfa35d5911b985709b9418e800bb",
      "tree": "1f24af9c9d00efe7fa59cc6e3d648d1c8aaafdc7",
      "parents": [
        "85a98e673c8f5b6633ca9ccf3a47afb57d90462c"
      ],
      "author": {
        "name": "Arthur Sonzogni",
        "email": "arthursonzogni@chromium.org",
        "time": "Tue Oct 06 12:55:44 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 13:02:29 2026"
      },
      "message": "Remove NotFatalUntil \u003c\u003d M151 in //base\n\nGenerated by:\n  base/tools/clean-up-not-fatal-until.py -m 151\n\nThis also drops the M136..M151 enum entries from base/not_fatal_until.h\nnow that all call sites have been cleaned up.\n\nAcross the tree, cleaning up \u003c\u003d M151 removes 239 instances and saves\n~10 KB of binary size on Android:\nhttps://bit.ly/not-fatal-until-perf\n\nCleaning up M152+ will save another ~220+ KB, but we are holding off\nuntil November so the DCHECK-to-CHECK rollout can be evaluated as a\nsingle experiment.\n\nBug: 419922502\nChange-Id: I1f515d1002c8c02e4a2ec9623e249c39590464bf\n\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8480229\nReviewed-by: Anthony Vallee-Dubois \u003canthonyvd@chromium.org\u003e\nCommit-Queue: Arthur Sonzogni \u003carthursonzogni@chromium.org\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712224}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: fcfd8f37188d64b88c6cb509009d8fc78a736eda\n"
    },
    {
      "commit": "85a98e673c8f5b6633ca9ccf3a47afb57d90462c",
      "tree": "5efd7e97b64f7f6559f3496b8f7a277162e3d49f",
      "parents": [
        "c75a6c64dd4c2cfe118302212d5eae1d1a56e298"
      ],
      "author": {
        "name": "Egor Pasko",
        "email": "pasko@chromium.org",
        "time": "Tue Oct 06 08:46:21 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 08:52:54 2026"
      },
      "message": "android: linker: Allow partial RELRO sharing\n\nTwo changes to fix RELRO sharing:\n1. One liner: Prepare the Linker to load the library in\n   loadNativeLibraryAndInitFeatureList()\n2. Allow process-specific parts at the end of RELRO region\n\nWe are lucky that with LLD the TLSDESC relocations on aarch64 only spoil\nabout 100K at the end of the RELRO region. See\ncrbug.com/564444019#comment24.\n\nReminder: the normal transitions of the RELRO region (on Android S+)\nhappen like this:\n* via fork(): Android Zygote (AZ) -\u003e Isolated Process (renderer,\n  utility)\n* via early messages: IP -\u003e Browser Process (BP)\n* later: BP -\u003e GPU process (probably not when GP restarts, not sure)\n\nThe change here is to share the common prefix of the two regions,\nwithout changing the regions that are sent around. We replace a one\nlarge memcmp with a thousand (or less) of per-page memcmp. This adds\nextra overhead of calling the function. This is probably worth a few\nmicroseconds or less? I did not benchmark it.\n\nHere we do not change what data *can* be shared across processes. I\nrealized recently that those process-specific TLSDESC relocations expose\ndynamic linker\u0027s module IDs from another process. I do not have any good\nideas how this new information can be exploited. Assuming it is safe.\n\nBug: 564444019\nChange-Id: Ib66a4978473c0bce7c4b3d3305f65c4a7ea19051\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8495566\nReviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCommit-Queue: Egor Pasko \u003cpasko@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712095}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f3252a53537f1d38adc796610a8a89430c1b91a3\n"
    },
    {
      "commit": "c75a6c64dd4c2cfe118302212d5eae1d1a56e298",
      "tree": "0862d17c0a81401300e7ae214b7dbb9e6d86d067",
      "parents": [
        "f29b4ee4a9440ba08a1d6187b97da0c4c01968fb"
      ],
      "author": {
        "name": "Keishi Hattori",
        "email": "keishi@google.com",
        "time": "Tue Oct 06 07:21:24 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 07:28:33 2026"
      },
      "message": "Enable BackupRefPtr in renderer processes on Android\n\nRemove the Android-specific exception in\nkBackupRefPtrEnabledProcessesParam so that BackupRefPtr is enabled in\nall processes by default across all platforms.\n\nBug: 502774552\nChange-Id: I896806969f6a6b85ece454e68f1a9791171fbc99\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8485065\nCommit-Queue: Keishi Hattori \u003ckeishi@chromium.org\u003e\nReviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1712052}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f768648d31a5e82394d591f799b629d5170ed52f\n"
    },
    {
      "commit": "f29b4ee4a9440ba08a1d6187b97da0c4c01968fb",
      "tree": "7747a1b530007c230ee0295396ff61f7ab566cad",
      "parents": [
        "2c791d58be4d5ef1478e5ab20214fa9612e69d1d"
      ],
      "author": {
        "name": "Tomasz Wiszkowski",
        "email": "ender@google.com",
        "time": "Tue Oct 06 05:35:21 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 05:40:12 2026"
      },
      "message": "[🌺] Revert \"[Tab UI] Convert TabUiTestHelper#enterTabSwitcher() to hop on Public Transit\"\n\nThis reverts commit a17f49c0a20027255d94c38bc707bb5f7d3a8815.\n\nReason for revert: consistently fails android-desktop-x64-rel.\n\nArchivedTabsDialogCoordinatorTest#testMessageResizedOnTablet has failed\nin 4/25 recent builds of android-desktop-x64-rel, every attempt in every\none of them. This is not flake: it reproduces on every run, so it blocks\nthe CQ for every unrelated CL that touches this suite. The regression\nappears at refs/heads/main@{#1711641}.\n\nExample failing run:\nhttps://ci.chromium.org/ui/p/chromium/builders/try/android-desktop-x64-rel/786883\n\nConverting TabUiTestHelper.enterTabSwitcher() from direct UI-thread performClick() to Public Transit CtaPageStation.openRegularTabSwitcher() (Espresso click) exposes a tablet/desktop orientation relayout race in ArchivedTabsDialogCoordinatorTest#testMessageResizedOnTablet (ArchivedTabsDialogCoordinatorTest.java:845-848), where rotateActivityToOrientation(ORIENTATION_PORTRAIT) immediately precedes enterTabSwitcher() (the same race fixed for testIphMessageResizedOnTablet in https://crrev.com/c/8432406).\n\nReverting to green the tree first. Please re-land once the failure is\nunderstood and covered; this revert is about restoring CQ throughput,\nnot about the merit of the change.\n\nOriginal change\u0027s description:\n\u003e [Tab UI] Convert TabUiTestHelper#enterTabSwitcher() to hop on Public Transit\n\u003e\n\u003e First conversion of a legacy test util with TrafficControl#hopOnAt().\n\u003e\n\u003e enterTabSwitcher(), used by 31 test files, now hops on at the current\n\u003e page (a CtaPageStation) and travels to the TabSwitcherStation by\n\u003e clicking CtaPageStation#tabSwitcherButtonElement, via the existing\n\u003e openRegularTabSwitcher()/openIncognitoTabSwitcher(). This replaces\n\u003e performClick() on a raw findViewById() plus a layout wait, and resolves\n\u003e the crbug.com/40155797 TODO to click the button through Espresso. The\n\u003e util now returns the TabSwitcherStation. Public Transit callers can\n\u003e continue from that Station; the others ignore it. Hopping on over a live\n\u003e Station in the same Activity logs a warning pointing the caller at\n\u003e CtaPageStation#openRegularTabSwitcher() instead.\n\u003e\n\u003e Also adds TrafficControl#hopOnAt(Activity, Station), the shorthand for\n\u003e the common case of hopping on without any action, i.e.\n\u003e Triggers.noopTo().hopOnTo(), the counterpart of hopOffPublicTransit(),\n\u003e and uses it in HopOnOffUnitTest.\n\u003e\n\u003e tab_ui:test_support_javalib gains direct deps on public_transit_java and\n\u003e chrome_java_transit, whose types TabUiTestHelper now uses.\n\u003e\n\u003e The waitForLayout(BROWSING) after addBlankTabs() in TabGridDialogTest is\n\u003e removed: addBlankTabs() already waits for the BROWSING layout, and the\n\u003e duplicate wait was dead code.\n\u003e\n\u003e Bug: 412014791, 433540584, 564028907\n\u003e Change-Id: If6866b265c196cd56c926ef10a107be5d018dbc5\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8503109\n\u003e Commit-Queue: Henrique Nakashima \u003chnakashima@chromium.org\u003e\n\u003e Reviewed-by: Fiaz Muhammad \u003cmfiaz@google.com\u003e\n\u003e Auto-Submit: Henrique Nakashima \u003chnakashima@chromium.org\u003e\n\u003e Reviewed-by: Calder Kitagawa \u003cckitagawa@chromium.org\u003e\n\u003e Cr-Commit-Position: refs/heads/main@{#1711641}\n\nBug: 412014791, 433540584, 564028907\nChange-Id: Ie57f740478218c35b59237d39161076ee9ab8599\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8518694\nReviewed-by: Keigo Oka \u003coka@chromium.org\u003e\nAuto-Submit: Tomasz Wiszkowski \u003cender@google.com\u003e\nOwners-Override: Tomasz Wiszkowski \u003cender@google.com\u003e\nCommit-Queue: Tomasz Wiszkowski \u003cender@google.com\u003e\nOwners-Override: Keigo Oka \u003coka@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1711993}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 5e06e88980f960fddfabe69ecf1fe8a8654d02f0\n"
    },
    {
      "commit": "2c791d58be4d5ef1478e5ab20214fa9612e69d1d",
      "tree": "436826cb4246cdb4601434724a43324afa5d4c44",
      "parents": [
        "ab89857f862085aa900c603c3879c0032626c5e6"
      ],
      "author": {
        "name": "Kalvin Lee",
        "email": "kdlee@chromium.org",
        "time": "Tue Oct 06 05:16:19 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Oct 06 05:24:30 2026"
      },
      "message": "Reland \"Checked Span: Add offset checking tests\"\n\nThis is a reland of commit 738956cca47a264e92106fdbefdc040ee7ed487d\n\nThe test is not contingent on Checked Span metadata support being\nenabled; it just happened to come after the enablement CL in the chain.\nThis CL is being landed (by itself) unchanged.\n\nOriginal change\u0027s description:\n\u003e Checked Span: Add offset checking tests\n\u003e\n\u003e When tightened bounds checking is enabled (and the smuggled size is\n\u003e available to Checked Span), the Checked Span cannot be constructed any\n\u003e larger than the original allocation extent (regardless of available\n\u003e headroom).\n\u003e\n\u003e When tightened bounds checking isn\u0027t enabled, the Checked Span can reach\n\u003e to the end of available headroom.\n\u003e\n\u003e This new unit test verifies that using a span start from mid-allocation\n\u003e still works as expected under both configurations.\n\u003e\n\u003e Change-Id: I615e81493ad9420cbd0fcf6506ccd30d43f2efb4\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8492351\n\u003e Reviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\n\u003e Reviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\n\u003e Commit-Queue: Kalvin Lee \u003ckdlee@chromium.org\u003e\n\u003e Cr-Commit-Position: refs/heads/main@{#1709780}\n\nChange-Id: Ib7604fa1128364c2ed8eb78b4d03a20120c721b2\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8513497\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nAuto-Submit: Kalvin Lee \u003ckdlee@chromium.org\u003e\nReviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\nCommit-Queue: Kalvin Lee \u003ckdlee@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1711975}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 19d651932d9ee1cb9d13f292c22a1e123e791f6b\n"
    },
    {
      "commit": "ab89857f862085aa900c603c3879c0032626c5e6",
      "tree": "3d26974936c4c2424c54d5ae2a1df47e4f4963b6",
      "parents": [
        "49a2b22ecdf9a0f4d69d3b3e2e1e567f05695fb7"
      ],
      "author": {
        "name": "Gazal",
        "email": "agazal@google.com",
        "time": "Mon Oct 05 23:08:05 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 05 23:13:51 2026"
      },
      "message": "[histogram-cleanup] Remove Android.MemoryPressureNotification\n\nRemove expired histogram\nAndroid.MemoryPressureNotification{AndroidProcessType} which expired on\n2021-12-05 and its recording helper class MemoryPressureUma.\n\nOBSOLETE_HISTOGRAMS[Android.MemoryPressureNotification.Browser]\u003dexpired\nOBSOLETE_HISTOGRAMS[Android.MemoryPressureNotification.ChildService]\u003dexpired\n\nThis change was generated using the skill histogram-cleanup.\n\nBug: 499059525, 40799957\nChange-Id: I5ff89862f1cbbae198229319a4c1934d0799eb3c\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8501448\nReviewed-by: Yaron Friedman \u003cyfriedman@chromium.org\u003e\nCommit-Queue: Gazal Agarwal \u003cagazal@google.com\u003e\nAuto-Submit: Gazal Agarwal \u003cagazal@google.com\u003e\nReviewed-by: Siddhartha S \u003cssid@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1711782}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: cf7da86a5ceb485fb65c392e51a08f3c22ae89e7\n"
    },
    {
      "commit": "49a2b22ecdf9a0f4d69d3b3e2e1e567f05695fb7",
      "tree": "b7cd9b3ed3619cc409f6b3748b1f392879dd2974",
      "parents": [
        "7d9a969f42702f3fdc89c0d8aa07152a7c3ded36"
      ],
      "author": {
        "name": "Mohannad Farrag",
        "email": "aymanm@google.com",
        "time": "Mon Oct 05 20:26:17 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 05 20:36:07 2026"
      },
      "message": "[base] Don\u0027t dispatch to an FdWatchController stopped mid-dispatch in MessagePumpEpoll\n\nMessagePumpEpoll::OnEpollEvent() iterates a copy of the fd\u0027s Interest\nlist and relies on Interest::active() to decide whether to dispatch.\nDestruction of a controller during the loop is already handled via\nWatchForControllerDestruction(), and one-shot interests are deactivated\nbefore dispatch. However, an interest that is merely *stopped* during\nthe loop (FdWatchController::StopWatchingFileDescriptor() -\u003e\nUnregisterInterest()) was removed from the live list but left active,\nso the stale copy still dispatched to it. By then the controller\u0027s\nwatcher_ had already been cleared, and OnFdWritable() dereferenced\nnull.\n\nThis is hit whenever two controllers watch the same fd and the first\none\u0027s callback stops the second. net::UDPSocketPosix has this shape\n(separate read_socket_watcher_ and write_socket_watcher_ controllers),\nand its read completion callback can synchronously close the socket in\nthe caller on error (QuicChromiumClientSession::OnReadError() -\u003e\nOnConnectionClosed() -\u003e QuicChromiumPacketReader::CloseSocket() -\u003e\nUDPSocketPosix::Close()), so a QUIC UDP socket that is simultaneously\nreadable (or errored, e.g. EPOLLERR after the kernel aborts it) and has\na pending write watch crashes on the network thread with:\n\n  #00 base::MessagePumpEpoll::HandleEvent(...)\n  #01 base::MessagePumpEpoll::OnEpollEvent(...)\n  #02 base::MessagePumpEpoll::WaitForEpollEvents(...)\n\nFix: mark the Interest inactive in UnregisterInterest() so the\ndispatch loop skips it, mirroring what is already done for one-shot\ninterests.\n\nAdds MessagePumpEpollTest.StopOtherControllerOnSameFdDuringDispatch,\nwhich reproduces the crash deterministically without the fix.\n\nBug: 540823650, 472755390, 357662586\nChange-Id: I713dabb25e789e0dc67f2191ebd4ce69b61659d1\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8500777\nReviewed-by: Egor Pasko \u003cpasko@chromium.org\u003e\nReviewed-by: Gabriel Charette \u003cgab@chromium.org\u003e\nAuto-Submit: Mohannad Farrag \u003caymanm@google.com\u003e\nCommit-Queue: Mohannad Farrag \u003caymanm@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1711643}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 109e75e3700a7b05047100553bb33ad1919f0b3a\n"
    },
    {
      "commit": "7d9a969f42702f3fdc89c0d8aa07152a7c3ded36",
      "tree": "431e9effe3d54c94ded2f8ffa327bde03c3291bb",
      "parents": [
        "dd059d6cd25d96354272171b718bbe32581291fa"
      ],
      "author": {
        "name": "Henrique Nakashima",
        "email": "hnakashima@chromium.org",
        "time": "Mon Oct 05 20:23:46 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 05 20:29:06 2026"
      },
      "message": "[Tab UI] Convert TabUiTestHelper#enterTabSwitcher() to hop on Public Transit\n\nFirst conversion of a legacy test util with TrafficControl#hopOnAt().\n\nenterTabSwitcher(), used by 31 test files, now hops on at the current\npage (a CtaPageStation) and travels to the TabSwitcherStation by\nclicking CtaPageStation#tabSwitcherButtonElement, via the existing\nopenRegularTabSwitcher()/openIncognitoTabSwitcher(). This replaces\nperformClick() on a raw findViewById() plus a layout wait, and resolves\nthe crbug.com/40155797 TODO to click the button through Espresso. The\nutil now returns the TabSwitcherStation. Public Transit callers can\ncontinue from that Station; the others ignore it. Hopping on over a live\nStation in the same Activity logs a warning pointing the caller at\nCtaPageStation#openRegularTabSwitcher() instead.\n\nAlso adds TrafficControl#hopOnAt(Activity, Station), the shorthand for\nthe common case of hopping on without any action, i.e.\nTriggers.noopTo().hopOnTo(), the counterpart of hopOffPublicTransit(),\nand uses it in HopOnOffUnitTest.\n\ntab_ui:test_support_javalib gains direct deps on public_transit_java and\nchrome_java_transit, whose types TabUiTestHelper now uses.\n\nThe waitForLayout(BROWSING) after addBlankTabs() in TabGridDialogTest is\nremoved: addBlankTabs() already waits for the BROWSING layout, and the\nduplicate wait was dead code.\n\nBug: 412014791, 433540584, 564028907\nChange-Id: If6866b265c196cd56c926ef10a107be5d018dbc5\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8503109\nCommit-Queue: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nReviewed-by: Fiaz Muhammad \u003cmfiaz@google.com\u003e\nAuto-Submit: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nReviewed-by: Calder Kitagawa \u003cckitagawa@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1711641}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a17f49c0a20027255d94c38bc707bb5f7d3a8815\n"
    },
    {
      "commit": "dd059d6cd25d96354272171b718bbe32581291fa",
      "tree": "2421219a2592fab90f747433f530636e074fa5b3",
      "parents": [
        "4b128ba977f819992c5ff4445e540fd1feb70cca"
      ],
      "author": {
        "name": "Alexei Svitkine",
        "email": "asvitkine@chromium.org",
        "time": "Mon Oct 05 19:30:48 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 05 19:39:05 2026"
      },
      "message": "Improve FilePersistentMemoryAllocator POSIX flushing\n\nOn non-Apple POSIX platforms, FilePersistentMemoryAllocator\u0027s\nFlushPartial passed MS_INVALIDATE to msync(). This change omits\nMS_INVALIDATE across all POSIX platforms (Linux, ChromeOS, Android),\nmatching the existing behavior on Apple platforms (macOS, iOS).\n\nHistorically, POSIX.1-1996 defined MS_INVALIDATE because early Unix\narchitectures maintained separate, disjoint page caches for the\nvirtual memory subsystem (mmap) and the file system buffer cache\n(read/write). Without explicit invalidation, other processes\naccessing the file via read() or non-synchronized mappings could\nobserve stale data.\n\nOn modern POSIX and Apple kernels, however, memory mappings and file\nI/O operate directly on a Unified Page Cache:\n- Linux: The page cache and buffer cache were unified in Linux 2.4.0\n  (January 2001). Under MAP_SHARED, mmap pages and file descriptor\n  I/O share the exact same underlying physical page frames\n  (struct page). Consequently, all processes and kernel read/write\n  operations immediately observe memory modifications without\n  requiring cache invalidation. In Linux (mm/msync.c), the kernel does\n  not invalidate shared file pages upon MS_INVALIDATE; its only\n  functional effect is returning -EBUSY if pages in the range are\n  locked (VM_LOCKED via mlock). All versions of Android (kernel 3.x+)\n  and ChromeOS use Linux kernels that have always featured this\n  unified page cache architecture.\n- Apple (macOS / iOS / Darwin): Darwin introduced the Unified Buffer\n  Cache (UBC) in Mac OS X 10.0 Cheetah (March 2001). Mapped files and\n  vnodes share identical physical memory pages. In Darwin XNU\n  (bsd/vm/vm_mmap.c), passing MS_INVALIDATE explicitly deactivates or\n  unmaps mapped pages from the process address space, causing\n  unnecessary page faults and redundant disk reads upon subsequent\n  accesses.\n\nTherefore, passing MS_INVALIDATE during flush operations provides no\ncache coherency benefit, adds risk of spurious -EBUSY on locked\nregions, and risks incurring costly page re-faults.\n\nTAG\u003dagy\nCONV\u003de7bcd679-5d34-4ddc-9706-7890259066f8\n\nBug: 40063510\nChange-Id: I361dcf07cd8ac8d99ed47676345b29cdc7098ded\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8502543\nCommit-Queue: Alexei Svitkine \u003casvitkine@chromium.org\u003e\nCommit-Queue: Luc Nguyen \u003clucnguyen@google.com\u003e\nReviewed-by: Luc Nguyen \u003clucnguyen@google.com\u003e\nAuto-Submit: Alexei Svitkine \u003casvitkine@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1711590}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 55a82873ddfdc16585337a9ce0d3a9bbcf6aeb00\n"
    },
    {
      "commit": "4b128ba977f819992c5ff4445e540fd1feb70cca",
      "tree": "88295688726e0984a211f787761088906acecfb3",
      "parents": [
        "42a9ea37902e70243673c83c4116f890fe8ad2da"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Oct 05 19:04:12 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 05 19:11:31 2026"
      },
      "message": "Android: Fix all @NonNull presubmit warnings\n\nThe main fix here is enabling the warning only for files with\n@NullMarked.\n\nChange-Id: I79b0980eec08357cb94346fdbb5c1a3adfcdb921\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8507221\nAuto-Submit: Andrew Grieve \u003cagrieve@chromium.org\u003e\nOwners-Override: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCommit-Queue: Andrew Grieve \u003cagrieve@chromium.org\u003e\nReviewed-by: Sam Maier \u003csmaier@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1711564}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 1af4e3c97f8b5a507a90bb4172ad9290cf3f9f88\n"
    },
    {
      "commit": "42a9ea37902e70243673c83c4116f890fe8ad2da",
      "tree": "c417fb84ec4c2852904900312e9299328ffd1294",
      "parents": [
        "dc75373e340ad501ec767d3f91302856e8007ed3"
      ],
      "author": {
        "name": "SeungJun Lee",
        "email": "mps756@gmail.com",
        "time": "Mon Oct 05 17:49:07 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 05 18:01:04 2026"
      },
      "message": "base: Preserve Unix epoch timestamps in POSIX file metadata\n\nPOSIX stat timestamps use zero seconds to represent the Unix epoch.\nTime::FromTimeT() interprets zero as a null time, so File::Info loses\nboth epoch timestamps and subsecond timestamps in the first Unix second.\n\nConvert all three stat timestamps relative to Time::UnixEpoch() through\na shared helper. Cover the subsecond conversion using the Apple stat\nfield names as well as the Linux ones. This also lets file stream readers\ndetect changes to files whose snapshot modification time was at the epoch.\n\nBug: 40690801\nChange-Id: I1cc6411c93d8a7779a429668ded5b010e5b5e257\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8496093\nReviewed-by: Lei Zhang \u003cthestig@chromium.org\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCommit-Queue: Lei Zhang \u003cthestig@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1711483}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 089eb1806ebac85b18de4308f27a0ccb6ddc7d16\n"
    },
    {
      "commit": "dc75373e340ad501ec767d3f91302856e8007ed3",
      "tree": "48fbc5ef3bdc2bb571f157f1608206ccd920b901",
      "parents": [
        "2c27d1ab52786f7b1808c3331a3f9d3a3c75893c"
      ],
      "author": {
        "name": "Jose Arturo Barrera",
        "email": "jabgonzalez@google.com",
        "time": "Mon Oct 05 17:38:27 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 05 18:00:05 2026"
      },
      "message": "[MiraclePtr] Enforce raw_ptr in templated containers for thread_group_profiler_unittest.cc\n\nThis change replaces instances of raw C-style pointers (`T*`) with\n`raw_ptr\u003cT\u003e` for elements stored inside templated containers (such as\n`std::vector` and `std::array`). This aligns with the broader MiraclePtr\nsafety initiative to protect against use-after-free vulnerabilities.\n\nThis advances MiraclePtr\u0027s expansion to containers and preempts an\nupcoming clang-plugin update that will strictly ban these un-rewritten\ninstances.\n\nBug: b:501142609\nDoc: go/miracleptr-in-containers\nMax-Compile-Failures: 100\nChange-Id: I6f660c3d2100460a7d98bc01904a3f6bae8d8561\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8502797\nCommit-Queue: José Arturo Barrera \u003cjabgonzalez@google.com\u003e\nReviewed-by: Jean-Philippe Gravel \u003cjpgravel@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1711466}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b9bfe9d0d15ebe8744b325d345dcca8ee9643747\n"
    },
    {
      "commit": "2c27d1ab52786f7b1808c3331a3f9d3a3c75893c",
      "tree": "2c6e76324c78daa90ff6697b9f831bf605c02429",
      "parents": [
        "f91612b189fd2cd4a4a64d7c18ed1e26e9b0c052"
      ],
      "author": {
        "name": "Alexei Svitkine",
        "email": "asvitkine@chromium.org",
        "time": "Mon Oct 05 17:34:22 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 05 17:55:12 2026"
      },
      "message": "Document concurrency model and thread safety of PMA Flush\n\nFilePersistentMemoryAllocator::Flush flushes allocated memory up to\nthe current value of freeptr (used()). It does not lock the allocator,\nso concurrent allocations by other threads may advance freeptr or write\nnew blocks concurrently during or after the flush.\n\nDocument this behavior in PersistentMemoryAllocator::Flush to clarify\nthe threading invariants for callers.\n\nTAG\u003dagy\nCONV\u003de7bcd679-5d34-4ddc-9706-7890259066f8\n\nBug: 40063510\nChange-Id: I56712a9f77e09f9fd7813ece61d7e4d0f197f5e6\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8507237\nReviewed-by: Luc Nguyen \u003clucnguyen@google.com\u003e\nCommit-Queue: Luc Nguyen \u003clucnguyen@google.com\u003e\nAuto-Submit: Alexei Svitkine \u003casvitkine@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1711460}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 1ac1f161118a790f79449fd035adff2ae738c7d3\n"
    },
    {
      "commit": "f91612b189fd2cd4a4a64d7c18ed1e26e9b0c052",
      "tree": "94d8d3f3c4698998d4896d5259e8aa2b76e8212f",
      "parents": [
        "81486e28f8463c0581c1fafa6f7e2279f9927181"
      ],
      "author": {
        "name": "Alexei Svitkine",
        "email": "asvitkine@chromium.org",
        "time": "Mon Oct 05 17:07:20 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 05 17:17:18 2026"
      },
      "message": "Fix msync error check in FilePersistentMemoryAllocator\n\nIn FilePersistentMemoryAllocator::FlushPartial, the error check\nfor ::msync() uses DCHECK_NE(EINVAL, result). However, msync()\nreturns 0 on success and -1 on failure (setting errno to EINVAL\nor another error code). Comparing result directly against EINVAL\nis therefore always true (0 !\u003d 22 and -1 !\u003d 22), which makes the\ncheck a no-op that never triggers even on error.\n\nUse DPCHECK(result \u003d\u003d 0) to verify success and log errno on\nfailure, matching the DPCHECK(success) call on Windows. Make\nFlushPartial a no-op on Fuchsia where the POSIX compatibility\nlayer does not implement msync().\n\nTAG\u003dagy\nCONV\u003de7bcd679-5d34-4ddc-9706-7890259066f8\n\nBug: None\nChange-Id: I3efd25b2cc316897a721094bc8dc69cecca8667c\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8506383\nReviewed-by: Luc Nguyen \u003clucnguyen@google.com\u003e\nCommit-Queue: Alexei Svitkine \u003casvitkine@chromium.org\u003e\nAuto-Submit: Alexei Svitkine \u003casvitkine@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1711427}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: e85c880ac89f023729a946540affd3a8fc22a8ab\n"
    },
    {
      "commit": "81486e28f8463c0581c1fafa6f7e2279f9927181",
      "tree": "ba400c14e55a35a9eafa836fffdeb5aae2996d6d",
      "parents": [
        "2ffb4a25126db6cf992118924fa2a2381720eaa0"
      ],
      "author": {
        "name": "Anton Bikineev",
        "email": "bikineev@google.com",
        "time": "Mon Oct 05 13:39:07 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 05 13:46:02 2026"
      },
      "message": "base: Accurately detect Efficiency CPU cores on Apple Silicon\n\nOn Apple Silicon chips with Super and Performance cores and no\nEfficiency cores (such as M5 Pro and M5 Max), hw.nperflevels is 2 with\nhw.perflevel0.name \u003d \"Super\" and hw.perflevel1.name \u003d \"Performance\".\nSimilarly, future 3-level chips may report Super, Performance, and\nEfficiency across three levels.\n\nPreviously, SysInfo::NumberOfEfficientProcessorsImpl() assumed that\nwhenever hw.nperflevels \u003e\u003d 2, the slowest level (num_perf_levels - 1)\nalways holds Efficiency cores, causing all Performance cores on\nSuper+Performance chips to be misclassified as Efficiency cores.\n\nInspect hw.perflevel\u003cN\u003e.name to only count levels named \"Efficiency\"\n(falling back to the slowest level index if the sysctl name is missing\nor unrecognized), matching WebKit\u0027s approach in\nhttps://commits.webkit.org/319928@main.\n\nChange-Id: I70638b92acd02db71d665ccc56249a5808fa73e3\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8430205\nReviewed-by: Kyle Charbonneau \u003ckylechar@chromium.org\u003e\nCommit-Queue: Kyle Charbonneau \u003ckylechar@chromium.org\u003e\nReviewed-by: Etienne Pierre-Doray \u003cetiennep@chromium.org\u003e\nAuto-Submit: Anton Bikineev \u003cbikineev@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1711230}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 9894e457efd82f8f0157f6546a7f5affd4fc41bc\n"
    },
    {
      "commit": "2ffb4a25126db6cf992118924fa2a2381720eaa0",
      "tree": "a6a62c559a6aa4cc3d6152130ff3f5c077e74e23",
      "parents": [
        "1fcca3b18c7a0768d5b01b395e4aabbde29b3b18"
      ],
      "author": {
        "name": "Ziad Youssef",
        "email": "ziadyoussef@chromium.org",
        "time": "Mon Oct 05 12:07:59 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 05 12:16:48 2026"
      },
      "message": "[Android] Null-check BatteryManager returned by getSystemService()\n\nContext.getSystemService() can return null for BatteryManager, e.g. when\nthe host app\u0027s SELinux domain can\u0027t look up the battery binder services.\n\nThis is only called twice in PowerMonitor and BatteryStatusManager.\n\nBug: 562744743\nChange-Id: Ie51a29055b15f25efadca8b0d2f330cd3f6ef957\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8479574\nReviewed-by: Yaron Friedman \u003cyfriedman@chromium.org\u003e\nCommit-Queue: Ziad Youssef \u003cziadyoussef@chromium.org\u003e\nReviewed-by: Matt Reynolds \u003cmattreynolds@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1711174}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 0f4772ba9f15bf09391fefe97c60a1207c921f90\n"
    },
    {
      "commit": "1fcca3b18c7a0768d5b01b395e4aabbde29b3b18",
      "tree": "1f2e04f3c30921256d5d587559d86f8124db7a04",
      "parents": [
        "d688b7b1cd8f8ac171a2d646324f7ca1fbaee90d"
      ],
      "author": {
        "name": "mikt",
        "email": "mikt@google.com",
        "time": "Mon Oct 05 05:08:11 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Oct 05 05:14:40 2026"
      },
      "message": "Rename ADVANCED_MEMORY_SAFETY_CHECKS to SANITIZED_OBJECT\n\nThis is a mechanical rewrite change.\n\nRename the `ADVANCED_MEMORY_SAFETY_CHECKS` macro to `SANITIZED_OBJECT`,\n`INHERIT_MEMORY_SAFETY_CHECKS` to `INHERIT_SANITIZED_OBJECT`, and\n`DEFAULT_MEMORY_SAFETY_CHECKS` to `NO_SANITIZED_OBJECT`.\n\nAlso rename `base/memory/advanced_memory_safety_checks.{h,cc}` to\n`base/memory/sanitized_object.{h,cc}` and update remaining\n`AdvancedMemorySafetyChecks` / `advanced_memory_safety_checks`\nidentifiers in `base/`, `partition_alloc/`, and `PRESUBMIT.py`.\n\nHere is the script AI used to rewrite the annotation users:\n```\nimport subprocess\nfiles \u003d [ ... ] # 54 caller files outside base/\nfor f in files:\n    with open(f, \"r\") as fp:\n        content \u003d fp.read()\n    new_content \u003d content.replace(\n        \"#include \\\"base/memory/advanced_memory_safety_checks.h\\\"\",\n        \"#include \\\"base/memory/sanitized_object.h\\\"\"\n    ).replace(\"ADVANCED_MEMORY_SAFETY_CHECKS\", \"SANITIZED_OBJECT\")\n    with open(f, \"w\") as fp:\n        fp.write(new_content)\nsubprocess.run([\"git\", \"cl\", \"format\"], check\u003dTrue)\n```\n\nTAG\u003dagy\nCONV\u003d1688e889-a808-401a-854c-f80e12b2fe32\n\nBypass-Check-License: Renamed file.\nChange-Id: I60650ea5f59b8ce7c9f28a78c47802fac8fc28cb\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8506057\nCommit-Queue: Mikihito Matsuura \u003cmikt@google.com\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nOwners-Override: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1710992}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: b761f7b645d16671aa6931ae52a185d9d06928b8\n"
    },
    {
      "commit": "d688b7b1cd8f8ac171a2d646324f7ca1fbaee90d",
      "tree": "fd061942d0dd19772c313776a65466862bbe99ba",
      "parents": [
        "90d65e29666c8698ecb46f4fec408edc2ad4b94b"
      ],
      "author": {
        "name": "Justin Novosad",
        "email": "junov@chromium.org",
        "time": "Sat Oct 03 01:57:34 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat Oct 03 02:08:54 2026"
      },
      "message": "[base] Eliminate redundant LiveTicks clock reads in MeasuredMemoryDumpProviderInfo\n\nUses the now_out parameter of base::ElapsedLiveTimer::Elapsed() to\neliminate a redundant LiveTicks::Now() clock read when logging post-task\ntime upon MeasuredMemoryDumpProviderInfo destruction.\n\nBug: 568632369\nChange-Id: I944936165204fa3ed0ccbe5b02abf274c23ec4d6\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8497114\nReviewed-by: Siddhartha S \u003cssid@chromium.org\u003e\nAuto-Submit: Justin Novosad \u003cjunov@chromium.org\u003e\nCommit-Queue: Siddhartha S \u003cssid@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1710637}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 525245df8ff276bccd565cb35279399e59427da6\n"
    },
    {
      "commit": "90d65e29666c8698ecb46f4fec408edc2ad4b94b",
      "tree": "37d53f299cc3169b6e01f96131bed293e37a41a6",
      "parents": [
        "bddd6614e2062088711a45eea2551fd099f226af"
      ],
      "author": {
        "name": "Danilo Tedeschi",
        "email": "danft@google.com",
        "time": "Sat Oct 03 00:57:20 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sat Oct 03 01:04:11 2026"
      },
      "message": "[base/i18n] Bind DateTimeFormatter instances to a locale\n\nDateTimeFormatter now receives the locale in its constructor and uses it\nto format when no explicit locale is passed to Format().\n\nIcuBridge owns one formatter per locale, cached in an\nabsl::flat_hash_map keyed by LanguageTag, and exposes:\n  - date_time_formatter(): returns the formatter for the current default\n    ICU locale, obtained from GetDefaultIcuLocale().\n  - date_time_formatter(locale): returns the formatter for the given\n    locale.\n\nFormatters are created on first use. The map is lazily populated by the\nconst accessors and guarded by a lock, as IcuBridge is a process-wide\nsingleton that can be accessed from any thread.\n\nThis change is being done so a cache can be more conveniently\nimplemented for improving the performance of DateTimeFormatter.\n\nChange-Id: I02d50c783b5c66e87ff24ab7e42cb21f819e8d1e\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8454223\nReviewed-by: Yann Dago \u003cydago@chromium.org\u003e\nReviewed-by: Friedrich Hauser \u003cfriedrichh@chromium.org\u003e\nCommit-Queue: Danilo Tedeschi \u003cdanft@google.com\u003e\nReviewed-by: Ireneusz Szulc \u003cireneuszszulc@google.com\u003e\nReviewed-by: Max Curran \u003ccurranmax@chromium.org\u003e\nReviewed-by: Alexei Svitkine \u003casvitkine@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1710615}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 202f47259e5cc9adc41062873eec0d4aac37b390\n"
    },
    {
      "commit": "bddd6614e2062088711a45eea2551fd099f226af",
      "tree": "226adc6d3c590eb01b4af73e67952cdde8c29de8",
      "parents": [
        "e9ad2b19b7bf21b7910eadccf4ccbe578674e87e"
      ],
      "author": {
        "name": "Henrique Nakashima",
        "email": "hnakashima@chromium.org",
        "time": "Fri Oct 02 23:08:59 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 23:15:33 2026"
      },
      "message": "[Public Transit] Add hopOn()/hopOff() to convert test utils\n\nTests that are not (yet) Public Transit tests call shared test utils that\ndo exactly what a PT transition does: trigger something and wait for the\nresulting UI state. Those utils could not be implemented in terms of PT\nbecause PT requires an origin Station and a full trip.\n\nThis CL adds the \"hop on\" primitive: a no-origin arrival that enters\nPublic Transit from outside it, so a test util can model its destination\nas a Station without requiring its caller to be a PT test.\n\nBase layer:\n - TripBuilder#hopOnTo(Activity, Station) runs the trigger with no origin\n   Station, so no exit Conditions are checked, and resolves the\n   destination\u0027s Activity by identity rather than by class. The Activity\n   is a required parameter: hopping on means the UI already exists, so\n   the caller always holds it, and matching by class is ambiguous as\n   soon as a second window is open (ChromeTabbedActivity2 on phones,\n   two ChromeTabbedActivity instances on Desktop Android).\n - hopOnTo() implicitly hops off first, before running the trigger: its\n   precondition is \"outside PT\", so it establishes it, and a failed\n   hop-on leaves no half-finished Station behind. Hopping on over an\n   ACTIVE Station in the same Activity is logged as a warning: the\n   caller is most likely a PT test calling a converted util and should\n   transition from its own Station instead. That is a worklist, not an\n   error, since the util cannot know whether that Station is still\n   accurate.\n - TrafficControl#hopOffPublicTransit() marks the abandoned Stations and\n   their Facilities FINISHED so stale Element reads fail loudly. It does\n   so from any phase: a Station left TRANSITIONING_FROM by a failed\n   Transition is exactly what hopping off exists to abandon, and\n   asserting on it turned one failed test into a failed batch.\n   notifyEntryPointSentinelStationCreated() uses the same path and so\n   no longer asserts the previous Station was ACTIVE either.\n - Station#requireToBeInSameTask() allows subclasses when the origin\n   Activity is a subclass of the class the destination declares. This\n   applies to every same-task transition, not only after a hop-on: a\n   Station\u003cChromeTabbedActivity\u003e reached in a ChromeTabbedActivity2 can\n   now travel to another Station\u003cChromeTabbedActivity\u003e.\n - HopOnOffUnitTest covers the above in Robolectric.\n\nTest utils converted with hopOnTo() should keep their original trigger\nand add only the state modeling, and leave their destination Station\nACTIVE so that getTab()/getActivity() stay readable by non-PT callers;\nthe next hop on discards it. The first conversions follow in separate\nCLs: TabUiTestHelper#enterTabSwitcher() and leaveTabSwitcher().\n\nBug: 412014791, 433540584, 564028907\nChange-Id: Id68fe40b685adf4d806bc5576241abc79e75dcbf\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8422468\nReviewed-by: Fiaz Muhammad \u003cmfiaz@google.com\u003e\nCommit-Queue: Henrique Nakashima \u003chnakashima@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1710527}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: c88b88064381eb69eef0483d0e73cc5e060827b6\n"
    },
    {
      "commit": "e9ad2b19b7bf21b7910eadccf4ccbe578674e87e",
      "tree": "66164cfdb6e666985de29d59d9293410f049860f",
      "parents": [
        "f8762d3a7276f15a1662da9f597bbf0f34bd98bd"
      ],
      "author": {
        "name": "Anton Helin",
        "email": "antonhelin3@gmail.com",
        "time": "Fri Oct 02 21:44:19 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 21:48:59 2026"
      },
      "message": "Correctly evaluate the authority from opaque content URIs in isUriFromThisApp\n\nContentUriUtils.isUriFromThisApp() read the authority directly from the Uri object. An OpaqueUri returns a null authority even when its string form includes one, so reparsing must be done to confirm that the authority does not exist. It was possible for a drag-and-dropped content URI to access internal content providers and leak sensitive data to a web page.\n\nBug: 567846676\nChange-Id: I10fc16cd61a63649d84638323ff5c2601cfe2638\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8486071\nReviewed-by: Michael Thiessen \u003cmthiesse@chromium.org\u003e\nCommit-Queue: Yaron Friedman \u003cyfriedman@chromium.org\u003e\nReviewed-by: Yaron Friedman \u003cyfriedman@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1710456}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 265bdbb85110007f71d865ef67bf25a129f5c0aa\n"
    },
    {
      "commit": "f8762d3a7276f15a1662da9f597bbf0f34bd98bd",
      "tree": "b1eaa8beac983304d801e91b9adf80984b0669c3",
      "parents": [
        "124e24d00629b7d5a5df37387df4c6031588cab0"
      ],
      "author": {
        "name": "Patrick Monette",
        "email": "pmonette@chromium.org",
        "time": "Fri Oct 02 19:37:31 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 19:44:26 2026"
      },
      "message": "[Memory Coordinator] Simplify notification suppression\n\nWhen registering a MemoryConsumer, it\u0027s possible that we need to\nimmediately apply a non-default memory limit (an existing policy already\nrequests one). But since registration typically happens from the\nconsumer\u0027s constructor, we must not call OnUpdateMemoryLimit() or\nOnReleaseMemory() at that point: the object isn\u0027t fully constructed yet.\n\nThis behavior is already correct, but the responsibility lies with the\nregistry, which has to carefully order its operations (notify the\ncontroller before adding the consumer to its group, then seed the limit\nthrough a dedicated NoNotification helper). That ordering gets in the\nway of a follow-up change.\n\nSo this CL moves the suppression into MemoryConsumer itself with an\n`is_registering_` bool, set by the registry for the duration of the\nregistration. The NoNotification helpers are no longer needed.\n\nNo behavior change.\n\nBug: 567877037\nChange-Id: Ic96a09f57033f6cf3b1259fe22c985bb28c5a3b6\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8502996\nCommit-Queue: Patrick Monette \u003cpmonette@chromium.org\u003e\nReviewed-by: Andres Ricardo Perez Rojas \u003candresrperez@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1710332}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: ae03b93806a96d14a08b2e5b6f687bc0d9b122d6\n"
    },
    {
      "commit": "124e24d00629b7d5a5df37387df4c6031588cab0",
      "tree": "7c1836b8596c3f558db44f0637714ff0ce3f741a",
      "parents": [
        "fe8e5f11dc6a7e9ec8946a0cd28a0d887a8a8a83"
      ],
      "author": {
        "name": "Justin Novosad",
        "email": "junov@chromium.org",
        "time": "Fri Oct 02 18:20:07 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 18:25:28 2026"
      },
      "message": "[base] Output current time from ElapsedTimer*::Elapsed methods\n\nObjective: Eliminate redundant clock queries in several places\n\nContext: Many uses of ElapsedTimer also evaluate TimeTicks::Now\nnear the call to Elapse or near the timer\u0027s construction, resulting\nin redundant clock evaluations. These are fast but non negligible\non most OSes, and in worst cases (e.g. VMs) can be slow due to\nkernel space jumps.\n\nAdds an optional `now_out` parameter to\n`ElapsedNoSleepTimer::Elapsed()`, allowing callers to retrieve the\nsampled LiveTicks timestamp from the same sample used for the elapsed\ntime calculation.\n\nBug: 565753727\nChange-Id: I618219b74ae67b0ecb3ea59cc03b316669238f64\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8494952\nReviewed-by: Francois Pierre Doray \u003cfdoray@chromium.org\u003e\nCommit-Queue: Justin Novosad \u003cjunov@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1710263}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a7ddba56f23ef8ffe1136fdebc609898340ca50c\n"
    },
    {
      "commit": "fe8e5f11dc6a7e9ec8946a0cd28a0d887a8a8a83",
      "tree": "c4700504a00a8972c10b0236f3810b566eeb3202",
      "parents": [
        "249cddaf8a1d8969e44e8763af698f6f6300d1ef"
      ],
      "author": {
        "name": "Mikel Astiz",
        "email": "mastiz@chromium.org",
        "time": "Fri Oct 02 18:10:32 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 18:20:35 2026"
      },
      "message": "[base] Support synchronous writes in ImportantFileWriter\n\nThis patch extends ImportantFileWriter with support for synchronous\nbehavior, if ImportantFileWriter::kBlockCurrentSequence is passed during\nconstruction (instead of a task runner).\n\nThis allows usages that are already running on blockable sequences\nwithout involving task-posting, simplifying the sequencing of\noperations if the written file is also read.\n\nsyncer::LoopbackConnectionManager is updated to become the first user of\nthis functionality, avoiding race conditions that could, before this\npatch, lead to reads executing earlier than previously-issued writes.\n\nBug: 564770244\nChange-Id: Idbd85a87faff97f45c378d01a1d5dd72ec3b4c7c\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8501821\nCommit-Queue: Mikel Astiz \u003cmastiz@chromium.org\u003e\nReviewed-by: Gabriel Charette \u003cgab@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1710253}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: db776c333e0157636be44892c14e6e45bbe9b96e\n"
    },
    {
      "commit": "249cddaf8a1d8969e44e8763af698f6f6300d1ef",
      "tree": "733979cd09b383abd701ea10cdb2352c01d061a9",
      "parents": [
        "24002a952f34d26e43a972c5cb23341a44ba4b0f"
      ],
      "author": {
        "name": "Benoit",
        "email": "lizeb@google.com",
        "time": "Fri Oct 02 16:42:46 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 16:51:22 2026"
      },
      "message": "[viz] Report total BufferQueue memory usage in UMA\n\nTotal memory used by BufferQueue in viz can grow large for users with\nmultiple browser windows on high resolution screens, and in the case\nof Android, with a high refresh rate (since we have more buffers in\nthis case).\n\nThis CL adds tracking for total size, as a memory metric, with more\ndetails in tracing memory dumps.\n\nChange-Id: Ic345eaf34e5f4b415dfb90cae273b2b53c3267bc\nBug: 505314004\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8505018\nCommit-Queue: Benoit Lize \u003clizeb@chromium.org\u003e\nReviewed-by: Jonathan Ross \u003cjonross@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1710151}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 7403fdfaa19d2e7200e6ebcc0b37e7e8d1071ba1\n"
    },
    {
      "commit": "24002a952f34d26e43a972c5cb23341a44ba4b0f",
      "tree": "975a4f1c2f8f350445313860240d982174f45240",
      "parents": [
        "e39113049970f9a6d1e043b8502bb4a19033ba0e"
      ],
      "author": {
        "name": "Justin Novosad",
        "email": "junov@chromium.org",
        "time": "Fri Oct 02 16:41:28 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 16:50:07 2026"
      },
      "message": "Add base::ElapsedNoSleepTimer to detect OS suspension during timing intervals\n\nIntroduces base::ElapsedNoSleepTimer, which returns an elapsed\nTimeDelta from Elapsed() or std::nullopt if the system slept during\nthe measured interval.\n\nHow it works: On all platforms, LiveTicks and RealTicks are derived\nfrom the same underlying system clock, except that RealTicks has an\noffset added to it to account for system sleep time. Therefore,\nwhenever RealTicks advances faster than that LiveTicks over a\nmeasured interval, we know that the system slept.\n\nBug: 565753727\nChange-Id: I804d6929c66e694e20b46c71fd933e57320fd053\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8456429\nReviewed-by: Francois Pierre Doray \u003cfdoray@chromium.org\u003e\nCommit-Queue: Justin Novosad \u003cjunov@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1710149}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 592bab9770f8812cc5dbb2064b4cb80bbf92c6b2\n"
    },
    {
      "commit": "e39113049970f9a6d1e043b8502bb4a19033ba0e",
      "tree": "4d8764045527cc730961cca1656609a68c89f43d",
      "parents": [
        "9ef946dbb7966fbcf0a30b5295a6c74d07e2869f"
      ],
      "author": {
        "name": "utzcoz",
        "email": "utzcoz@gmail.com",
        "time": "Fri Oct 02 15:34:48 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 15:39:23 2026"
      },
      "message": "[Android] Run Robolectric tests on SDK 37 by default\n\nRaise the newest SDK that junit tests run on from 36 to 37, keeping\nBaseRobolectricTestRunner.MAX_SDK and local_machine_junit_test_run.py\nin sync. The SDK 37 android-all jar is already in\nthird_party/robolectric.\n\nWith the preceding fixes, every junit suite in the Android build passes\non SDK 29 and 37.\n\nBug: none\nChange-Id: Ia8e486a28a2bb659672708439c0f87f5cf4dcc13\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8496696\nReviewed-by: Peter Wen \u003cwnwen@chromium.org\u003e\nCommit-Queue: Sam Maier \u003csmaier@google.com\u003e\nReviewed-by: Sam Maier \u003csmaier@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1710076}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: e6f5459c6d96003f4ddd8de196d3785fd1a401f7\n"
    },
    {
      "commit": "9ef946dbb7966fbcf0a30b5295a6c74d07e2869f",
      "tree": "abf121efb1d9b4534a8c360b75b85097ec3be608",
      "parents": [
        "fc5f745993bc4ac719fb5962bcacaa612a174940"
      ],
      "author": {
        "name": "Sam Maier",
        "email": "smaier@google.com",
        "time": "Fri Oct 02 14:51:57 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 15:01:51 2026"
      },
      "message": "Remove resources_version from resources on Android\n\nThis was missed in\nhttps://chromium-review.git.corp.google.com/c/chromium/src/+/8143540\n\nI believe this is truly the last spot other than the manifest we can get\nthe version from.\n\nThis was originally added as a debugging aid for an early Trichrome\nissue. It\u0027s no longer relevant.\n\nBug: 40264213\nChange-Id: I3d3d90cbf32cb5387d90f712652c79c16a6a6964\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8489610\nReviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\nCommit-Queue: Sam Maier \u003csmaier@google.com\u003e\nAuto-Submit: Sam Maier \u003csmaier@google.com\u003e\nOwners-Override: Sam Maier \u003csmaier@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1710048}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 8ec14b46510e4e5da51517dd6583aa1fa87d617a\n"
    },
    {
      "commit": "fc5f745993bc4ac719fb5962bcacaa612a174940",
      "tree": "5334d3e991c11e54c571515bfcaf424c1f033e33",
      "parents": [
        "a976a3e97ec007ae365a4d7611d42d32db34d81d"
      ],
      "author": {
        "name": "Pier-Alexandre Bouchard",
        "email": "pabouchard@google.com",
        "time": "Fri Oct 02 13:41:18 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 13:49:39 2026"
      },
      "message": "Revert \"Checked Span: Add offset checking tests\"\n\nThis reverts commit 738956cca47a264e92106fdbefdc040ee7ed487d.\n\nReason for revert: Reverting dependent tests in order to revert parent CL https://crrev.com/c/8491851, which caused widespread iOS EarlGrey test crashes across simulator builders (identified by LUCI Bisection: https://ci.chromium.org/ui/p/chromium/bisection/test-analysis/b/4703653093965824, sample build: https://ci.chromium.org/b/8669067950653156817).\n\nNo-Try: true\nChange-Id: I42793d507080a93b7ebb699f2f0ab6a6baec49a6\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8507354\nAuto-Submit: Pier-Alexandre Bouchard \u003cpabouchard@google.com\u003e\nBot-Commit: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nCommit-Queue: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nOwners-Override: Pier-Alexandre Bouchard \u003cpabouchard@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1709982}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 7e985147e460f1cd8ede29ce8c2dc9954e0d0c4b\n"
    },
    {
      "commit": "a976a3e97ec007ae365a4d7611d42d32db34d81d",
      "tree": "cfb42af5442c7ac8017c50430e1adc3a8c54211c",
      "parents": [
        "ed9c4242d37567a71f2f5ec7c3778ca348eb08ec"
      ],
      "author": {
        "name": "Pier-Alexandre Bouchard",
        "email": "pabouchard@google.com",
        "time": "Fri Oct 02 13:39:43 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 13:48:16 2026"
      },
      "message": "Revert \"Checked Span: Enable tightened checking\"\n\nThis reverts commit a27e1a2c28881022a9eb7a7d2f0d1e7f90ecafc4.\n\nReason for revert: Caused widespread iOS EarlGrey test crashes across simulator builders (identified by LUCI Bisection: https://ci.chromium.org/ui/p/chromium/bisection/test-analysis/b/4703653093965824, sample build: https://ci.chromium.org/b/8669067950653156817).\n\nNo-Try: true\nChange-Id: I62e4196a7a130ecf225378181ea83f17d5e0db2a\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8507374\nOwners-Override: Pier-Alexandre Bouchard \u003cpabouchard@google.com\u003e\nBot-Commit: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nCommit-Queue: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nAuto-Submit: Pier-Alexandre Bouchard \u003cpabouchard@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1709981}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 36b2532313c795127f5dcf7d6b703ec0ee6dcbed\n"
    },
    {
      "commit": "ed9c4242d37567a71f2f5ec7c3778ca348eb08ec",
      "tree": "a3e89bd9b09489100a8d2bf793fd8742927dfb50",
      "parents": [
        "7108d7fe46d7c5e9f91c58359f45cd5bd8429ab5"
      ],
      "author": {
        "name": "ainozaki",
        "email": "ainozaki@google.com",
        "time": "Fri Oct 02 12:04:09 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 12:11:14 2026"
      },
      "message": "[PA] Check auto partitioning in PartitionIndexFromAllocToken\n\nCurrently, `PartitionIndexFromAllocToken()` can return\n`kPointerPartitionIndex` even when `ENABLE_AUTO_PARTITIONING` is\ndisabled, relying on `Allocator()` to fall back to\n`kDefaultPartitionIndex`.\n\nThis CL moves the `ENABLE_AUTO_PARTITIONING` check into\n`PartitionIndexFromAllocToken()` and guards `kPointerPartitionIndex`\nbehind the buildflag.\n\nBug: 549500187, 477186304\nChange-Id: I6151e58e378d2a3dc8857e2d14a5078998f3ca87\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8506336\nReviewed-by: Mikihito Matsuura \u003cmikt@google.com\u003e\nCommit-Queue: Ai Nozaki \u003cainozaki@google.com\u003e\nReviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1709933}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a78193eb9893e6be7aa59654a99bd4c42db56be6\n"
    },
    {
      "commit": "7108d7fe46d7c5e9f91c58359f45cd5bd8429ab5",
      "tree": "ecba6178ac672032fa712e695a2016f23d64d7b1",
      "parents": [
        "d6af7795fa486fa764942e4504f9c399be76b37d"
      ],
      "author": {
        "name": "Lei Zhang",
        "email": "thestig@chromium.org",
        "time": "Fri Oct 02 09:26:58 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 09:32:57 2026"
      },
      "message": "Move base::PlatformThread internal bits to platform_thread_internal.h\n\nMove some code in base/threading/platform_thread.h in an inner internal\nnamespace into a separate file. This code is only used in\nplatform_thread.cc / unit tests and does not need to be included in the\nrest of the code base.\n\nChange-Id: Ib786b05d64048aa7e05dd5a5edcacdb497b2b554\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8501499\nReviewed-by: Markus Handell \u003chandellm@google.com\u003e\nCommit-Queue: Markus Handell \u003chandellm@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1709879}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 486fa4f1f73a2c223199cb0b84ceb443289e8fb4\n"
    },
    {
      "commit": "d6af7795fa486fa764942e4504f9c399be76b37d",
      "tree": "8f59718b27795620294fa5ac3a6c3b1260c10bde",
      "parents": [
        "5d55f9ec90f29836e4791fc49e5b8ea7b0b27a91"
      ],
      "author": {
        "name": "mikt",
        "email": "mikt@google.com",
        "time": "Fri Oct 02 07:46:18 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 07:51:54 2026"
      },
      "message": "Reland \"[PA] Consolidate PartitionAlloc TLS into a single structure.\"\n\nThis reverts commit 438d489235fc95769492fdb88920a78acee41f65.\n\nReason for revert: Regression cut by 75% in https://crrev.com/c/8487305\n\nOriginal change\u0027s description:\n\u003e Revert \"[PA] Consolidate PartitionAlloc TLS into a single structure.\"\n\u003e\n\u003e This reverts commit 67b58121286da3189afe0e05570f4e0c70499cf8.\n\u003e\n\u003e Reason for revert: Suspected cause of memory regression\n\u003e\n\u003e Failure Link: https://pinpoint-dot-chromeperf.appspot.com/job/157bfe49690000\n\u003e\n\u003e Original change\u0027s description:\n\u003e \u003e [PA] Consolidate PartitionAlloc TLS into a single structure.\n\u003e \u003e\n\u003e \u003e This CL renames partition_tls.h to tls.h and defines a single\n\u003e \u003e `PartitionTls` structure that holds all thread-unique objects used\n\u003e \u003e within PartitionAlloc. Specifically, it now holds the ThreadCache\n\u003e \u003e pointers and the disallow_allocations flag.\n\u003e \u003e\n\u003e \u003e This consolidation reduces TLS slot usage and minimizes code\n\u003e \u003e duplication. TLS creation remains non-allocating.\n\u003e \u003e\n\u003e \u003e To minimize overhead on allocation and deallocation hot paths:\n\u003e \u003e - Placed scalar flags at byte offset 0 of struct PartitionTls for\n\u003e \u003e   D-cache locality.\n\u003e \u003e - Combined thread cache validity and bucket size checks into a single\n\u003e \u003e   branch (bucket_index \u003c thread_cache-\u003eactive_bucket_count()) on hot\n\u003e \u003e   paths, removing duplicate checks and redundant TLS lookups.\n\u003e \u003e\n\u003e \u003e TAG\u003dagy\n\u003e \u003e CONV\u003d80980e77-c356-4c8b-a00b-3a2c47533fbb\n\u003e \u003e\n\u003e \u003e Bug: 329027914\n\u003e \u003e Change-Id: If05f8f540281a135eba36aba872df424a4c208be\n\u003e \u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8264055\n\u003e \u003e Commit-Queue: Mikihito Matsuura \u003cmikt@google.com\u003e\n\u003e \u003e Reviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\n\u003e \u003e Reviewed-by: Takashi Sakamoto \u003ctasak@google.com\u003e\n\u003e \u003e Cr-Commit-Position: refs/heads/main@{#1688851}\n\u003e\n\u003e Bug: 329027914\n\u003e Change-Id: Ic0a1771902cd4159e4571c563989e13e15fa0235\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8412606\n\u003e Reviewed-by: Mateusz Zbikowski \u003czbikowski@google.com\u003e\n\u003e Commit-Queue: Alex Mitra \u003calexmitra@chromium.org\u003e\n\u003e Owners-Override: Anna Tsvirchkova \u003catsvirchkova@google.com\u003e\n\u003e Cr-Commit-Position: refs/heads/main@{#1698073}\n\nBug: 329027914\nChange-Id: Ib8d2a5211fc766697a9e35a585358a281592a10a\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8483734\nCommit-Queue: Mikihito Matsuura \u003cmikt@google.com\u003e\nReviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1709815}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 554afb3648fc97bdd2ffe82ad46847221dc2da04\n"
    },
    {
      "commit": "5d55f9ec90f29836e4791fc49e5b8ea7b0b27a91",
      "tree": "a3bdca83453ba143916894fbc789edaf2e3f1368",
      "parents": [
        "019293fd41d8f219456d180d66f1e7e93dbb9ed5"
      ],
      "author": {
        "name": "Lei Zhang",
        "email": "thestig@chromium.org",
        "time": "Fri Oct 02 07:18:01 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 07:25:56 2026"
      },
      "message": "partition_alloc: Move Flags to partition_alloc_public_constants.h\n\nMove AllocFlags and FreeFlags out of partition_alloc_constants.h into\npartition_alloc_public_constants.h so files that only need these flags\n(such as array_buffer_contents.h) can include a smaller header.\n\nInclude partition_alloc_public_constants.h directly in files that use\nAllocFlags or FreeFlags, and replace partition_alloc_constants.h\nincludes where its constants are no longer needed. Many of these\nmodified files are outside of //base/allocator, so\npartition_alloc_public_constants.h is more appropriate anyway.\n\nTAG\u003dagy\nCONV\u003dd1d1c71f-a023-4057-8123-fa1a368aca3a\n\nChange-Id: I4a46c9c4d6373c6bab72cd276defc987e7f2227d\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8470312\nAuto-Submit: Lei Zhang \u003cthestig@chromium.org\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nOwners-Override: Daniel Cheng \u003cdcheng@chromium.org\u003e\nReviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\nCommit-Queue: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1709792}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f4faac0c922b64133e6fd3c5db6c029a413c76b6\n"
    },
    {
      "commit": "019293fd41d8f219456d180d66f1e7e93dbb9ed5",
      "tree": "fe9cac52fa299aff05e200259465310af82ec109",
      "parents": [
        "071160cd4b066254216ba73ed2b5e6771153b3e3"
      ],
      "author": {
        "name": "Kalvin Lee",
        "email": "kdlee@chromium.org",
        "time": "Fri Oct 02 06:46:59 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 06:56:17 2026"
      },
      "message": "Checked Span: Add offset checking tests\n\nWhen tightened bounds checking is enabled (and the smuggled size is\navailable to Checked Span), the Checked Span cannot be constructed any\nlarger than the original allocation extent (regardless of available\nheadroom).\n\nWhen tightened bounds checking isn\u0027t enabled, the Checked Span can reach\nto the end of available headroom.\n\nThis new unit test verifies that using a span start from mid-allocation\nstill works as expected under both configurations.\n\nChange-Id: I615e81493ad9420cbd0fcf6506ccd30d43f2efb4\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8492351\nReviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCommit-Queue: Kalvin Lee \u003ckdlee@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1709780}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 738956cca47a264e92106fdbefdc040ee7ed487d\n"
    },
    {
      "commit": "071160cd4b066254216ba73ed2b5e6771153b3e3",
      "tree": "265700a45a14d9ae458ef954e951e18a1b24a9a5",
      "parents": [
        "cfe8c032886656b6baaf824e784f57106164f624"
      ],
      "author": {
        "name": "Kalvin Lee",
        "email": "kdlee@chromium.org",
        "time": "Fri Oct 02 06:45:34 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 06:54:58 2026"
      },
      "message": "Checked Span: Enable tightened checking\n\nThis enables tightened bounds-checking. Checked Span now refers to the\nhidden, originally requested size provided by the caller, and will crash\nif a `base::span` any larger than that is requested. (Exceptions apply,\nspecific to the implementation of PartitionAlloc.)\n\nFixed: 534387022\nChange-Id: Id74f51b31ba2e59c6a5b7889305f54b0476c1340\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8491851\nCommit-Queue: Kalvin Lee \u003ckdlee@chromium.org\u003e\nReviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1709778}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: a27e1a2c28881022a9eb7a7d2f0d1e7f90ecafc4\n"
    },
    {
      "commit": "cfe8c032886656b6baaf824e784f57106164f624",
      "tree": "3bbf6dd777085542641112deec5d3c6f9d857b32",
      "parents": [
        "5aa6e4830c0de955e212474084c12535afc2d7b3"
      ],
      "author": {
        "name": "Kalvin Lee",
        "email": "kdlee@chromium.org",
        "time": "Fri Oct 02 06:42:23 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 06:48:33 2026"
      },
      "message": "Checked Span: Tighten bounds\n\nChange `IsExtentOutOfBounds()` to use the smuggled size when available,\nproviding a tighter bound on what\u0027s considered in bounds.\n\nBug: 534387022\nChange-Id: I84dcf5c3842022b24acfade6dcd5e68e0cd3d450\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8461864\nReviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\nReviewed-by: Daniel Cheng \u003cdcheng@chromium.org\u003e\nCommit-Queue: Kalvin Lee \u003ckdlee@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1709777}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: e64c3f7a5b2bc41a3bb96951e419b7d304b1c3b7\n"
    },
    {
      "commit": "5aa6e4830c0de955e212474084c12535afc2d7b3",
      "tree": "151085d1c58b889f4d4fc47618797499ee6d0811",
      "parents": [
        "9baf471c92946ac72724529bc17772fdc1375cbe"
      ],
      "author": {
        "name": "Greg Thompson",
        "email": "grt@chromium.org",
        "time": "Fri Oct 02 06:07:28 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 06:16:12 2026"
      },
      "message": "Deactivate Interest in MessagePumpEpoll::UnregisterInterest()\n\nWhen two FdWatchController instances watch the same file descriptor\n(e.g., one for read and one for write) and a single epoll event\nsatisfies both, MessagePumpEpoll::OnEpollEvent() copies the entry\u0027s\nInterest list and iterates over each Interest. If the first callback\ncalls StopWatchingFileDescriptor() on the second controller without\ndestroying it, MessagePumpEpoll::UnregisterInterest() removes the\nInterest from the EpollEventEntry (and erases the EpollEventEntry if no\nInterests remain) without calling set_active(false) on the unregistered\nInterest. On the next iteration, OnEpollEvent() sees active() \u003d\u003d true\nand was_controller_destroyed() \u003d\u003d false, resulting in a use-after-free\non the erased EpollEventEntry in UpdateEpollEvent() and a null pointer\ndereference in FdWatchController::OnFdWritable().\n\nCall set_active(false) in UnregisterInterest() so OnEpollEvent() skips\nany Interest that a prior callback unregistered during the same event.\n\nBug: b:515435405\nChange-Id: I9fd03b68ea0b85e5bf2f1f016dec12735a68e396\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8501177\nReviewed-by: Etienne Pierre-Doray \u003cetiennep@chromium.org\u003e\nCommit-Queue: Greg Thompson \u003cgrt@chromium.org\u003e\nAuto-Submit: Greg Thompson \u003cgrt@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1709757}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: eddad32d3c74a1163d8fd0a5fadd042b2be5f34a\n"
    },
    {
      "commit": "9baf471c92946ac72724529bc17772fdc1375cbe",
      "tree": "59d7f77424b3d6085b1d7fc28bf87edd43947af9",
      "parents": [
        "d3a079d6344c807439e627988d7be30b841ec6e5"
      ],
      "author": {
        "name": "Tomasz Wiszkowski",
        "email": "ender@google.com",
        "time": "Fri Oct 02 04:55:29 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 05:01:38 2026"
      },
      "message": "[🌺] Revert \"[Android] Cache DeviceInfo in test builds\"\n\nThis reverts commit d7d74add46d2971946a3ade2a5b990e3e30dfd4a.\n\nReason for revert: consistently fails android-desktop-x64-rel.\n\nBookmarksApiEventsTest#*, BookmarksApiTest#Bookmarks,\nGlicSidePanelCoordinatorDesktopAndroidBrowserTest#*, and\nDownloadExtensionTest#DownloadsShowFunction has failed in 39/39 recent\nbuilds of android-desktop-x64-rel, every attempt in every one of them.\nThis is not flake: it reproduces on every run, so it blocks the CQ for\nevery unrelated CL that touches this suite. The regression appears at\nrefs/heads/main@{#1709361}.\n\nExample failing run:\nhttps://ci.chromium.org/ui/p/chromium/builders/ci/android-desktop-x64-rel-15-tests/23058\n\nCaching DeviceInfo.sInstance on first access in test builds caches\nmIDeviceInfo.isDesktop \u003d false before CommandLine is populated with\n--force-desktop-android on Android 15 tablet emulators (which lack\nPackageManager.FEATURE_PC). This causes 15 android_browsertests across\nBookmarksApiEventsTest, BookmarksApiTest,\nGlicSidePanelCoordinatorDesktopAndroidBrowserTest, and\nDownloadExtensionTest to fail deterministically starting at #780879\n(1709361, vs passing at #780880 at 1709360) on chromium/try/android-\ndesktop-x64-rel and in CI build #23058 on chromium/ci/android-\ndesktop-x64-rel-15-tests.\n\nReverting to green the tree first. Please re-land once the failure is\nunderstood and covered; this revert is about restoring CQ throughput,\nnot about the merit of the change.\n\nOriginal change\u0027s description:\n\u003e [Android] Cache DeviceInfo in test builds\n\u003e\n\u003e DeviceInfo.getInstance() rebuilt the object on every call in test\n\u003e builds so that mocked inputs were not defeated by caching. Each rebuild\n\u003e calls PackageManager.getSystemAvailableFeatures(), which costs two\n\u003e synchronous binder calls, and isDesktop() is on hot paths such as\n\u003e toolbar invalidation. In traces this was ~11% of main-thread CPU in\n\u003e Desktop instrumentation tests.\n\u003e\n\u003e Cache the instance in tests as well. Invalidate it via\n\u003e ResettersForTesting between tests, from the *ForTesting setters, and\n\u003e from OverrideContextWrapperTestRule when it changes system features.\n\u003e\n\u003e Bug: 562154154, 568001105\n\u003e Change-Id: If066e6f1a89f333e5efd495e2c529404aa10718a\n\u003e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8466502\n\u003e Reviewed-by: Andrew Grieve \u003cagrieve@chromium.org\u003e\n\u003e Commit-Queue: Henrique Nakashima \u003chnakashima@chromium.org\u003e\n\u003e Cr-Commit-Position: refs/heads/main@{#1709361}\n\nBug: 562154154, 568001105\nChange-Id: I22337748307f26ee6343c58b7eda94b004969fdc\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8505236\nOwners-Override: Shuhei Takahashi \u003cnya@chromium.org\u003e\nCommit-Queue: Shuhei Takahashi \u003cnya@chromium.org\u003e\nAuto-Submit: Tomasz Wiszkowski \u003cender@google.com\u003e\nReviewed-by: Shuhei Takahashi \u003cnya@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1709736}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: cd07a48ab634c5e92e60db02fc7f96ead1ce36ea\n"
    },
    {
      "commit": "d3a079d6344c807439e627988d7be30b841ec6e5",
      "tree": "b47330f53f1a9ba88741e54197cf51772a092d24",
      "parents": [
        "efa39d8ecc4a59cd44de47754e78c9c0dcf9bc3e"
      ],
      "author": {
        "name": "ainozaki",
        "email": "ainozaki@google.com",
        "time": "Fri Oct 02 04:15:28 2026"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Oct 02 04:23:09 2026"
      },
      "message": "[PA] Fix kDefaultAllocToken in ShimCppAlignedNewNoThrow\n\nhttps://crrev.com/c/8264052 replaced kDefaultPartitionIndex with\nkDefaultAllocToken for default AllocToken parameters, but missed\nShimCppAlignedNewNoThrow. This CL fixes it.\n\nBug: 549500187\nChange-Id: I51dc22c22b03662f842e4a6706ebe961eb420d96\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8505616\nReviewed-by: Stephen Nusko \u003cnuskos@chromium.org\u003e\nReviewed-by: Mikihito Matsuura \u003cmikt@google.com\u003e\nCommit-Queue: Ai Nozaki \u003cainozaki@google.com\u003e\nCr-Commit-Position: refs/heads/main@{#1709714}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: d3dfb0a42ba5a569de1d260d193bfddc92a6865b\n"
    }
  ],
  "next": "efa39d8ecc4a59cd44de47754e78c9c0dcf9bc3e"
}
