Date: Tue, 26 Apr 2016 15:24:55 +0100 From: Ruslan Bukin <ruslan.bukin@cl.cam.ac.uk> To: Konstantin Belousov <kostikbel@gmail.com> Cc: Ruslan Bukin <br@FreeBSD.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r298580 - in head/sys/riscv: include riscv Message-ID: <20160426142455.GA25801@bsdpad.com> In-Reply-To: <20160425155044.GO2422@kib.kiev.ua> References: <201604251447.u3PElpfe084901@repo.freebsd.org> <20160425155044.GO2422@kib.kiev.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Apr 25, 2016 at 06:50:44PM +0300, Konstantin Belousov wrote:
> On Mon, Apr 25, 2016 at 02:47:51PM +0000, Ruslan Bukin wrote:
> > +/* An entry in the list of all pmaps */
> > +struct pmap_list_entry {
> > + SLIST_ENTRY(pmap_list_entry) pmap_link;
> > + struct pmap *pmap;
> > +};
>
> This is weird. Why do you need separate structure to track the all
> pmaps list, instead of embedding the list link into pmap itself ? In
> particular, the pmap_list_entry.pmap pointing to the pmap looks strange.
>
> And why do you use single-linked list for the container where you need
> to remove elements ? The cost is the iteration over the whole container
> on removal, vs. additional pointer in each pmap.
>
Many thanks. I have committed the fix (same way as i386 do).
Ruslan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160426142455.GA25801>
