soc: fsl: dpio: cleanup the cpu array on dpaa2_io_down
[linux-2.6-microblaze.git] / drivers / soc / fsl / dpio / dpio-service.c
index ec0837f..ab046f2 100644 (file)
@@ -160,6 +160,11 @@ struct dpaa2_io *dpaa2_io_create(const struct dpaa2_io_desc *desc)
  */
 void dpaa2_io_down(struct dpaa2_io *d)
 {
+       spin_lock(&dpio_list_lock);
+       dpio_by_cpu[d->dpio_desc.cpu] = NULL;
+       list_del(&d->node);
+       spin_unlock(&dpio_list_lock);
+
        kfree(d);
 }