diff options
Diffstat (limited to 'drivers/cdrom/sbpcd.c')
-rw-r--r-- | drivers/cdrom/sbpcd.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/drivers/cdrom/sbpcd.c b/drivers/cdrom/sbpcd.c index 452d34675159..466e9c2974bd 100644 --- a/drivers/cdrom/sbpcd.c +++ b/drivers/cdrom/sbpcd.c | |||
@@ -742,13 +742,10 @@ static struct sbpcd_drive *current_drive = D_S; | |||
742 | unsigned long cli_sti; /* for saving the processor flags */ | 742 | unsigned long cli_sti; /* for saving the processor flags */ |
743 | #endif | 743 | #endif |
744 | /*==========================================================================*/ | 744 | /*==========================================================================*/ |
745 | static struct timer_list delay_timer = | 745 | static DEFINE_TIMER(delay_timer, mark_timeout_delay, 0, 0); |
746 | TIMER_INITIALIZER(mark_timeout_delay, 0, 0); | 746 | static DEFINE_TIMER(data_timer, mark_timeout_data, 0, 0); |
747 | static struct timer_list data_timer = | ||
748 | TIMER_INITIALIZER(mark_timeout_data, 0, 0); | ||
749 | #if 0 | 747 | #if 0 |
750 | static struct timer_list audio_timer = | 748 | static DEFINE_TIMER(audio_timer, mark_timeout_audio, 0, 0); |
751 | TIMER_INITIALIZER(mark_timeout_audio, 0, 0); | ||
752 | #endif | 749 | #endif |
753 | /*==========================================================================*/ | 750 | /*==========================================================================*/ |
754 | /* | 751 | /* |
@@ -830,8 +827,7 @@ static void mark_timeout_audio(u_long i) | |||
830 | static void sbp_sleep(u_int time) | 827 | static void sbp_sleep(u_int time) |
831 | { | 828 | { |
832 | sti(); | 829 | sti(); |
833 | current->state = TASK_INTERRUPTIBLE; | 830 | schedule_timeout_interruptible(time); |
834 | schedule_timeout(time); | ||
835 | sti(); | 831 | sti(); |
836 | } | 832 | } |
837 | /*==========================================================================*/ | 833 | /*==========================================================================*/ |
@@ -4219,7 +4215,8 @@ static int sbpcd_dev_ioctl(struct cdrom_device_info *cdi, u_int cmd, | |||
4219 | 4215 | ||
4220 | case CDROMAUDIOBUFSIZ: /* configure the audio buffer size */ | 4216 | case CDROMAUDIOBUFSIZ: /* configure the audio buffer size */ |
4221 | msg(DBG_IOC,"ioctl: CDROMAUDIOBUFSIZ entered.\n"); | 4217 | msg(DBG_IOC,"ioctl: CDROMAUDIOBUFSIZ entered.\n"); |
4222 | if (current_drive->sbp_audsiz>0) vfree(current_drive->aud_buf); | 4218 | if (current_drive->sbp_audsiz>0) |
4219 | vfree(current_drive->aud_buf); | ||
4223 | current_drive->aud_buf=NULL; | 4220 | current_drive->aud_buf=NULL; |
4224 | current_drive->sbp_audsiz=arg; | 4221 | current_drive->sbp_audsiz=arg; |
4225 | 4222 | ||
@@ -5913,7 +5910,8 @@ static void sbpcd_exit(void) | |||
5913 | put_disk(D_S[j].disk); | 5910 | put_disk(D_S[j].disk); |
5914 | devfs_remove("sbp/c0t%d", j); | 5911 | devfs_remove("sbp/c0t%d", j); |
5915 | vfree(D_S[j].sbp_buf); | 5912 | vfree(D_S[j].sbp_buf); |
5916 | if (D_S[j].sbp_audsiz>0) vfree(D_S[j].aud_buf); | 5913 | if (D_S[j].sbp_audsiz>0) |
5914 | vfree(D_S[j].aud_buf); | ||
5917 | if ((unregister_cdrom(D_S[j].sbpcd_infop) == -EINVAL)) | 5915 | if ((unregister_cdrom(D_S[j].sbpcd_infop) == -EINVAL)) |
5918 | { | 5916 | { |
5919 | msg(DBG_INF, "What's that: can't unregister info %s.\n", major_name); | 5917 | msg(DBG_INF, "What's that: can't unregister info %s.\n", major_name); |