mirror of
https://github.com/opnsense/src.git
synced 2026-06-08 16:22:46 -04:00
fix bug in get_isa_apic_mask() where EISA bus was ignored.
Submitted by: Peter Wemm <peter@spinner.DIALix.COM>
This commit is contained in:
parent
d021fc112b
commit
c2855f6e47
7 changed files with 49 additions and 21 deletions
|
|
@ -22,7 +22,7 @@
|
|||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.7 1997/05/03 17:42:01 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
|
|
@ -898,10 +898,14 @@ get_isa_apic_mask(u_int isaMASK)
|
|||
if (isairq == 0) {
|
||||
return 0;
|
||||
}
|
||||
--isairq;
|
||||
|
||||
apicpin = get_isa_apic_irq(isairq - 1);
|
||||
apicpin = get_isa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
apicpin = get_eisa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return (1 << apicpin);
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.7 1997/05/03 17:42:01 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
|
|
@ -898,10 +898,14 @@ get_isa_apic_mask(u_int isaMASK)
|
|||
if (isairq == 0) {
|
||||
return 0;
|
||||
}
|
||||
--isairq;
|
||||
|
||||
apicpin = get_isa_apic_irq(isairq - 1);
|
||||
apicpin = get_isa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
apicpin = get_eisa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return (1 << apicpin);
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.7 1997/05/03 17:42:01 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
|
|
@ -898,10 +898,14 @@ get_isa_apic_mask(u_int isaMASK)
|
|||
if (isairq == 0) {
|
||||
return 0;
|
||||
}
|
||||
--isairq;
|
||||
|
||||
apicpin = get_isa_apic_irq(isairq - 1);
|
||||
apicpin = get_isa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
apicpin = get_eisa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return (1 << apicpin);
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.7 1997/05/03 17:42:01 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
|
|
@ -898,10 +898,14 @@ get_isa_apic_mask(u_int isaMASK)
|
|||
if (isairq == 0) {
|
||||
return 0;
|
||||
}
|
||||
--isairq;
|
||||
|
||||
apicpin = get_isa_apic_irq(isairq - 1);
|
||||
apicpin = get_isa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
apicpin = get_eisa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return (1 << apicpin);
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.7 1997/05/03 17:42:01 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
|
|
@ -898,10 +898,14 @@ get_isa_apic_mask(u_int isaMASK)
|
|||
if (isairq == 0) {
|
||||
return 0;
|
||||
}
|
||||
--isairq;
|
||||
|
||||
apicpin = get_isa_apic_irq(isairq - 1);
|
||||
apicpin = get_isa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
apicpin = get_eisa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return (1 << apicpin);
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.7 1997/05/03 17:42:01 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
|
|
@ -898,10 +898,14 @@ get_isa_apic_mask(u_int isaMASK)
|
|||
if (isairq == 0) {
|
||||
return 0;
|
||||
}
|
||||
--isairq;
|
||||
|
||||
apicpin = get_isa_apic_irq(isairq - 1);
|
||||
apicpin = get_isa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
apicpin = get_eisa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return (1 << apicpin);
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.7 1997/05/03 17:42:01 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
|
|
@ -898,10 +898,14 @@ get_isa_apic_mask(u_int isaMASK)
|
|||
if (isairq == 0) {
|
||||
return 0;
|
||||
}
|
||||
--isairq;
|
||||
|
||||
apicpin = get_isa_apic_irq(isairq - 1);
|
||||
apicpin = get_isa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
apicpin = get_eisa_apic_irq( isairq );
|
||||
if (apicpin == -1) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
return (1 << apicpin);
|
||||
|
|
|
|||
Loading…
Reference in a new issue