Skip to content

Commit

Permalink
soc: ti: knav_qmss_queue: Use list_for_each_entry_safe to prevent use…
Browse files Browse the repository at this point in the history
… after free

list_for_each_entry_safe() is necessary if list objects are deleted from
the list while traversing it.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Santosh Shilimkar <ssantosh@kernel.org>
  • Loading branch information
Axel Lin authored and Santosh Shilimkar committed Nov 3, 2014
1 parent 39179cb commit 148bb04
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions drivers/soc/ti/knav_qmss_queue.c
Original file line number Diff line number Diff line change
Expand Up @@ -1306,14 +1306,14 @@ static void knav_free_queue_ranges(struct knav_device *kdev)
static void knav_queue_free_regions(struct knav_device *kdev)
{
struct knav_region *region;
struct knav_pool *pool;
struct knav_pool *pool, *tmp;
unsigned size;

for (;;) {
region = first_region(kdev);
if (!region)
break;
list_for_each_entry(pool, &region->pools, region_inst)
list_for_each_entry_safe(pool, tmp, &region->pools, region_inst)
knav_pool_destroy(pool);

size = region->virt_end - region->virt_start;
Expand Down

0 comments on commit 148bb04

Please sign in to comment.