]> err.no Git - linux-2.6/blobdiff - block/ll_rw_blk.c
[PATCH] ifdef blktrace debugging fields
[linux-2.6] / block / ll_rw_blk.c
index 556a3d354eab51435601dbc614be1e6e4fac6155..51dc0edf76e0281f52e53da15576e4ffa62b0eab 100644 (file)
@@ -1847,8 +1847,7 @@ static void blk_release_queue(struct kobject *kobj)
        if (q->queue_tags)
                __blk_queue_free_tags(q);
 
-       if (q->blk_trace)
-               blk_trace_shutdown(q);
+       blk_trace_shutdown(q);
 
        kmem_cache_free(requestq_cachep, q);
 }
@@ -2801,6 +2800,18 @@ long blk_congestion_wait(int rw, long timeout)
 
 EXPORT_SYMBOL(blk_congestion_wait);
 
+/**
+ * blk_congestion_end - wake up sleepers on a congestion queue
+ * @rw: READ or WRITE
+ */
+void blk_congestion_end(int rw)
+{
+       wait_queue_head_t *wqh = &congestion_wqh[rw];
+
+       if (waitqueue_active(wqh))
+               wake_up(wqh);
+}
+
 /*
  * Has to be called with the request spinlock acquired
  */