Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1374032
| Path | csiph.com!news.freedyn.net!aioe.org!bofh.it!news.nic.it!robomod |
|---|---|
| From | Juergen Gross <jgross@suse.com> |
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk |
| Date | Fri, 08 Apr 2016 09:20:02 +0200 |
| Message-ID | <rlyRY-eV-13@gated-at.bofh.it> (permalink) |
| References | <rl5Gh-3Ao-3@gated-at.bofh.it> <rl5Gi-3Ao-17@gated-at.bofh.it> <rlhHs-3TE-21@gated-at.bofh.it> <rlsCT-3LP-27@gated-at.bofh.it> <rlwZQ-7ow-5@gated-at.bofh.it> <rlyfg-8bA-9@gated-at.bofh.it> <rlyfg-8bA-7@gated-at.bofh.it> <rlyyB-8iG-1@gated-at.bofh.it> |
| X-Original-To | "Luis R. Rodriguez" <mcgrof@kernel.org> |
| User-Agent | Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.0 |
| MIME-Version | 1.0 |
| Content-Type | text/plain; charset=utf-8 |
| Content-Transfer-Encoding | 7bit |
| Sender | robomod@news.nic.it |
| List-ID | <linux-kernel.vger.kernel.org> |
| X-Mailing-List | linux-kernel@vger.kernel.org |
| Approved | robomod@news.nic.it |
| Lines | 81 |
| Organization | linux.* mail to news gateway |
| X-Original-Cc | Boris Ostrovsky <boris.ostrovsky@oracle.com>, Borislav Petkov <bp@alien8.de>, "H. Peter Anvin" <hpa@zytor.com>, Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, Rusty Russell <rusty@rustcorp.com.au>, X86 ML <x86@kernel.org>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, Andy Lutomirski <luto@amacapital.net>, David Vrabel <david.vrabel@citrix.com>, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>, "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>, lguest@lists.ozlabs.org, Andy Shevchenko <andriy.shevchenko@linux.intel.com>, Joey Lee <jlee@suse.com>, Gary Lin <glin@suse.com>, Matt Fleming <matt@codeblueprint.co.uk>, Andrew Cooper <andrew.cooper3@citrix.com>, "Rafael J. Wysocki" <rjw@rjwysocki.net>, Len Brown <lenb@kernel.org>, "Moore, Robert" <robert.moore@intel.com>, Lv Zheng <lv.zheng@intel.com>, Toshi Kani <toshi.kani@hp.com>, ACPI Devel Maling List <linux-acpi@vger.kernel.org>, kozerkov@parallels.com, Josh Triplett <josh@joshtriplett.org>, Joerg Roedel <joro@8bytes.org> |
| X-Original-Date | Fri, 8 Apr 2016 09:13:19 +0200 |
| X-Original-Message-ID | <57075A0F.2020303@suse.com> |
| X-Original-References | <1459987594-5434-1-git-send-email-mcgrof@kernel.org> <1459987594-5434-5-git-send-email-mcgrof@kernel.org> <570658DA.7060509@oracle.com> <20160408003207.GN1990@wotan.suse.de> <57073F0F.400@suse.com> <CAB=NE6UfgbUiF0v4X2O+FzGCqU3eevEXejrRO4bGWtmYOr0mxg@mail.gmail.com> <57075201.5080207@suse.com> <CAB=NE6W3gnH8_cFE4q2QStm-KXn+TtEB_sZHWoSD5ZF7cqD04A@mail.gmail.com> |
| X-Original-Sender | linux-kernel-owner@vger.kernel.org |
| Xref | csiph.com linux.kernel:1374032 |
Show key headers only | View raw
On 08/04/16 08:56, Luis R. Rodriguez wrote:
> On Thu, Apr 7, 2016 at 11:38 PM, Juergen Gross <jgross@suse.com> wrote:
>> On 08/04/16 08:29, Luis R. Rodriguez wrote:
>>> On Thu, Apr 7, 2016 at 10:18 PM, Juergen Gross <jgross@suse.com> wrote:
>>>> On 08/04/16 02:32, Luis R. Rodriguez wrote:
>>>>> This highlights a semantic gap issue. From a quick cursory review, I think
>>>>> we can address this temporarily by just using a check:
>>>>>
>>>>> void __init x86_early_init_platform_quirks(void)
>>>>> {
>>>>> x86_platform.legacy.rtc = 1;
>>>>>
>>>>> switch (boot_params.hdr.hardware_subarch) {
>>>>> case X86_SUBARCH_XEN:
>>>>> case X86_SUBARCH_LGUEST:
>>>>> case X86_SUBARCH_INTEL_MID:
>>>>> - x86_platform.legacy.rtc = 0;
>>>>> + if (x86_init.mpparse.get_smp_config != x86_init_uint_noop)
>>>>> + x86_platform.legacy.rtc = 0;
>>>>
>>>> No! Why don't you just use the explicit test xen_initial_domain() ?
>>>
>>> Because we don't want to sprinkle Xen specific code outside of Xen
>>> code. What do you think about the second possibility I listed?
>>> Otherwise, any other ideas?
>>
>> Don't try to guess.
>
> I can only do that given there is nothing at all to tell me what to
> expect here with regards to RTC on Xen guest, if there is some
> documentation that could help with that please let me know.
Only Xen inernals. :-)
>
>> In case you don't want to inject Xen internals here, just call a Xen
>> function to either return the correct value, or to set all structure
>> elements correctly.
>
> I like the later as an option, in case there are further hardware
> subarch specific quirks which require internal logistics. What do
> others think?
>
>> Thinking more about it: why not do that for all the subarchs?
>
> I originally had went with that approach, but Ingo made the point that
> it would be best to instead move all quirk settings into one place.
> That lets a reader easily tell what is going on in one place, it also
> compartmentalizes the hardware subarch uses.
Okay. Another idea (not sure whether this is really a good one):
Add X86_SUBARCH_XEN_DOM0. As hardware_subarch is 32 bits wide I don't
think the number of subarchs is a scarce resource. :-)
I'd expect other quirks in future might have different settings for
domU and dom0, too.
>> You'd
>> have the specific settings where they belong: in a subarch specific
>> source. Just do the default settings in x86_early_init_platform_quirks()
>> and let the subarch functions set the non-default values.
>
> This is a rather different approach than what I had originally tried.
> Bike shed thing -- someone just has to decide.
>
> Left up to me, I kind of really like centralizing the quirk settings
> in one place approach as it means a reader can easily tell what's
> going on regardless of platform in one place for odd settings. I
> prefer this given that we *already* have the semantics over hardware
> subarch in a generalized fashion. We *do not* have semantics for dom0
> Vs domU -- if such a notion is generic to other virtualization
That's not carved in stone - see above. :-)
> environments it deserves consideration to new semantics to deal with
> that, otherwise the callback for handling further quirks is best, but
> I'd also highly discourage such callback to be used.
Juergen
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH v4 00/14] x86: remove paravirt_enabled "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:10 +0200
[PATCH v4 06/14] x86/init: use a platform legacy quirk for ebda "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:10 +0200
Re: [Xen-devel] [PATCH v4 06/14] x86/init: use a platform legacy quirk for ebda David Vrabel <david.vrabel@citrix.com> - 2016-04-07 11:50 +0200
Re: [Xen-devel] [PATCH v4 06/14] x86/init: use a platform legacy quirk for ebda "Luis R. Rodriguez" <mcgrof@suse.com> - 2016-04-07 23:10 +0200
[PATCH v4 10/14] x86/cpu/intel: remove not needed paravirt_enabled() for f00f work around "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:10 +0200
[PATCH v4 14/14] x86/paravirt: remove paravirt_enabled() "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:10 +0200
[PATCH v4 13/14] x86/init: rename ebda code file "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:10 +0200
[PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:10 +0200
Re: [Xen-devel] [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk David Vrabel <david.vrabel@citrix.com> - 2016-04-07 11:50 +0200
Re: [Xen-devel] [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-14 01:10 +0200
Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-04-07 15:00 +0200
Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-08 02:40 +0200
Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk Juergen Gross <jgross@suse.com> - 2016-04-08 07:20 +0200
Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk Juergen Gross <jgross@suse.com> - 2016-04-08 08:40 +0200
Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-08 09:00 +0200
Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk Juergen Gross <jgross@suse.com> - 2016-04-08 09:20 +0200
Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-08 09:40 +0200
Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk Juergen Gross <jgross@suse.com> - 2016-04-08 10:10 +0200
Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-04-08 14:40 +0200
Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-08 20:50 +0200
Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-08 08:40 +0200
Re: [PATCH v4 04/14] x86/rtc: replace paravirt rtc check with platform legacy quirk Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-04-08 14:30 +0200
[PATCH v4 07/14] tools/lguest: force disable tboot and apm "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:10 +0200
Re: [PATCH v4 07/14] tools/lguest: force disable tboot and apm Rusty Russell <rusty@rustcorp.com.au> - 2016-04-11 06:00 +0200
[PATCH v4 03/14] tools/lguest: make lguest launcher use X86_SUBARCH_LGUEST explicitly "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:10 +0200
[PATCH v4 08/14] apm32: remove paravirt_enabled() use "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:10 +0200
Re: [PATCH v4 08/14] apm32: remove paravirt_enabled() use Boris Ostrovsky <boris.ostrovsky@oracle.com> - 2016-04-07 15:10 +0200
Re: [PATCH v4 08/14] apm32: remove paravirt_enabled() use "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-08 00:40 +0200
[PATCH v4 12/14] x86, ACPI: parse ACPI_FADT_LEGACY_DEVICES "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:10 +0200
[PATCH v4 01/14] x86/boot: enumerate documentation for the x86 hardware_subarch "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:10 +0200
Re: [PATCH v4 01/14] x86/boot: enumerate documentation for the x86 hardware_subarch Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2016-04-07 13:30 +0200
Re: [PATCH v4 01/14] x86/boot: enumerate documentation for the x86 hardware_subarch "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-08 00:40 +0200
[PATCH v4 09/14] x86/tboot: remove paravirt_enabled() "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:10 +0200
[PATCH v4 02/14] x86/xen: use X86_SUBARCH_XEN for PV guest boots "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:20 +0200
Re: [Xen-devel] [PATCH v4 02/14] x86/xen: use X86_SUBARCH_XEN for PV guest boots David Vrabel <david.vrabel@citrix.com> - 2016-04-07 11:50 +0200
[PATCH v4 05/14] x86, ACPI: move ACPI_FADT_NO_CMOS_RTC check to ACPI boot code "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 02:20 +0200
Re: [Xen-devel] [PATCH v4 00/14] x86: remove paravirt_enabled Juergen Gross <jgross@suse.com> - 2016-04-07 15:30 +0200
[PATCH v4 13/14] x86/init: rename ebda code file "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-07 23:40 +0200
Re: [PATCH v4 00/14] x86: remove paravirt_enabled "Luis R. Rodriguez" <mcgrof@kernel.org> - 2016-04-08 03:20 +0200
Re: [PATCH v4 00/14] x86: remove paravirt_enabled Borislav Petkov <bp@alien8.de> - 2016-04-08 12:30 +0200
csiph-web