• Andrey Vagin's avatar
    dump: fix parsing of /proc/locks · 08837c63
    Andrey Vagin authored
    is_blocked should be determined for each line independently.
    
    For example:
    1: POSIX  ADVISORY  WRITE 1974 fd:01:392012 0 EOF
    2: POSIX  ADVISORY  WRITE 1974 fd:01:392011 0 EOF
    3: POSIX  ADVISORY  WRITE 1698 fd:01:1196619 0 EOF
    4: POSIX  ADVISORY  WRITE 1698 fd:01:1196620 0 EOF
    5: POSIX  ADVISORY  WRITE 1698 fd:01:1196621 0 EOF
    6: POSIX  ADVISORY  WRITE 1689 fd:01:1429204 0 EOF
    7: POSIX  ADVISORY  WRITE 1690 fd:01:1429202 0 EOF
    8: POSIX  ADVISORY  WRITE 1690 fd:01:1429201 0 0
    8: -> POSIX  ADVISORY  WRITE 1701 fd:01:1429201 0 0
    9: POSIX  ADVISORY  WRITE 1688 fd:01:1429206 0 EOF
    10: FLOCK  ADVISORY  WRITE 1694 fd:01:1196520 0 EOF
    11: POSIX  ADVISORY  WRITE 862 00:0f:12421 0 EOF
    12: POSIX  ADVISORY  WRITE 846 00:0f:12377 0 EOF
    13: FLOCK  ADVISORY  WRITE 821 00:0f:11378 0 EOF
    14: POSIX  ADVISORY  WRITE 459 00:0f:9826 0 EOF
    15: POSIX  ADVISORY  WRITE 511 00:0f:10413 0 EOF
    
    Without this patch crtools returns the error:
    (00.000613) Error (proc_parse.c:1089): Invalid file lock info!
    
    It's because is_blocked is set in "true" for the line 8 and
    it becomes "true" for the line 9.
    Signed-off-by: 's avatarAndrey Vagin <avagin@openvz.org>
    Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
    08837c63
proc_parse.c 23.4 KB