From owner-freebsd-current Sat Feb 9 19:20:13 2002 Delivered-To: freebsd-current@freebsd.org Received: from rwcrmhc53.attbi.com (rwcrmhc53.attbi.com [204.127.198.39]) by hub.freebsd.org (Postfix) with ESMTP id 07CAE37B417; Sat, 9 Feb 2002 19:20:10 -0800 (PST) Received: from InterJet.elischer.org ([12.232.206.8]) by rwcrmhc53.attbi.com (InterMail vM.4.01.03.27 201-229-121-127-20010626) with ESMTP id <20020210032009.LNUB2951.rwcrmhc53.attbi.com@InterJet.elischer.org>; Sun, 10 Feb 2002 03:20:09 +0000 Received: from localhost (localhost.elischer.org [127.0.0.1]) by InterJet.elischer.org (8.9.1a/8.9.1) with ESMTP id TAA09501; Sat, 9 Feb 2002 19:11:46 -0800 (PST) Date: Sat, 9 Feb 2002 19:11:45 -0800 (PST) From: Julian Elischer To: Bruce Evans Cc: John Baldwin , FreeBSD current users Subject: Re: cred stuff.. In-Reply-To: <20020210114611.W5212-100000@gamplex.bde.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Sun, 10 Feb 2002, Bruce Evans wrote: > On Sat, 9 Feb 2002, Julian Elischer wrote: > > > > > AST is not always called > > and userret is always called, but unfortunatly sometimes multiple times > > userret() isn't always called either in my version :-). When I'm > finished, it will never be called (but I might rename ast() to userret() > since it is essenttially the unusual case for the original userret()). Any chance you could break that bit of your patch out and make it an independently committable bit? (and commit it) ? I'd like to see SOMETHING always called because I need somewhere to plug in the code that the KSE kernel needs to run on KSE processes at the user boundary. > > > if someone were to clean up AST/userret > > it would be easier, but I am not sure I understand all the issues.. > > > > Particularly the interraction between ast() and userret() and the various > > possible ASTs > > Logically, it belongs at the end of userret(), Logically WHAT does? > but I would prefer it > to be immediately after all calls to userret() like it almost is now > so that I don't have to change it. ast() is not special here, modulo > optimizations -- it is just one caller of userret(). Think of it as > just an optimization of one case of trap(). > but AST is called (potentially) from all users of doreti() which you say includes fast interrupts. > > I prefer explicit comparisions with NULL and 0 except for booleans. Actually so do I though in this case I'm thinking of "if (x != NULL)" as "if X is valid" which comes out of my fingers as "if (x)" (validity is a boolean) Sometimes I've thought about something like: if (ISVALID(x)) where ISVALID could be different on different architectures, (e.g. ia64 actually has support for item validity) but it's not worth it and doesn't gain anything except bloat. > > Bruce > > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message