odp.c (446279168e030fd0ed68e2bba336bef8bb3da352) odp.c (13ad1125b941a5f257d9d3ae70485773abd34792)
1/*
2 * Copyright (c) 2013-2015, Mellanox Technologies. All rights reserved.
3 *
4 * This software is available to you under a choice of one of two
5 * licenses. You may choose to be licensed under the terms of the GNU
6 * General Public License (GPL) Version 2, available from the file
7 * COPYING in the main directory of this source tree, or the
8 * OpenIB.org BSD license below:

--- 781 unchanged lines hidden (view full) ---

790 size_t bcnt;
791 int depth;
792};
793
794static bool mkey_is_eq(struct mlx5_ib_mkey *mmkey, u32 key)
795{
796 if (!mmkey)
797 return false;
1/*
2 * Copyright (c) 2013-2015, Mellanox Technologies. All rights reserved.
3 *
4 * This software is available to you under a choice of one of two
5 * licenses. You may choose to be licensed under the terms of the GNU
6 * General Public License (GPL) Version 2, available from the file
7 * COPYING in the main directory of this source tree, or the
8 * OpenIB.org BSD license below:

--- 781 unchanged lines hidden (view full) ---

790 size_t bcnt;
791 int depth;
792};
793
794static bool mkey_is_eq(struct mlx5_ib_mkey *mmkey, u32 key)
795{
796 if (!mmkey)
797 return false;
798 if (mmkey->type == MLX5_MKEY_MW)
798 if (mmkey->type == MLX5_MKEY_MW ||
799 mmkey->type == MLX5_MKEY_INDIRECT_DEVX)
799 return mlx5_base_mkey(mmkey->key) == mlx5_base_mkey(key);
800 return mmkey->key == key;
801}
802
803/*
804 * Handle a single data segment in a page-fault WQE or RDMA region.
805 *
806 * Returns number of OS pages retrieved on success. The caller may continue to

--- 776 unchanged lines hidden (view full) ---

1583 err = mlx5_eq_destroy_generic(dev->mdev, eq->core);
1584 cancel_work_sync(&eq->work);
1585 destroy_workqueue(eq->wq);
1586 mempool_destroy(eq->pool);
1587
1588 return err;
1589}
1590
800 return mlx5_base_mkey(mmkey->key) == mlx5_base_mkey(key);
801 return mmkey->key == key;
802}
803
804/*
805 * Handle a single data segment in a page-fault WQE or RDMA region.
806 *
807 * Returns number of OS pages retrieved on success. The caller may continue to

--- 776 unchanged lines hidden (view full) ---

1584 err = mlx5_eq_destroy_generic(dev->mdev, eq->core);
1585 cancel_work_sync(&eq->work);
1586 destroy_workqueue(eq->wq);
1587 mempool_destroy(eq->pool);
1588
1589 return err;
1590}
1591
1591void mlx5_odp_init_mr_cache_entry(struct mlx5_cache_ent *ent)
1592void mlx5_odp_init_mkey_cache_entry(struct mlx5_cache_ent *ent)
1592{
1593 if (!(ent->dev->odp_caps.general_caps & IB_ODP_SUPPORT_IMPLICIT))
1594 return;
1595
1596 switch (ent->order - 2) {
1597 case MLX5_IMR_MTT_CACHE_ENTRY:
1598 ent->page = PAGE_SHIFT;
1599 ent->ndescs = MLX5_IMR_MTT_ENTRIES;

--- 222 unchanged lines hidden ---
1593{
1594 if (!(ent->dev->odp_caps.general_caps & IB_ODP_SUPPORT_IMPLICIT))
1595 return;
1596
1597 switch (ent->order - 2) {
1598 case MLX5_IMR_MTT_CACHE_ENTRY:
1599 ent->page = PAGE_SHIFT;
1600 ent->ndescs = MLX5_IMR_MTT_ENTRIES;

--- 222 unchanged lines hidden ---