Lines Matching refs:delay_drop
2760 struct mlx5_ib_delay_drop *delay_drop = in delay_drop_handler() local
2764 atomic_inc(&delay_drop->events_cnt); in delay_drop_handler()
2766 mutex_lock(&delay_drop->lock); in delay_drop_handler()
2767 err = mlx5_core_set_delay_drop(delay_drop->dev, delay_drop->timeout); in delay_drop_handler()
2769 mlx5_ib_warn(delay_drop->dev, "Failed to set delay drop, timeout=%u\n", in delay_drop_handler()
2770 delay_drop->timeout); in delay_drop_handler()
2771 delay_drop->activate = false; in delay_drop_handler()
2773 mutex_unlock(&delay_drop->lock); in delay_drop_handler()
2785 schedule_work(&ibdev->delay_drop.delay_drop_work); in handle_general_event()
3364 struct mlx5_ib_delay_drop *delay_drop = filp->private_data; in delay_drop_timeout_read() local
3368 len = snprintf(lbuf, sizeof(lbuf), "%u\n", delay_drop->timeout); in delay_drop_timeout_read()
3375 struct mlx5_ib_delay_drop *delay_drop = filp->private_data; in delay_drop_timeout_write() local
3385 mlx5_ib_dbg(delay_drop->dev, "Round delay drop timeout to %u usec\n", in delay_drop_timeout_write()
3388 delay_drop->timeout = timeout; in delay_drop_timeout_write()
4527 mutex_init(&dev->delay_drop.lock); in mlx5_ib_stage_delay_drop_init()
4528 dev->delay_drop.dev = dev; in mlx5_ib_stage_delay_drop_init()
4529 dev->delay_drop.activate = false; in mlx5_ib_stage_delay_drop_init()
4530 dev->delay_drop.timeout = MLX5_MAX_DELAY_DROP_TIMEOUT_MS * 1000; in mlx5_ib_stage_delay_drop_init()
4531 INIT_WORK(&dev->delay_drop.delay_drop_work, delay_drop_handler); in mlx5_ib_stage_delay_drop_init()
4532 atomic_set(&dev->delay_drop.rqs_cnt, 0); in mlx5_ib_stage_delay_drop_init()
4533 atomic_set(&dev->delay_drop.events_cnt, 0); in mlx5_ib_stage_delay_drop_init()
4539 dev->delay_drop.dir_debugfs = root; in mlx5_ib_stage_delay_drop_init()
4542 &dev->delay_drop.events_cnt); in mlx5_ib_stage_delay_drop_init()
4544 &dev->delay_drop.rqs_cnt); in mlx5_ib_stage_delay_drop_init()
4545 debugfs_create_file("timeout", 0600, root, &dev->delay_drop, in mlx5_ib_stage_delay_drop_init()
4555 cancel_work_sync(&dev->delay_drop.delay_drop_work); in mlx5_ib_stage_delay_drop_cleanup()
4556 if (!dev->delay_drop.dir_debugfs) in mlx5_ib_stage_delay_drop_cleanup()
4559 debugfs_remove_recursive(dev->delay_drop.dir_debugfs); in mlx5_ib_stage_delay_drop_cleanup()
4560 dev->delay_drop.dir_debugfs = NULL; in mlx5_ib_stage_delay_drop_cleanup()