Lines Matching full:major

50 /* for extended dynamic devt allocation, currently only one major is used */
182 int major; member
190 static inline int major_to_index(unsigned major) in major_to_index() argument
192 return major % BLKDEV_MAJOR_HASH_SIZE; in major_to_index()
202 if (dp->major == offset) in blkdev_show()
203 seq_printf(seqf, "%3d %s\n", dp->major, dp->name); in blkdev_show()
211 * @major: the requested major device number [1..BLKDEV_MAJOR_MAX-1]. If
212 * @major = 0, try to allocate any unused major number.
214 * @probe: allback that is called on access to any minor number of @major
218 * The return value depends on the @major input parameter:
220 * - if a major device number was requested in range [1..BLKDEV_MAJOR_MAX-1]
222 * - if any unused major number was requested with @major = 0 parameter
223 * then the return value is the allocated major number in range
227 * major numbers.
231 int __register_blkdev(unsigned int major, const char *name, in __register_blkdev() argument
240 if (major == 0) { in __register_blkdev()
247 printk("%s: failed to get major for %s\n", in __register_blkdev()
252 major = index; in __register_blkdev()
253 ret = major; in __register_blkdev()
256 if (major >= BLKDEV_MAJOR_MAX) { in __register_blkdev()
257 pr_err("%s: major requested (%u) is greater than the maximum (%u) for %s\n", in __register_blkdev()
258 __func__, major, BLKDEV_MAJOR_MAX-1, name); in __register_blkdev()
270 p->major = major; in __register_blkdev()
274 index = major_to_index(major); in __register_blkdev()
278 if ((*n)->major == major) in __register_blkdev()
288 printk("register_blkdev: cannot get major %u for %s\n", in __register_blkdev()
289 major, name); in __register_blkdev()
298 void unregister_blkdev(unsigned int major, const char *name) in unregister_blkdev() argument
302 int index = major_to_index(major); in unregister_blkdev()
307 if ((*n)->major == major) in unregister_blkdev()
339 if (MAJOR(devt) <= 0xff && MINOR(devt) <= 0xff) { in bdevt_str()
341 snprintf(tbuf, BDEVT_SIZE, "%02x%02x", MAJOR(devt), MINOR(devt)); in bdevt_str()
344 snprintf(buf, BDEVT_SIZE, "%03x:%05x", MAJOR(devt), MINOR(devt)); in bdevt_str()
408 * If the driver provides an explicit major number it also must provide in device_add_disk()
414 if (disk->major) { in device_add_disk()
430 disk->major = BLOCK_EXT_MAJOR; in device_add_disk()
446 ddev->devt = MKDEV(disk->major, disk->first_minor); in device_add_disk()
493 disk->major, disk->first_minor); in device_add_disk()
536 if (disk->major == BLOCK_EXT_MAJOR) in device_add_disk()
655 unsigned int major = MAJOR(devt); in blk_request_module() local
659 for (n = &major_names[major_to_index(major)]; *n; n = &(*n)->next) { in blk_request_module()
660 if ((*n)->major == major && (*n)->probe) { in blk_request_module()
668 if (request_module("block-major-%d-%d", MAJOR(devt), MINOR(devt)) > 0) in blk_request_module()
670 request_module("block-major-%d", MAJOR(devt)); in blk_request_module()
778 seq_puts(seqf, "major minor #blocks name\n\n"); in show_partition_start()
800 MAJOR(part->bd_dev), MINOR(part->bd_dev), in show_partition()
1140 seq_puts(seqf, "major minor name" in diskstats_show()
1163 MAJOR(hd->bd_dev), MINOR(hd->bd_dev), hd, in diskstats_show()
1243 devt = MKDEV(MAJOR(dev->devt), in blk_lookup_devt()