All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ben Greear <greearb@candelatech.com>
To: Emmanuel Grumbach <egrumbach@gmail.com>
Cc: Kalle Valo <kvalo@qca.qualcomm.com>,
	ath10k <ath10k@lists.infradead.org>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>
Subject: Re: Firmware debugging patches?
Date: Mon, 02 Jun 2014 12:48:23 -0700	[thread overview]
Message-ID: <538CD507.1050803@candelatech.com> (raw)
In-Reply-To: <CANUX_P2vbKD3zkwE=DvJJWpo=gEMORCBy=XFoC2YSFpmg9sr_A@mail.gmail.com>

On 06/02/2014 12:29 PM, Emmanuel Grumbach wrote:

>>>> a) Normal Fedora/Ubuntu/etc default-installed distribution user
>>>> with ath10k NIC has wifi issues, firmware crashes, they don't
>>>> really know what firmware means or that it crashed, but some automated crash-log
>>>> tool notices and gathers debug info for automated bug reporting.
>>>
>>> I am working on that for our firmware. I recently added such capability relying on udev to notify the userspace that something bad happens. I gather all the data and prepare a binary file that is sent through debugfs (pulled by a script triggered by udev). I remember the first crash only.
>>
>> How is this binary blob encoded?
> 
> Different TLV based binary blobs concatenated. The actual encoding of
> each of them is another story.

Should we try to make the 'Type' in TLV be consistent as convenient
across different drivers?  That might someday help auto-reporting tools?

Do you have a link to your patch that defines the types you used?

>> At least for drivers that can recover from firmware crashes, I think
>> we should continue to report crashes, not just the first.
>>
> 
> I remember the first until udev kicks the script that will empty the
> buffer. Then I take the second crash's log.

Sounds good enough to me.

>> Maybe could store another one after initial crash has been read
>> and 1 minute has elapsed, or if initial crash has not been read
>> in 1 day, or something like that.
>>
>> Also, if we use debugfs then we require upstream kernels to have this
>> compiled in and mounted if we want to handle this class of user.
> 
> Agreed. I rely on debugfs. But this is "just" the way to reach the filesystem.
> Give me another way and I am fine with it.
> FWIW Ubuntu which is not exactly the distribution of the super
> advanced users has it mounted by default.

That sounds promising...Looks like Fedora 20 does as well, so maybe
debugfs will be good enough for crash dumps.


It does not resolve my interest in firmware logs interleaved with
kernel logs and possibly supplicant, however.

Looks like trace-cmds could do that, but it will not be
running for normal users when they experience crashes.

Any suggestions other than printk for this feature?

Thanks,
Ben

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


WARNING: multiple messages have this Message-ID (diff)
From: Ben Greear <greearb@candelatech.com>
To: Emmanuel Grumbach <egrumbach@gmail.com>
Cc: Kalle Valo <kvalo@qca.qualcomm.com>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
	ath10k <ath10k@lists.infradead.org>
Subject: Re: Firmware debugging patches?
Date: Mon, 02 Jun 2014 12:48:23 -0700	[thread overview]
Message-ID: <538CD507.1050803@candelatech.com> (raw)
In-Reply-To: <CANUX_P2vbKD3zkwE=DvJJWpo=gEMORCBy=XFoC2YSFpmg9sr_A@mail.gmail.com>

On 06/02/2014 12:29 PM, Emmanuel Grumbach wrote:

>>>> a) Normal Fedora/Ubuntu/etc default-installed distribution user
>>>> with ath10k NIC has wifi issues, firmware crashes, they don't
>>>> really know what firmware means or that it crashed, but some automated crash-log
>>>> tool notices and gathers debug info for automated bug reporting.
>>>
>>> I am working on that for our firmware. I recently added such capability relying on udev to notify the userspace that something bad happens. I gather all the data and prepare a binary file that is sent through debugfs (pulled by a script triggered by udev). I remember the first crash only.
>>
>> How is this binary blob encoded?
> 
> Different TLV based binary blobs concatenated. The actual encoding of
> each of them is another story.

Should we try to make the 'Type' in TLV be consistent as convenient
across different drivers?  That might someday help auto-reporting tools?

Do you have a link to your patch that defines the types you used?

>> At least for drivers that can recover from firmware crashes, I think
>> we should continue to report crashes, not just the first.
>>
> 
> I remember the first until udev kicks the script that will empty the
> buffer. Then I take the second crash's log.

Sounds good enough to me.

>> Maybe could store another one after initial crash has been read
>> and 1 minute has elapsed, or if initial crash has not been read
>> in 1 day, or something like that.
>>
>> Also, if we use debugfs then we require upstream kernels to have this
>> compiled in and mounted if we want to handle this class of user.
> 
> Agreed. I rely on debugfs. But this is "just" the way to reach the filesystem.
> Give me another way and I am fine with it.
> FWIW Ubuntu which is not exactly the distribution of the super
> advanced users has it mounted by default.

That sounds promising...Looks like Fedora 20 does as well, so maybe
debugfs will be good enough for crash dumps.


It does not resolve my interest in firmware logs interleaved with
kernel logs and possibly supplicant, however.

Looks like trace-cmds could do that, but it will not be
running for normal users when they experience crashes.

Any suggestions other than printk for this feature?

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

  reply	other threads:[~2014-06-02 19:48 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 [this message]
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
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=538CD507.1050803@candelatech.com \
    --to=greearb@candelatech.com \
    --cc=ath10k@lists.infradead.org \
    --cc=egrumbach@gmail.com \
    --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.