All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Daniel P. Berrange" <berrange@redhat.com>
To: Marcelo Tosatti <mtosatti@redhat.com>
Cc: Markus Armbruster <armbru@redhat.com>,
	Avi Kivity <avi@redhat.com>,
	qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [patch 2/2] qemu: PCI device, disk and host network hot-add / hot-remove
Date: Tue, 10 Feb 2009 12:20:37 +0000	[thread overview]
Message-ID: <20090210122037.GG31871@redhat.com> (raw)
In-Reply-To: <20090209224125.GA11520@amt.cnet>

On Mon, Feb 09, 2009 at 08:41:25PM -0200, Marcelo Tosatti wrote:
> On Mon, Feb 09, 2009 at 08:41:39AM +0000, Daniel P. Berrange wrote:
> > 
> > Also bear in mind that we need the ability to hot unplug devices which
> > were specified on the command line argv. For these we currently have
> > neither the pci <domain,bus,slot>, nor are given any 'name'. 
> 
> Any reason you can't discover <domain,bus,slot> from "info pci" ?
> (domain/bus are always zero at the moment).

'info pci' just gives you a list of PCI devices, and no direct means
to correlate these to devices listed in your command line argv.

eg, I launch QEMU with 3 nics

  qemu \
  ....more args...
  -net tap  -net nic,mac=01:02:03:04:05:01 \
  -net tap  -net nic,mac=01:02:03:04:05:02 \
  -net tap  -net nic,mac=01:02:03:04:05:03 \
  ....more args...

Then info pci shows this:

  ...snip...
  Bus  0, device   3, function 0:
    Ethernet controller: PCI device 10ec:8029
      IRQ 11.
      BAR0: I/O at 0xc100 [0xc1ff].
  Bus  0, device   4, function 0:
    Ethernet controller: PCI device 10ec:8029
      IRQ 9.
      BAR0: I/O at 0xc200 [0xc2ff].
  Bus  0, device   5, function 0:
    Ethernet controller: PCI device 10ec:8029
      IRQ 11.
      BAR0: I/O at 0xc300 [0xc3ff].
  ...snip...

I want to remove NIC with mac adress 01:02:03:04:05:02, but there is
no way to correlate this 'info pci' data to the NIC I wish to remove.
They may happen to appear in the same sorted order immediately after
startup, but if you've hot added & removed a couple of devices already,
then the order from 'info pci' can't easily map back to argv, unless
you very carefully tracked all changes.

> > Markus has previously suggested allowing <domain,bus,slot> to be
> > specified on the cli which would let us manually assign & use that
> > info for unplug.
> 
> > A device type specific unique naming would be useful too though. In
> > changeset r6220,  Mark McLoughlin provided the ability to give every
> > single NIC a unique name. I'd like to be able to use that name for
> > unplug. 
> 
> The NIC identifiers are not specific to PCI. So if you specify a
> non-PCI nic with the cli, you should not expect "pci_del name" to work.
> Now I see where you're getting at with the private discussion around
> "dev_add/dev_add".

Yes, if the device already had a unqiue identifier, it some ways it
would be easier to just be able todo  'nic_del 01:02:03:04:05:02'
Or for a SCSI disk 'drive_del bus=scsi,index=3'. QEMU ought to have
enough info internally to be able to map this to the PCI address it
needs to remove.

Daniel
-- 
|: Red Hat, Engineering, London   -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org  -o-  http://virt-manager.org  -o-  http://ovirt.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-  F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|

  reply	other threads:[~2009-02-10 12:20 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-02-06 17:44 [Qemu-devel] [patch 0/2] pci hotplug v2 Marcelo Tosatti
2009-02-06 17:44 ` [Qemu-devel] [patch 1/2] pci device registration helpers Marcelo Tosatti
2009-02-06 17:44 ` [Qemu-devel] [patch 2/2] qemu: PCI device, disk and host network hot-add / hot-remove Marcelo Tosatti
2009-02-08 10:08   ` Avi Kivity
2009-02-08 17:28     ` Marcelo Tosatti
2009-02-09  8:24       ` Markus Armbruster
2009-02-09  8:41       ` Daniel P. Berrange
2009-02-09 22:41         ` Marcelo Tosatti
2009-02-10 12:20           ` Daniel P. Berrange [this message]
2009-02-10 12:32             ` Paul Brook
2009-02-06 18:35 ` [Qemu-devel] [patch 0/2] pci hotplug v2 Marcelo Tosatti
  -- strict thread matches above, loose matches on Subject: below --
2009-02-06 18:48 [Qemu-devel] [patch 0/2] pci hotplug v2 (for real) Marcelo Tosatti
2009-02-06 18:48 ` [Qemu-devel] [patch 2/2] qemu: PCI device, disk and host network hot-add / hot-remove Marcelo Tosatti

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=20090210122037.GG31871@redhat.com \
    --to=berrange@redhat.com \
    --cc=armbru@redhat.com \
    --cc=avi@redhat.com \
    --cc=mtosatti@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.