summaryrefslogtreecommitdiffstats
path: root/drivers/block/drbd/drbd_main.c
diff options
context:
space:
mode:
authorAndreas Gruenbacher2011-01-21 17:18:39 +0100
committerPhilipp Reisner2011-08-29 11:26:31 +0200
commitdac1389ccc273b5486f2931c64c8e1672f233727 (patch)
tree51c0c5e5886928edbc7c9b8b5afa33d95698c507 /drivers/block/drbd/drbd_main.c
parentdrbd: Use interval tree for overlapping write request detection (diff)
downloadkernel-qcow2-linux-dac1389ccc273b5486f2931c64c8e1672f233727.tar.gz
kernel-qcow2-linux-dac1389ccc273b5486f2931c64c8e1672f233727.tar.xz
kernel-qcow2-linux-dac1389ccc273b5486f2931c64c8e1672f233727.zip
drbd: Add read_requests tree
We do not do collision detection for read requests, but we still need to look up the request objects when we receive a package over the network. Using the same data structure for read and write requests results in simpler code once the tl_hash and app_reads_hash tables are removed. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Diffstat (limited to 'drivers/block/drbd/drbd_main.c')
-rw-r--r--drivers/block/drbd/drbd_main.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/block/drbd/drbd_main.c b/drivers/block/drbd/drbd_main.c
index 4d85838f53e3..c0ea5baa9a1b 100644
--- a/drivers/block/drbd/drbd_main.c
+++ b/drivers/block/drbd/drbd_main.c
@@ -3473,6 +3473,7 @@ struct drbd_conf *drbd_new_device(unsigned int minor)
/* no need to lock access, we are still initializing this minor device. */
if (!tl_init(mdev))
goto out_no_tl;
+ mdev->read_requests = RB_ROOT;
mdev->write_requests = RB_ROOT;
mdev->app_reads_hash = kzalloc(APP_R_HSIZE*sizeof(void *), GFP_KERNEL);