On Sun, 2011-07-17 at 13:02 +0200, Peter Zijlstra wrote: > > Again, _WHY_ isn't gup(.write=1) a complete write fault? Its supposed to > be, it needs to break COW, do dirty page tracking and call page_mkwrite. > I'm still thinking this e500 stuff is smoking crack. > > ARM has no hardware dirty bit either, and yet it works for them. I can't > exactly tell how because I got lost in there, but it does, again, > suggest e500 is on crack.
Because gup won't set dirty for a page that is already writable but whose dirty bit has been "harvested" by the VM already. Same with young. Maybe nobody sees it on ARM because nobody ever swaps on it ? :-) Or they have some different way of handling dirty/young updates.. I don't know. e500 isn't the only one who will be affected. All the non-hash powerpc subarchs will (I wrote a lot of that mm code so it's all my fault :-) That includes 4xx and 64-bit BookE. Cheers, Ben. _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev