• Omer Shpigelman's avatar
    habanalabs: don't allow hard reset with open processes · 36fafe87
    Omer Shpigelman authored
    When the MMU is heavily used by the engines, unmapping might take a lot of
    time due to a full MMU cache invalidation done as part of the unmap flow.
    Hence we might not be able to kill all open processes before going to hard
    reset the device, as it involves unmapping of all user memory.
    In case of a failure in killing all open processes, we should stop the
    hard reset flow as it might lead to a kernel crash - one thread (killing
    of a process) is updating MMU structures that other thread (hard reset) is
    freeing.
    Stopping a hard reset flow leaves the device as nonoperational and the
    user can then initiate a hard reset via sysfs to reinitialize the device.
    Signed-off-by: default avatarOmer Shpigelman <oshpigelman@habana.ai>
    Reviewed-by: default avatarOded Gabbay <oded.gabbay@gmail.com>
    Signed-off-by: default avatarOded Gabbay <oded.gabbay@gmail.com>
    36fafe87
device.c 34.8 KB