diff --git a/includes/common.inc b/includes/common.inc
index 40a7919..4faf8d9 100644
--- a/includes/common.inc
+++ b/includes/common.inc
@@ -7800,10 +7800,16 @@ function entity_create_stub_entity($entity_type, $ids) {
  * @see EntityFieldQuery
  */
 function entity_load($entity_type, $ids = FALSE, $conditions = array(), $reset = FALSE) {
+  $controller = entity_get_controller($entity_type);
   if ($reset) {
-    entity_get_controller($entity_type)->resetCache();
+    if ($ids) {
+      $controller->resetCache($ids);
+    }
+    else {
+      $controller->resetCache();
+    }
   }
-  return entity_get_controller($entity_type)->load($ids, $conditions);
+  return $controller->load($ids, $conditions);
 }
 
 /**