RE: [PATCH 4/5] hv: kvp: use wrappers to propaigate state
From: KY Srinivasan
Date: Mon Sep 21 2015 - 12:31:40 EST
> -----Original Message-----
> From: Olaf Hering [mailto:olaf@xxxxxxxxx]
> Sent: Monday, September 21, 2015 3:18 AM
> To: KY Srinivasan <kys@xxxxxxxxxxxxx>; Greg KH
> <gregkh@xxxxxxxxxxxxxxxxxxx>
> Cc: linux-kernel@xxxxxxxxxxxxxxx; devel@xxxxxxxxxxxxxxxxxxxxxx;
> apw@xxxxxxxxxxxxx; vkuznets@xxxxxxxxxx; jasowang@xxxxxxxxxx
> Subject: Re: [PATCH 4/5] hv: kvp: use wrappers to propaigate state
>
> On Sun, Sep 20, Greg KH wrote:
>
> > On Tue, Sep 15, 2015 at 05:37:53PM -0700, K. Y. Srinivasan wrote:
> > > @@ -122,8 +125,8 @@ static void kvp_timeout_func(struct work_struct
> *dummy)
>
> > > + if (kvp_get_state() > HVUTIL_READY)
> > > + kvp_set_state(HVUTIL_READY);
>
> > And what if the state changed the line after this? Oops, your code is
> > hosed. See, you need a lock, do this correctly.
>
> KY, can this happen?
No - the state has to be > HVUTIL_READY. Also, if the timeout fires,
it wins since other contexts will attempt to first cancel the timeout before
proceeding further.
K. Y
>
> Olaf
N§²æ¸yú²X¬¶ÇvØ)Þ{.nÇ·¥{±êX§¶¡Ü}©²ÆzÚj:+v¨¾«êZ+Êzf£¢·h§~Ûÿû®w¥¢¸?¨è&¢)ßfùy§m
á«a¶Úÿ0¶ìå