• Matan Barak's avatar
    IB/mlx5: Allow mapping the free running counter on PROT_EXEC · 6cbac1e4
    Matan Barak authored
    The current mlx5 code disallows mapping the free running counter of
    mlx5 based hardwares when PROT_EXEC is set.
    Although this behaviour is correct, Linux does add an implicit VM_EXEC
    to the vm_flags if the READ_IMPLIES_EXEC bit is set in the process
    personality. This happens for example if the process stack is
    executable.
    
    This causes libmlx5 to output a warning and prevents the user from
    reading the free running clock.
    Executing the init segment of the hardware isn't a security risk
    (at least no more than executing a process own stack), so we just
    prevent writes to there.
    
    Fixes: d69e3bcf ('IB/mlx5: Mmap the HCA's core clock register to
    		      user-space')
    Signed-off-by: default avatarMatan Barak <matanb@mellanox.com>
    Reviewed-by: default avatarHaggai Eran <haggaie@mellanox.com>
    Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
    6cbac1e4
main.c 65.5 KB