X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=drivers%2Fblock%2Fbrd.c;h=9bf4371755f22fa93d4ccbe7d2bb605ec56a4048;hb=72de4c63e5ebe8e4054ea800d7a8d4b3f033caf2;hp=f1a29f8e9d33dbe45474172a24f952f32ce4ba47;hpb=2d4fe27850420606155fb1f7d18ab2b40153e67b;p=firefly-linux-kernel-4.4.55.git diff --git a/drivers/block/brd.c b/drivers/block/brd.c index f1a29f8e9d33..9bf4371755f2 100644 --- a/drivers/block/brd.c +++ b/drivers/block/brd.c @@ -117,13 +117,13 @@ static struct page *brd_insert_page(struct brd_device *brd, sector_t sector) spin_lock(&brd->brd_lock); idx = sector >> PAGE_SECTORS_SHIFT; + page->index = idx; if (radix_tree_insert(&brd->brd_pages, idx, page)) { __free_page(page); page = radix_tree_lookup(&brd->brd_pages, idx); BUG_ON(!page); BUG_ON(page->index != idx); - } else - page->index = idx; + } spin_unlock(&brd->brd_lock); radix_tree_preload_end();