On 03/24/2015 07:41 AM, Ján Tomko wrote:
On Mon, Mar 23, 2015 at 05:46:23PM -0400, John Ferlan wrote:
>
...
>
> Mostly for my edification... These examples previously although
> indicating they were "auto-assign" (of sorts) really weren't - they
were
> more force-assign for each example.
Force-assign after this patch? Otherwise I don't understand.
I started writing this before figuring out the second part and just
didn't go back re-read my original thought... But I think I was trying
to point out that the "existing" code doesn't really auto assign and
after your patch these changes are doing that, hence why set to
port='0'... I agree with not force-assign, but was just making sure...
> The way to auto-assign is by setting port='0', correct?
>
Yes.
> However, I'm still missing something from the *auto.args output. It
> seems the controller='#' is ignored and I guess I don't understand
> that...
I must've overlooked that.
It shouldn't be a problem to take it as a hint in virDomainVirtioSerialAddrAssign.
Right so I figured out after I sent this, but figured you'd know that
anyway.
> Sure "port='0'" (meaning first available port
on the
> controller), but I would have expected to see :
>
> kvm.port.0 use "virtio.serial.0.0,nr=1..." (which it does)
> kvm.port.foo use "virtio.serial.1.0,nr=1..." (on controller 0?, but XML
> has controller='1')
> kvm.port.bar use "virtio.serial.1.0,nr=3..." (which it does)
> kvm.port.wizz use "virtio.serial.0.0,nr=2" (incorrect due to others)
> kvm.port.ooh use "virtio.serial.1.0,nr=2", (on controller 0?, but XML
> has controller='1'
> kvm.port.lla use "virtio.serial.2.0,nr=1" (on controller 0?, but XML has
> controller='2')
>
> Now if been if "lla" used controller='0', then I assume would nr=4
be
> chosen since 1,2 were auto-assigned, 3 was specifically assigned, thus 4
> would be the next one.
>
> Continuing with that same logic, the *-autoassign example could have
> shown that if controller='0',port='2' and
'controller='1',port='1' were
> preassigned, then the controllers/ports assigned would be 0.0,nr=1,
> 0.0,nr=3, 0.0,nr=4, 1.0,nr=2 (since only 4 ports on controller='0' can
> be used w/ 2 be static and controller='1' having port '1' already in
use).
>
nr=4 is out of bounds for a controller with 4 ports.
The ports are numbered from 0, but port number 0 can only be used for
virtconsoles, not channels.
Oh yeah - right...doh! Too much context switching sometimes causes loses
of brain to finger functions...
John