libceph: ignore pool overlay and cache logic on redirects
commit49998bbee904c95a6fa6d9b74a066d35ea2195a0
authorJerry Lee <leisurelysw24@gmail.com>
Mon, 18 May 2020 08:03:09 +0000 (18 16:03 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 3 Jun 2020 06:19:39 +0000 (3 08:19 +0200)
tree6f6c83a12d56192c884724746cedcab4315b9622
parentccc9da3602d6941c705b3ff19fda89e917501550
libceph: ignore pool overlay and cache logic on redirects

[ Upstream commit 890bd0f8997ae6ac0a367dd5146154a3963306dd ]

OSD client should ignore cache/overlay flag if got redirect reply.
Otherwise, the client hangs when the cache tier is in forward mode.

[ idryomov: Redirects are effectively deprecated and no longer
  used or tested.  The original tiering modes based on redirects
  are inherently flawed because redirects can race and reorder,
  potentially resulting in data corruption.  The new proxy and
  readproxy tiering modes should be used instead of forward and
  readforward.  Still marking for stable as obviously correct,
  though. ]

Cc: stable@vger.kernel.org
URL: https://tracker.ceph.com/issues/23296
URL: https://tracker.ceph.com/issues/36406
Signed-off-by: Jerry Lee <leisurelysw24@gmail.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/ceph/osd_client.c