From: Corey Minyard <cminyard@mvista.com>
To: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Kenneth Sumrall <ken@mvista.com>, linux-kernel@vger.kernel.org
Subject: Re: Kexec, DMA, and SMP
Date: Sat, 08 Feb 2003 14:18:34 -0600 [thread overview]
Message-ID: <3E45661A.90401@mvista.com> (raw)
In-Reply-To: <m1isvuzjj2.fsf@frodo.biederman.org>
Eric W. Biederman wrote:
>Corey Minyard <cminyard@mvista.com> writes:
>
>
>>Eric,
>>
>>I saw that you are working on kexec. I'm using and have hacked on a similar
>>piece of software named bootimg (and I'll be glad when yours is done and ready
>>and we can jettison bootimg). From the looks of the code, it looks like you
>>have seen bootimg, too. I looked through your patch, and I noticed a few
>>things. Hopefully it's the newest version of the patch.
>>
>>First was that you don't turn of DMA bus masters. There seemed to be some
>>discussion of this on lkml, but I didn't see anything in the patch for it. We
>>are actually having problems with bootimg and DMA bus master devices, so the
>>problem is real. And turning of DMA bus mastering for everything on the PCI bus
>>didn't seem to work, Ken Sumrall tried it, and at least the device in question
>>(a bcm5700) seemed to ignore the bit. We are looking at adding an ioctl or a
>>notifier list that will allow devices to register non-blocking calls to shut off
>>DMA. Is anything like that under consideration, or are you thinking of using
>>the reboot notifier for this, or what?
>>
>>
>
>The reboot notifier + device->shutdown(), are called. As you have noted
>the problem is not as easy as clearing the bus master bit, so I leave it
>up to the device driver. The device driver is responsible for placing
>the device into a quiescent state.
>
>Generally that code is present in the driver somewhere already, as it
>is needed for the rmmod case.
>
>In addition going through the normal shutdown path, downing interfaces
>etc, usually helps as well.
>
>So for when kexec is not used in a panic case this is easy.
>
The panic case is actually the most interesting for us. We are using
bootimg with the MCL coredump to take a kernel core to memory and pick
it up on the next boot. You cannot call most shutdown() functions from
a panic, since they will block.
>>The patch doesn't make sure it is running on processor zero for SMP machines.
>>You must do this on x86 machines, the kernel assumes it comes up on processor
>>zero. I assume this is true for other machines, too.
>>
>>
>
>I have a secondary patch. kexec-hwfixes, that does this. I am I need to review
>it a little closer and make certain the code is clean enough to go into
>the general purpose kernel. But I do have the code.
>
I have code that does this for bootimg, too, if you are interested, and
it has received extensive testing.
>>Hopefully I'm not looking at an old version of the patch, but these are
>>important things you need to handle.
>>
>>
>
>Yep. I am a little scatter brained on the maintenance side but I am handling
>them all.
>
>If you are after the kexec on panic case that is much, more
>interesting because it is quite possible we cannot afford to call some
>of those functions. But I am quite willing to discuss and work with
>people on what is really going on.
>
>For any more conversation though can we please cc linux-kernel?
>
>I like to keep things public so I don't have to answer the same
>question too many times.
>
No problem. As you have requested, lkml is copied.
Thanks,
-Corey
next parent reply other threads:[~2003-02-08 20:08 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <3E448745.9040707@mvista.com>
[not found] ` <m1isvuzjj2.fsf@frodo.biederman.org>
2003-02-08 20:18 ` Corey Minyard [this message]
2003-02-09 18:39 ` Kexec, DMA, and SMP Eric W. Biederman
2003-02-10 11:14 ` Kexec on 2.5.59 problems ? Suparna Bhattacharya
2003-02-10 17:09 ` [Fastboot] " Andy Pfiffer
2003-02-10 18:07 ` Eric W. Biederman
2003-02-11 7:21 ` Suparna Bhattacharya
2003-02-11 17:04 ` Andy Pfiffer
2003-02-11 23:46 ` Andy Pfiffer
2003-02-12 4:29 ` Eric W. Biederman
2003-02-12 22:31 ` Andy Pfiffer
2003-02-13 9:50 ` Suparna Bhattacharya
2003-02-13 15:10 ` Eric W. Biederman
2003-02-18 10:59 ` Suparna Bhattacharya
2003-02-18 15:06 ` Eric W. Biederman
2003-02-10 12:12 ` Kexec, DMA, and SMP Suparna Bhattacharya
2003-02-10 13:56 ` Corey Minyard
2003-02-10 15:07 ` Suparna Bhattacharya
2003-02-10 15:22 ` Corey Minyard
2003-02-10 17:56 ` Eric W. Biederman
2003-02-11 1:35 ` Kenneth Sumrall
2003-02-11 5:08 ` Eric W. Biederman
2003-02-11 17:09 ` Stephen Hemminger
2003-02-11 12:55 ` Suparna Bhattacharya
2003-02-11 13:40 ` Suparna Bhattacharya
2003-02-11 14:06 ` Corey Minyard
2003-02-11 14:40 ` Suparna Bhattacharya
2003-02-11 15:20 ` Corey Minyard
2003-02-12 4:28 ` Eric W. Biederman
2003-02-12 14:17 ` Corey Minyard
2003-02-12 14:51 ` Eric W. Biederman
2003-02-12 16:06 ` Corey Minyard
2003-02-13 11:13 ` Suparna Bhattacharya
2003-02-14 3:13 ` Werner Almesberger
2003-02-14 14:20 ` Corey Minyard
2003-02-14 18:10 ` Werner Almesberger
2003-02-14 18:23 ` Corey Minyard
2003-02-14 19:26 ` Zwane Mwaikambo
2003-02-14 19:44 ` Werner Almesberger
2003-02-14 20:00 ` Corey Minyard
2003-02-15 6:03 ` Eric W. Biederman
2003-02-16 16:22 ` Corey Minyard
2003-02-16 21:48 ` Eric W. Biederman
2003-02-17 4:26 ` Corey Minyard
2003-02-17 7:18 ` Eric W. Biederman
2003-02-17 17:32 ` Corey Minyard
2003-02-12 4:47 ` Suparna Bhattacharya
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=3E45661A.90401@mvista.com \
--to=cminyard@mvista.com \
--cc=ebiederm@xmission.com \
--cc=ken@mvista.com \
--cc=linux-kernel@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox