Allow users to set FRMR pools aging timer through netlink. This functionality will allow user to control how long handles reside in the kernel before being destroyed, thus being able to tune the tradeoff between memory and HW object consumption and memory registration optimization. Since FRMR pools is highly beneficial for application restart scenarios, this command allows users to modify the aging timer to their application restart time, making sure the FRMR handles deregistered on application teardown are kept for long enough in the pools for reuse in the application startup.
Showing the changes to include/uapi (1 of 4 files). Show all
Unified · Split
| @@ -310,6 +310,8 @@ enum rdma_nldev_command { · 309 unmodified lines | ||
| 310 | 310 | |
| 311 | 311 | RDMA_NLDEV_CMD_FRMR_POOLS_GET, /* can dump */ |
| 312 | 312 | |
| 313 | + RDMA_NLDEV_CMD_FRMR_POOLS_SET, | |
| 314 | + | |
| 313 | 315 | RDMA_NLDEV_NUM_OPS |
| 314 | 316 | }; |
| 315 | 317 | |
| @@ -598,6 +600,7 @@ enum rdma_nldev_attr { · 282 unmodified lines | ||
| 598 | 600 | RDMA_NLDEV_ATTR_FRMR_POOL_QUEUE_HANDLES, /* u32 */ |
| 599 | 601 | RDMA_NLDEV_ATTR_FRMR_POOL_MAX_IN_USE, /* u64 */ |
| 600 | 602 | RDMA_NLDEV_ATTR_FRMR_POOL_IN_USE, /* u64 */ |
| 603 | + RDMA_NLDEV_ATTR_FRMR_POOLS_AGING_PERIOD, /* u32 */ | |
| 601 | 604 | |
| 602 | 605 | /* |
| 603 | 606 | * Always the end |