Re: Fix race in the accessed/dirty bit handlers

From: Zoltan Menyhart <Zoltan.Menyhart_at_bull.net>
Date: 2006-03-11 04:11:52
Luck, Tony wrote:

>>	itc.d	r25
>>	;;
>>	srlz.d
>>	ld8	r18 = [r17]
> 
> But it does not matter to the "ld8 r18 = [r17]" whether the "itc.d"
> is visible or not.  r17 cannot be in the virtual address range that
> will be affected by the itc.d, so the serialization here would just
> slow things down, and have no effect at all.

I did say:

>> No, we are not going to use the freshly inserted translation for the next "ld". <<

Please consider the second issue I mentioned about the "itc":
Making sure that an external purge request will not be missed by our new
translation. See also on page 3:127:

"The visibility of the itc instruction to generated purges (ptc.g, ptc.ga) must occur before subsequent memory operations. From a software perspective, this is similar to acquire semantics. Serialization is still required to observe the side-effects of the translation being present."

How to tell if this "visibility of the itc instruction to generated purges"
has already been established?

I think a ";;" is not enough, this is why I propose this sequence:

    itc.d    r25
    ;;
    srlz.d
    ld8    r18 = [r17]

Thanks,

Zoltan
-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Sat Mar 11 04:12:31 2006

This archive was generated by hypermail 2.1.8 : 2006-03-11 04:12:39 EST