home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.unix.ultrix
- Path: sparky!uunet!portal!quadsys!roland
- From: roland@quadsys.com (Roland Besserer)
- Subject: signal catching bug?
- Message-ID: <C0MJGq.G23@quadsys.com>
- Organization: QUAD Systems
- X-Newsreader: Tin 1.1 PL3
- Date: Sun, 10 Jan 1993 06:02:49 GMT
- Lines: 30
-
- I am writing device drivers for ULTRIX 4.2A and have encountered a
- problem that is either an ULTRIX bug or possible my misunderstanding
- the behaviour of a system call.
-
- My driver will occasionally notify an attached user process by sending
- a signal (psignal - SIGURG or SIGSTOP) to the application. The application
- is setup to allow and catch those signals (signal()). In the current
- test version of the application code, the sending the signal will
- cause a simply function to be called which prints a message to the
- screen, then returns.
-
- Here is the problem.
-
- When a signal occurs and the installed function is called during the
- execution of:
-
- if ((err = ioctl(driver, IOCALL, param)) < 0) {
- ....
- }
-
- the driverioctl() function is sometimes called TWICE with IOCALL.
- Naturally, this will cause severe problems.
-
- Can anyone explain why this might be happening?
-
- --
-
- Roland Besserer
- QUAD Systems
- roland@quadsys.com
-