From: Bandan Das <bsd@redhat.com>
To: Jan Kiszka <jan.kiszka@siemens.com>
Cc: kvm@vger.kernel.org
Subject: Re: APIC_ID in apic_reg_write()
Date: Wed, 29 Apr 2015 18:21:50 -0400 [thread overview]
Message-ID: <jpgy4la379d.fsf@redhat.com> (raw)
In-Reply-To: <55412C05.4090705@siemens.com> (Jan Kiszka's message of "Wed, 29 Apr 2015 21:07:49 +0200")
Jan Kiszka <jan.kiszka@siemens.com> writes:
...
>>
>> And I can verify on a SandyBridge and Haswell system that it's RO there too.
>
> So the APIC just ignores the writes, it doesn't through #GP at least.
>
>>
>> In fact, that was one of the reasons I had submitted a patch to remove
>> verify_local_APIC() from x86/kernel/apic.c (4399c03c678) If I am wrong we need to
>> revert atleast the associated commit message :)
>
> Well, we can't remove APIC ID modification support from KVM, though,
> because older CPU types we may want to emulate correctly had that
> feature. But we may have to make it configurable to ensure accurate
> behaviour.
IMO we should just mark it as read-only. 10.4.6 2nd para says -
"In MP systems, the local APIC ID is also used as a processor ID by the
BIOS and the operating system. Some processors permit software to modify
the APIC ID. However, the ability of software to modify the APIC ID is
processor model specific. Because of this, operating system software should
avoid writing to the local APIC ID register."
Not that marking it read-only has any huge benefit, but a r/w ID reg
could be a source of bugs with misbehaving guests. Or at the least, a
printk_once warning message when userspace attempts to modify it. Moreover,
we do make an exception with enabling x2apic for guests.
Setting r/w permissions on a per-model is little overkill, don't you think ?
> Jan
next prev parent reply other threads:[~2015-04-29 22:21 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-29 16:47 APIC_ID in apic_reg_write() Bandan Das
2015-04-29 18:34 ` Jan Kiszka
2015-04-29 18:54 ` Bandan Das
2015-04-29 19:07 ` Jan Kiszka
2015-04-29 22:21 ` Bandan Das [this message]
2015-04-30 5:40 ` Jan Kiszka
2015-04-30 16:50 ` Bandan Das
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=jpgy4la379d.fsf@redhat.com \
--to=bsd@redhat.com \
--cc=jan.kiszka@siemens.com \
--cc=kvm@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