# This is a BitKeeper generated patch for the following project: # Project Name: Linux kernel tree # This patch format is intended for GNU patch command version 2.5 or higher. # This patch includes the following deltas: # ChangeSet 1.544 -> 1.545 # drivers/ide/probe.c 1.65 -> 1.66 # drivers/block/ps2esdi.c 1.39 -> 1.40 # drivers/cdrom/gscd.c 1.18 -> 1.19 # drivers/block/loop.c 1.52 -> 1.53 # drivers/cdrom/mcd.c 1.16 -> 1.17 # drivers/ide/hd.c 1.27 -> 1.28 # drivers/cdrom/cdu31a.c 1.20 -> 1.21 # drivers/block/floppy.c 1.33 -> 1.34 # drivers/cdrom/sbpcd.c 1.23 -> 1.24 # fs/devfs/base.c 1.46 -> 1.47 # drivers/scsi/sd.c 1.45 -> 1.46 # drivers/cdrom/optcd.c 1.14 -> 1.15 # drivers/scsi/sr.c 1.30 -> 1.31 # drivers/block/xd.c 1.30 -> 1.31 # drivers/md/md.c 1.89 -> 1.90 # drivers/cdrom/sonycd535.c 1.18 -> 1.19 # drivers/cdrom/cm206.c 1.17 -> 1.18 # drivers/block/swim3.c 1.13 -> 1.14 # drivers/mtd/mtdblock.c 1.20 -> 1.21 # drivers/cdrom/mcdx.c 1.17 -> 1.18 # drivers/block/acsi.c 1.27 -> 1.28 # drivers/md/lvm.c 1.30 -> 1.31 # drivers/cdrom/sjcd.c 1.14 -> 1.15 # include/linux/devfs_fs_kernel.h 1.13 -> 1.14 # drivers/s390/block/xpram.c 1.23 -> 1.24 # drivers/block/DAC960.c 1.32 -> 1.33 # drivers/s390/block/dasd_genhd.c 1.2 -> 1.3 # drivers/block/paride/pd.c 1.28 -> 1.29 # drivers/cdrom/aztcd.c 1.16 -> 1.17 # drivers/s390/char/tapeblock.c 1.12 -> 1.13 # fs/block_dev.c 1.75 -> 1.76 # # The following is the BitKeeper ChangeSet Log # -------------------------------------------- # 02/07/30 greg@kroah.com 1.545 # Removed devfs_register_blkdev and devfs_unregister_blkdev. # # Use register_blkdev and unregister_blkdev as before, and everything will work just fine. # -------------------------------------------- # diff -Nru a/drivers/block/DAC960.c b/drivers/block/DAC960.c --- a/drivers/block/DAC960.c Tue Jul 30 15:50:01 2002 +++ b/drivers/block/DAC960.c Tue Jul 30 15:50:01 2002 @@ -1934,7 +1934,7 @@ /* Register the Block Device Major Number for this DAC960 Controller. */ - if (devfs_register_blkdev(MajorNumber, "dac960", + if (register_blkdev(MajorNumber, "dac960", &DAC960_BlockDeviceOperations) < 0) { DAC960_Error("UNABLE TO ACQUIRE MAJOR NUMBER %d - DETACHING\n", @@ -1993,7 +1993,7 @@ /* Unregister the Block Device Major Number for this DAC960 Controller. */ - devfs_unregister_blkdev(MajorNumber, "dac960"); + unregister_blkdev(MajorNumber, "dac960"); /* Remove the I/O Request Queue. */ diff -Nru a/drivers/block/acsi.c b/drivers/block/acsi.c --- a/drivers/block/acsi.c Tue Jul 30 15:50:01 2002 +++ b/drivers/block/acsi.c Tue Jul 30 15:50:01 2002 @@ -56,7 +56,6 @@ #include #include #include -#include #include #include #include @@ -1741,14 +1740,14 @@ int err = 0; if (!MACH_IS_ATARI || !ATARIHW_PRESENT(ACSI)) return 0; - if (devfs_register_blkdev( MAJOR_NR, "ad", &acsi_fops )) { + if (register_blkdev( MAJOR_NR, "ad", &acsi_fops )) { printk( KERN_ERR "Unable to get major %d for ACSI\n", MAJOR_NR ); return -EBUSY; } if (!(acsi_buffer = (char *)atari_stram_alloc(ACSI_BUFFER_SIZE, "acsi"))) { printk( KERN_ERR "Unable to get ACSI ST-Ram buffer.\n" ); - devfs_unregister_blkdev( MAJOR_NR, "ad" ); + unregister_blkdev( MAJOR_NR, "ad" ); return -ENOMEM; } phys_acsi_buffer = virt_to_phys( acsi_buffer ); @@ -1786,7 +1785,7 @@ blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); atari_stram_free( acsi_buffer ); - if (devfs_unregister_blkdev( MAJOR_NR, "ad" ) != 0) + if (unregister_blkdev( MAJOR_NR, "ad" ) != 0) printk( KERN_ERR "acsi: cleanup_module failed\n"); del_gendisk(&acsi_gendisk); diff -Nru a/drivers/block/floppy.c b/drivers/block/floppy.c --- a/drivers/block/floppy.c Tue Jul 30 15:50:01 2002 +++ b/drivers/block/floppy.c Tue Jul 30 15:50:01 2002 @@ -4233,7 +4233,7 @@ raw_cmd = NULL; devfs_handle = devfs_mk_dir (NULL, "floppy", NULL); - if (devfs_register_blkdev(MAJOR_NR,"fd",&floppy_fops)) { + if (register_blkdev(MAJOR_NR,"fd",&floppy_fops)) { printk("Unable to get major %d for floppy\n",MAJOR_NR); return -EBUSY; } @@ -4266,7 +4266,7 @@ use_virtual_dma = can_use_virtual_dma & 1; fdc_state[0].address = FDC1; if (fdc_state[0].address == -1) { - devfs_unregister_blkdev(MAJOR_NR,"fd"); + unregister_blkdev(MAJOR_NR,"fd"); del_timer(&fd_timeout); blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); return -ENODEV; @@ -4279,7 +4279,7 @@ if (floppy_grab_irq_and_dma()){ del_timer(&fd_timeout); blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); - devfs_unregister_blkdev(MAJOR_NR,"fd"); + unregister_blkdev(MAJOR_NR,"fd"); return -EBUSY; } @@ -4342,7 +4342,7 @@ if (usage_count) floppy_release_irq_and_dma(); blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); - devfs_unregister_blkdev(MAJOR_NR,"fd"); + unregister_blkdev(MAJOR_NR,"fd"); } for (drive = 0; drive < N_DRIVE; drive++) { @@ -4539,7 +4539,7 @@ int dummy; devfs_unregister (devfs_handle); - devfs_unregister_blkdev(MAJOR_NR, "fd"); + unregister_blkdev(MAJOR_NR, "fd"); blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); /* eject disk, if any */ diff -Nru a/drivers/block/loop.c b/drivers/block/loop.c --- a/drivers/block/loop.c Tue Jul 30 15:50:01 2002 +++ b/drivers/block/loop.c Tue Jul 30 15:50:01 2002 @@ -1027,7 +1027,7 @@ max_loop = 8; } - if (devfs_register_blkdev(MAJOR_NR, "loop", &lo_fops)) { + if (register_blkdev(MAJOR_NR, "loop", &lo_fops)) { printk(KERN_WARNING "Unable to get major number %d for loop" " device\n", MAJOR_NR); return -EIO; @@ -1078,7 +1078,7 @@ void loop_exit(void) { devfs_unregister(devfs_handle); - if (devfs_unregister_blkdev(MAJOR_NR, "loop")) + if (unregister_blkdev(MAJOR_NR, "loop")) printk(KERN_WARNING "loop: cannot unregister blkdev\n"); kfree(loop_dev); diff -Nru a/drivers/block/paride/pd.c b/drivers/block/paride/pd.c --- a/drivers/block/paride/pd.c Tue Jul 30 15:50:01 2002 +++ b/drivers/block/paride/pd.c Tue Jul 30 15:50:01 2002 @@ -940,7 +940,7 @@ int unit; if (disable) return -1; - if (devfs_register_blkdev(MAJOR_NR,name,&pd_fops)) { + if (register_blkdev(MAJOR_NR,name,&pd_fops)) { printk("%s: unable to get major number %d\n", name,major); return -1; @@ -958,7 +958,7 @@ pd_init_units(); pd_gendisk.nr_real = pd_detect(); if (!pd_gendisk.nr_real) { - devfs_unregister_blkdev(MAJOR_NR, name); + unregister_blkdev(MAJOR_NR, name); del_gendisk(&pd_gendisk); for (unit=0; unit #include #include -#include #include #include #include @@ -168,7 +167,7 @@ /* register the device - pass the name, major number and operations vector . */ - if (devfs_register_blkdev(MAJOR_NR, "ed", &ps2esdi_fops)) { + if (register_blkdev(MAJOR_NR, "ed", &ps2esdi_fops)) { printk("%s: Unable to get major number %d\n", DEVICE_NAME, MAJOR_NR); return -1; } @@ -182,7 +181,7 @@ if (error) { printk(KERN_WARNING "PS2ESDI: error initialising" " device, releasing resources\n"); - devfs_unregister_blkdev(MAJOR_NR, "ed"); + unregister_blkdev(MAJOR_NR, "ed"); blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); del_gendisk(&ps2esdi_gendisk); blk_clear(MAJOR_NR); @@ -233,7 +232,7 @@ release_region(io_base, 4); free_dma(dma_arb_level); free_irq(PS2ESDI_IRQ, &ps2esdi_gendisk); - devfs_unregister_blkdev(MAJOR_NR, "ed"); + unregister_blkdev(MAJOR_NR, "ed"); blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); del_gendisk(&ps2esdi_gendisk); blk_clear(MAJOR_NR); diff -Nru a/drivers/block/swim3.c b/drivers/block/swim3.c --- a/drivers/block/swim3.c Tue Jul 30 15:50:01 2002 +++ b/drivers/block/swim3.c Tue Jul 30 15:50:01 2002 @@ -1034,7 +1034,7 @@ if (floppy_count > 0) { - if (devfs_register_blkdev(MAJOR_NR, "fd", &floppy_fops)) { + if (register_blkdev(MAJOR_NR, "fd", &floppy_fops)) { printk(KERN_ERR "Unable to get major %d for floppy\n", MAJOR_NR); return -EBUSY; diff -Nru a/drivers/block/xd.c b/drivers/block/xd.c --- a/drivers/block/xd.c Tue Jul 30 15:50:01 2002 +++ b/drivers/block/xd.c Tue Jul 30 15:50:01 2002 @@ -164,7 +164,7 @@ init_timer (&xd_timer); xd_timer.function = xd_wakeup; init_timer (&xd_watchdog_int); xd_watchdog_int.function = xd_watchdog; - if (devfs_register_blkdev(MAJOR_NR,"xd",&xd_fops)) { + if (register_blkdev(MAJOR_NR,"xd",&xd_fops)) { printk("xd: Unable to get major number %d\n",MAJOR_NR); return -1; } @@ -1085,7 +1085,7 @@ printk(KERN_INFO "XD: Loaded as a module.\n"); if (!xd_drives) { /* no drives detected - unload module */ - devfs_unregister_blkdev(MAJOR_NR, "xd"); + unregister_blkdev(MAJOR_NR, "xd"); xd_done(); return (-1); } @@ -1095,7 +1095,7 @@ void cleanup_module(void) { - devfs_unregister_blkdev(MAJOR_NR, "xd"); + unregister_blkdev(MAJOR_NR, "xd"); xd_done(); devfs_unregister (devfs_handle); if (xd_drives) { diff -Nru a/drivers/cdrom/aztcd.c b/drivers/cdrom/aztcd.c --- a/drivers/cdrom/aztcd.c Tue Jul 30 15:50:01 2002 +++ b/drivers/cdrom/aztcd.c Tue Jul 30 15:50:01 2002 @@ -1931,7 +1931,7 @@ } devfs_register(NULL, "aztcd", DEVFS_FL_DEFAULT, MAJOR_NR, 0, S_IFBLK | S_IRUGO | S_IWUGO, &azt_fops, NULL); - if (devfs_register_blkdev(MAJOR_NR, "aztcd", &azt_fops) != 0) { + if (register_blkdev(MAJOR_NR, "aztcd", &azt_fops) != 0) { printk(KERN_WARNING "aztcd: Unable to get major %d for Aztech" " CD-ROM\n", MAJOR_NR); ret = -EIO; @@ -1958,7 +1958,7 @@ void __exit aztcd_exit(void) { devfs_find_and_unregister(NULL, "aztcd", 0, 0, DEVFS_SPECIAL_BLK, 0); - if ((devfs_unregister_blkdev(MAJOR_NR, "aztcd") == -EINVAL)) { + if ((unregister_blkdev(MAJOR_NR, "aztcd") == -EINVAL)) { printk("What's that: can't unregister aztcd\n"); return; } diff -Nru a/drivers/cdrom/cdu31a.c b/drivers/cdrom/cdu31a.c --- a/drivers/cdrom/cdu31a.c Tue Jul 30 15:50:01 2002 +++ b/drivers/cdrom/cdu31a.c Tue Jul 30 15:50:01 2002 @@ -3367,7 +3367,7 @@ if (!request_region(cdu31a_port, 4, "cdu31a")) goto errout3; - if (devfs_register_blkdev(MAJOR_NR, "cdu31a", &scd_bdops)) { + if (register_blkdev(MAJOR_NR, "cdu31a", &scd_bdops)) { printk("Unable to get major %d for CDU-31a\n", MAJOR_NR); goto errout2; @@ -3460,7 +3460,7 @@ errout0: printk("Unable to register CDU-31a with Uniform cdrom driver\n"); blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); - if (devfs_unregister_blkdev(MAJOR_NR, "cdu31a")) { + if (unregister_blkdev(MAJOR_NR, "cdu31a")) { printk("Can't unregister block device for cdu31a\n"); } errout2: @@ -3477,7 +3477,7 @@ ("Can't unregister cdu31a from Uniform cdrom driver\n"); return; } - if ((devfs_unregister_blkdev(MAJOR_NR, "cdu31a") == -EINVAL)) { + if ((unregister_blkdev(MAJOR_NR, "cdu31a") == -EINVAL)) { printk("Can't unregister cdu31a\n"); return; } diff -Nru a/drivers/cdrom/cm206.c b/drivers/cdrom/cm206.c --- a/drivers/cdrom/cm206.c Tue Jul 30 15:50:01 2002 +++ b/drivers/cdrom/cm206.c Tue Jul 30 15:50:01 2002 @@ -1367,7 +1367,7 @@ printk("Can't unregister cdrom cm206\n"); return; } - if (devfs_unregister_blkdev(MAJOR_NR, "cm206")) { + if (unregister_blkdev(MAJOR_NR, "cm206")) { printk("Can't unregister major cm206\n"); return; } @@ -1490,7 +1490,7 @@ return -EIO; } printk(".\n"); - if (devfs_register_blkdev(MAJOR_NR, "cm206", &cm206_bdops) != 0) { + if (register_blkdev(MAJOR_NR, "cm206", &cm206_bdops) != 0) { printk(KERN_INFO "Cannot register for major %d!\n", MAJOR_NR); cleanup(3); diff -Nru a/drivers/cdrom/gscd.c b/drivers/cdrom/gscd.c --- a/drivers/cdrom/gscd.c Tue Jul 30 15:50:01 2002 +++ b/drivers/cdrom/gscd.c Tue Jul 30 15:50:01 2002 @@ -934,7 +934,7 @@ CLEAR_TIMER; devfs_find_and_unregister(NULL, "gscd", 0, 0, DEVFS_SPECIAL_BLK, 0); - if ((devfs_unregister_blkdev(MAJOR_NR, "gscd") == -EINVAL)) { + if ((unregister_blkdev(MAJOR_NR, "gscd") == -EINVAL)) { printk("What's that: can't unregister GoldStar-module\n"); return; } @@ -1012,7 +1012,7 @@ i++; } - if (devfs_register_blkdev(MAJOR_NR, "gscd", &gscd_fops) != 0) { + if (register_blkdev(MAJOR_NR, "gscd", &gscd_fops) != 0) { printk(KERN_WARNING "GSCD: Unable to get major %d for GoldStar " "CD-ROM\n", MAJOR_NR); ret = -EIO; diff -Nru a/drivers/cdrom/mcd.c b/drivers/cdrom/mcd.c --- a/drivers/cdrom/mcd.c Tue Jul 30 15:50:01 2002 +++ b/drivers/cdrom/mcd.c Tue Jul 30 15:50:01 2002 @@ -1039,7 +1039,7 @@ case 2: release_region(mcd_port, 4); case 1: - if (devfs_unregister_blkdev(MAJOR_NR, "mcd")) { + if (unregister_blkdev(MAJOR_NR, "mcd")) { printk(KERN_WARNING "Can't unregister major mcd\n"); return; } @@ -1065,7 +1065,7 @@ return -EIO; } - if (devfs_register_blkdev(MAJOR_NR, "mcd", &mcd_bdops) != 0) { + if (register_blkdev(MAJOR_NR, "mcd", &mcd_bdops) != 0) { printk(KERN_ERR "mcd: Unable to get major %d for Mitsumi CD-ROM\n", MAJOR_NR); return -EIO; } diff -Nru a/drivers/cdrom/mcdx.c b/drivers/cdrom/mcdx.c --- a/drivers/cdrom/mcdx.c Tue Jul 30 15:50:01 2002 +++ b/drivers/cdrom/mcdx.c Tue Jul 30 15:50:01 2002 @@ -1166,7 +1166,7 @@ } xtrace(INIT, "init() register blkdev\n"); - if (devfs_register_blkdev(MAJOR_NR, "mcdx", &mcdx_bdops) != 0) { + if (register_blkdev(MAJOR_NR, "mcdx", &mcdx_bdops) != 0) { release_region((unsigned long) stuffp->wreg_data, MCDX_IO_SIZE); xwarn("%s=0x%3p,%d: Init failed. Can't get major %d.\n", @@ -1222,7 +1222,7 @@ MCDX_IO_SIZE); free_irq(stuffp->irq, NULL); kfree(stuffp); - if (devfs_unregister_blkdev(MAJOR_NR, "mcdx") != 0) + if (unregister_blkdev(MAJOR_NR, "mcdx") != 0) xwarn("cleanup() unregister_blkdev() failed\n"); blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); return 2; diff -Nru a/drivers/cdrom/optcd.c b/drivers/cdrom/optcd.c --- a/drivers/cdrom/optcd.c Tue Jul 30 15:50:01 2002 +++ b/drivers/cdrom/optcd.c Tue Jul 30 15:50:01 2002 @@ -2031,8 +2031,7 @@ DEBUG((DEBUG_VFS, "exec_cmd COMINITDOUBLE: %02x", -status)); return -EIO; } - if (devfs_register_blkdev(MAJOR_NR, "optcd", &opt_fops) != 0) - { + if (register_blkdev(MAJOR_NR, "optcd", &opt_fops) != 0) { printk(KERN_ERR "optcd: unable to get major %d\n", MAJOR_NR); release_region(optcd_port, 4); return -EIO; @@ -2052,7 +2051,7 @@ void __exit optcd_exit(void) { devfs_find_and_unregister(NULL, "optcd", 0, 0, DEVFS_SPECIAL_BLK, 0); - if (devfs_unregister_blkdev(MAJOR_NR, "optcd") == -EINVAL) { + if (unregister_blkdev(MAJOR_NR, "optcd") == -EINVAL) { printk(KERN_ERR "optcd: what's that: can't unregister\n"); return; } diff -Nru a/drivers/cdrom/sbpcd.c b/drivers/cdrom/sbpcd.c --- a/drivers/cdrom/sbpcd.c Tue Jul 30 15:50:01 2002 +++ b/drivers/cdrom/sbpcd.c Tue Jul 30 15:50:01 2002 @@ -5771,7 +5771,7 @@ OUT(MIXER_data,0xCC); /* one nibble per channel, max. value: 0xFF */ #endif /* SOUND_BASE */ - if (devfs_register_blkdev(MAJOR_NR, major_name, &sbpcd_bdops) != 0) + if (register_blkdev(MAJOR_NR, major_name, &sbpcd_bdops) != 0) { msg(DBG_INF, "Can't get MAJOR %d for Matsushita CDROM\n", MAJOR_NR); #ifdef MODULE @@ -5806,7 +5806,7 @@ if (D_S[j].sbp_buf==NULL) { msg(DBG_INF,"data buffer (%d frames) not available.\n",D_S[j].sbp_bufsiz); - if ((devfs_unregister_blkdev(MAJOR_NR, major_name) == -EINVAL)) + if ((unregister_blkdev(MAJOR_NR, major_name) == -EINVAL)) { printk("Can't unregister %s\n", major_name); } @@ -5858,7 +5858,7 @@ { int j; - if ((devfs_unregister_blkdev(MAJOR_NR, major_name) == -EINVAL)) + if ((unregister_blkdev(MAJOR_NR, major_name) == -EINVAL)) { msg(DBG_INF, "What's that: can't unregister %s.\n", major_name); return; diff -Nru a/drivers/cdrom/sjcd.c b/drivers/cdrom/sjcd.c --- a/drivers/cdrom/sjcd.c Tue Jul 30 15:50:01 2002 +++ b/drivers/cdrom/sjcd.c Tue Jul 30 15:50:01 2002 @@ -1680,7 +1680,7 @@ printk("SJCD: sjcd=0x%x: ", sjcd_base); #endif - if (devfs_register_blkdev(MAJOR_NR, "sjcd", &sjcd_fops) != 0) { + if (register_blkdev(MAJOR_NR, "sjcd", &sjcd_fops) != 0) { printk("SJCD: Unable to get major %d for Sanyo CD-ROM\n", MAJOR_NR); return (-EIO); @@ -1789,7 +1789,7 @@ static int sjcd_cleanup(void) { - if ((devfs_unregister_blkdev(MAJOR_NR, "sjcd") == -EINVAL)) + if ((unregister_blkdev(MAJOR_NR, "sjcd") == -EINVAL)) printk("SJCD: cannot unregister device.\n"); else { release_region(sjcd_base, 4); diff -Nru a/drivers/cdrom/sonycd535.c b/drivers/cdrom/sonycd535.c --- a/drivers/cdrom/sonycd535.c Tue Jul 30 15:50:01 2002 +++ b/drivers/cdrom/sonycd535.c Tue Jul 30 15:50:01 2002 @@ -1572,7 +1572,7 @@ MAJOR_NR, 0, S_IFBLK | S_IRUGO | S_IWUGO, &cdu_fops, NULL); - if (devfs_register_blkdev(MAJOR_NR, CDU535_HANDLE, &cdu_fops)) { + if (register_blkdev(MAJOR_NR, CDU535_HANDLE, &cdu_fops)) { printk("Unable to get major %d for %s\n", MAJOR_NR, CDU535_MESSAGE_NAME); return -EIO; @@ -1585,7 +1585,7 @@ kmalloc(sizeof *sony_toc, GFP_KERNEL); if (sony_toc == NULL) { blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); - devfs_unregister_blkdev(MAJOR_NR, CDU535_HANDLE); + unregister_blkdev(MAJOR_NR, CDU535_HANDLE); devfs_unregister(sony_devfs_handle); return -ENOMEM; } @@ -1594,7 +1594,7 @@ if (last_sony_subcode == NULL) { blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); kfree(sony_toc); - devfs_unregister_blkdev(MAJOR_NR, CDU535_HANDLE); + unregister_blkdev(MAJOR_NR, CDU535_HANDLE); devfs_unregister(sony_devfs_handle); return -ENOMEM; } @@ -1604,7 +1604,7 @@ blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); kfree(sony_toc); kfree(last_sony_subcode); - devfs_unregister_blkdev(MAJOR_NR, CDU535_HANDLE); + unregister_blkdev(MAJOR_NR, CDU535_HANDLE); devfs_unregister(sony_devfs_handle); return -ENOMEM; } @@ -1618,7 +1618,7 @@ kfree(sony_buffer); kfree(sony_toc); kfree(last_sony_subcode); - devfs_unregister_blkdev(MAJOR_NR, CDU535_HANDLE); + unregister_blkdev(MAJOR_NR, CDU535_HANDLE); devfs_unregister(sony_devfs_handle); return -ENOMEM; } @@ -1643,7 +1643,7 @@ kfree(sony_buffer); kfree(sony_toc); kfree(last_sony_subcode); - devfs_unregister_blkdev(MAJOR_NR, CDU535_HANDLE); + unregister_blkdev(MAJOR_NR, CDU535_HANDLE); devfs_unregister(sony_devfs_handle); if (sony535_irq_used) free_irq(sony535_irq_used, NULL); @@ -1702,7 +1702,7 @@ kfree(sony_toc); devfs_find_and_unregister(NULL, CDU535_HANDLE, 0, 0, DEVFS_SPECIAL_BLK, 0); - if (devfs_unregister_blkdev(MAJOR_NR, CDU535_HANDLE) == -EINVAL) + if (unregister_blkdev(MAJOR_NR, CDU535_HANDLE) == -EINVAL) printk("Uh oh, couldn't unregister " CDU535_HANDLE "\n"); else printk(KERN_INFO CDU535_HANDLE " module released\n"); diff -Nru a/drivers/ide/hd.c b/drivers/ide/hd.c --- a/drivers/ide/hd.c Tue Jul 30 15:50:01 2002 +++ b/drivers/ide/hd.c Tue Jul 30 15:50:01 2002 @@ -35,7 +35,6 @@ #include #include #include -#include #include #include #include @@ -818,7 +817,7 @@ int __init hd_init(void) { - if (devfs_register_blkdev(MAJOR_NR,"hd",&hd_fops)) { + if (register_blkdev(MAJOR_NR,"hd",&hd_fops)) { printk("hd: unable to get major %d for hard disk\n",MAJOR_NR); return -1; } diff -Nru a/drivers/ide/probe.c b/drivers/ide/probe.c --- a/drivers/ide/probe.c Tue Jul 30 15:50:01 2002 +++ b/drivers/ide/probe.c Tue Jul 30 15:50:01 2002 @@ -1089,7 +1089,7 @@ } #endif - if (devfs_register_blkdev(ch->major, ch->name, ide_fops)) { + if (register_blkdev(ch->major, ch->name, ide_fops)) { printk("%s: UNABLE TO GET MAJOR NUMBER %d\n", ch->name, ch->major); return; diff -Nru a/drivers/md/lvm.c b/drivers/md/lvm.c --- a/drivers/md/lvm.c Tue Jul 30 15:50:01 2002 +++ b/drivers/md/lvm.c Tue Jul 30 15:50:01 2002 @@ -213,7 +213,6 @@ #include #include #include -#include #include #include #include @@ -395,9 +394,8 @@ return -EIO; } - if (devfs_register_blkdev(MAJOR_NR, lvm_name, &lvm_blk_dops) < 0) - { - printk("%s -- devfs_register_blkdev failed\n", lvm_name); + if (register_blkdev(MAJOR_NR, lvm_name, &lvm_blk_dops) < 0) { + printk("%s -- register_blkdev failed\n", lvm_name); if (unregister_chrdev(LVM_CHAR_MAJOR, lvm_name) < 0) printk(KERN_ERR "%s -- unregister_chrdev failed\n", @@ -445,8 +443,8 @@ if (unregister_chrdev(LVM_CHAR_MAJOR, lvm_name) < 0) printk(KERN_ERR "%s -- unregister_chrdev failed\n", lvm_name); - if (devfs_unregister_blkdev(MAJOR_NR, lvm_name) < 0) - printk(KERN_ERR "%s -- devfs_unregister_blkdev failed\n", + if (unregister_blkdev(MAJOR_NR, lvm_name) < 0) + printk(KERN_ERR "%s -- unregister_blkdev failed\n", lvm_name); del_gendisk(&lvm_gendisk); diff -Nru a/drivers/md/md.c b/drivers/md/md.c --- a/drivers/md/md.c Tue Jul 30 15:50:01 2002 +++ b/drivers/md/md.c Tue Jul 30 15:50:01 2002 @@ -3207,8 +3207,7 @@ MD_MAJOR_VERSION, MD_MINOR_VERSION, MD_PATCHLEVEL_VERSION, MAX_MD_DEVS, MD_SB_DISKS); - if (devfs_register_blkdev (MAJOR_NR, "md", &md_fops)) - { + if (register_blkdev (MAJOR_NR, "md", &md_fops)) { printk(KERN_ALERT "md: Unable to get major %d for md\n", MAJOR_NR); return (-1); } @@ -3568,7 +3567,7 @@ md_unregister_thread(md_recovery_thread); devfs_unregister(devfs_handle); - devfs_unregister_blkdev(MAJOR_NR,"md"); + unregister_blkdev(MAJOR_NR,"md"); unregister_reboot_notifier(&md_notifier); unregister_sysctl_table(raid_table_header); #ifdef CONFIG_PROC_FS diff -Nru a/drivers/mtd/mtdblock.c b/drivers/mtd/mtdblock.c --- a/drivers/mtd/mtdblock.c Tue Jul 30 15:50:01 2002 +++ b/drivers/mtd/mtdblock.c Tue Jul 30 15:50:01 2002 @@ -593,22 +593,14 @@ int i; spin_lock_init(&mtdblks_lock); -#ifdef CONFIG_DEVFS_FS - if (devfs_register_blkdev(MTD_BLOCK_MAJOR, DEVICE_NAME, &mtd_fops)) - { - printk(KERN_NOTICE "Can't allocate major number %d for Memory Technology Devices.\n", - MTD_BLOCK_MAJOR); - return -EAGAIN; - } - - devfs_dir_handle = devfs_mk_dir(NULL, DEVICE_NAME, NULL); - register_mtd_user(¬ifier); -#else if (register_blkdev(MAJOR_NR,DEVICE_NAME,&mtd_fops)) { printk(KERN_NOTICE "Can't allocate major number %d for Memory Technology Devices.\n", MTD_BLOCK_MAJOR); return -EAGAIN; } +#ifdef CONFIG_DEVFS_FS + devfs_dir_handle = devfs_mk_dir(NULL, DEVICE_NAME, NULL); + register_mtd_user(¬ifier); #endif /* We fill it in at open() time. */ @@ -630,10 +622,8 @@ #ifdef CONFIG_DEVFS_FS unregister_mtd_user(¬ifier); devfs_unregister(devfs_dir_handle); - devfs_unregister_blkdev(MTD_BLOCK_MAJOR, DEVICE_NAME); -#else - unregister_blkdev(MAJOR_NR,DEVICE_NAME); #endif + unregister_blkdev(MAJOR_NR,DEVICE_NAME); blk_cleanup_queue(BLK_DEFAULT_QUEUE(MAJOR_NR)); blk_size[MAJOR_NR] = NULL; } diff -Nru a/drivers/s390/block/dasd_genhd.c b/drivers/s390/block/dasd_genhd.c --- a/drivers/s390/block/dasd_genhd.c Tue Jul 30 15:50:01 2002 +++ b/drivers/s390/block/dasd_genhd.c Tue Jul 30 15:50:01 2002 @@ -92,8 +92,7 @@ } /* Register block device. */ - new_major = devfs_register_blkdev(major, "dasd", - &dasd_device_operations); + new_major = register_blkdev(major, "dasd", &dasd_device_operations); if (new_major < 0) { MESSAGE(KERN_WARNING, "Cannot register to major no %d, rc = %d", major, rc); @@ -168,7 +167,7 @@ bs = blk_size[major]; blk_clear(major); - rc = devfs_unregister_blkdev(major, "dasd"); + rc = unregister_blkdev(major, "dasd"); if (rc < 0) MESSAGE(KERN_WARNING, "Cannot unregister from major no %d, rc = %d", diff -Nru a/drivers/s390/block/xpram.c b/drivers/s390/block/xpram.c --- a/drivers/s390/block/xpram.c Tue Jul 30 15:50:01 2002 +++ b/drivers/s390/block/xpram.c Tue Jul 30 15:50:01 2002 @@ -449,7 +449,7 @@ /* * Register xpram major. */ - rc = devfs_register_blkdev(XPRAM_MAJOR, XPRAM_NAME, &xpram_devops); + rc = register_blkdev(XPRAM_MAJOR, XPRAM_NAME, &xpram_devops); if (rc < 0) { PRINT_ERR("Can't get xpram major %d\n", XPRAM_MAJOR); return rc; @@ -489,7 +489,7 @@ static void __exit xpram_exit(void) { blk_clear(XPRAM_MAJOR); - devfs_unregister_blkdev(XPRAM_MAJOR, XPRAM_NAME); + unregister_blkdev(XPRAM_MAJOR, XPRAM_NAME); devfs_unregister(xpram_devfs_handle); unregister_sys_device(&xpram_sys_device); } diff -Nru a/drivers/s390/char/tapeblock.c b/drivers/s390/char/tapeblock.c --- a/drivers/s390/char/tapeblock.c Tue Jul 30 15:50:01 2002 +++ b/drivers/s390/char/tapeblock.c Tue Jul 30 15:50:01 2002 @@ -97,11 +97,7 @@ tape_dev_t* td; tape_init(); /* Register the tape major number to the kernel */ -#ifdef CONFIG_DEVFS_FS - result = devfs_register_blkdev(tapeblock_major, "tBLK", &tapeblock_fops); -#else result = register_blkdev(tapeblock_major, "tBLK", &tapeblock_fops); -#endif if (result < 0) { PRINT_WARN(KERN_ERR "tape: can't get major %d for block device\n", tapeblock_major); result=-ENODEV; @@ -149,11 +145,7 @@ out_undo_blk_size: kfree(blk_size[tapeblock_major]); out_undo_bdev: -#ifdef CONFIG_DEVFS_FS - devfs_unregister_blkdev(tapeblock_major, "tBLK"); -#else unregister_blkdev(tapeblock_major, "tBLK"); -#endif result=-ENOMEM; blk_size[tapeblock_major]= hardsect_size[tapeblock_major]= @@ -181,11 +173,7 @@ max_sectors[tapeblock_major]=NULL; } -#ifdef CONFIG_DEVFS_FS - devfs_unregister_blkdev(tapeblock_major, "tBLK"); -#else unregister_blkdev(tapeblock_major, "tBLK"); -#endif out: return; diff -Nru a/drivers/scsi/sd.c b/drivers/scsi/sd.c --- a/drivers/scsi/sd.c Tue Jul 30 15:50:01 2002 +++ b/drivers/scsi/sd.c Tue Jul 30 15:50:01 2002 @@ -1198,8 +1198,7 @@ if (!sd_registered) { for (k = 0; k < N_USED_SD_MAJORS; k++) { - if (devfs_register_blkdev(SD_MAJOR(k), "sd", - &sd_fops)) { + if (register_blkdev(SD_MAJOR(k), "sd", &sd_fops)) { printk(KERN_NOTICE "Unable to get major %d " "for SCSI disk\n", SD_MAJOR(k)); return 1; @@ -1296,7 +1295,7 @@ sd_dsk_arr = NULL; } for (k = 0; k < N_USED_SD_MAJORS; k++) { - devfs_unregister_blkdev(SD_MAJOR(k), "sd"); + unregister_blkdev(SD_MAJOR(k), "sd"); } sd_registered--; return 1; @@ -1560,7 +1559,7 @@ SCSI_LOG_HLQUEUE(3, printk("exit_sd: exiting sd driver\n")); scsi_unregister_device(&sd_template); for (k = 0; k < N_USED_SD_MAJORS; k++) - devfs_unregister_blkdev(SD_MAJOR(k), "sd"); + unregister_blkdev(SD_MAJOR(k), "sd"); sd_registered--; if (sd_dsk_arr != NULL) { diff -Nru a/drivers/scsi/sr.c b/drivers/scsi/sr.c --- a/drivers/scsi/sr.c Tue Jul 30 15:50:01 2002 +++ b/drivers/scsi/sr.c Tue Jul 30 15:50:01 2002 @@ -702,7 +702,7 @@ return 0; if (!sr_registered) { - if (devfs_register_blkdev(MAJOR_NR, "sr", &sr_bdops)) { + if (register_blkdev(MAJOR_NR, "sr", &sr_bdops)) { printk("Unable to get major %d for SCSI-CD\n", MAJOR_NR); return 1; } @@ -714,7 +714,7 @@ sr_template.dev_max = sr_template.dev_noticed + SR_EXTRA_DEVS; scsi_CDs = kmalloc(sr_template.dev_max * sizeof(Scsi_CD), GFP_ATOMIC); if (!scsi_CDs) - goto cleanup_devfs; + goto cleanup_dev; memset(scsi_CDs, 0, sr_template.dev_max * sizeof(Scsi_CD)); sr_sizes = kmalloc(sr_template.dev_max * sizeof(int), GFP_ATOMIC); @@ -725,8 +725,8 @@ cleanup_cds: kfree(scsi_CDs); -cleanup_devfs: - devfs_unregister_blkdev(MAJOR_NR, "sr"); +cleanup_dev: + unregister_blkdev(MAJOR_NR, "sr"); sr_registered--; return 1; } @@ -869,7 +869,7 @@ static void __exit exit_sr(void) { scsi_unregister_device(&sr_template); - devfs_unregister_blkdev(MAJOR_NR, "sr"); + unregister_blkdev(MAJOR_NR, "sr"); sr_registered--; if (scsi_CDs != NULL) { kfree(scsi_CDs); diff -Nru a/fs/block_dev.c b/fs/block_dev.c --- a/fs/block_dev.c Tue Jul 30 15:50:01 2002 +++ b/fs/block_dev.c Tue Jul 30 15:50:01 2002 @@ -453,6 +453,8 @@ int register_blkdev(unsigned int major, const char * name, struct block_device_operations *bdops) { + if (devfs_should_register_blkdev()) + return 0; if (major == 0) { for (major = MAX_BLKDEV-1; major > 0; major--) { if (blkdevs[major].bdops == NULL) { @@ -474,6 +476,8 @@ int unregister_blkdev(unsigned int major, const char * name) { + if (devfs_should_unregister_blkdev()) + return 0; if (major >= MAX_BLKDEV) return -EINVAL; if (!blkdevs[major].bdops) diff -Nru a/fs/devfs/base.c b/fs/devfs/base.c --- a/fs/devfs/base.c Tue Jul 30 15:50:01 2002 +++ b/fs/devfs/base.c Tue Jul 30 15:50:01 2002 @@ -2241,22 +2241,18 @@ /** - * devfs_register_blkdev - Optionally register a conventional block driver. - * @major: The major number for the driver. - * @name: The name of the driver (as seen in /proc/devices). - * @bdops: The &block_device_operations structure pointer. + * devfs_should_register_blkdev - should we register a conventional block driver. * - * This function will register a block driver provided the "devfs=only" - * option was not provided at boot time. - * Returns 0 on success, else a negative error code on failure. + * If the "devfs=only" option was provided at boot time, this function will + * return -1, otherwise 0 is returned. */ -int devfs_register_blkdev (unsigned int major, const char *name, - struct block_device_operations *bdops) +int devfs_should_register_blkdev (void) { - if (boot_options & OPTION_ONLY) return 0; - return register_blkdev (major, name, bdops); -} /* End Function devfs_register_blkdev */ + if (boot_options & OPTION_ONLY) + return -1; + return 0; +} /** @@ -2273,20 +2269,18 @@ /** - * devfs_unregister_blkdev - Optionally unregister a conventional block driver. - * @major: The major number for the driver. - * @name: The name of the driver (as seen in /proc/devices). + * devfs_should_unregister_blkdev - should we unregister a conventional block driver. * - * This function will unregister a block driver provided the "devfs=only" - * option was not provided at boot time. - * Returns 0 on success, else a negative error code on failure. + * If the "devfs=only" option was provided at boot time, this function will + * return -1, otherwise 0 is returned. */ -int devfs_unregister_blkdev (unsigned int major, const char *name) +int devfs_should_unregister_blkdev (void) { - if (boot_options & OPTION_ONLY) return 0; - return unregister_blkdev (major, name); -} /* End Function devfs_unregister_blkdev */ + if (boot_options & OPTION_ONLY) + return -1; + return 0; +} /** * devfs_setup - Process kernel boot options. @@ -2375,8 +2369,6 @@ EXPORT_SYMBOL(devfs_auto_unregister); EXPORT_SYMBOL(devfs_get_unregister_slave); EXPORT_SYMBOL(devfs_get_name); -EXPORT_SYMBOL(devfs_register_blkdev); -EXPORT_SYMBOL(devfs_unregister_blkdev); /** diff -Nru a/include/linux/devfs_fs_kernel.h b/include/linux/devfs_fs_kernel.h --- a/include/linux/devfs_fs_kernel.h Tue Jul 30 15:50:01 2002 +++ b/include/linux/devfs_fs_kernel.h Tue Jul 30 15:50:01 2002 @@ -95,10 +95,9 @@ extern devfs_handle_t devfs_get_unregister_slave (devfs_handle_t master); extern const char *devfs_get_name (devfs_handle_t de, unsigned int *namelen); extern int devfs_should_register_chrdev (void); -extern int devfs_register_blkdev (unsigned int major, const char *name, - struct block_device_operations *bdops); +extern int devfs_should_register_blkdev (void); extern int devfs_should_unregister_chrdev (void); -extern int devfs_unregister_blkdev (unsigned int major, const char *name); +extern int devfs_should_unregister_blkdev (void); extern void devfs_register_tape (devfs_handle_t de); extern void devfs_register_series (devfs_handle_t dir, const char *format, @@ -242,18 +241,17 @@ { return 0; } -static inline int devfs_register_blkdev (unsigned int major, const char *name, - struct block_device_operations *bdops) +static inline int devfs_should_register_blkdev (void) { - return register_blkdev (major, name, bdops); + return 0; } -static inline int devfs_unregister_chrdev (void) +static inline int devfs_should_unregister_chrdev (void) { return 0; } -static inline int devfs_unregister_blkdev (unsigned int major,const char *name) +static inline int devfs_should_unregister_blkdev (void) { - return unregister_blkdev (major, name); + return 0; } static inline void devfs_register_tape (devfs_handle_t de)