[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 4/4] vl: Prioritize realizations of devices
From: |
Markus Armbruster |
Subject: |
Re: [PATCH 4/4] vl: Prioritize realizations of devices |
Date: |
Tue, 31 Aug 2021 13:35:04 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) |
Peter Xu <peterx@redhat.com> writes:
> On Thu, Aug 26, 2021 at 09:43:59AM -0400, Peter Xu wrote:
>> > > A simple state machine can track "has IOMMU" state. It has three states
>> > > "no so far", "yes", and "no", and two events "add IOMMU" and "add device
>> > > that needs to know". State diagram:
>> > >
>> > > no so far
>> > > +--- (start state) ---+
>> > > | |
>> > > add IOMMU | | add device that
>> > > | | needs to know
>> > > v v
>> > > +--> yes no <--+
>> > > | | add device that | |
>> > > +-----+ needs to know +-----+
>> > >
>> > > "Add IOMMU" in state "no" is an error.
>> >
>> > question is how we distinguish "device that needs to know"
>> > from device that doesn't need to know, and then recently
>> > added feature 'bypass IOMMU' adds more fun to this.
>>
>> Maybe we can start from "no device needs to know"? Then add more into it when
>> the list expands.
>>
>> vfio-pci should be a natural fit because we're sure it won't break any valid
>> old configurations. However we may need to be careful on adding more
>> devices,
>> e.g. when some old configuration might work on old binaries, but I'm not
>> sure.
>
> Btw, I think this state machine is indeed bringing some complexity on even
> understanding it - it is definitely working but it's not obvious to anyone at
> the first glance, and it's only solving problem for vIOMMU. E.g., do we need
> yet another state machine for some other ordering constraints?
>
> From that POV, I don't like this solution more than the simple "assign
> priority
> for device realization" idea..
I wouldn't worry about other ordering constraints until we have them.
If you do, please tell!
I'm hoping you can't, because such implicit constraints are commonly
signs of oversimplified / screwed up machine modeling.
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, (continued)
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Eduardo Habkost, 2021/08/23
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Peter Xu, 2021/08/23
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Markus Armbruster, 2021/08/25
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Markus Armbruster, 2021/08/25
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Peter Xu, 2021/08/25
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Peter Xu, 2021/08/25
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Markus Armbruster, 2021/08/26
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Igor Mammedov, 2021/08/26
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Peter Xu, 2021/08/26
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Peter Xu, 2021/08/30
- Re: [PATCH 4/4] vl: Prioritize realizations of devices,
Markus Armbruster <=
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Markus Armbruster, 2021/08/26
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Michael S. Tsirkin, 2021/08/23
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Peter Xu, 2021/08/23
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Jason Wang, 2021/08/23
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Peter Xu, 2021/08/24
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Jason Wang, 2021/08/25
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, David Hildenbrand, 2021/08/24
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Peter Xu, 2021/08/24
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, David Hildenbrand, 2021/08/25
- Re: [PATCH 4/4] vl: Prioritize realizations of devices, Jason Wang, 2021/08/23