devfs (6/7) - cleanup partition handling interaction
Subsystems (4)
PATCH 1/1 devfs (6/7) - cleanup partition handling interaction
Always pass around the pathnames for the devfs entries / directories instead of the devfs_handle_ts. Cleanes up the code massivly.
drivers/block/cpqarray.c +3 -5
@@ -400,7 +400,6 @@sprintf (disk->disk_name,"ida/c%dd%d" , i, j); disk->major =COMPAQ_SMART2_MAJOR + i; disk->first_minor = j<<NWD_SHIFT ; - disk->flags =GENHD_FL_DEVFS ; disk->fops = &ida_fops;if (!drv->nr_blks)continue ;
@@ -1678,10 +1677,9 @@return ; } -if (!disk->de) { - disk->de =devfs_mk_dir ("ida/c%dd%d" , - ctlr, log_unit); - } + +sprintf (disk->devfs_name,"ida/c%dd%d" , ctlr, log_unit); + info_p->phys_drives = sense_config_buf->ctlr_phys_drv; info_p->drv_assign_map
drivers/cdrom/sbpcd.c +1 -3
@@ -5645,7 +5645,6 @@ int __init sbpcd_init(void)#endif { -char nbuff[16 ];int i=0 , j=0 ;int addr[2 ]={1 ,CDROM_PORT };int port_index;
@@ -5869,8 +5868,7 @@ disk->fops = &sbpcd_bdops;strcpy (disk->disk_name, sbpcd_infop->name); disk->flags =GENHD_FL_CD ; -sprintf (nbuff,"sbp/c0t%d" , p->drv_id); - disk->de =devfs_mk_dir (NULL , nbuff,NULL ); +sprintf (disk->devfs_name,"sbp/c0t%d" , p->drv_id); p->disk = disk;if (register_cdrom (sbpcd_infop)) {
drivers/ide/ide-cd.c +1 -1
@@ -3366,7 +3366,7 @@DRIVER (drive)->busy++; g->minors =1 ; g->minor_shift =0 ; - g->de = drive->de; +strcpy (g->devfs_name, drive->devfs_name); g->driverfs_dev = &drive->gendev; g->flags =GENHD_FL_CD ;if (ide_cdrom_setup (drive)) {
drivers/ide/ide-disk.c +1 -2
@@ -1816,10 +1816,9 @@DRIVER (drive)->busy--; g->minors =1 <<PARTN_BITS ; g->minor_shift =PARTN_BITS ; - g->de = drive->de; +strcpy (g->devfs_name, drive->devfs_name); g->driverfs_dev = &drive->gendev; g->flags = drive->removable ?GENHD_FL_REMOVABLE :0 ; - g->flags |=GENHD_FL_DEVFS ;set_capacity (g,current_capacity (drive)); g->fops = &idedisk_ops;add_disk (g);
drivers/ide/ide-floppy.c +1 -2
@@ -2059,9 +2059,8 @@ g->minors =1 <<PARTN_BITS ; g->minor_shift =PARTN_BITS ; g->driverfs_dev = &drive->gendev; - g->de = drive->de; +strcpy (g->devfs_name, drive->devfs_name); g->flags = drive->removable ?GENHD_FL_REMOVABLE :0 ; - g->flags |=GENHD_FL_DEVFS ; g->fops = &idefloppy_ops;add_disk (g);return 0 ;
drivers/ide/ide-io.c +0 -1
@@ -41,7 +41,6 @@#include <linux/pci.h> #include <linux/delay.h> #include <linux/ide.h> -#include <linux/devfs_fs_kernel.h> #include <linux/completion.h> #include <linux/reboot.h> #include <linux/cdrom.h>
drivers/ide/ide-probe.c +0 -1
@@ -1303,7 +1303,6 @@ (hwif->channel && hwif->mate) ? hwif->mate->index : hwif->index, hwif->channel, unit, drive->lun); - drive->de =devfs_mk_dir (drive->devfs_name); } } blk_register_region(MKDEV(hwif->major, 0), MAX_DRIVES << PARTN_BITS,
drivers/s390/block/dasd.c +2 -1
@@ -157,9 +157,10 @@#ifdef CONFIG_DEVFS_FS /* Add a proc directory and the dasd device entry to devfs. */ - device->gdp->de =devfs_mk_dir ("dasd/%04x" , +sprintf (device->gdp->devfs_name,"dasd/%04x" ,_ccw_device_get_device_number (device->cdev));#endif +if (device->ro_flag) devfs_perm =S_IFBLK |S_IRUSR ;else
drivers/s390/block/dasd_genhd.c +0 -1
@@ -137,7 +137,6 @@ gdp->major = mi->major; gdp->first_minor = index <<DASD_PARTN_BITS ; gdp->fops = &dasd_device_operations; - gdp->flags |=GENHD_FL_DEVFS ;/* * Set device name.
drivers/scsi/scsi.h +0 -2
@@ -16,7 +16,6 @@#define _SCSI_H#include <linux/config.h> /* for CONFIG_SCSI_LOGGING */ -#include <linux/devfs_fs_kernel.h> /* some morons don't know struct pointers */ #include <scsi/scsi.h>
@@ -589,7 +588,6 @@void *hostdata;/* available to low-level driver */ char devfs_name[256 ];/* devfs junk */ -devfs_handle_t de;/* will go away soon */ char type;char scsi_level;unsigned char inquiry_len;/* valid bytes in 'inquiry' */
drivers/scsi/scsi_scan.c +0 -1
@@ -1247,7 +1247,6 @@sprintf (sdev->devfs_name,"scsi/host%d/bus%d/target%d/lun%d" , sdev->host->host_no, sdev->channel, sdev->id, sdev->lun); - sdev->de =devfs_mk_dir (sdev->devfs_name);/* * End driverfs/devfs code.
drivers/scsi/sd.c +3 -2
@@ -1327,7 +1327,6 @@ sdkp->disk = gd; sdkp->index = index; - gd->de = sdp->de; gd->major =sd_major (index >>4 ); gd->first_minor = (index &15 ) <<4 ; gd->minors =16 ;
@@ -1340,10 +1339,12 @@sprintf (gd->disk_name,"sd%c" ,'a' + index %26 ); } +strcpy (gd->devfs_name, sdp->devfs_name); +sd_init_onedisk (sdkp, gd); gd->driverfs_dev = &sdp->sdev_driverfs_dev; - gd->flags =GENHD_FL_DRIVERFS |GENHD_FL_DEVFS ; + gd->flags =GENHD_FL_DRIVERFS ;if (sdp->removable) gd->flags |=GENHD_FL_REMOVABLE ; gd->private_data = &sdkp->driver;
drivers/scsi/sr.c +1 -1
@@ -569,7 +569,7 @@get_capabilities (cd);sr_vendor_init (cd); - disk->de = sdev->de; +strcpy (disk->devfs_name, sdev->devfs_name); disk->driverfs_dev = &sdev->sdev_driverfs_dev;register_cdrom (&cd->cdi);set_capacity (disk, cd->capacity);
fs/devfs/util.c +58 -65
136 lines not on this page · raw message
fs/partitions/check.c +25 -44
110 lines not on this page · raw message
include/linux/devfs_fs_kernel.h +9 -1
@@ -37,7 +37,9 @@extern void devfs_create_partitions (struct gendisk *dev);extern void devfs_create_cdrom (struct gendisk *dev);extern void devfs_remove_partitions (struct gendisk *dev); -extern void mount_devfs_fs (void ); +extern void devfs_remove_cdrom (struct gendisk *dev); +extern void devfs_register_partition (struct gendisk *dev,int part); +extern void mount_devfs_fs (void );#else /* CONFIG_DEVFS_FS */ static inline devfs_handle_t devfs_register (devfs_handle_t dir, const char *name,
@@ -83,6 +85,12 @@ { }static inline void devfs_remove_partitions (struct gendisk *dev) +{ +} +static inline void devfs_remove_cdrom (struct gendisk *dev) +{ +} +static inline void devfs_register_partition (struct gendisk *dev,int part) { }static inline void mount_devfs_fs (void )
include/linux/genhd.h +6 -7
@@ -55,12 +55,13 @@ } __attribute__((packed)); #ifdef __KERNEL__ -# include <linux/devfs_fs_kernel.h> - +#include <linux/devfs_fs_kernel.h> /* we don't need any devfs crap + here, but some of the implicitly + included headers. will clean + this mess up later. --hch */ struct hd_struct { sector_t start_sect; sector_t nr_sects; - devfs_handle_t de; /* primary (master) devfs entry */ struct kobject kobj; unsigned reads, read_sectors, writes, write_sectors; int policy;
@@ -68,7 +69,6 @@#define GENHD_FL_REMOVABLE 1#define GENHD_FL_DRIVERFS 2 -#define GENHD_FL_DEVFS 4#define GENHD_FL_CD 8#define GENHD_FL_UP 16
@@ -96,9 +96,8 @@sector_t capacity;int flags; -int number;/* devfs crap */ -devfs_handle_t de;/* more of the same */ -devfs_handle_t disk_de;/* piled higher and deeper */ +char devfs_name[64 ];/* devfs crap */ +int number;/* more of the same */ struct device *driverfs_dev;struct kobject kobj;
include/linux/ide.h +0 -2
@@ -13,7 +13,6 @@#include <linux/hdsmart.h> #include <linux/blkdev.h> #include <linux/proc_fs.h> -#include <linux/devfs_fs_kernel.h> #include <linux/interrupt.h> #include <linux/bitops.h> #include <linux/bio.h>
@@ -700,7 +699,6 @@struct proc_dir_entry *proc;/* /proc/ide/ directory entry */ struct ide_settings_s *settings;/* /proc/ide/ drive settings */ char devfs_name[64 ];/* devfs crap */ -devfs_handle_t de;/* will go away soon */ struct hwif_s *hwif;/* actually (ide_hwif_t *) */