All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jes Sorensen <Jes.Sorensen@redhat.com>
To: Larry Finger <Larry.Finger@lwfinger.net>
Cc: linux-wireless@vger.kernel.org, kvalo@codeaurora.org,
	johannes@sipsolutions.net
Subject: Re: [PATCH 1/1] New driver: rtl8xxxu (mac80211)
Date: Sun, 30 Aug 2015 17:02:10 -0400	[thread overview]
Message-ID: <wrfjegik7anh.fsf@redhat.com> (raw)
In-Reply-To: <wrfjegik8vqy.fsf@redhat.com> (Jes Sorensen's message of "Sun, 30 Aug 2015 14:41:09 -0400")

Jes Sorensen <Jes.Sorensen@redhat.com> writes:
> Larry Finger <Larry.Finger@lwfinger.net> writes:
>>> +static void rtl8xxxu_tx(struct ieee80211_hw *hw,
>>> +			struct ieee80211_tx_control *control,
>>> +			struct sk_buff *skb)
>>> +{
>>> +	struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data;
>>> +	struct ieee80211_tx_info *tx_info = IEEE80211_SKB_CB(skb);
>>> +	struct ieee80211_rate *tx_rate = ieee80211_get_tx_rate(hw, tx_info);
>>> +	struct rtl8xxxu_priv *priv = hw->priv;
>>> +	struct rtl8xxxu_tx_desc *tx_desc;
>>> +	struct ieee80211_sta *sta = NULL;
>>> +	struct rtl8xxxu_sta_priv *sta_priv = NULL;
>>> +	struct device *dev = &priv->udev->dev;
>>> +	struct urb *urb;
>>> +	u32 queue, rate;
>>> +	u16 pktlen = skb->len;
>>> +	u16 seq_number;
>>> +	u16 rate_flag = tx_info->control.rates[0].flags;
>>> +	int ret;
>>> +
>>> +	if (skb_headroom(skb) < sizeof(struct rtl8xxxu_tx_desc)) {
>>> +		dev_warn(dev,
>>> +			 "%s: Not enough headroom (%i) for tx descriptor\n",
>>> +			 __func__, skb_headroom(skb));
>>> +		goto error;
>>> +	}
>>> +
>>> +	if (unlikely(skb->len > (65535 - sizeof(struct rtl8xxxu_tx_desc)))) {
>>> +		dev_warn(dev, "%s: Trying to send over-sized skb (%i)\n",
>>> +			 __func__, skb->len);
>>> +		goto error;
>>> +	}
>>> +
>>> +	urb = usb_alloc_urb(0, GFP_KERNEL);
>>
>> The above statement generated a "scheduling while atomic" splat. The
>> gfp_t argument needs to be GFP_KERNEL.
>
> You are seeing scheduling while atomic in the TX path? That just seems
> wrong to me - Johannes is the mac80211 TX path not meant to allow
> sleeping?

I went and checked include/net/mac80211.h and indeed you are right.
Updated patch fixing these issues, and hopefully mutex issue, coming you
way in a minute.

Cheers,
Jes

  reply	other threads:[~2015-08-31 13:07 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-29 21:18 [PATCH 0/1] rtl8xxxu (mac80211) driver for rtl8188[cr]u/rtl8192cu/rtl8723au Jes.Sorensen
2015-08-29 21:18 ` [PATCH 1/1] New driver: rtl8xxxu (mac80211) Jes.Sorensen
2015-08-30  4:42   ` Larry Finger
2015-08-30 18:41     ` Jes Sorensen
2015-08-30 21:02       ` Jes Sorensen [this message]
2015-08-30 23:51       ` Larry Finger
2015-08-31  2:39         ` Jes Sorensen
2015-08-31 15:45           ` Larry Finger
2015-08-31 23:43             ` Jes Sorensen
2015-09-01  0:16               ` Larry Finger
2015-09-01  4:54                 ` Jes Sorensen
2015-09-01  5:17                   ` Larry Finger
2015-09-01  5:26                     ` Jes Sorensen
2015-08-31  1:06       ` Joe Perches
2015-08-31 13:11         ` Jes Sorensen
2015-08-31  8:19       ` Johannes Berg
2015-08-31 14:48   ` Johannes Berg
2015-08-31 23:42     ` Jes Sorensen
2015-09-01 15:07       ` Johannes Berg
2015-09-03  1:59         ` Jes Sorensen
2015-09-03  2:39           ` Jes Sorensen
2015-09-03 10:17             ` Johannes Berg
2015-09-04 18:24               ` Jes Sorensen
2015-09-04 18:25                 ` Johannes Berg
2015-09-05  4:02                 ` Sujith Manoharan
2015-09-17 16:46                   ` Johannes Berg
2015-10-05 18:49                     ` Jes Sorensen
2015-10-05 18:56                       ` Johannes Berg
2015-10-05 19:04                         ` Jes Sorensen
2015-10-05 19:12                           ` Johannes Berg
2015-10-05 19:19                             ` Jes Sorensen
2015-10-05 19:20                               ` Johannes Berg
2015-10-05 19:53                                 ` Jes Sorensen
2015-09-03 10:17           ` Johannes Berg
2015-09-04 17:48             ` Jes Sorensen
2015-09-04 18:02               ` Johannes Berg
2015-10-08 16:23   ` Jakub Sitnicki
2015-10-08 19:09     ` Jes Sorensen
2015-10-08 20:33       ` Stefan Lippers-Hollmann
2015-10-08 21:06         ` Jes Sorensen
2015-10-08 21:03       ` Jes Sorensen
2015-10-10  4:17       ` Taehee Yoo
2015-08-30 16:49 ` [PATCH 0/1] rtl8xxxu (mac80211) driver for rtl8188[cr]u/rtl8192cu/rtl8723au Larry Finger
2015-08-30 18:45   ` Jes Sorensen
  -- strict thread matches above, loose matches on Subject: below --
2015-08-30 21:02 [PATCH v2 " Jes.Sorensen
2015-08-30 21:02 ` [PATCH 1/1] New driver: rtl8xxxu (mac80211) Jes.Sorensen
2015-09-06 14:59   ` Kalle Valo
2015-09-06 17:06     ` Larry Finger
2015-09-07  1:41       ` Jes Sorensen
2015-09-07  1:40     ` Jes Sorensen
2015-09-07 13:20       ` Kalle Valo
2015-09-07 21:08         ` Jes Sorensen
2015-10-15  0:44 [PATCH v3 0/1] rtl8xxxu (mac80211) driver for rtl8188[cr]u/rtl8192cu/rtl8723au Jes.Sorensen
2015-10-15  0:44 ` [PATCH 1/1] New driver: rtl8xxxu (mac80211) Jes.Sorensen
2015-10-15 12:09   ` Bruno Randolf
2015-10-15 12:16     ` Jes Sorensen
2015-10-23 13:07 Xose Vazquez Perez
2015-10-23 14:00 ` Jes Sorensen
2015-10-23 16:09   ` Jes Sorensen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=wrfjegik7anh.fsf@redhat.com \
    --to=jes.sorensen@redhat.com \
    --cc=Larry.Finger@lwfinger.net \
    --cc=johannes@sipsolutions.net \
    --cc=kvalo@codeaurora.org \
    --cc=linux-wireless@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.