Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Apr 2000 17:24:12 -0700 (PDT)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        Luoqi Chen <luoqi@watermarkgroup.com>
Cc:        mihara@prd.fc.nec.co.jp, freebsd-smp@FreeBSD.ORG, smp@csn.net
Subject:   Patch appears to work (was Re: Multiple APIC support)
Message-ID:  <200004220024.RAA49064@apollo.backplane.com>

next in thread | raw e-mail | index | archive | help
    Hey Luoqi, the patch works over here!  I forwarded it to a friend
    who has a duel-cpu DELL box which is running FreeBSD which we
    couldn't get working in SMP before.  

    With the patch applied it appears to work!

    I think you should commit it (if you haven't already).  Also MFCing it to
    4.x (A 4.x box is what we tested it under) would be good.

					-Matt
					Matthew Dillon 
					<dillon@backplane.com>

: (Luoqi Chen writes)
:
:My fault, I made a mistake in the patch. Here's the correct one
:(the offset should be added before typecasting),
:
:Index: pmap.c
:===================================================================
:RCS file: /home/ncvs/src/sys/i386/i386/pmap.c,v
:retrieving revision 1.252
:diff -u -r1.252 pmap.c
:--- pmap.c	2000/03/16 08:51:49	1.252
:+++ pmap.c	2000/04/20 03:14:48
:@@ -426,9 +426,10 @@
: 		for (j = 0; j < mp_napics; j++) {
: 			/* same page frame as a previous IO apic? */
: 			if (((vm_offset_t)SMPpt[NPTEPG-2-j] & PG_FRAME) ==
:-			    (io_apic_address[0] & PG_FRAME)) {
:+			    (io_apic_address[i] & PG_FRAME)) {
: 				ioapic[i] = (ioapic_t *)((u_int)SMP_prvspace
:-					+ (NPTEPG-2-j)*PAGE_SIZE);
:+					+ (NPTEPG-2-j)*PAGE_SIZE
:+					+ (io_apic_address[i] & PAGE_MASK));
: 				break;
: 			}
: 			/* use this slot if available */
:@@ -436,7 +437,8 @@
: 				SMPpt[NPTEPG-2-j] = (pt_entry_t)(PG_V | PG_RW |
: 				    pgeflag | (io_apic_address[i] & PG_FRAME));
: 				ioapic[i] = (ioapic_t *)((u_int)SMP_prvspace
:-					+ (NPTEPG-2-j)*PAGE_SIZE);
:+					+ (NPTEPG-2-j)*PAGE_SIZE
:+					+ (io_apic_address[i] & PAGE_MASK));
: 				break;
: 			}
: 		}
:
:
:-lq


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-smp" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200004220024.RAA49064>