From: SUGIOKA T. <su...@it...> - 2001-01-17 01:09:03
|
At 18:45 01/01/16 +1100, Denis Dowling wrote: >I have been getting rare crashes in Linux 2.4.0 when handling SIGALRM >signals. I have managed to trace the problem down and it seems that the >sigreturn trap code is not getting flushed to the signal frame >sometimes. The problem goes away completely if I do a flush_cache_all >instead of flush_icache_range. I have attached a patch that does this. I >cannot see anything wrong with the current flush_icache_range usage but >suspect it is broken. The flush_cache_all is complete overkill so would >be very keen to hear if you have a fix for flush_icache_range. Currently flush_icache_range uses A-bit. but A-bit works only when ITLB entry exists. UTLB entry should not work. So every I-cache entry should be compared with physical address by hand or all I-cache should be invalidated. ---- SUGIOKA Toshinobu |