<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.10.1">
</HEAD>
<BODY>
Hello,<BR>
&nbsp;&nbsp;&nbsp; I've scoured the lists and googled everywhere but came up short-handed.&nbsp; I'm trying to use parport on RedHat 8 (Linux 2.4.20-8) in two parallel processes.&nbsp; One process handles the data transfer, the other probes the device for status information.<BR>
&nbsp;&nbsp;&nbsp; With just one process, everything works fine.&nbsp; When the second process tries to read or write data, it always fails.&nbsp; The code PPCLAIMs the file descriptor (fd) before each read/write and PPRELEASEs it afterward.&nbsp; There is no problem with claiming or releasing each fd in each process, but the second process always writes zero bytes and hangs on read.<BR>
&nbsp;&nbsp;&nbsp; When /dev/parport0 is opened with O_NOBLOCK, the read no longer hangs but simply returns with status=-1 and errno=EAGAIN (Resource temporarily unavailable).&nbsp; Monitoring the PPRSTATUS value before each read in the first process always shows 0xD6 (PARPORT_STATUS_BUSY set), but in the second process it always shows 0x56 (neither BUSY or ERROR set).<BR>
&nbsp;&nbsp;&nbsp; What am I doing wrong, and how can I share the parport with both processes?&nbsp; Thanks,<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Brent Washburne<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MIPS Technologies, Inc.<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; First Silicon Solutions (FS2) Division
</BODY>
</HTML>