On Tue, Jul 11, 2017 at 06:12:32PM +0200, Peter Zijlstra wrote: > > ARGH!!! please, if there are known holes in patches, put a comment in.
The fourth of the last change log is the comment, but it was not enough. I will try to add more comment in that case. > I now had to independently discover this problem during review of the > last patch. > ... > > Right, like I wrote in the comment; I don't think you need quite this > much. > > The problem only happens if you rewind more than MAX_XHLOCKS_NR; > although I realize it can be an accumulative rewind, which makes it > slightly more tricky. > > We can either make the rewind more expensive and make xhlock_valid() > false for each rewound entry; or we can keep the max_idx and account Does max_idx mean the 'original position - 1'? > from there. If we rewind >= MAX_XHLOCKS_NR from the max_idx we need to > invalidate the entire state, which we can do by invaliding Could you explain what the entire state is? > xhlock_valid() or by re-introduction of the hist_gen_id. When we What does the re-introduction of the hist_gen_id mean? > invalidate the entire state, we can also clear the max_idx.