Date: Thu, 6 Jul 2006 11:28:52 GMT From: "Wojciech A. Koszek" <wkoszek@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 100724 for review Message-ID: <200607061128.k66BSqLl066758@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=100724 Change 100724 by wkoszek@wkoszek_laptop on 2006/07/06 11:28:17 Use more ARM-like style of sf_buf.h. Affected files ... .. //depot/projects/mips2/src/sys/mips/include/sf_buf.h#2 edit Differences ... ==== //depot/projects/mips2/src/sys/mips/include/sf_buf.h#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2003, 2005 Alan L. Cox <alc@cs.rice.edu> + * Copyright (c) [year] [your name] * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -23,36 +23,35 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/sf_buf.h,v 1.3 2005/02/28 23:38:15 peter Exp $ + * $Id$ */ - #ifndef _MACHINE_SF_BUF_H_ #define _MACHINE_SF_BUF_H_ -#include <vm/vm.h> -#include <vm/vm_param.h> -#include <vm/vm_page.h> +#include <sys/queue.h> + +struct vm_page; -/* - * On this machine, the only purpose for which sf_buf is used is to implement - * an opaque pointer required by the machine-independent parts of the kernel. - * That pointer references the vm_page that is "mapped" by the sf_buf. The - * actual mapping is provided by the direct virtual-to-physical mapping. - */ -struct sf_buf; +struct sf_buf { + LIST_ENTRY(sf_buf) list_entry; /* list of buffers */ + TAILQ_ENTRY(sf_buf) free_entry; /* list of buffers */ + struct vm_page *m; /* currently mapped page */ + vm_offset_t kva; /* va of mapping */ + int ref_count; /* usage of this mapping */ +}; static __inline vm_offset_t sf_buf_kva(struct sf_buf *sf) { - return (PHYS_TO_DMAP(VM_PAGE_TO_PHYS((vm_page_t)sf))); + return (sf->kva); } -static __inline vm_page_t +static __inline struct vm_page * sf_buf_page(struct sf_buf *sf) { - return ((vm_page_t)sf); + return (sf->m); } #endif /* !_MACHINE_SF_BUF_H_ */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200607061128.k66BSqLl066758>