]> www.infradead.org Git - users/jedix/linux-maple.git/commit
xen-blkfront: introduce blkfront_gather_backend_features()
authorBob Liu <bob.liu@oracle.com>
Wed, 22 Jul 2015 06:40:08 +0000 (14:40 +0800)
committerElena Ufimtseva <elena.ufimtseva@oracle.com>
Wed, 12 Aug 2015 09:57:46 +0000 (05:57 -0400)
commit0b79c86508b6793db9cca5aaa1ae41246c56f324
treecc06fbac4de26e708392b279883db43b93974c98
parent6d4985eea90ba1b0e128d36bb723dbade11bc04f
xen-blkfront: introduce blkfront_gather_backend_features()

There is a bug when migrate from !feature-persistent host to feature-persistent
host, because domU still thinks new host/backend doesn't support persistent.
Dmesg like:
backed has not unmapped grant: 839
backed has not unmapped grant: 773
backed has not unmapped grant: 773
backed has not unmapped grant: 773
backed has not unmapped grant: 839

The fix is to recheck feature-persistent of new backend in blkif_recover().
See: https://lkml.org/lkml/2015/5/25/469

As Roger suggested, we can split the part of blkfront_connect that checks for
optional features, like persistent grants, indirect descriptors and
flush/barrier features to a separate function and call it from both
blkfront_connect and blkif_recover

Acked-by: Roger Pau Monné <roger.pau@citrix.com>
Signed-off-by: Bob Liu <bob.liu@oracle.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
(cherry picked from commit d50babbe300eedf33ea5b00a12c5df3a05bd96c7)
Signed-off-by: Elena Ufimtseva <elena.ufimtseva@oracle.com>
drivers/block/xen-blkfront.c