Date: Wed, 08 Jul 2009 16:01:22 +0200 From: Michal Hajduk <mih@semihalf.com> To: Mark Tinguely <tinguely@casselton.net> Cc: stas@FreeBSD.org, freebsd-arm@FreeBSD.org Subject: Re: pmap problem in FreeBSD current Message-ID: <4A54A6B2.1020400@semihalf.com> In-Reply-To: <200907071554.n67Fsouv016804@casselton.net> References: <200907071554.n67Fsouv016804@casselton.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Mark Tinguely wrote: > Apologies for the noise. I am not familiar with the sf_buf_alloc/sf_buf_free > code and sent a bad code sequence. If we remove the mapping, it has to > come off the active list also: > > /* > * Detatch mapped page and release resources back to the system. > */ > void > sf_buf_free(struct sf_buf *sf) > { > #ifndef ARM_USE_SMALL_ALLOC > mtx_lock(&sf_buf_lock); > sf->ref_count--; > if (sf->ref_count == 0) { > TAILQ_INSERT_TAIL(&sf_buf_freelist, sf, free_entry); > nsfbufsused--; > + pmap_kremove(sf->kva); > + sf->m = NULL; > + LIST_REMOVE(sf, list_entry); > if (sf_buf_alloc_want > 0) > wakeup_one(&sf_buf_freelist); > } > mtx_unlock(&sf_buf_lock); > #endif > > --Mark Tinguely. > > Hello Mark, Thank you for looking again on r194459. I've tried to compile kernel using your patch with changes regarding PG_WRITABLE and arm_unmap_nocache(), but it didn't help. My problems are rather related to memory corruption, which I've observed in uma_core (pointers had bad values and count of free items in slab had negative value). I am still concerned about LOR, which has appeared in svn commit r194459 (I wrote about it in my first mail). Could you take a look at this LOR? Thanks for your help. Best regards, MichaĆ Hajduk
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4A54A6B2.1020400>