All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ben Greear <greearb@candelatech.com>
To: Kalle Valo <kvalo@qca.qualcomm.com>
Cc: "linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
	ath10k <ath10k@lists.infradead.org>
Subject: Re: Firmware debugging patches?
Date: Thu, 05 Jun 2014 09:03:52 -0700	[thread overview]
Message-ID: <539094E8.9020305@candelatech.com> (raw)
In-Reply-To: <87k38vpr28.fsf@kamboji.qca.qualcomm.com>

On 06/05/2014 03:51 AM, Kalle Valo wrote:
> Hi,
> 
> sorry for jumping in late, I get too much email as usual :/
> 
> Ben Greear <greearb@candelatech.com> writes:
> 
>> [Good stuff snipped, adding linux-wireless as this is a more
>> general issue if we are going to consider general framework]
>>
>>
>> Maybe we should start with goals before getting to implementation
>> details.  Here's my wish list that is ath10k specific, but probably
>> similar to other firmware users:
>>
>> 1)  We need the firmware crash text currently printed to
>> /var/log/messages.
>>
>> 2)  It would be nice to get the firmware RAM and stack dumps at time of
>> crash to debug more interesting crashes.
>>
>> 3)  It would be nice to know about firmware debug messages for
>> the period of time directly before the crash (maybe 2-5 minutes?)
>>
>> 4)  It would be nice to have this interleaved with kernel, supplicant,
>> and related logs.
> 
> I would add:
> 
> 5) A generic user space interface so that the same user space tool can
>    store firmware crash dumps from all wireless drivers and no need to
>    reinvent the wheel.

Looks like the plan to move the feature up into mac80211 once
we get the lower-level details sorted would take care of this.

> 
>> If we are storing crashes for something like ethtool to report, we need
>> RAM and/or disk storage so the firmware RAM dumps and such can be stored until
>> the user and/or automated tools ask for them.  We need some way to automatically
>> clean up old crashes so disk/ram is not overly utilized.  For APs,
>> they are low on both RAM and 'disk', so storing crash logs for any
>> length of time may be problematic.
> 
> I think most, if not all, wireless drivers store the firmware binary in
> RAM forever. I'm having hard time to believe that storing one instance
> (the latest one) of firmware crash dump would make any difference.
> That's why I'm not worried about RAM usage.

I'm concerned about the contents of the target's RAM, not the firmware
binary image.  Each crash would want to store a snapshot of the target's
RAM, including bss regions, stack(s), etc.  Basically, a poor man's
re-implementation of a core file.  In practice, this works out to
less that 100k bytes I think, so likely anything that can run ath10k
has that much memory to spare for debugging efforts...

I think this is resolved well enough in my patch (and iwlwifi does
it slightly differently, but should work too).

Thanks,
Ben

-- 
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc  http://www.candelatech.com


_______________________________________________
ath10k mailing list
ath10k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath10k

WARNING: multiple messages have this Message-ID (diff)
From: Ben Greear <greearb@candelatech.com>
To: Kalle Valo <kvalo@qca.qualcomm.com>
Cc: ath10k <ath10k@lists.infradead.org>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>
Subject: Re: Firmware debugging patches?
Date: Thu, 05 Jun 2014 09:03:52 -0700	[thread overview]
Message-ID: <539094E8.9020305@candelatech.com> (raw)
In-Reply-To: <87k38vpr28.fsf@kamboji.qca.qualcomm.com>

On 06/05/2014 03:51 AM, Kalle Valo wrote:
> Hi,
> 
> sorry for jumping in late, I get too much email as usual :/
> 
> Ben Greear <greearb@candelatech.com> writes:
> 
>> [Good stuff snipped, adding linux-wireless as this is a more
>> general issue if we are going to consider general framework]
>>
>>
>> Maybe we should start with goals before getting to implementation
>> details.  Here's my wish list that is ath10k specific, but probably
>> similar to other firmware users:
>>
>> 1)  We need the firmware crash text currently printed to
>> /var/log/messages.
>>
>> 2)  It would be nice to get the firmware RAM and stack dumps at time of
>> crash to debug more interesting crashes.
>>
>> 3)  It would be nice to know about firmware debug messages for
>> the period of time directly before the crash (maybe 2-5 minutes?)
>>
>> 4)  It would be nice to have this interleaved with kernel, supplicant,
>> and related logs.
> 
> I would add:
> 
> 5) A generic user space interface so that the same user space tool can
>    store firmware crash dumps from all wireless drivers and no need to
>    reinvent the wheel.

Looks like the plan to move the feature up into mac80211 once
we get the lower-level details sorted would take care of this.

> 
>> If we are storing crashes for something like ethtool to report, we need
>> RAM and/or disk storage so the firmware RAM dumps and such can be stored until
>> the user and/or automated tools ask for them.  We need some way to automatically
>> clean up old crashes so disk/ram is not overly utilized.  For APs,
>> they are low on both RAM and 'disk', so storing crash logs for any
>> length of time may be problematic.
> 
> I think most, if not all, wireless drivers store the firmware binary in
> RAM forever. I'm having hard time to believe that storing one instance
> (the latest one) of firmware crash dump would make any difference.
> That's why I'm not worried about RAM usage.

I'm concerned about the contents of the target's RAM, not the firmware
binary image.  Each crash would want to store a snapshot of the target's
RAM, including bss regions, stack(s), etc.  Basically, a poor man's
re-implementation of a core file.  In practice, this works out to
less that 100k bytes I think, so likely anything that can run ath10k
has that much memory to spare for debugging efforts...

I think this is resolved well enough in my patch (and iwlwifi does
it slightly differently, but should work too).

Thanks,
Ben

-- 
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc  http://www.candelatech.com


  reply	other threads:[~2014-06-05 16:04 UTC|newest]

Thread overview: 67+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <53891ACD.7070902@candelatech.com>
2014-06-02 16:21 ` Firmware debugging patches? Kalle Valo
2014-06-02 16:40   ` Ben Greear
2014-06-02 17:08     ` Kalle Valo
2014-06-02 17:42       ` Ben Greear
2014-06-02 17:42         ` Ben Greear
2014-06-02 18:46         ` Emmanuel Grumbach
2014-06-02 18:46           ` Emmanuel Grumbach
2014-06-02 18:58           ` Ben Greear
2014-06-02 18:58             ` Ben Greear
2014-06-02 19:29             ` Emmanuel Grumbach
2014-06-02 19:29               ` Emmanuel Grumbach
2014-06-02 19:48               ` Ben Greear
2014-06-02 19:48                 ` Ben Greear
2014-06-04 19:23                 ` Emmanuel Grumbach
2014-06-04 19:23                   ` Emmanuel Grumbach
2014-06-04 19:29                   ` Ben Greear
2014-06-04 19:29                     ` Ben Greear
2014-06-05 11:10                     ` Kalle Valo
2014-06-05 11:10                       ` Kalle Valo
2014-06-05 15:51                       ` Ben Greear
2014-06-05 15:51                         ` Ben Greear
2014-06-05 11:06                 ` Kalle Valo
2014-06-05 11:06                   ` Kalle Valo
2014-06-05 15:57                   ` Ben Greear
2014-06-05 15:57                     ` Ben Greear
2014-06-06  6:51                     ` Kalle Valo
2014-06-06  6:51                       ` Kalle Valo
2014-06-06 16:02                       ` Ben Greear
2014-06-06 16:02                         ` Ben Greear
2014-06-07 13:03                         ` Kalle Valo
2014-06-07 13:03                           ` Kalle Valo
2014-06-07 15:27                           ` Ben Greear
2014-06-07 15:27                             ` Ben Greear
2014-06-08  8:35                             ` Kalle Valo
2014-06-08  8:35                               ` Kalle Valo
2014-06-08  9:13                               ` Johannes Berg
2014-06-08  9:13                                 ` Johannes Berg
2014-06-08 16:01                                 ` Emmanuel Grumbach
2014-06-08 16:01                                   ` Emmanuel Grumbach
2014-06-08 15:39                               ` Ben Greear
2014-06-08 15:39                                 ` Ben Greear
2014-06-09  8:17                                 ` Kalle Valo
2014-06-09  8:17                                   ` Kalle Valo
2014-06-09 15:09                                   ` Ben Greear
2014-06-09 15:09                                     ` Ben Greear
2014-06-09 15:47                                     ` Ben Greear
2014-06-09 15:47                                       ` Ben Greear
2014-06-09 16:27                                       ` Ben Greear
2014-06-09 16:27                                         ` Ben Greear
2014-06-10  6:05                                         ` Kalle Valo
2014-06-10  6:05                                           ` Kalle Valo
2014-06-10 15:06                                           ` Ben Greear
2014-06-10 15:06                                             ` Ben Greear
2014-06-26 15:26                                           ` Ben Greear
2014-06-26 15:26                                             ` Ben Greear
2014-06-26 16:01                                             ` Kalle Valo
2014-06-26 16:01                                               ` Kalle Valo
2014-06-05 10:58             ` Kalle Valo
2014-06-05 10:58               ` Kalle Valo
2014-06-05 15:59               ` Ben Greear
2014-06-05 15:59                 ` Ben Greear
2014-06-05 10:51         ` Kalle Valo
2014-06-05 10:51           ` Kalle Valo
2014-06-05 16:03           ` Ben Greear [this message]
2014-06-05 16:03             ` Ben Greear
2014-06-02 21:21   ` Ben Greear
2014-06-06  9:43     ` Kalle Valo

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=539094E8.9020305@candelatech.com \
    --to=greearb@candelatech.com \
    --cc=ath10k@lists.infradead.org \
    --cc=kvalo@qca.qualcomm.com \
    --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.