Paul Mackerras <pau...@samba.org> writes:

> On Wed, Oct 09, 2013 at 12:47:31PM -0500, Scott Wood wrote:
>> On Wed, 2013-10-09 at 03:48 -0500, Bhushan Bharat-R65777 wrote:
>> > 
>> > What lookup_linux_pte_and_update() does:-
>> >  - find_linux_pte_or_hugepte()
>> >  - does size and some other trivial checks
>> >  - Then atomically update the pte:-
>> >    => while()
>> >    => wait till _PAGE_BUSY is clear
>> >    => atomically update the pte
>> >    => if not updated then go back to while() above else break
>> > 
>> > 
>> > While what lookup_linux_pte() does:-
>> >  - find_linux_pte_or_hugepte()
>> >  - does size and some other trivial checks
>> >  - wait till _PAGE_BUSY is clear
>> >  - return pte
>> > 
>> > I am finding it difficult to call lookup_linux_pte() from 
>> > lookup_linux_pte_and_update().
>> 
>> You could factor out a common lookup_linux_ptep().
>
> I don't really think it's enough code to be worth wringing out the
> last drop of duplication.  However, if he removed the checks for
> _PAGE_BUSY and _PAGE_PRESENT as I suggested in another mail, and made
> it return the pte pointer rather than the value, it would then
> essentially be a lookup_linux_ptep() as you suggest.

We also need to check for _PAGE_SPLITTING before going ahead and using
the pte value

-aneesh

--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to