ASoC: topology: ABI - Add sig_bits to stream caps
[deliverable/linux.git] / drivers / md / dm-bio-prison.h
index 74cf01144b1fc9c12777f669e1cf6e5e23422d44..54352f009bfd5ad3cf011896536c4aa5baee18c6 100644 (file)
@@ -101,6 +101,19 @@ void dm_cell_visit_release(struct dm_bio_prison *prison,
                           void (*visit_fn)(void *, struct dm_bio_prison_cell *),
                           void *context, struct dm_bio_prison_cell *cell);
 
+/*
+ * Rather than always releasing the prisoners in a cell, the client may
+ * want to promote one of them to be the new holder.  There is a race here
+ * though between releasing an empty cell, and other threads adding new
+ * inmates.  So this function makes the decision with its lock held.
+ *
+ * This function can have two outcomes:
+ * i) An inmate is promoted to be the holder of the cell (return value of 0).
+ * ii) The cell has no inmate for promotion and is released (return value of 1).
+ */
+int dm_cell_promote_or_release(struct dm_bio_prison *prison,
+                              struct dm_bio_prison_cell *cell);
+
 /*----------------------------------------------------------------*/
 
 /*
This page took 0.029462 seconds and 5 git commands to generate.