Hi, Tony, "Luck, Tony" <tony.l...@intel.com> writes: >> ping? > > I'm not actually sure that the code is wrong. As you say it is a pretty > strange loop. > > We seem to want to look at a bunch of conditions, and use "continue" to ignore > bits until we find one that we like the look of. Perhaps as soon as we do, > we want > to believe it to get our return value? Perhaps the code knows that we won't > find > another section that matches all the tests, so it isn't worth going around > the loop > again. > > Ying: You wrote this code 4 years ago. Any recollections of why it looks like > it does?
Sorry for late. I read the code again, and found the although the original code is a little tricky, it actually works. In ghes_estatus_caches[], for caches with same contents, the cache with biggest (newest) cache->time_in should be the first. So if we found one cache with too small (old) cache->time_in, we can say there are no cache with same contents and bigger (newer) cache->time_in, so that we can make decision (break) earlier. Best Regards, Huang, Ying -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/