]> Pileus Git - ~andy/linux/blobdiff - block/genhd.c
block cfq: don't use atomic_t for cfq_group
[~andy/linux] / block / genhd.c
index 79b9e327f3cb97b8ebc22e70f3e70aaf22e0ce43..399d37ec7412d6af84ba1082721a54b0864f3195 100644 (file)
@@ -239,7 +239,7 @@ static struct blk_major_name {
 } *major_names[BLKDEV_MAJOR_HASH_SIZE];
 
 /* index in the above - for now: assume no multimajor ranges */
-static inline int major_to_index(int major)
+static inline int major_to_index(unsigned major)
 {
        return major % BLKDEV_MAJOR_HASH_SIZE;
 }
@@ -1193,6 +1193,8 @@ struct gendisk *alloc_disk_node(int minors, int node_id)
                }
                disk->part_tbl->part[0] = &disk->part0;
 
+               hd_ref_init(&disk->part0);
+
                disk->minors = minors;
                rand_initialize_disk(disk);
                disk_to_dev(disk)->class = &block_class;