Thread (42 messages) 42 messages, 4 authors, 2016-06-29

Re: [PATCH v10 06/22] IB/hns: Add initial cmd operation

From: Wei Hu (Xavier) <hidden>
Date: 2016-06-21 10:52:42
Also in: linux-rdma, lkml


On 2016/6/20 21:33, Leon Romanovsky wrote:
On Thu, Jun 16, 2016 at 10:35:14PM +0800, Lijun Ou wrote:
quoted
This patch added the operation for cmd, and added some functions
for initializing eq table and selecting cmd mode.

Signed-off-by: Wei Hu <redacted>
Signed-off-by: Nenglong Zhao <redacted>
Signed-off-by: Lijun Ou <redacted>
---
PATCH v9/v8/v7/v6:
- No change over the PATCH v5

PATCH v5:
- The initial patch which was redesigned based on the second patch
   in PATCH v4
---
<...>
quoted
+#define CMD_MAX_NUM		32
+
+int hns_roce_cmd_init(struct hns_roce_dev *hr_dev)
+{
+	struct device *dev = &hr_dev->pdev->dev;
+
+	mutex_init(&hr_dev->cmd.hcr_mutex);
+	sema_init(&hr_dev->cmd.poll_sem, 1);
+	hr_dev->cmd.use_events = 0;
+	hr_dev->cmd.toggle = 1;
+	hr_dev->cmd.max_cmds = CMD_MAX_NUM;
<...>
quoted
+	for (hr_cmd->token_mask = 1; hr_cmd->token_mask < hr_cmd->max_cmds;
+	     hr_cmd->token_mask <<= 1)
+		;
+	--hr_cmd->token_mask;
It doesn't look that you dynamically change max_cmds supported.
Why do you need to calculate token_mask dynamically?
Hi, Leon

     1. The four lines above are in the function named 
hns_roce_cmd_use_events.
          and now this function is only called once in hns_roce_probe.
     2. In hns_roce_cmd_use_events,
         we use these 4 lines to achieve the value of hr_cmd->token_mask 
according to hr_cmd->max_cmds dynamically,
         then we only define one marco for hr_cmd->max_cmds as below:

	#define CMD_MAX_NUM		32

        And it looks more flexible.

Regards
Wei Hu
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help