On Monday 12 January 2004 19:47, Henning Meier-Geinitz wrote: > Hi, > > On Mon, Jan 12, 2004 at 07:34:27PM +0100, Oliver Rauch wrote: > > In the umax backend (forked reader process) I used a > > signal handler that catches sigkill and calls > > sanei_scsi_req_flush_all(); > > when the reader_process is killed. I am not sure if this > > is necessary but I think I did not add this just because of fun. > > Any ideas? > > Try it and you may hang your SCSI system :-) > At least if you use multiple SCSI request at the same time a call to > sanei_scsi_req_flush_all() is necessary. Bu you can do that from the > main process, too.
When I do not call sanei_scsi_req_flush_all(); when the reader process is killed then sanei_scsi crashes when the main process/thread tries to talk to the scanner the next time. When the process is killed because of sane_cancel or do_cancel is called there is no problem, I can call sanei_scsi_req_flush_all(); in do_cancel. The question is what happens when the SIGKILL was not generated in do_can= cel, e.g. because a user executed a kill command for the reader_process or bec= ause=20 of a malfunction. Oliver --=20 http://www.xsane.org http://www.mostang.com/sane http://www.rauch-domain.de mailto:[email protected]
