From owner-freebsd-hackers  Fri Oct 12 11: 6:37 2001
Delivered-To: freebsd-hackers@freebsd.org
Received: from earth.backplane.com (earth-nat-cw.backplane.com [208.161.114.67])
	by hub.freebsd.org (Postfix) with ESMTP
	id F3A5137B406; Fri, 12 Oct 2001 11:06:28 -0700 (PDT)
Received: (from dillon@localhost)
	by earth.backplane.com (8.11.6/8.11.2) id f9CI5uY34981;
	Fri, 12 Oct 2001 11:05:56 -0700 (PDT)
	(envelope-from dillon)
Date: Fri, 12 Oct 2001 11:05:56 -0700 (PDT)
From: Matt Dillon <dillon@earth.backplane.com>
Message-Id: <200110121805.f9CI5uY34981@earth.backplane.com>
To: Julian Elischer <julian@elischer.org>
Cc: hackers@FreeBSD.ORG, developers@FreeBSD.ORG
Subject: Re: Patch to allow 4.2 driver .o to run on 4.4
References:  <Pine.BSF.4.21.0110111604380.37124-100000@InterJet.elischer.org>
Sender: owner-freebsd-hackers@FreeBSD.ORG
Precedence: bulk
List-ID: <freebsd-hackers.FreeBSD.ORG>
List-Archive: <http://docs.freebsd.org/mail/> (Web Archive)
List-Help: <mailto:majordomo@FreeBSD.ORG?subject=help> (List Instructions)
List-Subscribe: <mailto:majordomo@FreeBSD.ORG?subject=subscribe%20freebsd-hackers>
List-Unsubscribe: <mailto:majordomo@FreeBSD.ORG?subject=unsubscribe%20freebsd-hackers>
X-Loop: FreeBSD.ORG


:Sorry about the crosspost but I estimate that this reaches those who need
:to see this..
:
:There was a change in the 4.x kernel.h on June 15 that broke backwards
:compatibility for binary distributed driver files
:(distributed as .o files)  It was an MFC of a patch by peter..
:but we didn't understand the ramifications in 4.x.

    This seems very reasonable to me... a nice quick and easy solution.

					-Matt


:my fix (a reversion in part) is as follows:
:
:Index: kernel.h
:===================================================================
:RCS file: /repos/cvs/mod/freebsd/src/sys/sys/kernel.h,v
:retrieving revision 1.63.2.5
:diff -u -r1.63.2.5 kernel.h
:--- kernel.h	2001/07/26 23:27:53	1.63.2.5
:+++ kernel.h	2001/10/11 21:30:03
:@@ -113,13 +113,13 @@
: 	SI_SUB_VM		= 0x1000000,	/* virtual memory system
:init*/
: 	SI_SUB_KMEM		= 0x1800000,	/* kernel memory*/
: 	SI_SUB_KVM_RSRC		= 0x1A00000,	/* kvm operational
:limits*/
:-	SI_SUB_CPU		= 0x2000000,	/* CPU resource(s)*/
:-	SI_SUB_KLD		= 0x2100000,	/* KLD and module setup */
:...
:
:The result of this was that old .o  drivers are initialise at sequence 
:0x2400000 but the device framework is not initialised until 0x3100000.
:
:my patch shifts all the numbers back to below that that binary
:...
:Julian

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