Changes

Jump to navigation Jump to search
20 bytes added ,  07:17, 26 January 2022
no edit summary
Line 1: Line 1:  
Mount-v2 CRIU algorithm
 
Mount-v2 CRIU algorithm
 +
 +
== Introduction ==
    
After we've merged MOVE_MOUNT_SET_GROUP feature to mainstream linux v5.15 [https://github.com/torvalds/linux/commit/9ffb14ef61bab83fa818736bf3e7e6b6e182e8e2 torvalds/linux@9ffb14e] now we can use it to restore sharing groups of mounts without the need to care about inheriting those groups when create mounts, we can just set sharing groups at later stage and before that construct mount trees with private mounts.
 
After we've merged MOVE_MOUNT_SET_GROUP feature to mainstream linux v5.15 [https://github.com/torvalds/linux/commit/9ffb14ef61bab83fa818736bf3e7e6b6e182e8e2 torvalds/linux@9ffb14e] now we can use it to restore sharing groups of mounts without the need to care about inheriting those groups when create mounts, we can just set sharing groups at later stage and before that construct mount trees with private mounts.
Line 9: Line 11:  
* Propagation may change parent mounts for existing mount tree;
 
* Propagation may change parent mounts for existing mount tree;
 
* "Mount trap" - propagation may cover initial mount;
 
* "Mount trap" - propagation may cover initial mount;
* "Non-uniform" propagation - there are different tricks with mount order and temporary children-"lock" mounts, which create mount trees which can't be restored without those tricks.
+
* "Non-uniform" propagation - there are different tricks with mount order and temporary children-"lock" mounts, which create mount trees which can't be restored without those tricks;
* "Cross-namespace" sharing groups creation need to be ordered with mount namespace creation right.
+
* "Cross-namespace" sharing groups creation need to be ordered with mount namespace creation right;
 
* Sharing groups vs mount tree order inversion can be very complex to restore and require multiple auxiliary. (see example below)
 
* Sharing groups vs mount tree order inversion can be very complex to restore and require multiple auxiliary. (see example below)
  

Navigation menu