Lines Matching refs:minor
357 static int xlbd_reserve_minors(unsigned int minor, unsigned int nr) in xlbd_reserve_minors() argument
359 unsigned int end = minor + nr; in xlbd_reserve_minors()
384 if (find_next_bit(minors, end, minor) >= end) { in xlbd_reserve_minors()
385 bitmap_set(minors, minor, nr); in xlbd_reserve_minors()
394 static void xlbd_release_minors(unsigned int minor, unsigned int nr) in xlbd_release_minors() argument
396 unsigned int end = minor + nr; in xlbd_release_minors()
400 bitmap_clear(minors, minor, nr); in xlbd_release_minors()
862 static int xen_translate_vdev(int vdevice, int *minor, unsigned int *offset) in xen_translate_vdev() argument
866 *minor = BLKIF_MINOR(vdevice); in xen_translate_vdev()
869 *offset = (*minor / 64) + EMULATED_HD_DISK_NAME_OFFSET; in xen_translate_vdev()
870 *minor = ((*minor / 64) * PARTS_PER_DISK) + in xen_translate_vdev()
874 *offset = (*minor / 64) + 2 + EMULATED_HD_DISK_NAME_OFFSET; in xen_translate_vdev()
875 *minor = (((*minor / 64) + 2) * PARTS_PER_DISK) + in xen_translate_vdev()
879 *offset = (*minor / PARTS_PER_DISK) + EMULATED_SD_DISK_NAME_OFFSET; in xen_translate_vdev()
880 *minor = *minor + EMULATED_SD_DISK_MINOR_OFFSET; in xen_translate_vdev()
889 *offset = (*minor / PARTS_PER_DISK) + in xen_translate_vdev()
892 *minor = *minor + in xen_translate_vdev()
904 *offset = (*minor / PARTS_PER_DISK) + in xen_translate_vdev()
907 *minor = *minor + in xen_translate_vdev()
912 *offset = *minor / PARTS_PER_DISK; in xen_translate_vdev()
939 int minor; in xlvbd_alloc_gendisk() local
953 err = xen_translate_vdev(info->vdevice, &minor, &offset); in xlvbd_alloc_gendisk()
958 minor = BLKIF_MINOR_EXT(info->vdevice); in xlvbd_alloc_gendisk()
960 offset = minor / nr_parts; in xlvbd_alloc_gendisk()
966 if (minor >> MINORBITS) { in xlvbd_alloc_gendisk()
968 info->vdevice, minor); in xlvbd_alloc_gendisk()
972 if ((minor % nr_parts) == 0) in xlvbd_alloc_gendisk()
975 err = xlbd_reserve_minors(minor, nr_minors); in xlvbd_alloc_gendisk()
991 "%d", minor & (nr_parts - 1)); in xlvbd_alloc_gendisk()
994 gd->first_minor = minor; in xlvbd_alloc_gendisk()
1024 xlbd_release_minors(minor, nr_minors); in xlvbd_alloc_gendisk()
1031 unsigned int minor, nr_minors; in xlvbd_release_gendisk() local
1047 minor = info->gd->first_minor; in xlvbd_release_gendisk()
1049 xlbd_release_minors(minor, nr_minors); in xlvbd_release_gendisk()