diff --git a/modules/upload/upload.install b/modules/upload/upload.install
index 2a5fa213f4d8b9ea1a6cb047c076598c5184bdd4..e4407712a6e979abc3e44db92351a8b8e1188613 100644
--- a/modules/upload/upload.install
+++ b/modules/upload/upload.install
@@ -5,8 +5,12 @@
  * Implementation of hook_install().
  */
 function upload_install() {
-  // Create tables.
-  drupal_install_schema('upload');
+  // Create table. The upload table might have been created in the Drupal 5
+  // to Drupal 6 upgrade, and was migrated from the file_revisions table. So
+  // in this case, there is no need to create the table, it is already there.
+  if (!db_table_exists('upload')) {
+    drupal_install_schema('upload');
+  }
 }
 
 /**