diff --git a/tools/android/native_lib_memory/PRESUBMIT.py b/tools/android/native_lib_memory/PRESUBMIT.py
index 109ce3d7..a070982 100644
--- a/tools/android/native_lib_memory/PRESUBMIT.py
+++ b/tools/android/native_lib_memory/PRESUBMIT.py
@@ -11,9 +11,11 @@
 
 def CommonChecks(input_api, output_api):
   output = []
-  blacklist = []
-  output.extend(input_api.canned_checks.RunPylint(
-      input_api, output_api, black_list=blacklist))
+  files_to_skip = []
+  output.extend(
+      input_api.canned_checks.RunPylint(input_api,
+                                        output_api,
+                                        files_to_skip=files_to_skip))
   output.extend(input_api.canned_checks.RunUnitTests(
       input_api,
       output_api,
diff --git a/tools/clang/scripts/update.py b/tools/clang/scripts/update.py
index 8647f63..9f72982 100755
--- a/tools/clang/scripts/update.py
+++ b/tools/clang/scripts/update.py
@@ -38,7 +38,7 @@
 # https://chromium.googlesource.com/chromium/src/+/master/docs/updating_clang.md
 # Reverting problematic clang rolls is safe, though.
 # This is the output of `git describe` and is usable as a commit-ish.
-CLANG_REVISION = 'llvmorg-12-init-15676-g5c951623'
+CLANG_REVISION = 'llvmorg-12-init-16296-g5e476061'
 CLANG_SUB_REVISION = 1
 
 PACKAGE_VERSION = '%s-%s' % (CLANG_REVISION, CLANG_SUB_REVISION)
diff --git a/tools/cygprofile/PRESUBMIT.py b/tools/cygprofile/PRESUBMIT.py
index 0b69bb9..90e23d00 100644
--- a/tools/cygprofile/PRESUBMIT.py
+++ b/tools/cygprofile/PRESUBMIT.py
@@ -11,9 +11,11 @@
 
 def CommonChecks(input_api, output_api):
   output = []
-  blacklist = []
-  output.extend(input_api.canned_checks.RunPylint(
-      input_api, output_api, black_list=blacklist))
+  files_to_skip = []
+  output.extend(
+      input_api.canned_checks.RunPylint(input_api,
+                                        output_api,
+                                        files_to_skip=files_to_skip))
   output.extend(input_api.canned_checks.RunUnitTests(
       input_api,
       output_api,
diff --git a/tools/find_runtime_symbols/PRESUBMIT.py b/tools/find_runtime_symbols/PRESUBMIT.py
index 3a29a5a..62288643 100644
--- a/tools/find_runtime_symbols/PRESUBMIT.py
+++ b/tools/find_runtime_symbols/PRESUBMIT.py
@@ -26,9 +26,10 @@
 
   output.extend(
       input_api.canned_checks.RunUnitTestsInDirectory(
-          input_api, output_api,
+          input_api,
+          output_api,
           input_api.os_path.join(input_api.PresubmitLocalPath(), 'tests'),
-          whitelist=[r'.+_test\.py$']))
+          files_to_check=[r'.+_test\.py$']))
 
   if input_api.is_committing:
     output.extend(input_api.canned_checks.PanProjectChecks(input_api,
diff --git a/tools/find_runtime_symbols/find_runtime_symbols.py b/tools/find_runtime_symbols/find_runtime_symbols.py
index ba32d0c..51d129ec7 100755
--- a/tools/find_runtime_symbols/find_runtime_symbols.py
+++ b/tools/find_runtime_symbols/find_runtime_symbols.py
@@ -44,11 +44,11 @@
 
 class RuntimeSymbolsInProcess(object):
   def __init__(self):
-    self._maps = None
+    self.maps = None
     self._static_symbols_in_filse = {}
 
   def find_procedure(self, runtime_address):
-    for vma in self._maps.iter(ProcMaps.executable):
+    for vma in self.maps.iter(ProcMaps.executable):
       if vma.begin <= runtime_address < vma.end:
         static_symbols = self._static_symbols_in_filse.get(vma.name)
         if static_symbols:
@@ -59,7 +59,7 @@
     return None
 
   def find_sourcefile(self, runtime_address):
-    for vma in self._maps.iter(ProcMaps.executable):
+    for vma in self.maps.iter(ProcMaps.executable):
       if vma.begin <= runtime_address < vma.end:
         static_symbols = self._static_symbols_in_filse.get(vma.name)
         if static_symbols:
@@ -70,7 +70,7 @@
     return None
 
   def find_typeinfo(self, runtime_address):
-    for vma in self._maps.iter(ProcMaps.constants):
+    for vma in self.maps.iter(ProcMaps.constants):
       if vma.begin <= runtime_address < vma.end:
         static_symbols = self._static_symbols_in_filse.get(vma.name)
         if static_symbols:
@@ -85,12 +85,12 @@
     symbols_in_process = RuntimeSymbolsInProcess()
 
     with open(os.path.join(prepared_data_dir, _MAPS_FILENAME), mode='r') as f:
-      symbols_in_process._maps = ProcMaps.load_file(f)
+      symbols_in_process.maps = ProcMaps.load_file(f)
     with open(os.path.join(prepared_data_dir, _FILES_FILENAME), mode='r') as f:
       files = json.load(f)
 
     # pylint: disable=W0212
-    for vma in symbols_in_process._maps.iter(ProcMaps.executable_and_constants):
+    for vma in symbols_in_process.maps.iter(ProcMaps.executable_and_constants):
       file_entry = files.get(vma.name)
       if not file_entry:
         continue
diff --git a/tools/idl_parser/PRESUBMIT.py b/tools/idl_parser/PRESUBMIT.py
index ff657aa..5fe9cb1 100644
--- a/tools/idl_parser/PRESUBMIT.py
+++ b/tools/idl_parser/PRESUBMIT.py
@@ -7,9 +7,9 @@
 
 def CheckChangeOnUpload(input_api, output_api):
   return input_api.canned_checks.RunUnitTestsInDirectory(
-      input_api, output_api, '.', whitelist=WHITELIST)
+      input_api, output_api, '.', files_to_check=WHITELIST)
 
 
 def CheckChangeOnCommit(input_api, output_api):
   return input_api.canned_checks.RunUnitTestsInDirectory(
-      input_api, output_api, '.', whitelist=WHITELIST)
+      input_api, output_api, '.', files_to_check=WHITELIST)
diff --git a/tools/json_schema_compiler/PRESUBMIT.py b/tools/json_schema_compiler/PRESUBMIT.py
index 4c3dd8e..509eb598 100644
--- a/tools/json_schema_compiler/PRESUBMIT.py
+++ b/tools/json_schema_compiler/PRESUBMIT.py
@@ -12,9 +12,9 @@
 
 def CheckChangeOnUpload(input_api, output_api):
   return input_api.canned_checks.RunUnitTestsInDirectory(
-      input_api, output_api, '.', whitelist=WHITELIST)
+      input_api, output_api, '.', files_to_check=WHITELIST)
 
 
 def CheckChangeOnCommit(input_api, output_api):
   return input_api.canned_checks.RunUnitTestsInDirectory(
-      input_api, output_api, '.', whitelist=WHITELIST)
+      input_api, output_api, '.', files_to_check=WHITELIST)
diff --git a/tools/json_to_struct/PRESUBMIT.py b/tools/json_to_struct/PRESUBMIT.py
index 3280902..bb36f47 100644
--- a/tools/json_to_struct/PRESUBMIT.py
+++ b/tools/json_to_struct/PRESUBMIT.py
@@ -12,9 +12,9 @@
 
 def CheckChangeOnUpload(input_api, output_api):
   return input_api.canned_checks.RunUnitTestsInDirectory(
-      input_api, output_api, '.', whitelist=WHITELIST)
+      input_api, output_api, '.', files_to_check=WHITELIST)
 
 
 def CheckChangeOnCommit(input_api, output_api):
   return input_api.canned_checks.RunUnitTestsInDirectory(
-      input_api, output_api, '.', whitelist=WHITELIST)
+      input_api, output_api, '.', files_to_check=WHITELIST)
diff --git a/tools/linux/PRESUBMIT.py b/tools/linux/PRESUBMIT.py
index b29a8c4..241cabc 100644
--- a/tools/linux/PRESUBMIT.py
+++ b/tools/linux/PRESUBMIT.py
@@ -26,9 +26,10 @@
 
   output.extend(
       input_api.canned_checks.RunUnitTestsInDirectory(
-          input_api, output_api,
+          input_api,
+          output_api,
           input_api.os_path.join(input_api.PresubmitLocalPath(), 'tests'),
-          whitelist=[r'.+_tests\.py$']))
+          files_to_check=[r'.+_tests\.py$']))
 
   if input_api.is_committing:
     output.extend(input_api.canned_checks.PanProjectChecks(input_api,
diff --git a/tools/memory_inspector/PRESUBMIT.py b/tools/memory_inspector/PRESUBMIT.py
index bd1f73be..6ae1352 100644
--- a/tools/memory_inspector/PRESUBMIT.py
+++ b/tools/memory_inspector/PRESUBMIT.py
@@ -11,13 +11,16 @@
 
 def _CommonChecks(input_api, output_api):
   output = []
-  blacklist = [r'classification_rules.*']
-  output.extend(input_api.canned_checks.RunPylint(
-      input_api, output_api, black_list=blacklist,
-      extra_paths_list=[
-          input_api.os_path.join(input_api.PresubmitLocalPath(), '..', '..',
-                                 'build', 'android')
-      ]))
+  files_to_skip = [r'classification_rules.*']
+  output.extend(
+      input_api.canned_checks.RunPylint(input_api,
+                                        output_api,
+                                        files_to_skip=files_to_skip,
+                                        extra_paths_list=[
+                                            input_api.os_path.join(
+                                                input_api.PresubmitLocalPath(),
+                                                '..', '..', 'build', 'android')
+                                        ]))
   output.extend(input_api.canned_checks.RunUnitTests(
       input_api,
       output_api,
diff --git a/tools/metrics/histograms/enums.xml b/tools/metrics/histograms/enums.xml
index 12e1cf6e..a4a28730 100644
--- a/tools/metrics/histograms/enums.xml
+++ b/tools/metrics/histograms/enums.xml
@@ -66879,6 +66879,7 @@
   <int value="6" label="Prefetch request was cancelled"/>
   <int value="7" label="Prefetch request failed"/>
   <int value="8" label="Another reason (unexpected)"/>
+  <int value="9" label="POST, reload, link, or other non-cache loads."/>
 </enum>
 
 <enum name="SearchTemplateURLEvent">
diff --git a/tools/perf/core/perfetto_binary_roller/binary_deps.json b/tools/perf/core/perfetto_binary_roller/binary_deps.json
index 1a4bc6f..5587a52b 100644
--- a/tools/perf/core/perfetto_binary_roller/binary_deps.json
+++ b/tools/perf/core/perfetto_binary_roller/binary_deps.json
@@ -1,16 +1,16 @@
 {
     "trace_processor_shell": {
         "win": {
-            "hash": "1b175a93430138b7855ceeb6eb8516c7e66c3684",
-            "remote_path": "perfetto_binaries/trace_processor_shell/win/35f78f4a4562f61cde3b096492628e1d47acb04e/trace_processor_shell.exe"
+            "hash": "6ca5855918a82bfcb01db2253203a17b87808902",
+            "remote_path": "perfetto_binaries/trace_processor_shell/win/3bf3659d351a4ca6c07900f6de1a4c8dbbc4c9d0/trace_processor_shell.exe"
         },
         "mac": {
-            "hash": "ad7587bcfdd72883c1e1b1596ddec4f81bbf7736",
-            "remote_path": "perfetto_binaries/trace_processor_shell/mac/35f78f4a4562f61cde3b096492628e1d47acb04e/trace_processor_shell"
+            "hash": "9dd9c289783e601e61c7d680c3e7aec33a24f650",
+            "remote_path": "perfetto_binaries/trace_processor_shell/mac/eddc7d0df5d1b1fc6a35162da39375cbaa809fe7/trace_processor_shell"
         },
         "linux": {
             "hash": "5fc878a0256dfd62f3cac5b7384536e0902e23bd",
-            "remote_path": "perfetto_binaries/trace_processor_shell/linux/eddc7d0df5d1b1fc6a35162da39375cbaa809fe7/trace_processor_shell"
+            "remote_path": "perfetto_binaries/trace_processor_shell/linux/3bf3659d351a4ca6c07900f6de1a4c8dbbc4c9d0/trace_processor_shell"
         }
     },
     "power_profile.sql": {
diff --git a/tools/traffic_annotation/summary/annotations.xml b/tools/traffic_annotation/summary/annotations.xml
index 7d86df1..d7d3215 100644
--- a/tools/traffic_annotation/summary/annotations.xml
+++ b/tools/traffic_annotation/summary/annotations.xml
@@ -113,7 +113,8 @@
  <item id="favicon_loader" added_in_milestone="63" hash_code="112189210" type="0" content_hash_code="70773116" os_list="linux,windows" file_path="content/renderer/loader/web_url_loader_impl.cc"/>
  <item id="feed_image_fetcher" added_in_milestone="68" hash_code="87439531" type="0" deprecated="2019-01-04" content_hash_code="26756208" file_path=""/>
  <item id="file_system_connector_to_box" added_in_milestone="89" hash_code="29061438" type="1" second_id="29188932" content_hash_code="69177828" os_list="linux,windows" semantics_fields="1,2,3,4,5" policy_fields="-1,3,4" file_path="chrome/browser/enterprise/connectors/file_system/box_api_call_flow.cc"/>
- <item id="floc_id_provider_impl" added_in_milestone="85" hash_code="103052331" type="1" second_id="13704791" content_hash_code="41421380" os_list="linux,windows" semantics_fields="2,3,4" policy_fields="3" file_path="chrome/browser/federated_learning/floc_id_provider_impl.cc"/>
+ <item id="floc_event_logger" added_in_milestone="89" hash_code="86015226" type="1" second_id="13704791" content_hash_code="68024778" os_list="linux,windows" semantics_fields="2,3,4" policy_fields="3" file_path="chrome/browser/federated_learning/floc_event_logger.cc"/>
+ <item id="floc_id_provider_impl" added_in_milestone="85" hash_code="103052331" type="1" second_id="13704791" deprecated="2021-01-05" content_hash_code="41421380" file_path=""/>
  <item id="floc_remote_permission_service" added_in_milestone="85" hash_code="13704791" type="2" content_hash_code="86293622" os_list="linux,windows" semantics_fields="1,5" policy_fields="1,2,4" file_path="chrome/browser/federated_learning/floc_remote_permission_service.cc"/>
  <item id="ftl_messaging_client_ack_messages" added_in_milestone="86" hash_code="55663676" type="0" content_hash_code="20913627" os_list="linux,windows" file_path="remoting/signaling/ftl_messaging_client.cc"/>
  <item id="ftl_messaging_client_receive_messages" added_in_milestone="86" hash_code="136248372" type="0" content_hash_code="36609143" os_list="linux,windows" file_path="remoting/signaling/ftl_messaging_client.cc"/>
diff --git a/tools/traffic_annotation/summary/grouping.xml b/tools/traffic_annotation/summary/grouping.xml
index ed203fe..3a39dd6 100644
--- a/tools/traffic_annotation/summary/grouping.xml
+++ b/tools/traffic_annotation/summary/grouping.xml
@@ -154,7 +154,7 @@
       <traffic_annotation unique_id="services_http_server_error_response"/>
       <traffic_annotation unique_id="webrtc_peer_connection"/>
       <traffic_annotation unique_id="direct_sockets"/>
-      <traffic_annotation unique_id="floc_id_provider_impl"/>
+      <traffic_annotation unique_id="floc_event_logger"/>
       <traffic_annotation unique_id="gstatic_change_password_override_urls"/>
       <traffic_annotation unique_id="interest_feedv2_image_send"/>
       <traffic_annotation unique_id="sanitized_image_source"/>