Skip to content

Commit

Permalink
[PATCH] ide_scsi: allow it to be used for non CD only
Browse files Browse the repository at this point in the history
Some people want to use ide_cd for CD-ROM but still dynamically load
ide-scsi for things like tape drives.  If you compile in the CD driver this
works out but if you want them modular you need an option to ensure that
whoever loads first the right things happen.

This replaces the original draft patch which leaked a scsi host reference

[akpm@osdl.org: add MODULE_PARM_DESC]
Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Cc: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
Alan Cox authored and Linus Torvalds committed Dec 7, 2006
1 parent 2ee91f1 commit aaeab80
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions drivers/scsi/ide-scsi.c
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,7 @@ typedef struct ide_scsi_obj {
} idescsi_scsi_t;

static DEFINE_MUTEX(idescsi_ref_mutex);
static int idescsi_nocd; /* Set by module param to skip cd */

#define ide_scsi_g(disk) \
container_of((disk)->private_data, struct ide_scsi_obj, driver)
Expand Down Expand Up @@ -1127,6 +1128,9 @@ static int ide_scsi_probe(ide_drive_t *drive)
warned = 1;
}

if (idescsi_nocd && drive->media == ide_cdrom)
return -ENODEV;

if (!strstr("ide-scsi", drive->driver_req) ||
!drive->present ||
drive->media == ide_disk ||
Expand Down Expand Up @@ -1187,6 +1191,8 @@ static void __exit exit_idescsi_module(void)
driver_unregister(&idescsi_driver.gen_driver);
}

module_param(idescsi_nocd, int, 0600);
MODULE_PARM_DESC(idescsi_nocd, "Disable handling of CD-ROMs so they may be driven by ide-cd");
module_init(init_idescsi_module);
module_exit(exit_idescsi_module);
MODULE_LICENSE("GPL");

0 comments on commit aaeab80

Please sign in to comment.