ehea: code cleanup
Subsystems (2)
PATCH 2/2 ehea: code cleanup
This patch includes:
- code cleanup related to resource management
- extended error data gathering for resource management
- removing trailing whitespaces
Signed-off-by Jan-Bernd Themann <[email protected]>
---
This patch applies on top of the netdev upstream branch for 2.6.22
drivers/net/ehea/ehea.h | 3 drivers/net/ehea/ehea_main.c | 95 ++++++++-------------- drivers/net/ehea/ehea_phyp.c | 6 - drivers/net/ehea/ehea_phyp.h | 6 + drivers/net/ehea/ehea_qmr.c | 184 +++++++++++++++++++++++++++++++------------ drivers/net/ehea/ehea_qmr.h | 7 + 6 files changed, 187 insertions(+), 114 deletions(-)
drivers/net/ehea/ehea.h +2 -1
@@ -39,7 +39,7 @@#include <asm/io.h> #define DRV_NAME "ehea" -#define DRV_VERSION "EHEA_0053" +#define DRV_VERSION "EHEA_0054"#define EHEA_MSG_DEFAULT (NETIF_MSG_LINK | NETIF_MSG_TIMER \ | NETIF_MSG_RX_ERR | NETIF_MSG_TX_ERR)
@@ -309,6 +309,7 @@ struct ehea_cq {* Memory Region */ struct ehea_mr { +struct ehea_adapter *adapter;u64 handle;u64 vaddr;u32 lkey;
drivers/net/ehea/ehea_main.c +36 -59
219 lines not on this page · raw message
drivers/net/ehea/ehea_phyp.c +4 -2
@@ -478,12 +478,14 @@ u64 ehea_h_disable_and_get_hea(const u64 0, 0, 0, 0, 0, 0); /* R7-R12 */ } -u64 ehea_h_free_resource (const u64 adapter_handle,const u64 res_handle) +u64 ehea_h_free_resource (const u64 adapter_handle,const u64 res_handle, +u64 force_bit) {return ehea_plpar_hcall_norets (H_FREE_RESOURCE , adapter_handle,/* R4 */ res_handle,/* R5 */ -0 ,0 ,0 ,0 ,0 );/* R6-R10 */ + force_bit, +0 ,0 ,0 ,0 );/* R7-R10 */ } u64 ehea_h_alloc_resource_mr(const u64 adapter_handle, const u64 vaddr,
drivers/net/ehea/ehea_phyp.h +5 -1
@@ -414,7 +414,11 @@ u64 ehea_h_register_rpage(const u64 adapu64 ehea_h_disable_and_get_hea (const u64 adapter_handle,const u64 qp_handle); -u64 ehea_h_free_resource (const u64 adapter_handle,const u64 res_handle); +#define FORCE_FREE 1 +#define NORMAL_FREE 0 + +u64 ehea_h_free_resource (const u64 adapter_handle,const u64 res_handle, +u64 force_bit); u64 ehea_h_alloc_resource_mr(const u64 adapter_handle, const u64 vaddr, const u64 length, const u32 access_ctrl,
drivers/net/ehea/ehea_qmr.c +134 -50
302 lines not on this page · raw message
drivers/net/ehea/ehea_qmr.h +6 -1
@@ -361,7 +361,12 @@ struct ehea_qp *ehea_create_qp(struct ehint ehea_destroy_qp (struct ehea_qp *qp); -int ehea_reg_mr_adapter (struct ehea_adapter *adapter); +int ehea_reg_kernel_mr (struct ehea_adapter *adapter,struct ehea_mr *mr); + +int ehea_gen_smr (struct ehea_adapter *adapter,struct ehea_mr *old_mr, +struct ehea_mr *shared_mr); + +int ehea_rem_mr (struct ehea_mr *mr);void ehea_error_data (struct ehea_adapter *adapter,u64 res_handle);