linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: wmb@firmworks.com (Mitch Bradley)
To: linux-arm-kernel@lists.infradead.org
Subject: Request review of device tree documentation
Date: Mon, 14 Jun 2010 08:20:47 -1000	[thread overview]
Message-ID: <4C1672FF.3060407@firmworks.com> (raw)
In-Reply-To: <alpine.LFD.2.00.1006141311580.13427@xanadu.home>

Nicolas Pitre wrote:
> On Mon, 14 Jun 2010, Mitch Bradley wrote:
>
>   
>> First, the primary use case for "keeping OFW alive" is for debugging purposes.
>> OFW remains resident in memory so that, if the OS is set to allow it (not the
>> default), a hot-key freezes the OS and enters OFW, where a human can inspect
>> the state of devices and OS data structures. A high skill level is required,
>> so it's okay if some fiddling is necessary to find or establish virtual
>> addresses or do similar magic .  
>>     
>
> Why would you impose such pain on yourself in order to try to make OFW a 
> viable debugging tool on ARM for live kernels, while you can achieve the 
> same and more much less intrusively and so much more safely with a JTAG 
> based debugger?
>
> If the cost of a JTAG solution is a concern, you can order USB based 
> JTAG dongles on the net for less than $30 and use them with OpenOCD[1].
>   

If OFW is present on the machine, when a customer reports a problem I 
can tell them
to do x and y and z and tell me what they see.  In this manner, I have 
often solved
difficult problems in minutes or hours.

Arranging for a JTAG dongle to appear at the customer site, then getting 
it set up and
the necessary software installed and configured on a suitable host 
system, typically
requires several days at best, plus potentially a lot of fiddling 
depending on what
sort of host system the customer happens to have.

The phrase "impose such pain on yourself" presupposes that the technical 
challenges
are much harder than they actually are.  In fact, most of the pain comes 
from dealing
with the "yuck, why would you ever want to do that" argument.  I first 
experienced
that argument in 1982, when Tom Lyon - Sun's Unix driver expert at the 
time - threatened
to "scratch my disk" if I ported Forth to the Sun 1 machine.  Tom later 
recanted and
said that he was very glad that I had done so, after I used it to solve 
several stop-ship
problems that came close to killing the company.

> Otherwise, what's wrong with already supported kgdb, or even kdb?
>
> [1] http://openocd.berlios.de/web/
>   

Requires setup.  The power of "it's just there, flip a switch to turn it 
on" has to be
experienced in the heat of battle to be appreciated.

The other difference is that conventional debuggers focus on the problem of
inspecting and controlling the execution of preexisting programs, instead of
on the problem of constructing quick tests to test hypotheses.  While it is
possible to use them to "poke around", it quickly becomes cumbersome if you
need to do anything more complicated than just looking.  OFW's built-in
programming language is particularly well suited for making little test 
loops
on-the-fly.   Also, OFW has drivers for most of all of the system's 
hardware, and
those drivers are independently developed from the Linux drivers.  That 
often
serves as a valuable "second opinion" to help discover the root cause of 
hardware
misbehavior.
>
> Nicolas
>
>   

  reply	other threads:[~2010-06-14 18:20 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <AANLkTilK4YkRMJqlcRDOAlGBzpdlZuSo9NF5NrRNocHT@mail.gmail.com>
     [not found] ` <33BD8E86-9397-432A-97BF-F154812C157B@digitaldans.com>
     [not found]   ` <AANLkTilv6TtPZs0DAwd8JlSV_J3VvMsvtVVOOeQauOIn@mail.gmail.com>
     [not found]     ` <4C13430B.5000907@firmworks.com>
     [not found]       ` <1276339529.1962.184.camel@pasglop>
     [not found]         ` <1276339684.1962.186.camel@pasglop>
     [not found]           ` <4C13B618.1030006@firmworks.com>
     [not found]             ` <1276383132.1962.195.camel@pasglop>
     [not found]               ` <AANLkTimRV8u3gDNCAIlROJoPcKs7jFwj2na3ZDFOg3O0@mail.gmail.com>
     [not found]                 ` <4C146F18.9030008@firmworks.com>
2010-06-14  5:02                   ` Request review of device tree documentation Grant Likely
2010-06-14 12:44                     ` David Gibson
2010-06-14 14:59                       ` Nicolas Pitre
2010-06-14 15:08                         ` Grant Likely
2010-06-14 16:02                         ` Jamie Lokier
2010-06-14 16:23                           ` Nicolas Pitre
2010-06-14 16:29                             ` Grant Likely
2010-06-14 16:28                           ` Grant Likely
2010-06-14 16:33                             ` Jamie Lokier
2010-06-14 16:58                           ` Mitch Bradley
2010-06-14 17:26                             ` Nicolas Pitre
2010-06-14 18:20                               ` Mitch Bradley [this message]
2010-06-14 19:40                                 ` Nicolas Pitre
2010-06-14 20:08                                   ` Mark Brown
2010-06-16  6:09                             ` Mike Rapoport
2010-06-16  6:13                               ` Mitch Bradley
2010-06-16  6:17                                 ` Mike Rapoport
2010-06-16  6:32                                   ` Mitch Bradley
2010-06-16  6:47                                     ` Mike Rapoport
2010-06-16  7:40                                       ` Mitch Bradley
2010-06-16  9:45                                         ` Vladimir Pantelic
2010-06-16 10:39                                         ` Mike Rapoport
2010-06-16 11:41                                           ` Jamie Lokier
2010-06-16 13:48                                             ` Jamie Bennett
2010-06-16 14:39                                           ` Nicolas Pitre
2010-06-16 17:43                                             ` Tim Bird
2010-06-17  6:45                                               ` Benjamin Zores
2010-06-16  6:52                                     ` M. Warner Losh
2010-06-18 22:12                                       ` Frank Rowand
2010-06-15  2:02                         ` David Gibson
2010-06-14 15:51                       ` M. Warner Losh
     [not found]                   ` <1276408773.1962.574.camel@pasglop>
2010-06-14  5:23                     ` Grant Likely
2010-06-14  7:38                       ` Russell King - ARM Linux
2010-06-14  7:45                         ` Mitch Bradley
2010-06-14  9:25                           ` Russell King - ARM Linux
2010-06-14  9:36                             ` Benjamin Herrenschmidt
2010-06-14  9:47                               ` Russell King - ARM Linux
2010-06-14 14:29                                 ` Jamie Lokier
2010-06-14 13:51                       ` Nicolas Pitre
2010-06-14 15:35                         ` Grant Likely
2010-06-14 15:58                           ` Nicolas Pitre
2010-06-14 16:16                             ` Grant Likely
     [not found]                     ` <4C147EA5.3060500@firmworks.com>
     [not found]                       ` <1276417792.1962.731.camel@pasglop>
2010-06-14  5:36                         ` Grant Likely
2010-06-14 20:00                           ` Ben Dooks
     [not found]                 ` <1276408087.1962.552.camel@pasglop>
2010-06-14  5:13                   ` Grant Likely
2010-06-14  6:09                     ` Benjamin Herrenschmidt
2010-06-14  6:17                       ` Mitch Bradley

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=4C1672FF.3060407@firmworks.com \
    --to=wmb@firmworks.com \
    --cc=linux-arm-kernel@lists.infradead.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 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).