What | Removed | Added |
---|---|---|
Status | VERIFIED | REOPENED |
CC | hanshu@zhaoxin.com | |
Resolution | FIXED | --- |
Flags | needinfo? |
For snd-hda-intel, current patch replaced set_memory_wc with set_pages_array_wc. Function set_pages_array_wc marked the PTE of the original buffer address; Function set_memory_wc marked the PTE both original and after vmaped buffer address. Howerver, cache or not in transmission process is based on the PTE of the later, and the set_pages_array_wc did���t mark it, so a cache inconsistency issue occurs. To prove, please use command "aplay -D plughw:0,0 44100_S16_LE_2c.wav" with HDAC in non-snoop mode and you can hear it. For now I can���t reappearance the Oops described before, so I don't how to resolve them both, it needs developer's help.