Subject: port-hp300/3724: Bad login in dca/apci interrupt handler
To: None <gnats-bugs@gnats.netbsd.org>
From: Mike <mike@black.smith.net.au>
List: netbsd-bugs
Date: 06/08/1997 01:29:50
>Number:         3724
>Category:       port-hp300
>Synopsis:       Bad login in dca/apci interrupt handler
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    gnats-admin (GNATS administrator)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Jun  8 01:35:07 1997
>Last-Modified:
>Originator:     Mike
>Organization:
	Mike Smith Network Support
>Release:        970608
>Environment:
	
System: NetBSD black.smith.net.au 1.2D NetBSD 1.2D (TEST) #3: Mon May 5 08:55:25 PDT 1997 root@pressed.spam.frisbee.net.au:/local0/work/sys/arch/hp300/compile/TEST hp300

System possibly showing symptoms is a HP9000/425t.

>Description:
	The logic in the apci/dca receive interrupt handler for RXRDY 
	interrupts reads as follows :

	read byte;
	pass to upper layer;
	if fifo,
		while more bytes
			if byte is data
				read byte;
				pass to upper layer;
			else
				handle as status;

	This is erroneous, as it discards status associated with received
	bytes.

>How-To-Repeat:
>Fix:
	Ultimately, dcaintr/apciintr need to be restructured, or replaced
	if/when the com.c driver is extended to work with these devices.
	In the short term, should the maintainer desire, I would be
	willing to recode these handlers to correct the problem.
>Audit-Trail:
>Unformatted: