bad107f mount-util: store mount flags in "todo" list in + handle submounts gracefully

1 file Authored by Lennart Poettering 3 years ago, Committed by zbyszek 3 years ago,
    mount-util: store mount flags in "todo" list in + handle submounts gracefully
    
    This replaces the "todo" set with a "todo" hash map that stores the
    mount flags we found. This makes an explicit call to get_mount_flags()
    unncessary, since we have the flags handy right-away, and lowers our
    work from O(n^2) to O(n). Nice!
    
    The "done" set is also improved slightly: we'll use more modern ways to
    allocate it, via set_ensure_consume(), and freeing-via-hash_ops.
    
    Finally, failures on submount remounts are now handled gracefully,
    there are just too many reasons why they might fail, given NFS, autofs,
    FUSE which weird access controls, where even root might lack the privs
    to do something.
    
    Fixes: #16156
    (cherry picked from commit ba8dced2a60d8535bf6d685e2fd164e5ff3f056b)
    
        
file modified
+69 -42