New pmap-v6.c features and improvements
Zbigniew Bodek
zbb at semihalf.com
Thu Aug 1 14:20:00 UTC 2013
2013/7/29 Zbyszek Bodek <zbb at semihalf.com>
> On 04.07.2013 19:34, Warner Losh wrote:
> >
> > On Jul 4, 2013, at 7:10 AM, Zbyszek Bodek wrote:
> >
> >> On 27.06.2013 16:31, Zbyszek Bodek wrote:
> >>> On 23.05.2013 14:36, Zbyszek Bodek wrote:
> >>>> On 22.05.2013 20:42, Ruslan Bukin wrote:
> >>>>> On Tue, May 21, 2013 at 02:39:56PM +0200, Zbyszek Bodek wrote:
> >>>>>> Hello Everyone,
> >>>>>>
> >>>>>> I would like to introduce another pack of patches for pmap-v6.c and
> >>>>>> related, that we created as a part of Semihalf work on Superpages
> >>>>>> support.
> >>>>>>
> >>>>>> The patches include some major changes like:
> >>>>>>
> >>>>>> - Switch to AP[1:0] access permissions model
> >>>>>> - Transition of the mapping related flags to PTE (stop using PVF_
> flags
> >>>>>> in pv_entry)
> >>>>>> - Rework of the pmap_enter_locked() function
> >>>>>> - pmap code optimizations
> >>>>>>
> >>>>>> And some minor clean-ups:
> >>>>>>
> >>>>>> - Get rid of the VERBOSE_INIT_ARM option
> >>>>>> - Clean-ups, style and naming improvements to pmap
> >>>>>>
> >>>>>> Please check out the attachment for details.
> >>>>>>
> >>>>>> I will be happy to answer your questions and doubts if any.
> >>>>>>
> >>>>>> Best regards
> >>>>>> Zbyszek Bodek
> >>>>>
> >>>>> I tested new patches with exynos5 and everything is OK.
> >>>>> (I mean all works as usual)
> >>>>>
> >>>>
> >>>> Hello.
> >>>>
> >>>> I'm happy to announce that code has been integrated to the FreeBSD
> HEAD.
> >>>> Great thanks your help!
> >>>>
> >>>
> >>> Hello Everyone,
> >>>
> >>> We have two micro patches for pmap-v6.c containing fix for 'modified'
> >>> bit emulation and removal of the redundant PGA_WRITEABLE clearing.
> >>>
> >>> Please check out the attachment.
> >>>
> >>> These two are minimal changes and we would like to commit them soon, so
> >>> we would be grateful if you could test them on your ARMv6/v7 platforms
> >>> and give us your remarks.
> >>>
> >>
> >> Hello,
> >>
> >> Because there were no objections, we've integrated the patches:
> >>
> >> http://svnweb.freebsd.org/base?view=revision&revision=252694
> >> http://svnweb.freebsd.org/base?view=revision&revision=252695
> >
> Hello Everyone,
>
> I'm sending another set of fixes for pmap-v6.c
> Please see attachment.
>
> 0012 - Removal of the costly, frequent sweeping through the
> pv_entries whenever pmap_nuke_pv(), pmap_modify_pv(), etc.
> are called. This also makes order with clearing PGA_WRITEABLE
> aflag as well as with the pmap_statistics related to the
> wired_count.
> 0013 - Fix for pamp_set_prot() where not all of the protection bits were
> cleared before the actual configuration. L2_XN is not icluded to
> the L2_S_PROT mask to maintain consistency between PROT_MASKS for
> L2 and L1 descriptors - contain only kernel/user and
> read/write permissions bits.
> 0014 - Fix for pmap_change_wiring() where "wired" indicator of type
> boolean was being used as a "wired flag" passed to
> pmap_modify_pv() which was obviously not a valid PVF_WIRED flag.
>
> Please test those patches on your ARM-based machines and send your
> feedback. We will also appreciate your reviews and remarks.
>
> Thank you in advance for your help.
>
>
Hello,
Are there any updates in this topic?
In addition, I'm attaching two more minor improvements, this time:
0015 - small clean-ups in pmap_clearbit() that in general gives one relevant
improvement which is to skip redundant "dirty" setting for a
page.
0016 - removal of the unused pv_kva field from the md_page structure
If there are no objections to that and earlier presented changes we would
like to
integrate them to the HEAD soon.
Best regards
Zbyszek Bodek
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0015-Simplify-and-clean-up-redundant-statements-from-ARMv.patch
Type: application/octet-stream
Size: 1810 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-arm/attachments/20130801/924ebf68/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0016-Stop-using-redundant-pv_kva-field-in-md_page-structu.patch
Type: application/octet-stream
Size: 1503 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-arm/attachments/20130801/924ebf68/attachment-0001.obj>
More information about the freebsd-arm
mailing list