smc_sysctl.h 820 B

1234567891011121314151617181920212223242526272829303132333435
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Shared Memory Communications over RDMA (SMC-R) and RoCE
  4. *
  5. * smc_sysctl.c: sysctl interface to SMC subsystem.
  6. *
  7. * Copyright (c) 2022, Alibaba Inc.
  8. *
  9. * Author: Tony Lu <tonylu@linux.alibaba.com>
  10. *
  11. */
  12. #ifndef _SMC_SYSCTL_H
  13. #define _SMC_SYSCTL_H
  14. #ifdef CONFIG_SYSCTL
  15. int __net_init smc_sysctl_net_init(struct net *net);
  16. void __net_exit smc_sysctl_net_exit(struct net *net);
  17. #else
  18. static inline int smc_sysctl_net_init(struct net *net)
  19. {
  20. net->smc.sysctl_autocorking_size = SMC_AUTOCORKING_DEFAULT_SIZE;
  21. net->smc.sysctl_max_links_per_lgr = SMC_LINKS_PER_LGR_MAX_PREFER;
  22. net->smc.sysctl_max_conns_per_lgr = SMC_CONN_PER_LGR_PREFER;
  23. return 0;
  24. }
  25. static inline void smc_sysctl_net_exit(struct net *net) { }
  26. #endif /* CONFIG_SYSCTL */
  27. #endif /* _SMC_SYSCTL_H */