30 May, 2011

1 commit

  • It's unclear to me if it's important, but it's obviously causing my
    technical colleages some headaches and I'd hate such imprecision to
    slow virtio adoption.

    I've emailed this to all non-trivial contributors for approval, too.

    Signed-off-by: Rusty Russell
    Acked-by: Grant Likely
    Acked-by: Ryan Harper
    Acked-by: Anthony Liguori
    Acked-by: Eric Van Hensbergen
    Acked-by: john cooper
    Acked-by: Aneesh Kumar K.V
    Acked-by: Christian Borntraeger
    Acked-by: Fernando Luis Vazquez Cao

    Rusty Russell
     

09 Feb, 2011

1 commit


19 May, 2010

3 commits

  • Instead of the host and guest independently enumerating ports, switch to
    a control message to add ports where the host supplies the port number
    so there's no ambiguity or a possibility of a race between the host and
    the guest port numbers.

    We now no longer need the 'nr_ports' config value. Since no kernel has
    been released with the MULTIPORT changes yet, we have a chance to fiddle
    with the config space without adding compatibility features.

    This is beneficial for management software, which would now be able to
    instantiate ports at known locations and avoid problems that arise with
    implicit numbering in the host and the guest. This removes the 'guessing
    game' part of it, and management software can now actually indicate
    which id to spawn a particular port on.

    Signed-off-by: Amit Shah
    Signed-off-by: Rusty Russell

    Amit Shah
     
  • The host may want to know and let management apps notify of port or
    device add failures. Send a control message saying the device or port is
    not ready in this case.

    Signed-off-by: Amit Shah
    Signed-off-by: Rusty Russell

    Amit Shah
     
  • This reverts commit b7a413015d2986edf020fba765c906cc9cbcbfc9.

    Multiport support was disabled for 2.6.34 because we wanted to introduce
    a new ABI and since we didn't have any released kernel with the older
    ABI and were out of the merge window, it didn't make sense keeping the
    older ABI around.

    Now we revert the patch disabling multiport and rework the ABI in the
    following patches.

    Signed-off-by: Amit Shah
    Signed-off-by: Rusty Russell

    Amit Shah
     

08 Apr, 2010

1 commit

  • Move MULTIPORT feature and related config changes
    out of exported headers, and disable the feature
    at runtime.

    At this point, it seems less risky to keep code around
    until we can enable it than rip it out completely.

    Signed-off-by: Michael S. Tsirkin
    Signed-off-by: Rusty Russell

    Michael S. Tsirkin
     

24 Feb, 2010

5 commits

  • Remove port data; deregister from the hvc core if it's a console port.

    Signed-off-by: Amit Shah
    Signed-off-by: Rusty Russell

    Amit Shah
     
  • The host can set a name for ports so that they're easily discoverable
    instead of going by the /dev/vportNpn naming. This attribute will be
    placed in /sys/class/virtio-ports/vportNpn/name. udev scripts can then
    create symlinks to the port using the name.

    Signed-off-by: Amit Shah
    Signed-off-by: Rusty Russell

    Amit Shah
     
  • Allow guest userspace applications to open, read from, write to, poll
    the ports via the char dev interface.

    When a port gets opened, a notification is sent to the host via a
    control message indicating a connection has been established. Similarly,
    on closing of the port, a notification is sent indicating disconnection.

    Signed-off-by: Amit Shah
    Signed-off-by: Rusty Russell

    Amit Shah
     
  • This commit adds a new feature, MULTIPORT. If the host supports this
    feature as well, the config space has the number of ports defined for
    that device. New ports are spawned according to this information.

    The config space also has the maximum number of ports that can be
    spawned for a particular device. This is useful in initializing the
    appropriate number of virtqueues in advance, as ports might be
    hot-plugged in later.

    Using this feature, generic ports can be created which are not tied to
    hvc consoles.

    We also open up a private channel between the host and the guest via
    which some "control" messages are exchanged for the ports, like whether
    the port being spawned is a console port, resizing the console window,
    etc.

    Next commits will add support for hotplugging and presenting char
    devices in /dev/ for bi-directional guest-host communication.

    Signed-off-by: Amit Shah
    Signed-off-by: Rusty Russell

    Amit Shah
     
  • Remove old lguest-style comments.

    [Amit: - wingify comments acc. to kernel style
    - indent comments ]

    Signed-off-by: Rusty Russell
    Signed-off-by: Amit Shah
    Signed-off-by: Rusty Russell

    Rusty Russell
     

22 Oct, 2009

1 commit

  • Rusty,

    commit 3ca4f5ca73057a617f9444a91022d7127041970a
    virtio: add virtio IDs file
    moved all device IDs into a single file. While the change itself is
    a very good one, it can break userspace applications. For example
    if a userspace tool wanted to get the ID of virtio_net it used to
    include virtio_net.h. This does no longer work, since virtio_net.h
    does not include virtio_ids.h.
    This patch moves all "#include " from the C
    files into the header files, making the header files compatible with
    the old ones.

    In addition, this patch exports virtio_ids.h to userspace.

    CC: Fernando Luis Vazquez Cao
    Signed-off-by: Christian Borntraeger
    Signed-off-by: Rusty Russell

    Christian Borntraeger
     

23 Sep, 2009

1 commit


31 Jan, 2009

1 commit


30 Dec, 2008

1 commit

  • this patch uses the new hvc callback hvc_resize to set the window size
    which allows to change the tty size of hvc_console via a hvc_resize
    function.

    I have added a new feature bit VIRTIO_CONSOLE_F_SIZE. The driver will
    change the window size on tty open and via the config_changed callback
    of the transport. Currently lguest and kvm_s390 have not implemented this
    callback, but the callback can be implemented at a later point in time.

    Signed-off-by: Christian Borntraeger
    Signed-off-by: Rusty Russell

    Christian Borntraeger
     

25 Jul, 2008

1 commit


23 Oct, 2007

1 commit

  • This is an hvc-based virtio console driver. It's suboptimal becuase
    hvc expects to have raw access to interrupts and virtio doesn't assume
    that, so it currently polls.

    There are two solutions: expose hvc's "kick" interface, or wean off hvc.

    Signed-off-by: Rusty Russell

    Rusty Russell