All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Mike \(mwester\)" <mwester@dls.net>
To: <openembedded-devel@lists.openembedded.org>
Subject: Re: arm kexec commandline support
Date: Thu, 27 Sep 2007 12:08:57 -0500	[thread overview]
Message-ID: <00a501c80129$17b0aa80$6e01a8c0@twilight> (raw)
In-Reply-To: 20070927162040.GA25054@guralp.com

Bob Dunlop, on September 27, 2007, wrote:
> Hans Henry von Tresckow wrote:
> >On 6/7/07, Thomas Kunze <thommycheck at gmx.de> wrote:
> ...
> >> I have written a quick hack to support custom commandlines for arm with
> >> kexec. You need:
> >>
> >>
> >>
http://www2.informatik.hu-berlin.de/~tkunze/zaurus/patches/kexec_commandline-3.patch
> >>
> >> and:
> >>
> >>
> >>
http://www2.informatik.hu-berlin.de/~tkunze/zaurus/patches/atag_support.patch
> >>
> >> (from lak)
> ...
> >
> >I  tested this  with linux-rp-2.6.20 on poodle. The kernel will boot and
I
> >can kexec other kernels with built in cmdlines. If I try to set a new
> >cmdline however, it segfaults. Here is the crash dump:
> >
> ><0>Starting new kernel
> ><1>Unable to handle kernel paging request at virtual address e0000100
>
> I to am searching for a kexec solution (for a Compulab CM-X270)
>
> I can progress this code a little further and eliminate the segfault with
> the following patch, but still nothing after the final Bye! message :(
>
[patch snipped]

Permit me to pop into this thread.   At the risk of covering old ground, I
believe that the discussion on L-A-K ended with the general conscensus that
the preferred approach was to use the "preserve-original-atags" patch [1],
and write something new that would permit the user-space "kexec" command to
edit/replace/remove the preserved atags.

The first half of this is done -- it's been submitted upstream (since it is
a useful patch in and of itself even without the ability to change
command-lines, permitting kexec to actually work on machines that require
bootloader atags, such as the OpenMoko distro on the Neo).

The second half has not been started, but probably should begin with Uli's
work with the kexec command, I would expect.

The advantage of this approach is that the first patch takes care of all the
ugly stuff that result in seg faults, and other horrors.  All that is
required for the second half is to use the pointer to the buffer containing
the atags, and replace, or edit, or remove the contents at will.

It's on my list of things to do, but for the moment the sysfs approach,
while ugly, has worked on all the ARM machines I use.  It would be great if
someone with a bit more spare time could take a hack at the second part of
this problem.

Regards,
Mike

[1] http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=4579/1




  reply	other threads:[~2007-09-27 17:13 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-27 16:20 arm kexec commandline support Bob Dunlop
2007-09-27 17:08 ` Mike (mwester) [this message]
2007-09-27 17:53   ` Hans Henry von Tresckow
  -- strict thread matches above, loose matches on Subject: below --
2007-06-08  0:02 Thomas Kunze
2007-06-11 14:58 ` Hans Henry von Tresckow

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='00a501c80129$17b0aa80$6e01a8c0@twilight' \
    --to=mwester@dls.net \
    --cc=openembedded-devel@lists.openembedded.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.