Bug #13423
closedfailed to get major for a rbd device
0%
Description
When we intend to map too many rbd devices (i.e. 229 rbd devices) in a linux system, the block major device number will be exhausted, then we'll get a error below and it leads to a failed map:
Oct 8 21:27:58 Ubuntu kernel: [66590.561463] register_blkdev: failed to get major for rbd230
Updated by Xudong Cao over 8 years ago
Xudong Cao wrote:
When we intend to map too many rbd devices (i.e. 229 rbd devices) in a linux system, the block major device number will be exhausted, then we'll get a error below and it leads to a failed map:
Oct 8 21:27:58 Ubuntu kernel: [66590.561463] register_blkdev: failed to get major for rbd230
This's a quite serious problem, once the block major device number is used up, we can't add any block device into system, i.e. a scsi disk, a usb device, etc.
Updated by Xudong Cao over 8 years ago
update: we can't add any block devices that need to dynamically alloc a major device number to system.^_^
Updated by Jason Dillaman over 8 years ago
- Status changed from New to Closed
This issue is brought up often on the mailing list. Semi-recent rbd kernel drivers can use minor device numbers instead of major. There is a module parameter named "single_major" which controls this behavior. It defaults to false, so if you load the rbd module directly (instead of allowing 'rbd map' to load the module), you will get the old behavior where a new major is used for each device.