linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
To: Jason Andryuk <jandryuk@gmail.com>
Cc: "Chatre, Reinette" <reinette.chatre@intel.com>,
	Samuel Ortiz <samuel@sortiz.org>,
	Tomas Winkler <tomasw@gmail.com>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>
Subject: Re: kernel BUG at drivers/net/wireless/iwlwifi/iwl3945-base.c:3127!
Date: Tue, 10 Mar 2009 11:22:45 -0700	[thread overview]
Message-ID: <1236709365.3911.1.camel@abhi-desktop> (raw)
In-Reply-To: <c4d76b3b0903100610v21da8728l1414ca0187f29376@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 7498 bytes --]

Jason,
  Can you take a look at the patch and test it? I am not sure how the
tip of your git looks like but you can make changes easily by looking at
the patch.

Thanks,
Abhijeet
On Tue, 2009-03-10 at 06:10 -0700, Jason Andryuk wrote:
> > I am finding it hard to keep track of things as what works and what does
> > not work appears to shift. I did install a 64bit system in the hopes of
> > reproducing your issue but could not with a basic open connect. How do
> > you connect to the AP? Please provide details that you think will enable
> > me to reproduce.
> 
> I am trying to connect to an unencrypted 802.11b AP.
> 
> Back in January, after first encountering the BUG, I attempted a git
> bisect, but I ran into problems.
> 
> From earlier git bisect attempts, I found commit
> "738910c064ff461051cd37e17199f270ff88a9a3 iwl3945: use rx queue
> management infrastructure from iwlcore" is the first to trigger the
> original BUG_ON.
> 
> "commit cbd8b90ffd8a321ffb2a705733729f0d5ebb20f9 iwl3945:
> iwl3945_queue and iwl3945_channel_info replacement" worked
> successfully.
> 
> Unfortunately, the conversion of iwl3945 leaves the driver inoperable
> at many places between the two commits above, so a bisect fails on
> account of other issues.  I have been spending time progressing from
> cbd8b90f... to 738910c0... and fixing issues as encountered.
> Following the commits on this page,
> http://git.kernel.org/?p=linux/kernel/git/linville/wireless-testing.git;a=shortlog;h=738910c064ff461051cd37e17199f270ff88a9a3
> , I am trying to get from "cbd8b90ffd8a321ffb2a705733729f0d5ebb20f9
> iwl3945: iwl3945_queue and iwl3945_channel_info replacement" to the
> top.
> 
> While doing that, I have to fix errors to get the driver functional.
> 
> Basically, I am doing a manual bisect where I have to fix the errors
> at each stage.  But it isn't truly a bisect as I am progressing from
> cbd8b90f... to 738910c0...
> 
> On Tue, Mar 10, 2009 at 1:04 AM, reinette chatre
> <reinette.chatre@intel.com> wrote:
> > Hi Jason,
> >
> > On Mon, 2009-03-09 at 18:40 -0700, Jason Andryuk wrote:
> >> I thought I had made a big breakthrough when I found the solution to
> >> getting
> >> "iwlwifi: use iwl_cmd instead of iwl3945_cmd"
> >> bb64785ad94d575fe4f5f9e69f4f6c0b24e9905d to work.  Then I discovered
> >> that casting to iwl3945_tx_cmd was fixed later by "iwl3945: use
> >> iwl3945_tx_cmd instead of iwl_tx_cmd" fadd267e...
> >
> >
> > Does this mean if you apply commit fadd267e on top of
> > bb64785ad94d575fe4f5f9e69f4f6c0b24e9905d then things work?
> 
> No.  My patch, which is basically fadd267e..., completes the
> transition of bb64785ad94d575fe4f5f9e69f4f6c0b24e9905d and allows the
> driver to work at *that* stage.
> bb64785ad94d575fe4f5f9e69f4f6c0b24e9905d and fadd267e should have been
> one commit.
> 
> >>
> >> However, with this new knowledge, I was able to get farther.
> >>
> >> Using my iwl3945_tx_cmd conversion patch,
> >
> > Is this the last patch you emailed?
> 
> I don't have the patch in front of me, but it is basically fadd267e
> 
> >> a patch for allocating rb_stts
> 
> It is basically the reverse of this patch from Sam Ortiz *I think*.
> Again, I don't have it in front of me.  Commit "
> c2a0aa3cb733452e749727680e380dca6cc10a68 iwl3945: use iwl_rb_status"
> has a NULL pointer dereference since it doesn't allocate rb_stts.
> 
> ---
>  drivers/net/wireless/iwlwifi/iwl-rx.c |    8 --------
>  1 file changed, 8 deletions(-)
> 
> Index: wireless-testing/drivers/net/wireless/iwlwifi/iwl-rx.c
> ===================================================================
> --- wireless-testing.orig/drivers/net/wireless/iwlwifi/iwl-rx.c
> 2009-01-27 17:13:46.000000000 +0100
> +++ wireless-testing/drivers/net/wireless/iwlwifi/iwl-rx.c
> 2009-01-27 17:15:46.000000000 +0100
> @@ -346,11 +346,6 @@ int iwl_rx_queue_alloc(struct iwl_priv *
>        if (!rxq->bd)
>                goto err_bd;
> 
> -       rxq->rb_stts = pci_alloc_consistent(dev, sizeof(struct iwl_rb_status),
> -                                       &rxq->rb_stts_dma);
> -       if (!rxq->rb_stts)
> -               goto err_rb;
> -
>        /* Fill the rx_used queue with _all_ of the Rx buffers */
>        for (i = 0; i < RX_FREE_BUFFERS + RX_QUEUE_SIZE; i++)
>                list_add_tail(&rxq->pool[i].list, &rxq->rx_used);
> @@ -362,9 +357,6 @@ int iwl_rx_queue_alloc(struct iwl_priv *
>        rxq->need_update = 0;
>        return 0;
> 
> -err_rb:
> -       pci_free_consistent(priv->pci_dev, 4 * RX_QUEUE_SIZE, rxq->bd,
> -                           rxq->dma_addr);
>  err_bd:
>        return -ENOMEM;
>  }
> 
> >> and a patch for the BUG_ON -> WARN_ON,
> >
> > ... and this one
> 
> This is your patch from January 9
> 
> diff --git a/drivers/net/wireless/iwlwifi/iwl3945-base.c
> b/drivers/net/wireless/iwlwifi/iwl3945-base.c
> index a23d51d..09c1c8d 100644
> --- a/drivers/net/wireless/iwlwifi/iwl3945-base.c
> +++ b/drivers/net/wireless/iwlwifi/iwl3945-base.c
> @@ -3118,7 +3118,14 @@ static void iwl3945_tx_cmd_complete(struct
> iwl_priv *priv,
>         int cmd_index;
>         struct iwl_cmd *cmd;
> 
> -       BUG_ON(txq_id != IWL_CMD_QUEUE_NUM);
> +       if (WARN(txq_id != IWL_CMD_QUEUE_NUM,
> +                "wrong command queue %d, sequence 0x%X readp=%d writep=%d\n",
> +                 txq_id, sequence,
> +                 priv->txq[IWL_CMD_QUEUE_NUM].q.read_ptr,
> +                 priv->txq[IWL_CMD_QUEUE_NUM].q.write_ptr)) {
> +               iwl_print_hex_dump(priv, IWL_DL_INFO , rxb, 32);
> +               return;
> +       }
> 
>         cmd_index = get_cmd_index(&priv->txq[IWL_CMD_QUEUE_NUM].q, index, huge);
>         cmd = priv->txq[IWL_CMD_QUEUE_NUM].cmd[cmd_index];
> 
> 
> >>  I was able to narrow down commit
> >> "iwl3945: sync tx queue data structure with iwlagn"
> >> ff5010c3e12f1d0da27a5f871c2e3d5333dfbe2f as the one that starts
> >> introducing Microcode SW errors.
> >>
> >
> > I am not sure how your repository looks at this stage. What is your
> > latest wireless-testing commit and what patches do you have on top of
> > it?
> 
> The repo looks like this:
> git checkout -f ff5010c3e12f1d0da27a5f871c2e3d5333dfbe2f
> patch -p1 < ../iwl-tx-cmd-conversion.patch
> patch -p1 < ../iwl-rb_stts.patch
> patch -p1 < ../iwl-BUG-to-WARN.patch
> 
> The previous commit with the above patches works.
> 
> >> I tried adding in Reinette's iwl3945_hw_txq_free_tfd pci_unmap_single
> >> patch from earlier, but it did not fix the problem.
> >>
> >> Would TX debugging output be more helpful?
> >
> > You log below has a new error (similar to what you note in your next
> > email). "Unsupported interface type 515". This is very strange and
> > really looks like some corruption as this value is initialized with a
> > macro during probe. Could you enable mac and info debugging also (add
> > 0x3 to your current debug flags)? This code has also changed a bit since
> > commit bb64785ad94d575fe4f5f9e69f4f6c0b24e9905d.
> >
> > You can also put a dump_stack() in iwl3945_connection_init_rx_config to
> > see where the call comes from and then trace the value of mode to see
> > where it is set to 515 ... it is supposed to be 2
> > (NL80211_IFTYPE_STATION).
> 
> It may be a little while before I can get back to this.
> 
> Thanks for looking into it.
> 
> Jason
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

[-- Attachment #2: 0001-iwl3945-use-iwl_tx_cmd_complete.patch --]
[-- Type: application/mbox, Size: 3980 bytes --]

  reply	other threads:[~2009-03-10 18:31 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-18  0:06 kernel BUG at drivers/net/wireless/iwlwifi/iwl3945-base.c:3127! Deuce
2009-01-18 17:41 ` Deuce
2009-01-26 11:44 ` Samuel Ortiz
2009-01-27  3:13   ` Jason Andryuk
2009-01-27  3:35     ` Jason Andryuk
2009-01-27 16:24       ` Samuel Ortiz
2009-01-27 23:31         ` Jason Andryuk
2009-01-28  7:12           ` Tomas Winkler
2009-01-28 11:37             ` Samuel Ortiz
2009-01-28 11:52               ` Tomas Winkler
2009-01-28 12:12                 ` Samuel Ortiz
2009-02-20  4:17                   ` Jason Andryuk
2009-02-20 19:49                     ` reinette chatre
2009-02-23  0:10                       ` Jason Andryuk
2009-02-23  4:37                         ` Jason Andryuk
2009-02-23 19:21                           ` reinette chatre
2009-02-23 22:28                           ` reinette chatre
2009-02-24  3:02                             ` Jason Andryuk
2009-02-24  0:15                           ` reinette chatre
2009-02-24  2:47                             ` Jason Andryuk
2009-03-02  3:37               ` Jason Andryuk
2009-03-04  4:32                 ` Jason Andryuk
2009-03-04 19:19                   ` reinette chatre
2009-03-04 19:47                     ` Jason Andryuk
2009-03-05  0:04                       ` reinette chatre
2009-03-05 23:50                         ` Jason Andryuk
2009-03-06  0:24                           ` reinette chatre
2009-03-06  4:12                             ` Jason Andryuk
2009-03-06  5:39                               ` reinette chatre
2009-03-10  1:40                                 ` Jason Andryuk
2009-03-10  3:32                                   ` Jason Andryuk
2009-03-10  5:04                                   ` reinette chatre
2009-03-10 13:10                                     ` Jason Andryuk
2009-03-10 18:22                                       ` Abhijeet Kolekar [this message]
2009-03-11  3:11                                         ` Jason Andryuk
2009-03-11  2:57                                       ` Jason Andryuk
2009-03-11  3:40                                     ` Jason Andryuk
2009-03-13  3:31                                       ` Jason Andryuk
2009-03-16 12:10                                         ` Jason Andryuk
2009-03-17  1:44                                           ` Jason Andryuk
2009-03-19  1:52                                             ` Jason Andryuk
2009-03-20  1:22                                               ` Jason Andryuk
2009-03-20 20:39                                                 ` Abhijeet Kolekar
2009-03-22 17:29                                                   ` Jason Andryuk
2009-03-23  0:37                                                     ` Jason Andryuk
2009-03-27 16:28                                                       ` reinette chatre
2009-03-31 22:22                                                       ` reinette chatre
2009-04-01  1:28                                                         ` Jason Andryuk
2009-04-21  1:41                                                         ` Jason Andryuk
2009-04-21 15:42                                                           ` reinette chatre
  -- strict thread matches above, loose matches on Subject: below --
2009-01-09  3:28 Deuce
2009-01-09 19:12 ` reinette chatre
2009-01-09 23:07   ` Deuce
2009-01-12 18:38     ` Samuel Ortiz
2009-01-13  3:12       ` Deuce
2009-01-13  4:37         ` Deuce

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=1236709365.3911.1.camel@abhi-desktop \
    --to=abhijeet.kolekar@intel.com \
    --cc=jandryuk@gmail.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=reinette.chatre@intel.com \
    --cc=samuel@sortiz.org \
    --cc=tomasw@gmail.com \
    /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 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).