File tree Expand file tree Collapse file tree 2 files changed +12
-0
lines changed Expand file tree Collapse file tree 2 files changed +12
-0
lines changed Original file line number Diff line number Diff line change @@ -1201,10 +1201,21 @@ struct class block_class = {
1201
1201
.dev_uevent = block_uevent ,
1202
1202
};
1203
1203
1204
+ static char * block_devnode (struct device * dev , umode_t * mode ,
1205
+ kuid_t * uid , kgid_t * gid )
1206
+ {
1207
+ struct gendisk * disk = dev_to_disk (dev );
1208
+
1209
+ if (disk -> fops -> devnode )
1210
+ return disk -> fops -> devnode (disk , mode );
1211
+ return NULL ;
1212
+ }
1213
+
1204
1214
const struct device_type disk_type = {
1205
1215
.name = "disk" ,
1206
1216
.groups = disk_attr_groups ,
1207
1217
.release = disk_release ,
1218
+ .devnode = block_devnode ,
1208
1219
};
1209
1220
1210
1221
#ifdef CONFIG_PROC_FS
Original file line number Diff line number Diff line change @@ -1395,6 +1395,7 @@ struct block_device_operations {
1395
1395
void (* swap_slot_free_notify ) (struct block_device * , unsigned long );
1396
1396
int (* report_zones )(struct gendisk * , sector_t sector ,
1397
1397
unsigned int nr_zones , report_zones_cb cb , void * data );
1398
+ char * (* devnode )(struct gendisk * disk , umode_t * mode );
1398
1399
/* returns the length of the identifier or a negative errno: */
1399
1400
int (* get_unique_id )(struct gendisk * disk , u8 id [16 ],
1400
1401
enum blk_unique_id id_type );
You can’t perform that action at this time.
0 commit comments