qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Ефимов Василий" <real@ispras.ru>
To: Kevin O'Connor <kevin@koconnor.net>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	qemu-devel@nongnu.org, Kirill Batuzov <batuzovk@ispras.ru>
Subject: Re: [Qemu-devel] [PATCH v2] PAM: make PAM emulation closer to documentation
Date: Fri, 24 Jul 2015 13:11:21 +0300	[thread overview]
Message-ID: <55B20F49.6010504@ispras.ru> (raw)
In-Reply-To: <20150722163750.GA439@morn.localdomain>

22.07.2015 19:37, Kevin O'Connor пишет:
Hi,
>
> Hi,
>
> Is the motivation of this patch to improve the correctness of the
> hardware emulation or is there some feature that the current QEMU
> implementation prevents?
The motivation is to improve correctness. The current QEMU PAM
implementation prevents executing any guest that behave
closer to specs about PAM than SeaBIOS.
>
> There has been some interest recently in making SeaBIOS boot faster on
> QEMU and the shadow ram fixups in SeaBIOS have been shown to consume a
> notable amount of bootup time (~12ms on my machine).
>
> Will changing the PAM support improve overall boot times?  I wonder if
> going from "mode 0" -> "mode 2" -> "mode 3" would be more expensive
> than the current SeaBIOS "mode 0" -> "mode 3" mechanism.
The patch does not touch emulation of modes 0 and 3. SeaBIOS still
can use they, so no fixups are required in SeaBIOS. The SeaBIOS patch I
listed in letter is only to show difference between current and new
PAM implementations. An open-source BIOS is just simple way to do
that.

I measured time between QEMU start and original SeaBIOS attempt
to boot from hard disk. With original PAM it equals 267ms against 269ms
with new PAM. 100 measurements are made. Standard deviation is 15ms.
Measurements are based on QEMU_CLOCK_REALTIME and SeaBIOS I/O 0x402
port output. I patched isa-debugcon device to add per-line
timestamps.

Onetime 2ms slowdown seems to be acceptable tradeoff.
>
> Also note that SeaBIOS would still need to copy from the high memory
> location even if the PAM registers were fully implemented as SeaBIOS
> often exceeds 128K - the "mode 2" overwrite oneself trick would only
> work for the last 128K of the rom.
>
> Thanks,
> -Kevin
>
Vasily

  reply	other threads:[~2015-07-24 10:11 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-20 10:53 [Qemu-devel] [PATCH v2] PAM: make PAM emulation closer to documentation Efimov Vasily
2015-07-21  7:46 ` Paolo Bonzini
2015-07-21 11:09   ` Ефимов Василий
2015-07-22 16:37 ` Kevin O'Connor
2015-07-24 10:11   ` Ефимов Василий [this message]
2015-09-07 10:41 ` Ефимов Василий
2015-09-07 12:50 ` Paolo Bonzini
2015-09-09 12:03   ` Ефимов Василий
2015-09-09 12:11     ` Paolo Bonzini

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=55B20F49.6010504@ispras.ru \
    --to=real@ispras.ru \
    --cc=batuzovk@ispras.ru \
    --cc=kevin@koconnor.net \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.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).