Use makedev helper for device major and minor numbers
Major and minor numbers can be greater than 255. Major numbers are 12 bits, and minor numbers are 20 bits. Supporting major and minor numbers > 255 allows the use of the extended block device for extra mmc partitions. Change-Id: I4c42bfe0781069e8e4cb13ebe26e860cdc03f866
This commit is contained in:
parent
f74af26d18
commit
17dcc5c57d
1 changed files with 1 additions and 4 deletions
|
@ -181,11 +181,8 @@ static void make_device(const char *path, int block, int major, int minor)
|
|||
mode_t mode;
|
||||
dev_t dev;
|
||||
|
||||
if(major > 255 || minor > 255)
|
||||
return;
|
||||
|
||||
mode = get_device_perm(path, &uid, &gid) | (block ? S_IFBLK : S_IFCHR);
|
||||
dev = (major << 8) | minor;
|
||||
dev = makedev(major, minor);
|
||||
/* Temporarily change egid to avoid race condition setting the gid of the
|
||||
* device node. Unforunately changing the euid would prevent creation of
|
||||
* some device nodes, so the uid has to be set with chown() and is still
|
||||
|
|
Loading…
Reference in a new issue