[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v2 5/5] xenfb: Add "feature-no-console"



On Wed, 17 Sep 2014, Owen smith wrote:
> Added feature to allow vkbd connection without waiting for vfb device.
> Windows PV frontend requires connection without a vfb device, Ubuntu HVM
> would not start correctly without the wait for vfb device.

This is a good description of the problem. Could you please add few more
words on why Ubuntu HVM would not start without the wait? If the
frontend prints an error, please include that too.


> backend: feature-no-console

This is a pretty bad name for this feature. I suggest
feature-stand-alone or feature-no-vfb.

>     Value: 0/1 (boolean)
>     Default Value: 0
> 
>     A value of "1" indicates that the backend supports vkbd devices
>     without waiting for the corresponding vfb device. Frontends
>     set "request-no-console" before connect to allow the backend to
>     connect without waiting for the vfb device.
> 
> frontend: request-no-console
>     Value: 0/1 (boolean)
>     Default Value: 0
> 
>     A frontend sets a value of "1" to prevent the backend waiting for
>     the vfb device to become available and attach to a console.
> 
> Signed-off-by: Owen smith <owen.smith@xxxxxxxxxx>
> 
>  hw/display/xenfb.c | 12 ++++++++++--
>  1 file changed, 10 insertions(+), 2 deletions(-)
> 
> diff --git a/hw/display/xenfb.c b/hw/display/xenfb.c
> index 0794075..501fe72 100644
> --- a/hw/display/xenfb.c
> +++ b/hw/display/xenfb.c
> @@ -390,6 +390,7 @@ static int input_init(struct XenDevice *xendev)
>  {
>      xenstore_write_be_int(xendev, "feature-abs-pointer", 1);
>      xenstore_write_be_int(xendev, "feature-no-abs-rescale", 1);
> +    xenstore_write_be_int(xendev, "feature-no-console", 1);
>      return 0;
>  }
>  
> @@ -399,8 +400,15 @@ static int input_initialise(struct XenDevice *xendev)
>      int rc;
>  
>      if (!in->c.con) {
> -        xen_be_printf(xendev, 1, "ds not set (yet)\n");
> -        return -1;
> +        int no_console;
> +        rc = xenstore_read_fe_int(xendev, "request-no-console", &no_console);
> +        if (rc == -1) {
> +            no_console = 0;
> +        }
> +        if (!no_console) {
> +            xen_be_printf(xendev, 1, "ds not set (yet)\n");
> +            return -1;
> +        }
>      }
>      rc = common_bind(&in->c);
> -- 
> 2.1.0
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.