home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / unix / bsd / 3180 < prev    next >
Encoding:
Internet Message Format  |  1992-07-29  |  1.9 KB

  1. Path: sparky!uunet!cs.utexas.edu!usc!sdd.hp.com!caen!uwm.edu!linac!unixhub!ditka!mini!demax!mikel
  2. From: mikel@demax.uucp (Mikel Lechner)
  3. Newsgroups: comp.unix.bsd
  4. Subject: Re: 386bsd-0.1: primary bootstrap (wdbootblk.c) problem & fix.
  5. Keywords: 386bsd boot bootstrap wdbootblk.c
  6. Message-ID: <1992Jul30.014356.14453@demax.uucp>
  7. Date: 30 Jul 92 01:43:56 GMT
  8. References: <greg.712111605@hibp1.ecse.rpi.edu> <1992Jul27.172708.3363@gateway.novell.com> <greg.712261295@hibp1.ecse.rpi.edu> <1992Jul27.192502.15727@gateway.novell.com> <greg.712267214@hibp1.ecse.rpi.edu>
  9. Organization: Demax Software Inc.
  10. Lines: 31
  11.  
  12. In <greg.712267214@hibp1.ecse.rpi.edu> greg@ecse.rpi.edu (Greg) writes:
  13.  
  14. >  When I first read about the other patch, I did try checking wd_alsts
  15. >rather than wd_status. Not knowing didley about the disk controller,
  16. >I'm not sure what the difference between these two registers are.
  17.  
  18. The only real difference is that the alternate status register does not
  19. clear the pending interrupt flag.  This can be used to check the disk
  20. controller status outside of the interrept handler without affecting
  21. any I/O operation in progress.
  22.  
  23. I don't know if this is related, but I fixed a problem in the wd.c code
  24. which caused by system to hang when I added a second hard disk.  The
  25. problem was the disk initialization code was not checking that the
  26. controller was ready before command it to perform a restore.  Apparently,
  27. the disk controller is not ready quite as quickly when there is only
  28. one disk.  Therefore the disk command is not started and the interrupt
  29. for the disk never appears.
  30.  
  31. I fixed this problem for myself by putting all the disk controller register
  32. manipulation into a single function which performs the important checks
  33. before commanding the controller.  I also added a timeout in case the
  34. interrupt never appears, but haven't needed it.
  35.  
  36. I haven't yet looked at 0.1.
  37.  
  38.  
  39. -- Mikel
  40. -- 
  41. Mikel Lechner                E-mail:        demax!mikel
  42. Demax Software, Inc.            Phone:        (415) 341-9017
  43.