• Stanislav Kinsburskiy's avatar
    autofs: dump fsinfo stage introduced · 2429f08b
    Stanislav Kinsburskiy authored
    AutoFS mount point is managed by user space daemon, which receives
    requests from kernel via pipe, passed on mount operation.
    Kernel hold write end, while user space process - read end.
    Thus, for successful AutoFS migration, this connection has to be
    restored.
    During this stage, all the autofs parameters and parsed and collected in
    per-mount autofs structure. It also does check that autofs mounts is not in
    interim state.
    
    Below are major tricks to be performed to dump AutoFS mount:
    
    1) Read end of the pipe in the process have to be discovered: it will be used
    to restore the pipe in case of write pipe end in closed in the process.
    Note: migration of AutoFS mounts, which process group leader doesn't have read
    pipe end opened is not supported.
    
    2) Read pipe end has to be empty. Otherwise autofs is an interim state.
    Interim state is determined by control pipe contents: if it's not empty, then
    it means, that kernel requested some operation (mount/umount), which is in
    process right now.
    In case of pipe is not empty, dump is aborted.
    
    3) Mount points are collected (parsed) from initial pid namespace, which leads
    to real pgrp value in AutoFS options instead of virtual one. This have to be
    fixed.
    Note: we don't care about virtual pgrp in case of catatonic mounts
    Signed-off-by: 's avatarStanislav Kinsburskiy <skinsbursky@virtuozzo.com>
    Signed-off-by: 's avatarPavel Emelyanov <xemul@virtuozzo.com>
    2429f08b
autofs.h 254 Bytes