From owner-cvs-all Sun Jan 7 13:32:23 2001 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 9192737B400; Sun, 7 Jan 2001 13:32:05 -0800 (PST) Received: (from peter@localhost) by freefall.freebsd.org (8.11.1/8.11.1) id f07LW5D15054; Sun, 7 Jan 2001 13:32:05 -0800 (PST) (envelope-from peter) Message-Id: <200101072132.f07LW5D15054@freefall.freebsd.org> From: Peter Wemm Date: Sun, 7 Jan 2001 13:32:05 -0800 (PST) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/dev/pccard pccard.c X-FreeBSD-CVS-Branch: HEAD Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG peter 2001/01/07 13:32:05 PST Modified files: sys/dev/pccard pccard.c Log: This is a bandaid for a problem that is not entirely fixed yet. The pccard_function_init() call creates a bunch of inactive resources that are persistant and configured on demand. When the child driver "allocates" a resource it is connected up to one of these. When the child releases the resource, we should not delete our copy, just deactivate it again. Otherwise there is nothing to recreate it again after several probe functions have run and done an alloc/release cycle. INVARIANTS shows 0xdeadc0de without this. More work is needed to do a sweep though the pccard_function_disable() call to actually delete the resources for real. Right now, we leak memory on eject (at best), so Dont Do That(TM) yet. This affects 16 bit pccards on a cardbus bridge only. This will be fixed soon, but for now it gets the cards working. Reviewed by: imp Revision Changes Path 1.34 +6 -2 src/sys/dev/pccard/pccard.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message