1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
|
commit e23b817ad0cf1ea19c0a7b7c9999b30bed37d533
Author: Gary Lowell <gary.lowell@inktank.com>
Date: Fri Aug 16 19:39:41 2013 -0700
v0.67.1
commit 1aa01910957e967e87e46b86f1e67844148703e3
Author: Dan Mick <dan.mick@inktank.com>
Date: Thu Aug 15 17:10:56 2013 -0700
ceph.in: --admin-daemon was not returning EINVAL on bad command
Fix by restructuring code to hoist common code and have only one
place where admin_socket is actually called.
Signed-off-by: Dan Mick <dan.mick@inktank.com>
(cherry picked from commit 266460e97ec9ef9711e9eaa4bd954f3188d8da69)
commit d290a91525c3ebc6941dae2bb55f0bfbf120cb60
Author: Sage Weil <sage@inktank.com>
Date: Thu Aug 15 14:37:07 2013 -0700
mon: use str_join instead of std::copy
The std::copy method leaves a trailing separator.
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
(cherry picked from commit 35565ee64e41d7fddc7849c6006692c78227132c)
commit b99921746ef2e1e15777c748a15e929c72888db1
Author: Sage Weil <sage@inktank.com>
Date: Thu Aug 15 14:36:57 2013 -0700
config: fix stringification of config values
The std::copy construct leaves a trailing separator character, which breaks
parsing for booleans (among other things) and probably mangles everything
else too.
Backport: dumpling
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
(cherry picked from commit fc23cfe3fe567b30413d8af0c614a32fec238939)
commit d212bba6bd0d7d234097122988e4d973064b5645
Author: Sage Weil <sage@inktank.com>
Date: Thu Aug 15 14:36:49 2013 -0700
common: add str_join helper
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
(cherry picked from commit ce3a0944d9b47f7b178fe7775c9d105305b238e0)
commit a99fef9189086f5dd6ddacaecf967619dc5fe407
Author: Josh Durgin <josh.durgin@inktank.com>
Date: Wed Aug 14 15:50:59 2013 -0700
rados.py: fix Rados() unicode checking
Check new parameters and check that rados_id is not None again to
catch the empty string.
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Reviewed-by: Sage Weil <sage.weil@inktank.com>
(cherry picked from commit 4422f21a6586467a63ce6841552d0f60aa849cf1)
commit dd0df583e2661444287a36acc240a8ac0ec381e8
Author: Josh Durgin <josh.durgin@inktank.com>
Date: Wed Aug 14 15:28:19 2013 -0700
rados.py: fix Rados() backwards compatibility
Previously it had no name parameter, so the default will be used by
old clients. However, if an old client set rados_id, a new check that
both rados_id and name are set would result in an error. Fix this by
only applying the default names after the check, and add tests of this
behavior.
This was introduced in 783b7ec847c7f987ac1814c9c41c91921cac4eba,
so it does not affect cuttlefish.
Fixes: #5970
Reported-by: Michael Morgan <mmorgan@dca.net>
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Reviewed-by: Sage Weil <sage.weil@inktank.com>
(cherry picked from commit 34da9cbc33205623cf64aee1989f53dfb2c5bddd)
commit b9d1bf51610159a88ad257f29a81691e6b178e17
Author: Sage Weil <sage@inktank.com>
Date: Tue Aug 13 12:52:41 2013 -0700
librados: fix async aio completion wakeup
For aio flush, we register a wait on the most recent write. The write
completion code, however, was *only* waking the waiter if they were waiting
on that write, without regard to previous writes (completed or not).
For example, we might have 6 and 7 outstanding and wait on 7. If they
finish in order all is well, but if 7 finishes first we do the flush
completion early. Similarly, if we
- start 6
- start 7
- finish 7
- flush; wait on 7
- finish 6
we can hang forever.
Fix by doing any completions that are prior to the oldest pending write in
the aio write completion handler.
Refs: #5919
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Tested-by: Oliver Francke <Oliver.Francke@filoo.de>
(cherry picked from commit 16ed0b9af8bc08c7dabead1c1a7c1a22b1fb02fb)
commit 29ae033b435581a64fc92a26106b4ea1c3dfc0b1
Author: Josh Durgin <josh.durgin@inktank.com>
Date: Mon Aug 12 19:17:09 2013 -0700
librados: fix locking for AioCompletionImpl refcounting
Add an already-locked helper so that C_Aio{Safe,Complete} can
increment the reference count when their caller holds the
lock. C_AioCompleteAndSafe's caller is not holding the lock, so call
regular get() to ensure no racing updates can occur.
This eliminates all direct manipulations of AioCompletionImpl->ref,
and makes the necessary locking clear.
The only place C_AioCompleteAndSafe is used is in handling
aio_flush_async(). This could cause a missing completion.
Refs: #5919
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
Tested-by: Oliver Francke <Oliver.Francke@filoo.de>
(cherry picked from commit 7a52e2ff5025754f3040eff3fc52d4893cafc389)
|