Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752112AbWCOBZm (ORCPT ); Tue, 14 Mar 2006 20:25:42 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752129AbWCOBZl (ORCPT ); Tue, 14 Mar 2006 20:25:41 -0500 Received: from e35.co.us.ibm.com ([32.97.110.153]:44198 "EHLO e35.co.us.ibm.com") by vger.kernel.org with ESMTP id S1752112AbWCOBZi (ORCPT ); Tue, 14 Mar 2006 20:25:38 -0500 Date: Tue, 14 Mar 2006 19:27:33 -0600 From: Jon Mason To: Olof Johansson Cc: Jon Mason , Pavel Machek , Muli Ben-Yehuda , Andi Kleen , Muli Ben-Yehuda , Linux-Kernel , discuss@x86-64.org, Andrew Morton Subject: Re: [PATCH RFC 2/3] x86-64: Calgary IOMMU - Calgary specific bits Message-ID: <20060315012733.GE7699@us.ibm.com> References: <20060314082432.GE23631@granada.merseine.nu> <20060314082552.GF23631@granada.merseine.nu> <20060314230306.GB1579@elf.ucw.cz> <20060315005514.GD7699@us.ibm.com> <20060315005632.GE5170@pb15.lixom.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20060315005632.GE5170@pb15.lixom.net> User-Agent: Mutt/1.5.11 Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1476 Lines: 39 On Tue, Mar 14, 2006 at 06:56:32PM -0600, Olof Johansson wrote: > On Tue, Mar 14, 2006 at 06:55:15PM -0600, Jon Mason wrote: > > On Wed, Mar 15, 2006 at 12:03:06AM +0100, Pavel Machek wrote: > > > Hi! > > > > > > > +union tce_entry { > > > > + u64 te_word; > > > > + struct { > > > > + unsigned int read :1; /* read allowed */ > > > > + unsigned int write :1; /* write allowed */ > > > > + unsigned int hubid :6; /* hub id - unused */ > > > > + unsigned int rsvd :4; /* reserved */ > > > > + unsigned long rpn :36; /* Real page number */ > > > > + unsigned int unused :16; /* unused */ > > > > + } bits; > > > > +}; > > > > > > I'd say this is going to be pretty flakey. > > > > Why do you think this would be flakey? It's nearly identical to the > > tce_entry definition in include/asm-powerpc/tce.h (endien swapped, of > > course). > > We're killing structures like that one by one on PPC, I just haven't > gotten around to dealing with tce_entry yet. > > The way to do it is to use masking and shifting by hand. Really? I thought this was much more elegant than masking and bitshifting (and less prone to errors). Is there a particular reason to do it that way? Thanks, Jon - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/