Shutdown and SCSI (patch linux kernel scsi)
Ключевые слова: patch, linux, kernel, scsi, (найти похожие документы)
_ RU.LINUX (2:5077/15.22) ___________________________________________ RU.LINUX _
From : Alex Korchmar 2:5020/28.100 Thu 12 Nov 98 02:25
Subj : Shutdown and SCSI
________________________________________________________________________________
Hi Sergey,
On 10/Nov/98 at 12:54 you wrote:
> SC> Поставил Slackware 3.5 на Compaq Proliant 2500 2xPPRO.
> SC> Все вpоде воpочается и не падает, одна пpоблема - пpи сабже не
> SC> получается чистого pазмонтиpоания файловой системы.
>диски - scsi
SC> Да
попробуй вляпать вот это (patch -F3, если и это не поможет - посмотри .rej - в
каждой версии ядра эти строчки чуть-чуть гуляют вверх/вниз)
=== cut here ====
*** linux-2.0.34/drivers/scsi/sd.c Tue Jun 9 00:52:54 1998
--- linux/drivers/scsi/sd.c Tue Jun 9 13:57:36 1998
***************
*** 148,153 ****
--- 148,157 ----
static void sd_release(struct inode * inode, struct file * file)
{
int target;
+ struct sdata {
+ int inlen, outlen;
+ char cmd[19];
+ } scsi_cmd;
fsync_dev(inode->i_rdev);
target = DEVICE_NR(inode->i_rdev);
***************
*** 157,165 ****
(*rscsi_disks[target].device->host->hostt->usage_count)--;
if(sd_template.usage_count) (*sd_template.usage_count)--;
! if(rscsi_disks[target].device->removable) {
! if(!rscsi_disks[target].device->access_count)
! sd_ioctl(inode, NULL, SCSI_IOCTL_DOORUNLOCK, 0);
}
}
--- 161,175 ----
(*rscsi_disks[target].device->host->hostt->usage_count)--;
if(sd_template.usage_count) (*sd_template.usage_count)--;
! if(!rscsi_disks[target].device->access_count) {
!
! scsi_cmd.inlen=scsi_cmd.outlen=0;
! scsi_cmd.cmd[0]=SYNCHRONIZE_CACHE;
! memset(scsi_cmd.cmd+1, 0, 18);
! sd_ioctl(inode, NULL, SCSI_IOCTL_SEND_COMMAND, (int)(&scsi_cmd)); /*
you can safely turn off external device */
!
! if(rscsi_disks[target].device->removable)
! sd_ioctl(inode, NULL, SCSI_IOCTL_DOORUNLOCK, 0);
}
}
=== cut here ====
[осторожно - одна строка здесь порезалась]
если поможет - дай знать, кину тебе программку, которую можно будет просто
вставить в rc0.d
> Alex
--- MadMED v0.42i/DOS (Nov 27 1997 18:40:55)
* Origin: Down System (2:5020/28.100)