Ilya Dryomov
c297eb4269
libceph: always signal completion when done
...
r_safe_completion is currently, and has always been, signaled only if
on-disk ack was requested. It's there for fsync and syncfs, which wait
for in-flight writes to flush - all data write requests set ONDISK.
However, the pool perm check code introduced in 4.2 sends a write
request with only ACK set. An unfortunately timed syncfs can then hang
forever: r_safe_completion won't be signaled because only an unsafe
reply was requested.
We could patch ceph_osdc_sync() to skip !ONDISK write requests, but
that is somewhat incomplete and yet another special case. Instead,
rename this completion to r_done_completion and always signal it when
the OSD client is done with the request, whether unsafe, safe, or
error. This is a bit cleaner and helps with the cancellation code.
Reported-by: Yan, Zheng <zyan@redhat.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
2016-12-14 22:39:08 +01:00
..
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-13 17:03:52 +01:00
2016-10-11 15:06:31 -07:00
2016-10-15 12:09:13 -07:00
2016-10-10 23:02:51 -04:00
2016-11-04 20:08:16 -07:00
2016-10-10 20:16:43 -07:00
2016-12-14 22:39:08 +01:00
2016-11-28 23:08:53 -06:00
2016-10-10 20:16:43 -07:00
2016-10-10 23:02:51 -04:00
2016-11-19 20:56:13 -05:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 09:54:00 -05:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-27 18:43:43 -07:00
2016-10-06 09:07:44 -04:00
2016-10-18 11:29:35 +02:00
2016-11-19 20:58:15 -05:00
2016-10-18 14:15:23 -07:00
2016-10-10 20:16:43 -07:00
2016-12-06 16:18:45 +01:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-11-30 10:41:26 -08:00
2016-10-12 23:19:18 -04:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-27 17:47:11 +02:00
2016-10-11 15:06:33 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-11-23 14:43:40 -08:00
2016-11-01 15:24:43 -04:00
2016-10-10 20:16:43 -07:00
2016-10-07 18:46:26 -07:00
2016-10-30 13:09:42 -04:00
2016-11-11 08:12:37 -08:00
2016-10-10 20:16:43 -07:00
2016-09-27 21:06:21 -04:00
2016-11-16 11:52:19 -05:00
2016-11-29 10:20:24 +01:00
2016-10-27 18:43:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-07 21:48:36 -04:00
2016-10-14 12:18:50 -07:00
2016-10-10 20:16:43 -07:00
2016-09-27 21:06:21 -04:00
2016-10-28 14:48:31 +02:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-10-24 14:21:18 +11:00
2016-10-30 13:09:42 -04:00
2016-10-10 20:16:43 -07:00
2016-10-10 20:16:43 -07:00
2016-09-14 21:28:10 +02:00
2016-09-27 21:06:22 -04:00
2016-10-11 15:06:30 -07:00
2016-10-11 15:06:33 -07:00
2016-09-24 09:27:18 +02:00
2016-09-27 21:20:53 -04:00
2016-11-11 08:12:37 -08:00
2016-10-07 18:46:28 -07:00
2016-10-03 20:38:55 -04:00
2016-10-19 08:12:02 -07:00
2016-09-27 18:47:38 -04:00
2016-10-10 20:16:43 -07:00
2016-10-10 13:04:49 -07:00
2016-09-15 13:29:52 -07:00
2016-10-24 14:20:25 +11:00
2016-10-07 18:46:29 -07:00
2016-10-10 20:16:43 -07:00
2016-10-18 12:21:28 +02:00
2016-08-31 11:44:36 -04:00
2016-09-30 12:46:48 -05:00
2016-10-14 17:23:33 -07:00
2016-10-15 10:03:15 -07:00
2016-10-10 20:16:43 -07:00
2016-10-13 20:28:22 -07:00
2016-10-11 15:06:32 -07:00
2016-09-30 12:46:48 -05:00
2016-09-30 12:46:48 -05:00
2016-10-10 20:16:43 -07:00
2016-10-14 20:00:34 -04:00
2016-10-11 15:06:30 -07:00
2016-10-07 18:46:30 -07:00
2016-11-26 20:05:42 -05:00
2016-10-14 20:41:59 -04:00
2016-10-08 11:06:08 -04:00
2016-11-17 00:00:23 -05:00