Linux 4.5-rc5: efivarfs fixed to avoid “rm -rf /” bricking UEFI
This is a case of a <i>leaky abstraction</i> (<a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Leaky_abstraction" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Leaky_abstraction</a>). The &quot;everything is a file&quot; philosophy is the real problem here.<p>Specifically, the way a mental model of a hierarchy is broken by mounting a higher-order ressource (UEFI variables) as a subordinate of a file system that is itself a subordinate of the OS.<p>UEFI vars are just hardware resources. Mapping them as a file system object is just unnatural and, yes, stupid.<p>Trying to use a permission model (&quot;only root can do it&quot;) overlooks the real problem: The user do not <i>expect</i> higher order objects to be mapped as subordinates of the file system.<p>When you delete from the file system, you expect objects to be deleted from the <i>disk</i> - not UEFI variables to be altered or deleted! And because the user does not expect such behavior, there&#x27;s a good chance she&#x2F;he will override warnings and go ahead with the operation expecting only file system objects to be affected.<p>This is &quot;everything is a file&quot; taken a bridge too far.