diff --git a/core/modules/system/src/Controller/AdminController.php b/core/modules/system/src/Controller/AdminController.php
index 2a88b11025..90b2d1160f 100644
--- a/core/modules/system/src/Controller/AdminController.php
+++ b/core/modules/system/src/Controller/AdminController.php
@@ -50,7 +50,7 @@ public function index() {
       $module_info[$module]->info = $info;
     }
 
-    uasort($module_info, 'system_sort_modules_by_info_name');
+    uasort($module_info, 'system_sort_by_info_name');
     $menu_items = [];
 
     foreach ($module_info as $module => $info) {
diff --git a/core/modules/system/src/Controller/SystemController.php b/core/modules/system/src/Controller/SystemController.php
index f1f765d71c..848af4a8d3 100644
--- a/core/modules/system/src/Controller/SystemController.php
+++ b/core/modules/system/src/Controller/SystemController.php
@@ -203,7 +203,7 @@ public function themesPage() {
     $config = $this->config('system.theme');
     // Get all available themes.
     $themes = $this->themeHandler->rebuildThemeData();
-    uasort($themes, 'system_sort_modules_by_info_name');
+    uasort($themes, 'system_sort_by_info_name');
 
     $theme_default = $config->get('default');
     $theme_groups = ['installed' => [], 'uninstalled' => []];
diff --git a/core/modules/system/src/Form/ModulesListForm.php b/core/modules/system/src/Form/ModulesListForm.php
index cf84a71a2c..58bf8b6b4d 100644
--- a/core/modules/system/src/Form/ModulesListForm.php
+++ b/core/modules/system/src/Form/ModulesListForm.php
@@ -170,7 +170,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       // The module list needs to be reset so that it can re-scan and include
       // any new modules that may have been added directly into the filesystem.
       $modules = $this->moduleExtensionList->reset()->getList();
-      uasort($modules, 'system_sort_modules_by_info_name');
+      uasort($modules, 'system_sort_by_info_name');
     }
     catch (InfoParserException $e) {
       $this->messenger()->addError($this->t('Modules could not be listed due to an error: %error', ['%error' => $e->getMessage()]));
diff --git a/core/modules/system/src/Form/ModulesUninstallForm.php b/core/modules/system/src/Form/ModulesUninstallForm.php
index 3d2c70b61c..0b43740376 100644
--- a/core/modules/system/src/Form/ModulesUninstallForm.php
+++ b/core/modules/system/src/Form/ModulesUninstallForm.php
@@ -144,7 +144,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
 
     // Sort all modules by their name.
-    uasort($uninstallable, 'system_sort_modules_by_info_name');
+    uasort($uninstallable, 'system_sort_by_info_name');
     $validation_reasons = $this->moduleInstaller->validateUninstall(array_keys($uninstallable));
 
     $form['uninstall'] = ['#tree' => TRUE];
diff --git a/core/modules/system/system.module b/core/modules/system/system.module
index 0edbe43b77..f05a6f7bc8 100644
--- a/core/modules/system/system.module
+++ b/core/modules/system/system.module
@@ -890,9 +890,17 @@ function system_region_list($theme, $show = REGIONS_ALL) {
 }
 
 /**
- * Array sorting callback; sorts modules by their name.
+ * {@inheritdoc}
  */
 function system_sort_modules_by_info_name($a, $b) {
+  @trigger_error('system_sort_modules_by_info_name() is deprecated in drupal:9.3.0 and is removed from drupal:10.0.0. Implement system_sort_by_info_name() instead. See https://www.drupal.org/project/drupal/issues/778346', E_USER_DEPRECATED);
+  return system_sort_by_info_name($a, $b);
+}
+
+/**
+ * Array sorting callback; sorts modules by their name.
+ */
+function system_sort_by_info_name($a, $b) {
   return strcasecmp($a->info['name'], $b->info['name']);
 }
 
@@ -902,7 +910,7 @@ function system_sort_modules_by_info_name($a, $b) {
  * Callback for uasort() within
  * \Drupal\system\Controller\SystemController::themesPage().
  *
- * @see system_sort_modules_by_info_name()
+ * @see system_sort_by_info_name()
  */
 function system_sort_themes($a, $b) {
   if ($a->is_default) {
diff --git a/core/modules/system/tests/src/Kernel/SystemDeprecationTest.php b/core/modules/system/tests/src/Kernel/SystemDeprecationTest.php
new file mode 100644
index 0000000000..fc5ce0df4f
--- /dev/null
+++ b/core/modules/system/tests/src/Kernel/SystemDeprecationTest.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace Drupal\Tests\system\Kernel;
+
+use Drupal\KernelTests\KernelTestBase;
+
+/**
+ * @group system
+ * @group legacy
+ */
+class SystemDeprecationTest extends KernelTestBase {
+
+  /**
+   * {@inheritdoc}
+   */
+  protected static $modules = ['system', 'user'];
+
+  /**
+   * @see system_sort_modules_by_info_name()
+   */
+  public function testSystemSortModulesByInfoName() {
+    foreach (\Drupal::service('extension.list.module')->getAllInstalledInfo() as $module => $info) {
+      $module_info[$module] = new \stdClass();
+      $module_info[$module]->info = $info;
+    }
+    $this->expectDeprecation('system_sort_modules_by_info_name() is deprecated in drupal:9.3.0 and is removed from drupal:10.0.0. Implement system_sort_by_info_name() instead. See https://www.drupal.org/project/drupal/issues/778346');
+    uasort($module_info, 'system_sort_modules_by_info_name');
+  }
+
+}
