UFS imposes 18bit minor number limit on the whole system
UFS currently only supports storing a dev32_t in the inode. Since both dev(7FS) and devfs(7FS) use the underlying filesystem to store device nodes and their permissions permanently, ddi_minor_create_common() will refuse to create nodes whose minor numbers won't fit into a dev32_t, thereby limiting minor numbers to 18bits.
The dev32_t is stored in the on-disk inode in the otherwise unused array of direct disk blocks. It should be possible to store a full 64bit dev_t in that array. A new superblock flag would indicate when a 64bit dev_t is stored on the FS, preventing access by older software similar to FSLARGEFILES.
No data to display