Why is clflush an unprivileged instruction in x86?

Viewed 116

While investigating on cache attacks against x86 Intel processors, I fail to understand why clflush is an unprivileged instruction.

The only use case of clflush I can think of is to flush the previous cache contents before a context switch. But then again, context switches are performed by the OS, which means it wouldn't have any problem even if clflush was a privileged instruction.

So my question is:
Why is clflush an unprivileged instruction? Are there any use cases where it must be unprivileged?

0 Answers
Related