]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - drivers/md/dm-table.c
Merge tag 'devicetree-fixes-for-5.4-2' of git://git.kernel.org/pub/scm/linux/kernel...
[linux.git] / drivers / md / dm-table.c
index 8820931ec7d2d70cf90d1c1f65fbdb8881fd559a..52e049554f5cdf6fd33a2b7e5997e531b8449759 100644 (file)
@@ -163,10 +163,8 @@ static int alloc_targets(struct dm_table *t, unsigned int num)
 
        /*
         * Allocate both the target array and offset array at once.
-        * Append an empty entry to catch sectors beyond the end of
-        * the device.
         */
-       n_highs = (sector_t *) dm_vcalloc(num + 1, sizeof(struct dm_target) +
+       n_highs = (sector_t *) dm_vcalloc(num, sizeof(struct dm_target) +
                                          sizeof(sector_t));
        if (!n_highs)
                return -ENOMEM;
@@ -1359,7 +1357,7 @@ struct dm_target *dm_table_get_target(struct dm_table *t, unsigned int index)
 /*
  * Search the btree for the correct target.
  *
- * Caller should check returned pointer with dm_target_is_valid()
+ * Caller should check returned pointer for NULL
  * to trap I/O beyond end of device.
  */
 struct dm_target *dm_table_find_target(struct dm_table *t, sector_t sector)
@@ -1368,7 +1366,7 @@ struct dm_target *dm_table_find_target(struct dm_table *t, sector_t sector)
        sector_t *node;
 
        if (unlikely(sector >= dm_table_get_size(t)))
-               return &t->targets[t->num_targets];
+               return NULL;
 
        for (l = 0; l < t->depth; l++) {
                n = get_child(n, k);