diff --git a/core/modules/system/system.admin.inc b/core/modules/system/system.admin.inc
index aac0c3d..f53f857 100644
--- a/core/modules/system/system.admin.inc
+++ b/core/modules/system/system.admin.inc
@@ -831,10 +831,10 @@ function system_modules($form, $form_state = array()) {
           $extra['disabled'] = TRUE;
         }
         elseif ($files[$requires]->status) {
-          $extra['requires'][$requires] = t('@module (<span class="admin-enabled">enabled</span>)', array('@module' => $requires_name));
+          $extra['requires'][$requires] = t('!module (<span class="admin-enabled">enabled</span>)', array('!module' => l($requires_name, 'admin/modules', array('fragment' => 'module-' . $files[$requires]->name))));
         }
         else {
-          $extra['requires'][$requires] = t('@module (<span class="admin-disabled">disabled</span>)', array('@module' => $requires_name));
+          $extra['requires'][$requires] = t('!module (<span class="admin-disabled">disabled</span>)', array('!module' => l($requires_name, 'admin/modules', array('fragment' => 'module-' . $files[$requires]->name))));
         }
       }
     }
@@ -878,11 +878,11 @@ function system_modules($form, $form_state = array()) {
       // Hidden modules are unset already.
       if (isset($visible_files[$required_by])) {
         if ($files[$required_by]->status == 1 && $module->status == 1) {
-          $extra['required_by'][] = t('@module (<span class="admin-enabled">enabled</span>)', array('@module' => $files[$required_by]->info['name']));
+          $extra['required_by'][] = t('!module (<span class="admin-enabled">enabled</span>)', array('!module' => l($files[$required_by]->info['name'], 'admin/modules', array('fragment' => 'module-' . $files[$required_by]->name))));
           $extra['disabled'] = TRUE;
         }
         else {
-          $extra['required_by'][] = t('@module (<span class="admin-disabled">disabled</span>)', array('@module' => $files[$required_by]->info['name']));
+          $extra['required_by'][] = t('!module (<span class="admin-disabled">disabled</span>)', array('!module' => l($files[$required_by]->info['name'], 'admin/modules', array('fragment' => 'module-' . $files[$required_by]->name))));
         }
       }
     }
@@ -2605,7 +2605,10 @@ function theme_system_modules_fieldset($variables) {
     $module = $form[$key];
     $row = array();
     unset($module['enable']['#title']);
-    $row[] = array('class' => array('checkbox'), 'data' => drupal_render($module['enable']));
+    $row[] = array(
+      'class' => array('checkbox'),
+      'data' => l($key, 'admin/modules', array('attributes' => array('name' => 'module-' . $key, 'class' => array('element-invisible')))) . drupal_render($module['enable'])
+    );
     $label = '<label';
     if (isset($module['enable']['#id'])) {
       $label .= ' for="' . $module['enable']['#id'] . '"';
