On Tue, Sep 06, 2022 at 04:24:14PM +0000, SeongJae Park wrote: > commit fe8f65b018effbf473f53af3538d0c1878b8b329 upstream. > > Xen blkfront advertises its support of the persistent grants feature > when it first setting up and when resuming in 'talk_to_blkback()'. > Then, blkback reads the advertised value when it connects with blkfront > and decides if it will use the persistent grants feature or not, and > advertises its decision to blkfront. Blkfront reads the blkback's > decision and it also makes the decision for the use of the feature. > > Commit 402c43ea6b34 ("xen-blkfront: Apply 'feature_persistent' parameter > when connect"), however, made the blkfront's read of the parameter for > disabling the advertisement, namely 'feature_persistent', to be done > when it negotiate, not when advertise. Therefore blkfront advertises > without reading the parameter. As the field for caching the parameter > value is zero-initialized, it always advertises as the feature is > disabled, so that the persistent grants feature becomes always disabled. > > This commit fixes the issue by making the blkfront does parmeter caching > just before the advertisement. > > Fixes: 402c43ea6b34 ("xen-blkfront: Apply 'feature_persistent' parameter when connect") > Cc: <stable@xxxxxxxxxxxxxxx> # 5.10.x > Reported-by: Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx> > Signed-off-by: SeongJae Park <sj@xxxxxxxxxx> > Tested-by: Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx> > Reviewed-by: Juergen Gross <jgross@xxxxxxxx> > Link: https://lore.kernel.org/r/20220831165824.94815-4-sj@xxxxxxxxxx > Signed-off-by: Juergen Gross <jgross@xxxxxxxx> > --- > > This patch is a manual backport of the upstream commit on the 5.10.y > kernel. Please note that this patch can be applied on the latest 5.10.y > only after the preceding patch[1] is applied. > > [1] https://lore.kernel.org/stable/20220906132819.016040100@xxxxxxxxxxxxxxxxxxx/ Now queued up, thanks. greg k-h