Index: src/wp-admin/includes/class-wp-media-list-table.php
===================================================================
--- src/wp-admin/includes/class-wp-media-list-table.php	(revision 29546)
+++ src/wp-admin/includes/class-wp-media-list-table.php	(working copy)
@@ -11,16 +11,16 @@
 
 	/**
 	 * Constructor.
-	 * 
+	 *
 	 * @since 3.1.0
 	 * @access public
 	 *
 	 * @see WP_List_Table::__construct() for more information on default arguments.
 	 *
 	 * @param array $args An associative array of arguments.
-	 */	
+	 */
 	public function __construct( $args = array() ) {
-		$this->detached = isset( $_REQUEST['detached'] ) || isset( $_REQUEST['find_detached'] );
+		$this->detached = isset( $_REQUEST['detached'] );
 
 		parent::__construct( array(
 			'plural' => 'media',
@@ -33,15 +33,10 @@
 	}
 
 	public function prepare_items() {
-		global $lost, $wp_query, $post_mime_types, $avail_post_mime_types, $mode;
+		global $wp_query, $post_mime_types, $avail_post_mime_types, $mode;
 
-		$q = $_REQUEST;
+		list( $post_mime_types, $avail_post_mime_types ) = wp_edit_attachments_query( $_REQUEST );
 
-		if ( !empty( $lost ) )
-			$q['post__in'] = implode( ',', $lost );
-
-		list( $post_mime_types, $avail_post_mime_types ) = wp_edit_attachments_query( $q );
-
  		$this->is_trash = isset( $_REQUEST['status'] ) && 'trash' == $_REQUEST['status'];
 
  		$mode = empty( $_REQUEST['mode'] ) ? 'list' : $_REQUEST['mode'];
@@ -107,9 +102,7 @@
 			submit_button( __( 'Filter' ), 'button', 'filter_action', false, array( 'id' => 'post-query-submit' ) );
 		}
 
-		if ( $this->detached ) {
-			submit_button( __( 'Scan for lost attachments' ), 'secondary', 'find_detached', false );
-		} elseif ( $this->is_trash && current_user_can( 'edit_others_posts' ) ) {
+		if ( $this->is_trash && current_user_can( 'edit_others_posts' ) ) {
 			submit_button( __( 'Empty Trash' ), 'apply', 'delete_all', false );
 		} ?>
 		</div>
@@ -117,12 +110,6 @@
 	}
 
 	public function current_action() {
-		if ( isset( $_REQUEST['find_detached'] ) )
-			return 'find_detached';
-
-		if ( isset( $_REQUEST['found_post_id'] ) && isset( $_REQUEST['media'] ) )
-			return 'attach';
-
 		if ( isset( $_REQUEST['delete_all'] ) || isset( $_REQUEST['delete_all2'] ) )
 			return 'delete_all';
 
Index: src/wp-admin/upload.php
===================================================================
--- src/wp-admin/upload.php	(revision 29546)
+++ src/wp-admin/upload.php	(working copy)
@@ -89,21 +89,6 @@
 	}
 
 	switch ( $doaction ) {
-		case 'find_detached':
-			if ( !current_user_can('edit_posts') )
-				wp_die( __('You are not allowed to scan for lost attachments.') );
-
-			$lost = $wpdb->get_col( "
-				SELECT ID FROM $wpdb->posts
-				WHERE post_type = 'attachment' AND post_parent > '0'
-				AND post_parent NOT IN (
-					SELECT ID FROM $wpdb->posts
-					WHERE post_type NOT IN ( 'attachment', '" . join( "', '", get_post_types( array( 'public' => false ) ) ) . "' )
-				)
-			" );
-
-			$_REQUEST['detached'] = 1;
-			break;
 		case 'attach':
 			$parent_id = (int) $_REQUEST['found_post_id'];
 			if ( !$parent_id )
