diff -Nru ceph-12.2.13/debian/changelog ceph-12.2.13/debian/changelog --- ceph-12.2.13/debian/changelog 2020-02-26 09:35:20.000000000 +0000 +++ ceph-12.2.13/debian/changelog 2020-04-10 04:23:27.000000000 +0000 @@ -1,3 +1,10 @@ +ceph (12.2.13-0ubuntu0.18.04.1+20200409sf00238701b1) bionic; urgency=medium + + * d/p/suicide_grace_fix.patch: Prevent ShardedOpWQ from dropping + suicide_grace after waiting for work (LP: #1840348). + + -- Dan Hill Fri, 10 Apr 2020 04:23:27 +0000 + ceph (12.2.13-0ubuntu0.18.04.1) bionic; urgency=medium * New upstream point release (LP: #1861793). diff -Nru ceph-12.2.13/debian/patches/series ceph-12.2.13/debian/patches/series --- ceph-12.2.13/debian/patches/series 2020-02-26 09:35:20.000000000 +0000 +++ ceph-12.2.13/debian/patches/series 2020-04-10 02:41:38.000000000 +0000 @@ -15,3 +15,4 @@ civetweb-755-1.8-somaxconn-configurable.patch bug1804261.patch CVE-2020-1700.patch +suicide_grace_fix.patch diff -Nru ceph-12.2.13/debian/patches/suicide_grace_fix.patch ceph-12.2.13/debian/patches/suicide_grace_fix.patch --- ceph-12.2.13/debian/patches/suicide_grace_fix.patch 1970-01-01 00:00:00.000000000 +0000 +++ ceph-12.2.13/debian/patches/suicide_grace_fix.patch 2020-04-10 04:23:27.000000000 +0000 @@ -0,0 +1,29 @@ +Description: Sharded OpWQ drops suicide_grace after waiting for work +The Sharded OpWQ will opportunistically wait for more work when processing an +empty queue. While waiting, the heartbeat timeout and suicide_grace values are +modified. On Luminous, the `threadpool_default_timeout` grace is left applied +and suicide_grace is left disabled. On later releases both the grace and +suicide_grace are left disabled. + +After finding work, the original work queue grace/suicide_grace values are +not re-applied. This can result in hung operations that do not trigger an OSD +suicide recovery. +Author: Daniel Hill +Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1840348 +Last-Update: 2020-04-09 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +Index: ceph-12.2.13/src/osd/OSD.cc +=================================================================== +--- ceph-12.2.13.orig/src/osd/OSD.cc ++++ ceph-12.2.13/src/osd/OSD.cc +@@ -10852,6 +10852,9 @@ void OSD::ShardedOpWQ::_process(uint32_t + sdata->sdata_op_ordering_lock.Unlock(); + return; + } ++ // found work; re-apply wq timeout values ++ osd->cct->get_heartbeat_map()->reset_timeout(hb, ++ timeout_interval, suicide_interval); + } + pair item = sdata->pqueue->dequeue(); + if (osd->is_stopping()) { diff -Nru ceph-12.2.13/src/test/debian-jessie/debian/changelog ceph-12.2.13/src/test/debian-jessie/debian/changelog --- ceph-12.2.13/src/test/debian-jessie/debian/changelog 2020-02-26 09:35:20.000000000 +0000 +++ ceph-12.2.13/src/test/debian-jessie/debian/changelog 2020-04-10 04:23:27.000000000 +0000 @@ -1,3 +1,10 @@ +ceph (12.2.13-0ubuntu0.18.04.1+20200409sf00238701b1) bionic; urgency=medium + + * d/p/suicide_grace_fix.patch: Prevent ShardedOpWQ from dropping + suicide_grace after waiting for work (LP: #1840348). + + -- Dan Hill Fri, 10 Apr 2020 04:23:27 +0000 + ceph (12.2.13-0ubuntu0.18.04.1) bionic; urgency=medium * New upstream point release (LP: #1861793). diff -Nru ceph-12.2.13/src/test/debian-jessie/debian/patches/series ceph-12.2.13/src/test/debian-jessie/debian/patches/series --- ceph-12.2.13/src/test/debian-jessie/debian/patches/series 2020-02-26 09:35:20.000000000 +0000 +++ ceph-12.2.13/src/test/debian-jessie/debian/patches/series 2020-04-10 02:41:38.000000000 +0000 @@ -15,3 +15,4 @@ civetweb-755-1.8-somaxconn-configurable.patch bug1804261.patch CVE-2020-1700.patch +suicide_grace_fix.patch diff -Nru ceph-12.2.13/src/test/debian-jessie/debian/patches/suicide_grace_fix.patch ceph-12.2.13/src/test/debian-jessie/debian/patches/suicide_grace_fix.patch --- ceph-12.2.13/src/test/debian-jessie/debian/patches/suicide_grace_fix.patch 1970-01-01 00:00:00.000000000 +0000 +++ ceph-12.2.13/src/test/debian-jessie/debian/patches/suicide_grace_fix.patch 2020-04-10 04:23:27.000000000 +0000 @@ -0,0 +1,29 @@ +Description: Sharded OpWQ drops suicide_grace after waiting for work +The Sharded OpWQ will opportunistically wait for more work when processing an +empty queue. While waiting, the heartbeat timeout and suicide_grace values are +modified. On Luminous, the `threadpool_default_timeout` grace is left applied +and suicide_grace is left disabled. On later releases both the grace and +suicide_grace are left disabled. + +After finding work, the original work queue grace/suicide_grace values are +not re-applied. This can result in hung operations that do not trigger an OSD +suicide recovery. +Author: Daniel Hill +Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1840348 +Last-Update: 2020-04-09 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +Index: ceph-12.2.13/src/osd/OSD.cc +=================================================================== +--- ceph-12.2.13.orig/src/osd/OSD.cc ++++ ceph-12.2.13/src/osd/OSD.cc +@@ -10852,6 +10852,9 @@ void OSD::ShardedOpWQ::_process(uint32_t + sdata->sdata_op_ordering_lock.Unlock(); + return; + } ++ // found work; re-apply wq timeout values ++ osd->cct->get_heartbeat_map()->reset_timeout(hb, ++ timeout_interval, suicide_interval); + } + pair item = sdata->pqueue->dequeue(); + if (osd->is_stopping()) { diff -Nru ceph-12.2.13/src/test/ubuntu-12.04/debian/changelog ceph-12.2.13/src/test/ubuntu-12.04/debian/changelog --- ceph-12.2.13/src/test/ubuntu-12.04/debian/changelog 2020-02-26 09:35:20.000000000 +0000 +++ ceph-12.2.13/src/test/ubuntu-12.04/debian/changelog 2020-04-10 04:23:27.000000000 +0000 @@ -1,3 +1,10 @@ +ceph (12.2.13-0ubuntu0.18.04.1+20200409sf00238701b1) bionic; urgency=medium + + * d/p/suicide_grace_fix.patch: Prevent ShardedOpWQ from dropping + suicide_grace after waiting for work (LP: #1840348). + + -- Dan Hill Fri, 10 Apr 2020 04:23:27 +0000 + ceph (12.2.13-0ubuntu0.18.04.1) bionic; urgency=medium * New upstream point release (LP: #1861793). diff -Nru ceph-12.2.13/src/test/ubuntu-12.04/debian/patches/series ceph-12.2.13/src/test/ubuntu-12.04/debian/patches/series --- ceph-12.2.13/src/test/ubuntu-12.04/debian/patches/series 2020-02-26 09:35:20.000000000 +0000 +++ ceph-12.2.13/src/test/ubuntu-12.04/debian/patches/series 2020-04-10 02:41:38.000000000 +0000 @@ -15,3 +15,4 @@ civetweb-755-1.8-somaxconn-configurable.patch bug1804261.patch CVE-2020-1700.patch +suicide_grace_fix.patch diff -Nru ceph-12.2.13/src/test/ubuntu-12.04/debian/patches/suicide_grace_fix.patch ceph-12.2.13/src/test/ubuntu-12.04/debian/patches/suicide_grace_fix.patch --- ceph-12.2.13/src/test/ubuntu-12.04/debian/patches/suicide_grace_fix.patch 1970-01-01 00:00:00.000000000 +0000 +++ ceph-12.2.13/src/test/ubuntu-12.04/debian/patches/suicide_grace_fix.patch 2020-04-10 04:23:27.000000000 +0000 @@ -0,0 +1,29 @@ +Description: Sharded OpWQ drops suicide_grace after waiting for work +The Sharded OpWQ will opportunistically wait for more work when processing an +empty queue. While waiting, the heartbeat timeout and suicide_grace values are +modified. On Luminous, the `threadpool_default_timeout` grace is left applied +and suicide_grace is left disabled. On later releases both the grace and +suicide_grace are left disabled. + +After finding work, the original work queue grace/suicide_grace values are +not re-applied. This can result in hung operations that do not trigger an OSD +suicide recovery. +Author: Daniel Hill +Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1840348 +Last-Update: 2020-04-09 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +Index: ceph-12.2.13/src/osd/OSD.cc +=================================================================== +--- ceph-12.2.13.orig/src/osd/OSD.cc ++++ ceph-12.2.13/src/osd/OSD.cc +@@ -10852,6 +10852,9 @@ void OSD::ShardedOpWQ::_process(uint32_t + sdata->sdata_op_ordering_lock.Unlock(); + return; + } ++ // found work; re-apply wq timeout values ++ osd->cct->get_heartbeat_map()->reset_timeout(hb, ++ timeout_interval, suicide_interval); + } + pair item = sdata->pqueue->dequeue(); + if (osd->is_stopping()) { diff -Nru ceph-12.2.13/src/test/ubuntu-14.04/debian/changelog ceph-12.2.13/src/test/ubuntu-14.04/debian/changelog --- ceph-12.2.13/src/test/ubuntu-14.04/debian/changelog 2020-02-26 09:35:20.000000000 +0000 +++ ceph-12.2.13/src/test/ubuntu-14.04/debian/changelog 2020-04-10 04:23:27.000000000 +0000 @@ -1,3 +1,10 @@ +ceph (12.2.13-0ubuntu0.18.04.1+20200409sf00238701b1) bionic; urgency=medium + + * d/p/suicide_grace_fix.patch: Prevent ShardedOpWQ from dropping + suicide_grace after waiting for work (LP: #1840348). + + -- Dan Hill Fri, 10 Apr 2020 04:23:27 +0000 + ceph (12.2.13-0ubuntu0.18.04.1) bionic; urgency=medium * New upstream point release (LP: #1861793). diff -Nru ceph-12.2.13/src/test/ubuntu-14.04/debian/patches/series ceph-12.2.13/src/test/ubuntu-14.04/debian/patches/series --- ceph-12.2.13/src/test/ubuntu-14.04/debian/patches/series 2020-02-26 09:35:20.000000000 +0000 +++ ceph-12.2.13/src/test/ubuntu-14.04/debian/patches/series 2020-04-10 02:41:38.000000000 +0000 @@ -15,3 +15,4 @@ civetweb-755-1.8-somaxconn-configurable.patch bug1804261.patch CVE-2020-1700.patch +suicide_grace_fix.patch diff -Nru ceph-12.2.13/src/test/ubuntu-14.04/debian/patches/suicide_grace_fix.patch ceph-12.2.13/src/test/ubuntu-14.04/debian/patches/suicide_grace_fix.patch --- ceph-12.2.13/src/test/ubuntu-14.04/debian/patches/suicide_grace_fix.patch 1970-01-01 00:00:00.000000000 +0000 +++ ceph-12.2.13/src/test/ubuntu-14.04/debian/patches/suicide_grace_fix.patch 2020-04-10 04:23:27.000000000 +0000 @@ -0,0 +1,29 @@ +Description: Sharded OpWQ drops suicide_grace after waiting for work +The Sharded OpWQ will opportunistically wait for more work when processing an +empty queue. While waiting, the heartbeat timeout and suicide_grace values are +modified. On Luminous, the `threadpool_default_timeout` grace is left applied +and suicide_grace is left disabled. On later releases both the grace and +suicide_grace are left disabled. + +After finding work, the original work queue grace/suicide_grace values are +not re-applied. This can result in hung operations that do not trigger an OSD +suicide recovery. +Author: Daniel Hill +Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1840348 +Last-Update: 2020-04-09 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +Index: ceph-12.2.13/src/osd/OSD.cc +=================================================================== +--- ceph-12.2.13.orig/src/osd/OSD.cc ++++ ceph-12.2.13/src/osd/OSD.cc +@@ -10852,6 +10852,9 @@ void OSD::ShardedOpWQ::_process(uint32_t + sdata->sdata_op_ordering_lock.Unlock(); + return; + } ++ // found work; re-apply wq timeout values ++ osd->cct->get_heartbeat_map()->reset_timeout(hb, ++ timeout_interval, suicide_interval); + } + pair item = sdata->pqueue->dequeue(); + if (osd->is_stopping()) { diff -Nru ceph-12.2.13/src/test/ubuntu-16.04/debian/changelog ceph-12.2.13/src/test/ubuntu-16.04/debian/changelog --- ceph-12.2.13/src/test/ubuntu-16.04/debian/changelog 2020-02-26 09:35:20.000000000 +0000 +++ ceph-12.2.13/src/test/ubuntu-16.04/debian/changelog 2020-04-10 04:23:27.000000000 +0000 @@ -1,3 +1,10 @@ +ceph (12.2.13-0ubuntu0.18.04.1+20200409sf00238701b1) bionic; urgency=medium + + * d/p/suicide_grace_fix.patch: Prevent ShardedOpWQ from dropping + suicide_grace after waiting for work (LP: #1840348). + + -- Dan Hill Fri, 10 Apr 2020 04:23:27 +0000 + ceph (12.2.13-0ubuntu0.18.04.1) bionic; urgency=medium * New upstream point release (LP: #1861793). diff -Nru ceph-12.2.13/src/test/ubuntu-16.04/debian/patches/series ceph-12.2.13/src/test/ubuntu-16.04/debian/patches/series --- ceph-12.2.13/src/test/ubuntu-16.04/debian/patches/series 2020-02-26 09:35:20.000000000 +0000 +++ ceph-12.2.13/src/test/ubuntu-16.04/debian/patches/series 2020-04-10 02:41:38.000000000 +0000 @@ -15,3 +15,4 @@ civetweb-755-1.8-somaxconn-configurable.patch bug1804261.patch CVE-2020-1700.patch +suicide_grace_fix.patch diff -Nru ceph-12.2.13/src/test/ubuntu-16.04/debian/patches/suicide_grace_fix.patch ceph-12.2.13/src/test/ubuntu-16.04/debian/patches/suicide_grace_fix.patch --- ceph-12.2.13/src/test/ubuntu-16.04/debian/patches/suicide_grace_fix.patch 1970-01-01 00:00:00.000000000 +0000 +++ ceph-12.2.13/src/test/ubuntu-16.04/debian/patches/suicide_grace_fix.patch 2020-04-10 04:23:27.000000000 +0000 @@ -0,0 +1,29 @@ +Description: Sharded OpWQ drops suicide_grace after waiting for work +The Sharded OpWQ will opportunistically wait for more work when processing an +empty queue. While waiting, the heartbeat timeout and suicide_grace values are +modified. On Luminous, the `threadpool_default_timeout` grace is left applied +and suicide_grace is left disabled. On later releases both the grace and +suicide_grace are left disabled. + +After finding work, the original work queue grace/suicide_grace values are +not re-applied. This can result in hung operations that do not trigger an OSD +suicide recovery. +Author: Daniel Hill +Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1840348 +Last-Update: 2020-04-09 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +Index: ceph-12.2.13/src/osd/OSD.cc +=================================================================== +--- ceph-12.2.13.orig/src/osd/OSD.cc ++++ ceph-12.2.13/src/osd/OSD.cc +@@ -10852,6 +10852,9 @@ void OSD::ShardedOpWQ::_process(uint32_t + sdata->sdata_op_ordering_lock.Unlock(); + return; + } ++ // found work; re-apply wq timeout values ++ osd->cct->get_heartbeat_map()->reset_timeout(hb, ++ timeout_interval, suicide_interval); + } + pair item = sdata->pqueue->dequeue(); + if (osd->is_stopping()) {