summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@trik.(none)>2005-03-10 20:00:07 +0100
committerBartlomiej Zolnierkiewicz <bzolnier@trik.(none)>2005-03-10 20:00:07 +0100
commita32ec5211491b6afba45a8bbd29441bc286b99de (patch)
treef8af46721fdefb5cf343c0f161970ce709891bfa /include/linux
parentd1c1bba5adc3cbdf3917322149d059b1baea9dcc (diff)
[ide] fix some rare ide-default vs ide-disk races
Some rare races between ide-default and ide-disk are possible, i.e.: * ide-default is used, I/O request is triggered (ie. /proc/ide/hd?/identify), drive->special is cleared silently (so CHS is not initialized properly), ide-disk is loaded and fails if drive uses CHS * ide-disk is used, drive is resetted, ide-disk is unloaded, ide-default takes control over drive and on the first I/O request silently clears drive->special without restoring settings Fix them by moving idedisk_{special,pre_reset}() and company to IDE core. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/ide.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/include/linux/ide.h b/include/linux/ide.h
index 25683ad25806..810647a617c9 100644
--- a/include/linux/ide.h
+++ b/include/linux/ide.h
@@ -1099,7 +1099,6 @@ typedef struct ide_driver_s {
int (*ioctl)(ide_drive_t *, struct inode *, struct file *, unsigned int, unsigned long);
void (*pre_reset)(ide_drive_t *);
sector_t (*capacity)(ide_drive_t *);
- ide_startstop_t (*special)(ide_drive_t *);
ide_proc_entry_t *proc;
int (*attach)(ide_drive_t *);
void (*ata_prebuilder)(ide_drive_t *);