LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH] ath10k: match wait_for_completion_timeout return type
@ 2015-03-11 17:14 Nicholas Mc Guire
  2015-03-13 16:51 ` Kalle Valo
  0 siblings, 1 reply; 5+ messages in thread
From: Nicholas Mc Guire @ 2015-03-11 17:14 UTC (permalink / raw)
  To: Kalle Valo
  Cc: ath10k, linux-wireless, netdev, linux-kernel, Nicholas Mc Guire

Return type of wait_for_completion_timeout is unsigned long not int.
An appropriately named unsigned long is added and the assignments fixed up.

Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
---

While at it the missing spaces 3*HZ -> 3 * HZ were added as well (should
this be in a separate patch ?)

Patch was only compile tested with x86_64_defconfig + CONFIG_ATH_CARDS=m,
CONFIG_ATH10K=m

Patch is against 4.0-rc3 (localversion-next is -next-20150311)

 drivers/net/wireless/ath/ath10k/mac.c |   35 +++++++++++++++++++--------------
 1 file changed, 20 insertions(+), 15 deletions(-)

diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
index e8cc19f..7db8b81 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -98,6 +98,7 @@ static int ath10k_install_key(struct ath10k_vif *arvif,
 			      const u8 *macaddr, bool def_idx)
 {
 	struct ath10k *ar = arvif->ar;
+	unsigned long time_left;
 	int ret;
 
 	lockdep_assert_held(&ar->conf_mutex);
@@ -108,8 +109,8 @@ static int ath10k_install_key(struct ath10k_vif *arvif,
 	if (ret)
 		return ret;
 
-	ret = wait_for_completion_timeout(&ar->install_key_done, 3*HZ);
-	if (ret == 0)
+	time_left = wait_for_completion_timeout(&ar->install_key_done, 3 * HZ);
+	if (!time_left)
 		return -ETIMEDOUT;
 
 	return 0;
@@ -561,16 +562,16 @@ static void ath10k_mac_vif_beacon_cleanup(struct ath10k_vif *arvif)
 
 static inline int ath10k_vdev_setup_sync(struct ath10k *ar)
 {
-	int ret;
+	unsigned long time_left;
 
 	lockdep_assert_held(&ar->conf_mutex);
 
 	if (test_bit(ATH10K_FLAG_CRASH_FLUSH, &ar->dev_flags))
 		return -ESHUTDOWN;
 
-	ret = wait_for_completion_timeout(&ar->vdev_setup_done,
+	time_left = wait_for_completion_timeout(&ar->vdev_setup_done,
 						ATH10K_VDEV_SETUP_TIMEOUT_HZ);
-	if (ret == 0)
+	if (!time_left)
 		return -ETIMEDOUT;
 
 	return 0;
@@ -2432,6 +2433,7 @@ void ath10k_offchan_tx_work(struct work_struct *work)
 	const u8 *peer_addr;
 	int vdev_id;
 	int ret;
+	unsigned long time_left;
 
 	/* FW requirement: We must create a peer before FW will send out
 	 * an offchannel frame. Otherwise the frame will be stuck and
@@ -2477,9 +2479,9 @@ void ath10k_offchan_tx_work(struct work_struct *work)
 
 		ath10k_tx_htt(ar, skb);
 
-		ret = wait_for_completion_timeout(&ar->offchan_tx_completed,
-						  3 * HZ);
-		if (ret == 0)
+		time_left = wait_for_completion_timeout(
+					&ar->offchan_tx_completed, 3 * HZ);
+		if (!time_left)
 			ath10k_warn(ar, "timed out waiting for offchannel skb %p\n",
 				    skb);
 
@@ -2573,6 +2575,7 @@ static int ath10k_scan_stop(struct ath10k *ar)
 		.u.scan_id = ATH10K_SCAN_ID,
 	};
 	int ret;
+	unsigned long time_left;
 
 	lockdep_assert_held(&ar->conf_mutex);
 
@@ -2582,11 +2585,11 @@ static int ath10k_scan_stop(struct ath10k *ar)
 		goto out;
 	}
 
-	ret = wait_for_completion_timeout(&ar->scan.completed, 3*HZ);
-	if (ret == 0) {
+	time_left = wait_for_completion_timeout(&ar->scan.completed, 3 * HZ);
+	if (!time_left) {
 		ath10k_warn(ar, "failed to receive scan abortion completion: timed out\n");
 		ret = -ETIMEDOUT;
-	} else if (ret > 0) {
+	} else if (time_left > 0) {
 		ret = 0;
 	}
 
@@ -2655,6 +2658,7 @@ static int ath10k_start_scan(struct ath10k *ar,
 			     const struct wmi_start_scan_arg *arg)
 {
 	int ret;
+	unsigned long time_left;
 
 	lockdep_assert_held(&ar->conf_mutex);
 
@@ -2662,8 +2666,8 @@ static int ath10k_start_scan(struct ath10k *ar,
 	if (ret)
 		return ret;
 
-	ret = wait_for_completion_timeout(&ar->scan.started, 1*HZ);
-	if (ret == 0) {
+	time_left = wait_for_completion_timeout(&ar->scan.started, 1 * HZ);
+	if (!time_left) {
 		ret = ath10k_scan_stop(ar);
 		if (ret)
 			ath10k_warn(ar, "failed to stop scan: %d\n", ret);
@@ -4355,6 +4359,7 @@ static int ath10k_remain_on_channel(struct ieee80211_hw *hw,
 	struct ath10k_vif *arvif = ath10k_vif_to_arvif(vif);
 	struct wmi_start_scan_arg arg;
 	int ret = 0;
+	unsigned long time_left;
 
 	mutex_lock(&ar->conf_mutex);
 
@@ -4404,8 +4409,8 @@ static int ath10k_remain_on_channel(struct ieee80211_hw *hw,
 		goto exit;
 	}
 
-	ret = wait_for_completion_timeout(&ar->scan.on_channel, 3*HZ);
-	if (ret == 0) {
+	time_left = wait_for_completion_timeout(&ar->scan.on_channel, 3 * HZ);
+	if (!time_left) {
 		ath10k_warn(ar, "failed to switch to channel for roc scan\n");
 
 		ret = ath10k_scan_stop(ar);
-- 
1.7.10.4


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] ath10k: match wait_for_completion_timeout return type
  2015-03-11 17:14 [PATCH] ath10k: match wait_for_completion_timeout return type Nicholas Mc Guire
@ 2015-03-13 16:51 ` Kalle Valo
  2015-03-13 17:34   ` Nicholas Mc Guire
  0 siblings, 1 reply; 5+ messages in thread
From: Kalle Valo @ 2015-03-13 16:51 UTC (permalink / raw)
  To: Nicholas Mc Guire; +Cc: netdev, linux-wireless, linux-kernel, ath10k

Nicholas Mc Guire <hofrat@osadl.org> writes:

> Return type of wait_for_completion_timeout is unsigned long not int.
> An appropriately named unsigned long is added and the assignments fixed up.
>
> Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>

Doesn't apply:

Applying: ath10k: match wait_for_completion_timeout return type
fatal: sha1 information is lacking or useless (drivers/net/wireless/ath/ath10k/mac.c).
Repository lacks necessary blobs to fall back on 3-way merge.
Cannot fall back to three-way merge.
Patch failed at 0001 ath10k: match wait_for_completion_timeout return type

-- 
Kalle Valo

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] ath10k: match wait_for_completion_timeout return type
  2015-03-13 16:51 ` Kalle Valo
@ 2015-03-13 17:34   ` Nicholas Mc Guire
  2015-03-16 14:09     ` Kalle Valo
  0 siblings, 1 reply; 5+ messages in thread
From: Nicholas Mc Guire @ 2015-03-13 17:34 UTC (permalink / raw)
  To: Kalle Valo
  Cc: Nicholas Mc Guire, netdev, linux-wireless, linux-kernel, ath10k

On Fri, 13 Mar 2015, Kalle Valo wrote:

> Nicholas Mc Guire <hofrat@osadl.org> writes:
> 
> > Return type of wait_for_completion_timeout is unsigned long not int.
> > An appropriately named unsigned long is added and the assignments fixed up.
> >
> > Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
> 
> Doesn't apply:
> 
> Applying: ath10k: match wait_for_completion_timeout return type
> fatal: sha1 information is lacking or useless (drivers/net/wireless/ath/ath10k/mac.c).
> Repository lacks necessary blobs to fall back on 3-way merge.
> Cannot fall back to three-way merge.
> Patch failed at 0001 ath10k: match wait_for_completion_timeout return type
>
sorry - no idea how I managed that - checking it.

Will fix it up and repost.

thx!
hofrat

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] ath10k: match wait_for_completion_timeout return type
  2015-03-13 17:34   ` Nicholas Mc Guire
@ 2015-03-16 14:09     ` Kalle Valo
  2015-03-16 14:22       ` Nicholas Mc Guire
  0 siblings, 1 reply; 5+ messages in thread
From: Kalle Valo @ 2015-03-16 14:09 UTC (permalink / raw)
  To: Nicholas Mc Guire
  Cc: netdev, linux-wireless, linux-kernel, ath10k, Nicholas Mc Guire

Nicholas Mc Guire <der.herr@hofr.at> writes:

> On Fri, 13 Mar 2015, Kalle Valo wrote:
>
>> Nicholas Mc Guire <hofrat@osadl.org> writes:
>> 
>> > Return type of wait_for_completion_timeout is unsigned long not int.
>> > An appropriately named unsigned long is added and the assignments fixed up.
>> >
>> > Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
>> 
>> Doesn't apply:
>> 
>> Applying: ath10k: match wait_for_completion_timeout return type
>> fatal: sha1 information is lacking or useless (drivers/net/wireless/ath/ath10k/mac.c).
>> Repository lacks necessary blobs to fall back on 3-way merge.
>> Cannot fall back to three-way merge.
>> Patch failed at 0001 ath10k: match wait_for_completion_timeout return type
>>
> sorry - no idea how I managed that - checking it.
>
> Will fix it up and repost.

Did you use master branch from ath.git repository? ath10k is in quite
active development so if you use something else there's a substantial
risk that the patch will not apply.

https://wireless.wiki.kernel.org/en/users/drivers/ath10k/sources

-- 
Kalle Valo

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] ath10k: match wait_for_completion_timeout return type
  2015-03-16 14:09     ` Kalle Valo
@ 2015-03-16 14:22       ` Nicholas Mc Guire
  0 siblings, 0 replies; 5+ messages in thread
From: Nicholas Mc Guire @ 2015-03-16 14:22 UTC (permalink / raw)
  To: Kalle Valo
  Cc: netdev, linux-wireless, linux-kernel, ath10k, Nicholas Mc Guire

On Mon, 16 Mar 2015, Kalle Valo wrote:

> Nicholas Mc Guire <der.herr@hofr.at> writes:
> 
> > On Fri, 13 Mar 2015, Kalle Valo wrote:
> >
> >> Nicholas Mc Guire <hofrat@osadl.org> writes:
> >> 
> >> > Return type of wait_for_completion_timeout is unsigned long not int.
> >> > An appropriately named unsigned long is added and the assignments fixed up.
> >> >
> >> > Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
> >> 
> >> Doesn't apply:
> >> 
> >> Applying: ath10k: match wait_for_completion_timeout return type
> >> fatal: sha1 information is lacking or useless (drivers/net/wireless/ath/ath10k/mac.c).
> >> Repository lacks necessary blobs to fall back on 3-way merge.
> >> Cannot fall back to three-way merge.
> >> Patch failed at 0001 ath10k: match wait_for_completion_timeout return type
> >>
> > sorry - no idea how I managed that - checking it.
> >
> > Will fix it up and repost.
> 
> Did you use master branch from ath.git repository? ath10k is in quite
> active development so if you use something else there's a substantial
> risk that the patch will not apply.
> 
> https://wireless.wiki.kernel.org/en/users/drivers/ath10k/sources
>
no I was using linux-next - will switch to that branch for the
ath10k related cleanups (although the one I posted today was the
last from the completion fixup in ath10k - a few more in ath9k
left).

The failure of this patch was though due to a bad fix of a 
checkpatch warning - I alligned the original code rather than 
the replacement - updated my procedure so that re-applying the
patch is the final check before sending out.

thx!
hofrat

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2015-03-16 14:22 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-11 17:14 [PATCH] ath10k: match wait_for_completion_timeout return type Nicholas Mc Guire
2015-03-13 16:51 ` Kalle Valo
2015-03-13 17:34   ` Nicholas Mc Guire
2015-03-16 14:09     ` Kalle Valo
2015-03-16 14:22       ` Nicholas Mc Guire

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).