From: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
To: Rob Landley <rob@landley.net>
Cc: The OpenBIOS Mailinglist <openbios@openbios.org>, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] OpenBios in Sparc can't handle long kernel command lines.
Date: Thu, 28 Mar 2013 19:20:44 +0000 [thread overview]
Message-ID: <5154980C.5000305@ilande.co.uk> (raw)
In-Reply-To: <1363929577.15703.59@driftwood>
On 22/03/13 05:19, Rob Landley wrote:
> If I do this:
>
> qemu-system-sparc -nographic -no-reboot -kernel image -hda hda.sqf
> -append 'root=/dev/sda rw init=/sbin/init.sh panic=1
> PATH=/usr/distcc:/bin:/sbin console=ttyS0 HOST=sparc CPUS=1
> DISTCC_HOSTS=10.0.2.2:31322/1 FTP_SERVER=10.0.2.2 FTP_PORT=31307
> NATIVE_BUILD=lfs-bootstrap ' -hdb hdb.img -hdc lfs-bootstrap.hdc -m 256
>
> qemu goes:
>
> ^[[H^[[JConfiguration device id QEMU version 1 machine id 32
> CPUs: 1 x FMI,MB86904
> Unhandled Exception 0x00000007
> PC = 0xffd07d28 NPC = 0xffd07d2c
> Stopping execution
>
> And then hangs. I've never figured out why it clears the screen first
> (none of the other targets do), but I _have_ figured out that the
> unhandled exception is "kernel command line too long". Because 197 bytes
> is just too much data for Sparc to cope with.
This is actually a bug in OpenBIOS which declares the command line
storage like this:
static void
arch_init( void )
{
static char cmdline[128];
....
kernel_cmdline = (const char *)
fw_cfg_read_i32(FW_CFG_KERNEL_CMDLINE);
if (kernel_cmdline) {
size = strlen(kernel_cmdline);
memcpy(cmdline, kernel_cmdline, size);
obp_arg.argv[1] = cmdline;
}
cmdline[size] = '\0';
....
}
Would increasing it to 256 bytes be enough? I can't say I've ever come
across command lines in a normal environment with more than about 80
characters, but I don't see an issue with increasing it.
ATB,
Mark.
next prev parent reply other threads:[~2013-03-28 19:18 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-22 5:19 [Qemu-devel] OpenBios in Sparc can't handle long kernel command lines Rob Landley
2013-03-28 19:20 ` Mark Cave-Ayland [this message]
2013-03-30 13:21 ` [Qemu-devel] [OpenBIOS] " Blue Swirl
2013-04-19 10:27 ` [Qemu-devel] " Mark Cave-Ayland
2013-04-22 15:40 ` Rob Landley
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=5154980C.5000305@ilande.co.uk \
--to=mark.cave-ayland@ilande.co.uk \
--cc=openbios@openbios.org \
--cc=qemu-devel@nongnu.org \
--cc=rob@landley.net \
/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).