Bug 24032

Summary: rndcontrol and pccardd use of interupt handler incompatable
Product: Base System Reporter: marka <marka>
Component: kernAssignee: Mark Murray <markm>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: 4.2-RELEASE   
Hardware: Any   
OS: Any   

Description marka 2001-01-03 01:10:01 UTC
	rndcontrol and pccard use of the interupt handler is incompatable
	with each other.  It is possible to remove the interupt handler
	of a installed card via rndcontrol -c irq.

	Inserting a card clears the interupt handler installed via
	rndcontrol without clearing the associated bit in the mask.

Fix: 

Minimum fix, rndcontrol -c should ensure that it is still the
	installed handler before trying to restore the handler saved
	via rndcontrol -s.

	A full fix would require two interupt handling tables one
	for rndcontrol to manipulate and for the devices to manipulate
	The handlers in the later called from the handlers in the
	former.

	There are other alternatives which require the code intalling
	the interupt handlers to know about add_interrupt_randomness
	and do the appopriate things.
How-To-Repeat: 
	rndcontrol -s <irq>
	insert card that wil use <irq>
	rndcontrol -c <irg>
Comment 1 unfurl freebsd_committer freebsd_triage 2001-05-31 06:31:36 UTC
Responsible Changed
From-To: freebsd-bugs->imp

imp requested it be so.
Comment 2 Warner Losh freebsd_committer freebsd_triage 2001-05-31 07:05:12 UTC
Responsible Changed
From-To: imp->markm

Markm is mr rndcontrol. :-)
Comment 3 Mark Murray freebsd_committer freebsd_triage 2005-03-28 13:51:32 UTC
State Changed
From-To: open->closed

Completely rewritten in later releases.