diff mbox

xen, fbfront: fix connecting to backend

Message ID 20170323125252.11763-1-jgross@suse.com (mailing list archive)
State New, archived
Headers show

Commit Message

Juergen Gross March 23, 2017, 12:52 p.m. UTC
Connecting to the backend isn't working reliably in xen-fbfront: in
case XenbusStateInitWait of the backend has been missed the backend
transition to XenbusStateConnected will trigger the connected state
only without doing the actions required when the backend has
connected.

Cc: stable@vger.kernel.org
Signed-off-by: Juergen Gross <jgross@suse.com>
---
 drivers/video/fbdev/xen-fbfront.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Jan Beulich March 23, 2017, 1:37 p.m. UTC | #1
>>> On 23.03.17 at 13:52, <jgross@suse.com> wrote:
> Connecting to the backend isn't working reliably in xen-fbfront: in
> case XenbusStateInitWait of the backend has been missed the backend
> transition to XenbusStateConnected will trigger the connected state
> only without doing the actions required when the backend has
> connected.

Looks like xen-kbdfront does exactly the same - shouldn't it also be
changed then?

Jan

--
To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Juergen Gross March 23, 2017, 1:56 p.m. UTC | #2
On 23/03/17 14:37, Jan Beulich wrote:
>>>> On 23.03.17 at 13:52, <jgross@suse.com> wrote:
>> Connecting to the backend isn't working reliably in xen-fbfront: in
>> case XenbusStateInitWait of the backend has been missed the backend
>> transition to XenbusStateConnected will trigger the connected state
>> only without doing the actions required when the backend has
>> connected.
> 
> Looks like xen-kbdfront does exactly the same - shouldn't it also be
> changed then?

I posted that patch 2 days ago. :-)


Juergen

--
To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Boris Ostrovsky March 23, 2017, 2:11 p.m. UTC | #3
On 03/23/2017 08:52 AM, Juergen Gross wrote:
> Connecting to the backend isn't working reliably in xen-fbfront: in
> case XenbusStateInitWait of the backend has been missed the backend
> transition to XenbusStateConnected will trigger the connected state
> only without doing the actions required when the backend has
> connected.
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Juergen Gross <jgross@suse.com>

Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>


--
To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Jan Beulich March 23, 2017, 2:21 p.m. UTC | #4
>>> On 23.03.17 at 14:56, <jgross@suse.com> wrote:
> On 23/03/17 14:37, Jan Beulich wrote:
>>>>> On 23.03.17 at 13:52, <jgross@suse.com> wrote:
>>> Connecting to the backend isn't working reliably in xen-fbfront: in
>>> case XenbusStateInitWait of the backend has been missed the backend
>>> transition to XenbusStateConnected will trigger the connected state
>>> only without doing the actions required when the backend has
>>> connected.
>> 
>> Looks like xen-kbdfront does exactly the same - shouldn't it also be
>> changed then?
> 
> I posted that patch 2 days ago. :-)

Oh, I'm sorry - the completely different title misguided me.

Jan

--
To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Juergen Gross April 5, 2017, 8:18 a.m. UTC | #5
On 23/03/17 13:52, Juergen Gross wrote:
> Connecting to the backend isn't working reliably in xen-fbfront: in
> case XenbusStateInitWait of the backend has been missed the backend
> transition to XenbusStateConnected will trigger the connected state
> only without doing the actions required when the backend has
> connected.
> 
> Cc: stable@vger.kernel.org
> Signed-off-by: Juergen Gross <jgross@suse.com>

Bartlomiej, any comments? Can you please take this patch or should I
carry it through the Xen tree?


Juergen

> ---
>  drivers/video/fbdev/xen-fbfront.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/video/fbdev/xen-fbfront.c b/drivers/video/fbdev/xen-fbfront.c
> index d0115a7..3ee309c 100644
> --- a/drivers/video/fbdev/xen-fbfront.c
> +++ b/drivers/video/fbdev/xen-fbfront.c
> @@ -643,7 +643,6 @@ static void xenfb_backend_changed(struct xenbus_device *dev,
>  		break;
>  
>  	case XenbusStateInitWait:
> -InitWait:
>  		xenbus_switch_state(dev, XenbusStateConnected);
>  		break;
>  
> @@ -654,7 +653,8 @@ static void xenfb_backend_changed(struct xenbus_device *dev,
>  		 * get Connected twice here.
>  		 */
>  		if (dev->state != XenbusStateConnected)
> -			goto InitWait; /* no InitWait seen yet, fudge it */
> +			/* no InitWait seen yet, fudge it */
> +			xenbus_switch_state(dev, XenbusStateConnected);
>  
>  		if (xenbus_read_unsigned(info->xbdev->otherend,
>  					 "request-update", 0))
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Bartlomiej Zolnierkiewicz April 5, 2017, 2:28 p.m. UTC | #6
Hi,

On Wednesday, April 05, 2017 10:18:21 AM Juergen Gross wrote:
> On 23/03/17 13:52, Juergen Gross wrote:
> > Connecting to the backend isn't working reliably in xen-fbfront: in
> > case XenbusStateInitWait of the backend has been missed the backend
> > transition to XenbusStateConnected will trigger the connected state
> > only without doing the actions required when the backend has
> > connected.
> > 
> > Cc: stable@vger.kernel.org
> > Signed-off-by: Juergen Gross <jgross@suse.com>
> 
> Bartlomiej, any comments? Can you please take this patch or should I
> carry it through the Xen tree?

Looks fine to me, I will queue it for 4.11 on Friday.

Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics

--
To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Bartlomiej Zolnierkiewicz April 7, 2017, 3:27 p.m. UTC | #7
On Thursday, March 23, 2017 10:11:12 AM Boris Ostrovsky wrote:
> On 03/23/2017 08:52 AM, Juergen Gross wrote:
> > Connecting to the backend isn't working reliably in xen-fbfront: in
> > case XenbusStateInitWait of the backend has been missed the backend
> > transition to XenbusStateConnected will trigger the connected state
> > only without doing the actions required when the backend has
> > connected.
> >
> > Cc: stable@vger.kernel.org
> > Signed-off-by: Juergen Gross <jgross@suse.com>
> 
> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>

Patch queued for 4.11, thanks.

Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics

--
To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/video/fbdev/xen-fbfront.c b/drivers/video/fbdev/xen-fbfront.c
index d0115a7..3ee309c 100644
--- a/drivers/video/fbdev/xen-fbfront.c
+++ b/drivers/video/fbdev/xen-fbfront.c
@@ -643,7 +643,6 @@  static void xenfb_backend_changed(struct xenbus_device *dev,
 		break;
 
 	case XenbusStateInitWait:
-InitWait:
 		xenbus_switch_state(dev, XenbusStateConnected);
 		break;
 
@@ -654,7 +653,8 @@  static void xenfb_backend_changed(struct xenbus_device *dev,
 		 * get Connected twice here.
 		 */
 		if (dev->state != XenbusStateConnected)
-			goto InitWait; /* no InitWait seen yet, fudge it */
+			/* no InitWait seen yet, fudge it */
+			xenbus_switch_state(dev, XenbusStateConnected);
 
 		if (xenbus_read_unsigned(info->xbdev->otherend,
 					 "request-update", 0))