Multithreading fixes to avoid hanging of the SCSI controllers (as shown on older Linux.)

This commit is contained in:
waltje
2017-09-06 02:12:58 -04:00
parent e4cdd40222
commit b41b4a0926
2 changed files with 8 additions and 5 deletions

View File

@@ -396,10 +396,12 @@ typedef struct {
int ResetCB; int ResetCB;
volatile uint8_t /* for multi-threading, keep */
Status, /* these volatile */
Interrupt;
int ExtendedLUNCCBFormat; int ExtendedLUNCCBFormat;
Req_t Req; Req_t Req;
uint8_t Status;
uint8_t Interrupt;
uint8_t Geometry; uint8_t Geometry;
uint8_t Control; uint8_t Control;
uint8_t Command; uint8_t Command;

View File

@@ -10,7 +10,7 @@
* 0 - BT-545C ISA; * 0 - BT-545C ISA;
* 1 - BT-958D PCI (but BT-545C ISA on non-PCI machines) * 1 - BT-958D PCI (but BT-545C ISA on non-PCI machines)
* *
* Version: @(#)scsi_buslogic.c 1.0.11 2017/09/01 * Version: @(#)scsi_buslogic.c 1.0.12 2017/09/05
* *
* Authors: TheCollector1995, <mariogplayer@gmail.com> * Authors: TheCollector1995, <mariogplayer@gmail.com>
* Miran Grca, <mgrca8@gmail.com> * Miran Grca, <mgrca8@gmail.com>
@@ -470,8 +470,9 @@ typedef struct {
int ExtendedLUNCCBFormat; int ExtendedLUNCCBFormat;
HALocalRAM LocalRAM; HALocalRAM LocalRAM;
Req_t Req; Req_t Req;
uint8_t Status; volatile uint8_t /* for multi-threading, keep */
uint8_t Interrupt; Status, /* these volatile */
Interrupt;
uint8_t Geometry; uint8_t Geometry;
uint8_t Control; uint8_t Control;
uint8_t Command; uint8_t Command;