Magellan Linux

Contents of /trunk/xorg-server/patches/xorg-server-1.17.1-systemd-logind-dont-second-guess-dbus-default-tim.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2575 - (show annotations) (download)
Mon Jun 15 12:22:48 2015 UTC (8 years, 11 months ago) by niro
File size: 36383 byte(s)
-serveral upstream patches
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
4 <head>
5 <title>svntogit/packages.git - Git clone of the 'packages' repository
6 </title>
7 <meta name='generator' content='cgit v0.10.2'/>
8 <meta name='robots' content='index, nofollow'/>
9 <link rel='stylesheet' type='text/css' href='/cgit.css'/>
10 <link rel='shortcut icon' href='/favicon.ico'/>
11 <link rel='alternate' title='Atom feed' href='https://projects.archlinux.org/svntogit/packages.git/atom/trunk/systemd-logind-dont-second-guess-D-Bus-default-tim.patch?h=packages/xorg-server' type='application/atom+xml'/>
12 <link rel='vcs-git' href='git://projects.archlinux.org/svntogit/packages.git' title='svntogit/packages.git Git repository'/>
13 <link rel='vcs-git' href='http://projects.archlinux.org/git/svntogit/packages.git' title='svntogit/packages.git Git repository'/>
14 <link rel='vcs-git' href='https://projects.archlinux.org/git/svntogit/packages.git' title='svntogit/packages.git Git repository'/>
15 <link rel='vcs-git' href='ssh://gerolde.archlinux.org/srv/projects/git/svntogit/packages.git' title='svntogit/packages.git Git repository'/>
16 </head>
17 <body>
18 <div id="archnavbar"><!-- Arch Linux global navigation bar -->
19 <div id="archnavbarlogo">
20 <p><a href="http://www.archlinux.org/" title="Arch news, packages, projects and more"></a></p>
21 </div>
22 <div id="archnavbarmenu">
23 <ul id="archnavbarlist">
24 <li id="anb-home"><a href="http://www.archlinux.org/" title="Arch news, packages, projects and more">Home</a></li>
25 <li id="anb-packages"><a href="http://www.archlinux.org/packages/" title="Arch Package Database">Packages</a></li>
26 <li id="anb-forums"><a href="https://bbs.archlinux.org/" title="Community forums">Forums</a></li>
27 <li id="anb-wiki"><a href="https://wiki.archlinux.org/" title="Community documentation">Wiki</a></li>
28 <li id="anb-bugs"><a href="https://bugs.archlinux.org/" title="Report and follow bugs">Bugs</a></li>
29 <li id="anb-aur"><a href="https://aur.archlinux.org/" title="Arch Linux User Repository">AUR</a></li>
30 <li id="anb-download"><a href="http://www.archlinux.org/download/" title="Get Arch Linux">Download</a></li>
31 </ul>
32 </div>
33 </div><!-- #archnavbar -->
34 <div id='cgit'><table id='header'>
35 <tr>
36 <td class='main'><a href='/'>index</a> : <a title='svntogit/packages.git' href='/svntogit/packages.git/'>svntogit/packages.git</a></td></tr>
37 <tr><td class='sub'>Git clone of the 'packages' repository
38 </td><td class='sub right'></td></tr></table>
39 <table class='tabs'><tr><td>
40 <a href='/svntogit/packages.git/?h=packages/xorg-server'>summary</a><a href='/svntogit/packages.git/refs/?h=packages/xorg-server'>refs</a><a href='/svntogit/packages.git/log/trunk/systemd-logind-dont-second-guess-D-Bus-default-tim.patch?h=packages/xorg-server'>log</a><a class='active' href='/svntogit/packages.git/tree/trunk/systemd-logind-dont-second-guess-D-Bus-default-tim.patch?h=packages/xorg-server'>tree</a><a href='/svntogit/packages.git/commit/trunk/systemd-logind-dont-second-guess-D-Bus-default-tim.patch?h=packages/xorg-server'>commit</a><a href='/svntogit/packages.git/diff/trunk/systemd-logind-dont-second-guess-D-Bus-default-tim.patch?h=packages/xorg-server'>diff</a><a href='/svntogit/packages.git/stats/trunk/systemd-logind-dont-second-guess-D-Bus-default-tim.patch?h=packages/xorg-server'>stats</a></td><td class='form'><form class='right' method='get' action='/svntogit/packages.git/log/trunk/systemd-logind-dont-second-guess-D-Bus-default-tim.patch'>
41 <input type='hidden' name='h' value='packages/xorg-server'/><select name='qt'>
42 <option value='grep'>log msg</option>
43 <option value='author'>author</option>
44 <option value='committer'>committer</option>
45 <option value='range'>range</option>
46 </select>
47 <input class='txt' type='text' size='10' name='q' value=''/>
48 <input type='submit' value='search'/>
49 </form>
50 </td></tr></table>
51 <div class='path'>path: <a href='/svntogit/packages.git/tree/?h=packages/xorg-server'>root</a>/<a href='/svntogit/packages.git/tree/trunk?h=packages/xorg-server'>trunk</a>/<a href='/svntogit/packages.git/tree/trunk/systemd-logind-dont-second-guess-D-Bus-default-tim.patch?h=packages/xorg-server'>systemd-logind-dont-second-guess-D-Bus-default-tim.patch</a></div><div class='content'>blob: 0245211ad198ecffed3b6fc6b7391ce8007e74e9 (<a href='/svntogit/packages.git/plain/trunk/systemd-logind-dont-second-guess-D-Bus-default-tim.patch?h=packages/xorg-server'>plain</a>)
52 <table summary='blob content' class='blob'>
53 <tr><td class='linenumbers'><pre><a id='n1' href='#n1'>1</a>
54 <a id='n2' href='#n2'>2</a>
55 <a id='n3' href='#n3'>3</a>
56 <a id='n4' href='#n4'>4</a>
57 <a id='n5' href='#n5'>5</a>
58 <a id='n6' href='#n6'>6</a>
59 <a id='n7' href='#n7'>7</a>
60 <a id='n8' href='#n8'>8</a>
61 <a id='n9' href='#n9'>9</a>
62 <a id='n10' href='#n10'>10</a>
63 <a id='n11' href='#n11'>11</a>
64 <a id='n12' href='#n12'>12</a>
65 <a id='n13' href='#n13'>13</a>
66 <a id='n14' href='#n14'>14</a>
67 <a id='n15' href='#n15'>15</a>
68 <a id='n16' href='#n16'>16</a>
69 <a id='n17' href='#n17'>17</a>
70 <a id='n18' href='#n18'>18</a>
71 <a id='n19' href='#n19'>19</a>
72 <a id='n20' href='#n20'>20</a>
73 <a id='n21' href='#n21'>21</a>
74 <a id='n22' href='#n22'>22</a>
75 <a id='n23' href='#n23'>23</a>
76 <a id='n24' href='#n24'>24</a>
77 <a id='n25' href='#n25'>25</a>
78 <a id='n26' href='#n26'>26</a>
79 <a id='n27' href='#n27'>27</a>
80 <a id='n28' href='#n28'>28</a>
81 <a id='n29' href='#n29'>29</a>
82 <a id='n30' href='#n30'>30</a>
83 <a id='n31' href='#n31'>31</a>
84 <a id='n32' href='#n32'>32</a>
85 <a id='n33' href='#n33'>33</a>
86 <a id='n34' href='#n34'>34</a>
87 <a id='n35' href='#n35'>35</a>
88 <a id='n36' href='#n36'>36</a>
89 <a id='n37' href='#n37'>37</a>
90 <a id='n38' href='#n38'>38</a>
91 <a id='n39' href='#n39'>39</a>
92 <a id='n40' href='#n40'>40</a>
93 <a id='n41' href='#n41'>41</a>
94 <a id='n42' href='#n42'>42</a>
95 <a id='n43' href='#n43'>43</a>
96 <a id='n44' href='#n44'>44</a>
97 <a id='n45' href='#n45'>45</a>
98 <a id='n46' href='#n46'>46</a>
99 <a id='n47' href='#n47'>47</a>
100 <a id='n48' href='#n48'>48</a>
101 <a id='n49' href='#n49'>49</a>
102 <a id='n50' href='#n50'>50</a>
103 <a id='n51' href='#n51'>51</a>
104 <a id='n52' href='#n52'>52</a>
105 <a id='n53' href='#n53'>53</a>
106 <a id='n54' href='#n54'>54</a>
107 <a id='n55' href='#n55'>55</a>
108 <a id='n56' href='#n56'>56</a>
109 <a id='n57' href='#n57'>57</a>
110 <a id='n58' href='#n58'>58</a>
111 <a id='n59' href='#n59'>59</a>
112 <a id='n60' href='#n60'>60</a>
113 <a id='n61' href='#n61'>61</a>
114 <a id='n62' href='#n62'>62</a>
115 <a id='n63' href='#n63'>63</a>
116 <a id='n64' href='#n64'>64</a>
117 <a id='n65' href='#n65'>65</a>
118 <a id='n66' href='#n66'>66</a>
119 <a id='n67' href='#n67'>67</a>
120 <a id='n68' href='#n68'>68</a>
121 <a id='n69' href='#n69'>69</a>
122 <a id='n70' href='#n70'>70</a>
123 <a id='n71' href='#n71'>71</a>
124 <a id='n72' href='#n72'>72</a>
125 <a id='n73' href='#n73'>73</a>
126 <a id='n74' href='#n74'>74</a>
127 <a id='n75' href='#n75'>75</a>
128 <a id='n76' href='#n76'>76</a>
129 <a id='n77' href='#n77'>77</a>
130 <a id='n78' href='#n78'>78</a>
131 <a id='n79' href='#n79'>79</a>
132 <a id='n80' href='#n80'>80</a>
133 <a id='n81' href='#n81'>81</a>
134 <a id='n82' href='#n82'>82</a>
135 <a id='n83' href='#n83'>83</a>
136 <a id='n84' href='#n84'>84</a>
137 <a id='n85' href='#n85'>85</a>
138 <a id='n86' href='#n86'>86</a>
139 <a id='n87' href='#n87'>87</a>
140 <a id='n88' href='#n88'>88</a>
141 <a id='n89' href='#n89'>89</a>
142 <a id='n90' href='#n90'>90</a>
143 <a id='n91' href='#n91'>91</a>
144 <a id='n92' href='#n92'>92</a>
145 <a id='n93' href='#n93'>93</a>
146 <a id='n94' href='#n94'>94</a>
147 <a id='n95' href='#n95'>95</a>
148 <a id='n96' href='#n96'>96</a>
149 <a id='n97' href='#n97'>97</a>
150 <a id='n98' href='#n98'>98</a>
151 <a id='n99' href='#n99'>99</a>
152 <a id='n100' href='#n100'>100</a>
153 <a id='n101' href='#n101'>101</a>
154 <a id='n102' href='#n102'>102</a>
155 <a id='n103' href='#n103'>103</a>
156 <a id='n104' href='#n104'>104</a>
157 <a id='n105' href='#n105'>105</a>
158 <a id='n106' href='#n106'>106</a>
159 <a id='n107' href='#n107'>107</a>
160 <a id='n108' href='#n108'>108</a>
161 <a id='n109' href='#n109'>109</a>
162 <a id='n110' href='#n110'>110</a>
163 <a id='n111' href='#n111'>111</a>
164 <a id='n112' href='#n112'>112</a>
165 <a id='n113' href='#n113'>113</a>
166 <a id='n114' href='#n114'>114</a>
167 <a id='n115' href='#n115'>115</a>
168 <a id='n116' href='#n116'>116</a>
169 <a id='n117' href='#n117'>117</a>
170 <a id='n118' href='#n118'>118</a>
171 <a id='n119' href='#n119'>119</a>
172 <a id='n120' href='#n120'>120</a>
173 <a id='n121' href='#n121'>121</a>
174 <a id='n122' href='#n122'>122</a>
175 <a id='n123' href='#n123'>123</a>
176 <a id='n124' href='#n124'>124</a>
177 <a id='n125' href='#n125'>125</a>
178 <a id='n126' href='#n126'>126</a>
179 <a id='n127' href='#n127'>127</a>
180 <a id='n128' href='#n128'>128</a>
181 <a id='n129' href='#n129'>129</a>
182 <a id='n130' href='#n130'>130</a>
183 <a id='n131' href='#n131'>131</a>
184 <a id='n132' href='#n132'>132</a>
185 <a id='n133' href='#n133'>133</a>
186 <a id='n134' href='#n134'>134</a>
187 <a id='n135' href='#n135'>135</a>
188 <a id='n136' href='#n136'>136</a>
189 <a id='n137' href='#n137'>137</a>
190 <a id='n138' href='#n138'>138</a>
191 <a id='n139' href='#n139'>139</a>
192 <a id='n140' href='#n140'>140</a>
193 <a id='n141' href='#n141'>141</a>
194 <a id='n142' href='#n142'>142</a>
195 <a id='n143' href='#n143'>143</a>
196 <a id='n144' href='#n144'>144</a>
197 <a id='n145' href='#n145'>145</a>
198 <a id='n146' href='#n146'>146</a>
199 <a id='n147' href='#n147'>147</a>
200 <a id='n148' href='#n148'>148</a>
201 <a id='n149' href='#n149'>149</a>
202 <a id='n150' href='#n150'>150</a>
203 <a id='n151' href='#n151'>151</a>
204 <a id='n152' href='#n152'>152</a>
205 <a id='n153' href='#n153'>153</a>
206 <a id='n154' href='#n154'>154</a>
207 <a id='n155' href='#n155'>155</a>
208 <a id='n156' href='#n156'>156</a>
209 <a id='n157' href='#n157'>157</a>
210 <a id='n158' href='#n158'>158</a>
211 <a id='n159' href='#n159'>159</a>
212 <a id='n160' href='#n160'>160</a>
213 <a id='n161' href='#n161'>161</a>
214 <a id='n162' href='#n162'>162</a>
215 <a id='n163' href='#n163'>163</a>
216 <a id='n164' href='#n164'>164</a>
217 <a id='n165' href='#n165'>165</a>
218 <a id='n166' href='#n166'>166</a>
219 <a id='n167' href='#n167'>167</a>
220 <a id='n168' href='#n168'>168</a>
221 <a id='n169' href='#n169'>169</a>
222 <a id='n170' href='#n170'>170</a>
223 <a id='n171' href='#n171'>171</a>
224 <a id='n172' href='#n172'>172</a>
225 <a id='n173' href='#n173'>173</a>
226 <a id='n174' href='#n174'>174</a>
227 <a id='n175' href='#n175'>175</a>
228 <a id='n176' href='#n176'>176</a>
229 <a id='n177' href='#n177'>177</a>
230 <a id='n178' href='#n178'>178</a>
231 <a id='n179' href='#n179'>179</a>
232 <a id='n180' href='#n180'>180</a>
233 <a id='n181' href='#n181'>181</a>
234 <a id='n182' href='#n182'>182</a>
235 <a id='n183' href='#n183'>183</a>
236 <a id='n184' href='#n184'>184</a>
237 <a id='n185' href='#n185'>185</a>
238 <a id='n186' href='#n186'>186</a>
239 <a id='n187' href='#n187'>187</a>
240 <a id='n188' href='#n188'>188</a>
241 <a id='n189' href='#n189'>189</a>
242 <a id='n190' href='#n190'>190</a>
243 <a id='n191' href='#n191'>191</a>
244 <a id='n192' href='#n192'>192</a>
245 <a id='n193' href='#n193'>193</a>
246 <a id='n194' href='#n194'>194</a>
247 <a id='n195' href='#n195'>195</a>
248 <a id='n196' href='#n196'>196</a>
249 <a id='n197' href='#n197'>197</a>
250 <a id='n198' href='#n198'>198</a>
251 <a id='n199' href='#n199'>199</a>
252 <a id='n200' href='#n200'>200</a>
253 <a id='n201' href='#n201'>201</a>
254 <a id='n202' href='#n202'>202</a>
255 <a id='n203' href='#n203'>203</a>
256 <a id='n204' href='#n204'>204</a>
257 <a id='n205' href='#n205'>205</a>
258 <a id='n206' href='#n206'>206</a>
259 <a id='n207' href='#n207'>207</a>
260 <a id='n208' href='#n208'>208</a>
261 <a id='n209' href='#n209'>209</a>
262 <a id='n210' href='#n210'>210</a>
263 <a id='n211' href='#n211'>211</a>
264 <a id='n212' href='#n212'>212</a>
265 <a id='n213' href='#n213'>213</a>
266 <a id='n214' href='#n214'>214</a>
267 <a id='n215' href='#n215'>215</a>
268 <a id='n216' href='#n216'>216</a>
269 <a id='n217' href='#n217'>217</a>
270 <a id='n218' href='#n218'>218</a>
271 <a id='n219' href='#n219'>219</a>
272 <a id='n220' href='#n220'>220</a>
273 <a id='n221' href='#n221'>221</a>
274 <a id='n222' href='#n222'>222</a>
275 <a id='n223' href='#n223'>223</a>
276 <a id='n224' href='#n224'>224</a>
277 <a id='n225' href='#n225'>225</a>
278 <a id='n226' href='#n226'>226</a>
279 <a id='n227' href='#n227'>227</a>
280 <a id='n228' href='#n228'>228</a>
281 <a id='n229' href='#n229'>229</a>
282 <a id='n230' href='#n230'>230</a>
283 <a id='n231' href='#n231'>231</a>
284 <a id='n232' href='#n232'>232</a>
285 <a id='n233' href='#n233'>233</a>
286 <a id='n234' href='#n234'>234</a>
287 <a id='n235' href='#n235'>235</a>
288 <a id='n236' href='#n236'>236</a>
289 <a id='n237' href='#n237'>237</a>
290 <a id='n238' href='#n238'>238</a>
291 <a id='n239' href='#n239'>239</a>
292 <a id='n240' href='#n240'>240</a>
293 <a id='n241' href='#n241'>241</a>
294 <a id='n242' href='#n242'>242</a>
295 <a id='n243' href='#n243'>243</a>
296 <a id='n244' href='#n244'>244</a>
297 <a id='n245' href='#n245'>245</a>
298 <a id='n246' href='#n246'>246</a>
299 <a id='n247' href='#n247'>247</a>
300 <a id='n248' href='#n248'>248</a>
301 <a id='n249' href='#n249'>249</a>
302 <a id='n250' href='#n250'>250</a>
303 <a id='n251' href='#n251'>251</a>
304 <a id='n252' href='#n252'>252</a>
305 <a id='n253' href='#n253'>253</a>
306 <a id='n254' href='#n254'>254</a>
307 <a id='n255' href='#n255'>255</a>
308 <a id='n256' href='#n256'>256</a>
309 <a id='n257' href='#n257'>257</a>
310 <a id='n258' href='#n258'>258</a>
311 <a id='n259' href='#n259'>259</a>
312 <a id='n260' href='#n260'>260</a>
313 <a id='n261' href='#n261'>261</a>
314 <a id='n262' href='#n262'>262</a>
315 <a id='n263' href='#n263'>263</a>
316 <a id='n264' href='#n264'>264</a>
317 <a id='n265' href='#n265'>265</a>
318 <a id='n266' href='#n266'>266</a>
319 <a id='n267' href='#n267'>267</a>
320 <a id='n268' href='#n268'>268</a>
321 <a id='n269' href='#n269'>269</a>
322 <a id='n270' href='#n270'>270</a>
323 <a id='n271' href='#n271'>271</a>
324 <a id='n272' href='#n272'>272</a>
325 <a id='n273' href='#n273'>273</a>
326 <a id='n274' href='#n274'>274</a>
327 <a id='n275' href='#n275'>275</a>
328 <a id='n276' href='#n276'>276</a>
329 <a id='n277' href='#n277'>277</a>
330 <a id='n278' href='#n278'>278</a>
331 <a id='n279' href='#n279'>279</a>
332 <a id='n280' href='#n280'>280</a>
333 <a id='n281' href='#n281'>281</a>
334 <a id='n282' href='#n282'>282</a>
335 <a id='n283' href='#n283'>283</a>
336 <a id='n284' href='#n284'>284</a>
337 <a id='n285' href='#n285'>285</a>
338 <a id='n286' href='#n286'>286</a>
339 <a id='n287' href='#n287'>287</a>
340 <a id='n288' href='#n288'>288</a>
341 <a id='n289' href='#n289'>289</a>
342 <a id='n290' href='#n290'>290</a>
343 <a id='n291' href='#n291'>291</a>
344 <a id='n292' href='#n292'>292</a>
345 <a id='n293' href='#n293'>293</a>
346 <a id='n294' href='#n294'>294</a>
347 <a id='n295' href='#n295'>295</a>
348 <a id='n296' href='#n296'>296</a>
349 <a id='n297' href='#n297'>297</a>
350 <a id='n298' href='#n298'>298</a>
351 <a id='n299' href='#n299'>299</a>
352 <a id='n300' href='#n300'>300</a>
353 <a id='n301' href='#n301'>301</a>
354 <a id='n302' href='#n302'>302</a>
355 <a id='n303' href='#n303'>303</a>
356 <a id='n304' href='#n304'>304</a>
357 <a id='n305' href='#n305'>305</a>
358 <a id='n306' href='#n306'>306</a>
359 <a id='n307' href='#n307'>307</a>
360 <a id='n308' href='#n308'>308</a>
361 <a id='n309' href='#n309'>309</a>
362 <a id='n310' href='#n310'>310</a>
363 <a id='n311' href='#n311'>311</a>
364 <a id='n312' href='#n312'>312</a>
365 <a id='n313' href='#n313'>313</a>
366 <a id='n314' href='#n314'>314</a>
367 <a id='n315' href='#n315'>315</a>
368 <a id='n316' href='#n316'>316</a>
369 <a id='n317' href='#n317'>317</a>
370 <a id='n318' href='#n318'>318</a>
371 <a id='n319' href='#n319'>319</a>
372 <a id='n320' href='#n320'>320</a>
373 <a id='n321' href='#n321'>321</a>
374 <a id='n322' href='#n322'>322</a>
375 <a id='n323' href='#n323'>323</a>
376 <a id='n324' href='#n324'>324</a>
377 <a id='n325' href='#n325'>325</a>
378 <a id='n326' href='#n326'>326</a>
379 <a id='n327' href='#n327'>327</a>
380 <a id='n328' href='#n328'>328</a>
381 <a id='n329' href='#n329'>329</a>
382 <a id='n330' href='#n330'>330</a>
383 <a id='n331' href='#n331'>331</a>
384 <a id='n332' href='#n332'>332</a>
385 <a id='n333' href='#n333'>333</a>
386 <a id='n334' href='#n334'>334</a>
387 <a id='n335' href='#n335'>335</a>
388 <a id='n336' href='#n336'>336</a>
389 <a id='n337' href='#n337'>337</a>
390 <a id='n338' href='#n338'>338</a>
391 <a id='n339' href='#n339'>339</a>
392 <a id='n340' href='#n340'>340</a>
393 <a id='n341' href='#n341'>341</a>
394 <a id='n342' href='#n342'>342</a>
395 <a id='n343' href='#n343'>343</a>
396 <a id='n344' href='#n344'>344</a>
397 <a id='n345' href='#n345'>345</a>
398 <a id='n346' href='#n346'>346</a>
399 <a id='n347' href='#n347'>347</a>
400 <a id='n348' href='#n348'>348</a>
401 <a id='n349' href='#n349'>349</a>
402 <a id='n350' href='#n350'>350</a>
403 <a id='n351' href='#n351'>351</a>
404 <a id='n352' href='#n352'>352</a>
405 <a id='n353' href='#n353'>353</a>
406 <a id='n354' href='#n354'>354</a>
407 <a id='n355' href='#n355'>355</a>
408 <a id='n356' href='#n356'>356</a>
409 <a id='n357' href='#n357'>357</a>
410 <a id='n358' href='#n358'>358</a>
411 <a id='n359' href='#n359'>359</a>
412 <a id='n360' href='#n360'>360</a>
413 <a id='n361' href='#n361'>361</a>
414 <a id='n362' href='#n362'>362</a>
415 <a id='n363' href='#n363'>363</a>
416 <a id='n364' href='#n364'>364</a>
417 <a id='n365' href='#n365'>365</a>
418 <a id='n366' href='#n366'>366</a>
419 <a id='n367' href='#n367'>367</a>
420 <a id='n368' href='#n368'>368</a>
421 <a id='n369' href='#n369'>369</a>
422 <a id='n370' href='#n370'>370</a>
423 <a id='n371' href='#n371'>371</a>
424 <a id='n372' href='#n372'>372</a>
425 <a id='n373' href='#n373'>373</a>
426 <a id='n374' href='#n374'>374</a>
427 <a id='n375' href='#n375'>375</a>
428 <a id='n376' href='#n376'>376</a>
429 <a id='n377' href='#n377'>377</a>
430 <a id='n378' href='#n378'>378</a>
431 <a id='n379' href='#n379'>379</a>
432 <a id='n380' href='#n380'>380</a>
433 <a id='n381' href='#n381'>381</a>
434 <a id='n382' href='#n382'>382</a>
435 <a id='n383' href='#n383'>383</a>
436 <a id='n384' href='#n384'>384</a>
437 <a id='n385' href='#n385'>385</a>
438 <a id='n386' href='#n386'>386</a>
439 <a id='n387' href='#n387'>387</a>
440 <a id='n388' href='#n388'>388</a>
441 <a id='n389' href='#n389'>389</a>
442 <a id='n390' href='#n390'>390</a>
443 <a id='n391' href='#n391'>391</a>
444 <a id='n392' href='#n392'>392</a>
445 <a id='n393' href='#n393'>393</a>
446 <a id='n394' href='#n394'>394</a>
447 <a id='n395' href='#n395'>395</a>
448 <a id='n396' href='#n396'>396</a>
449 <a id='n397' href='#n397'>397</a>
450 <a id='n398' href='#n398'>398</a>
451 <a id='n399' href='#n399'>399</a>
452 <a id='n400' href='#n400'>400</a>
453 <a id='n401' href='#n401'>401</a>
454 <a id='n402' href='#n402'>402</a>
455 <a id='n403' href='#n403'>403</a>
456 <a id='n404' href='#n404'>404</a>
457 <a id='n405' href='#n405'>405</a>
458 <a id='n406' href='#n406'>406</a>
459 <a id='n407' href='#n407'>407</a>
460 <a id='n408' href='#n408'>408</a>
461 <a id='n409' href='#n409'>409</a>
462 <a id='n410' href='#n410'>410</a>
463 <a id='n411' href='#n411'>411</a>
464 <a id='n412' href='#n412'>412</a>
465 <a id='n413' href='#n413'>413</a>
466 <a id='n414' href='#n414'>414</a>
467 <a id='n415' href='#n415'>415</a>
468 <a id='n416' href='#n416'>416</a>
469 <a id='n417' href='#n417'>417</a>
470 <a id='n418' href='#n418'>418</a>
471 <a id='n419' href='#n419'>419</a>
472 <a id='n420' href='#n420'>420</a>
473 <a id='n421' href='#n421'>421</a>
474 <a id='n422' href='#n422'>422</a>
475 <a id='n423' href='#n423'>423</a>
476 <a id='n424' href='#n424'>424</a>
477 <a id='n425' href='#n425'>425</a>
478 <a id='n426' href='#n426'>426</a>
479 <a id='n427' href='#n427'>427</a>
480 <a id='n428' href='#n428'>428</a>
481 <a id='n429' href='#n429'>429</a>
482 <a id='n430' href='#n430'>430</a>
483 <a id='n431' href='#n431'>431</a>
484 <a id='n432' href='#n432'>432</a>
485 <a id='n433' href='#n433'>433</a>
486 <a id='n434' href='#n434'>434</a>
487 <a id='n435' href='#n435'>435</a>
488 <a id='n436' href='#n436'>436</a>
489 <a id='n437' href='#n437'>437</a>
490 <a id='n438' href='#n438'>438</a>
491 <a id='n439' href='#n439'>439</a>
492 <a id='n440' href='#n440'>440</a>
493 <a id='n441' href='#n441'>441</a>
494 <a id='n442' href='#n442'>442</a>
495 <a id='n443' href='#n443'>443</a>
496 <a id='n444' href='#n444'>444</a>
497 <a id='n445' href='#n445'>445</a>
498 <a id='n446' href='#n446'>446</a>
499 </pre></td>
500 <td class='lines'><pre><code>From 89250c82a01062775f8f840737a757125138fbce Mon Sep 17 00:00:00 2001
501 From: Ray Strode &lt;rstrode&#64;redhat.com&gt;
502 Date: Fri, 10 Apr 2015 14:19:50 -0400
503 Subject: [PATCH] systemd-logind: don't second guess D-Bus default timeout
504
505 At the moment, the X server uses a non-default timeout for D-Bus
506 messages to systemd-logind. The only timeouts normally used with
507 D-Bus are:
508
509 1) Infinite
510 2) Default
511
512 Anything else is just as arbitrary as Default, and so rarely makes
513 sense to use instead of Default.
514
515 Put another way, there's little reason to be fault tolerant against
516 a local root running daemon (logind), that in some configurations, the
517 X server already depends on for proper functionality.
518
519 This commit changes systemd-logind to just use the default timeouts.
520
521 https://bugzilla.redhat.com/show_bug.cgi?id=1209347
522 <span class="hl kwb">---</span>
523 hw/xfree86/os-support/linux/systemd-logind.c | 14 ++++++--------
524 1 file changed, 6 insertions(+), 8 deletions(-)
525
526 diff --git a/hw/xfree86/os-support/linux/systemd-logind.c b/hw/xfree86/os-support/linux/systemd-logind.c
527 index 57c87c0..4ad41a3 100644
528 <span class="hl kwb">--- a/hw/xfree86/os-support/linux/systemd-logind.c</span>
529 <span class="hl kwa">+++ b/hw/xfree86/os-support/linux/systemd-logind.c</span>
530 <span class="hl kwd">&#64;&#64; -13,62 +13,60 &#64;&#64;</span>
531 * Software.
532 *
533 * THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
534 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
535 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
536 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
537 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
538 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
539 * DEALINGS IN THE SOFTWARE.
540 *
541 * Author: Hans de Goede &lt;hdegoede&#64;redhat.com&gt;
542 */
543
544 #ifdef HAVE_XORG_CONFIG_H
545 #include &lt;xorg-config.h&gt;
546 #endif
547
548 #include &lt;dbus/dbus.h&gt;
549 #include &lt;string.h&gt;
550 #include &lt;sys/types.h&gt;
551 #include &lt;unistd.h&gt;
552
553 #include &quot;os.h&quot;
554 #include &quot;dbus-core.h&quot;
555 #include &quot;xf86.h&quot;
556 #include &quot;xf86platformBus.h&quot;
557 #include &quot;xf86Xinput.h&quot;
558
559 #include &quot;systemd-logind.h&quot;
560
561 <span class="hl kwb">-#define DBUS_TIMEOUT 500 /* Wait max 0.5 seconds */</span>
562 <span class="hl kwb">-</span>
563 struct systemd_logind_info {
564 DBusConnection *conn;
565 char *session;
566 Bool active;
567 Bool vt_active;
568 };
569
570 static struct systemd_logind_info logind_info;
571
572 static InputInfoPtr
573 systemd_logind_find_info_ptr_by_devnum(InputInfoPtr start,
574 int major, int minor)
575 {
576 InputInfoPtr pInfo;
577
578 for (pInfo = start; pInfo; pInfo = pInfo-&gt;next)
579 if (pInfo-&gt;major == major &amp;&amp; pInfo-&gt;minor == minor &amp;&amp;
580 (pInfo-&gt;flags &amp; XI86_SERVER_FD))
581 return pInfo;
582
583 return NULL;
584 }
585
586 static void
587 systemd_logind_set_input_fd_for_all_devs(int major, int minor, int fd,
588 Bool enable)
589 {
590 InputInfoPtr pInfo;
591
592 pInfo = systemd_logind_find_info_ptr_by_devnum(xf86InputDevs, major, minor);
593 &#64;&#64; -103,61 +101,61 &#64;&#64; systemd_logind_take_fd(int _major, int _minor, const char *path,
594 if (strstr(path, &quot;mouse&quot;))
595 return -1;
596
597 /* Check if we already have an InputInfo entry with this major, minor
598 * (shared device-nodes happen ie with Wacom tablets). */
599 pInfo = systemd_logind_find_info_ptr_by_devnum(xf86InputDevs, major, minor);
600 if (pInfo) {
601 LogMessage(X_INFO, &quot;systemd-logind: returning pre-existing fd for %s %u:%u\n&quot;,
602 path, major, minor);
603 *paused_ret = FALSE;
604 return pInfo-&gt;fd;
605 }
606
607 dbus_error_init(&amp;error);
608
609 msg = dbus_message_new_method_call(&quot;org.freedesktop.login1&quot;, info-&gt;session,
610 &quot;org.freedesktop.login1.Session&quot;, &quot;TakeDevice&quot;);
611 if (!msg) {
612 LogMessage(X_ERROR, &quot;systemd-logind: out of memory\n&quot;);
613 goto cleanup;
614 }
615
616 if (!dbus_message_append_args(msg, DBUS_TYPE_UINT32, &amp;major,
617 DBUS_TYPE_UINT32, &amp;minor,
618 DBUS_TYPE_INVALID)) {
619 LogMessage(X_ERROR, &quot;systemd-logind: out of memory\n&quot;);
620 goto cleanup;
621 }
622
623 reply = dbus_connection_send_with_reply_and_block(info-&gt;conn, msg,
624 <span class="hl kwb">- DBUS_TIMEOUT, &amp;error);</span>
625 <span class="hl kwa">+ DBUS_TIMEOUT_USE_DEFAULT, &amp;error);</span>
626 if (!reply) {
627 LogMessage(X_ERROR, &quot;systemd-logind: failed to take device %s: %s\n&quot;,
628 path, error.message);
629 goto cleanup;
630 }
631
632 if (!dbus_message_get_args(reply, &amp;error,
633 DBUS_TYPE_UNIX_FD, &amp;fd,
634 DBUS_TYPE_BOOLEAN, &amp;paused,
635 DBUS_TYPE_INVALID)) {
636 LogMessage(X_ERROR, &quot;systemd-logind: TakeDevice %s: %s\n&quot;,
637 path, error.message);
638 goto cleanup;
639 }
640
641 *paused_ret = paused;
642
643 LogMessage(X_INFO, &quot;systemd-logind: got fd for %s %u:%u fd %d paused %d\n&quot;,
644 path, major, minor, fd, paused);
645
646 cleanup:
647 if (msg)
648 dbus_message_unref(msg);
649 if (reply)
650 dbus_message_unref(reply);
651 dbus_error_free(&amp;error);
652
653 return fd;
654 }
655
656 &#64;&#64; -180,61 +178,61 &#64;&#64; systemd_logind_release_fd(int _major, int _minor, int fd)
657 * and minor, otherwise other InputInfo's are still referencing the fd. */
658 pInfo = systemd_logind_find_info_ptr_by_devnum(xf86InputDevs, major, minor);
659 while (pInfo) {
660 matches++;
661 pInfo = systemd_logind_find_info_ptr_by_devnum(pInfo-&gt;next, major, minor);
662 }
663 if (matches &gt; 1) {
664 LogMessage(X_INFO, &quot;systemd-logind: not releasing fd for %u:%u, still in use\n&quot;, major, minor);
665 return;
666 }
667
668 LogMessage(X_INFO, &quot;systemd-logind: releasing fd for %u:%u\n&quot;, major, minor);
669
670 dbus_error_init(&amp;error);
671
672 msg = dbus_message_new_method_call(&quot;org.freedesktop.login1&quot;, info-&gt;session,
673 &quot;org.freedesktop.login1.Session&quot;, &quot;ReleaseDevice&quot;);
674 if (!msg) {
675 LogMessage(X_ERROR, &quot;systemd-logind: out of memory\n&quot;);
676 goto cleanup;
677 }
678
679 if (!dbus_message_append_args(msg, DBUS_TYPE_UINT32, &amp;major,
680 DBUS_TYPE_UINT32, &amp;minor,
681 DBUS_TYPE_INVALID)) {
682 LogMessage(X_ERROR, &quot;systemd-logind: out of memory\n&quot;);
683 goto cleanup;
684 }
685
686 reply = dbus_connection_send_with_reply_and_block(info-&gt;conn, msg,
687 <span class="hl kwb">- DBUS_TIMEOUT, &amp;error);</span>
688 <span class="hl kwa">+ DBUS_TIMEOUT_USE_DEFAULT, &amp;error);</span>
689 if (!reply)
690 LogMessage(X_ERROR, &quot;systemd-logind: failed to release device: %s\n&quot;,
691 error.message);
692
693 cleanup:
694 if (msg)
695 dbus_message_unref(msg);
696 if (reply)
697 dbus_message_unref(reply);
698 dbus_error_free(&amp;error);
699 close:
700 if (fd != -1)
701 close(fd);
702 }
703
704 int
705 systemd_logind_controls_session(void)
706 {
707 return logind_info.session ? 1 : 0;
708 }
709
710 void
711 systemd_logind_vtenter(void)
712 {
713 struct systemd_logind_info *info = &amp;logind_info;
714 InputInfoPtr pInfo;
715 int i;
716
717 if (!info-&gt;session)
718 return; /* Not using systemd-logind */
719 &#64;&#64; -262,61 +260,61 &#64;&#64; systemd_logind_vtenter(void)
720
721 /* Do delayed input probing, this must be done after the above enabling */
722 xf86InputEnableVTProbe();
723 }
724
725 static void
726 systemd_logind_ack_pause(struct systemd_logind_info *info,
727 dbus_int32_t minor, dbus_int32_t major)
728 {
729 DBusError error;
730 DBusMessage *msg = NULL;
731 DBusMessage *reply = NULL;
732
733 dbus_error_init(&amp;error);
734
735 msg = dbus_message_new_method_call(&quot;org.freedesktop.login1&quot;, info-&gt;session,
736 &quot;org.freedesktop.login1.Session&quot;, &quot;PauseDeviceComplete&quot;);
737 if (!msg) {
738 LogMessage(X_ERROR, &quot;systemd-logind: out of memory\n&quot;);
739 goto cleanup;
740 }
741
742 if (!dbus_message_append_args(msg, DBUS_TYPE_UINT32, &amp;major,
743 DBUS_TYPE_UINT32, &amp;minor,
744 DBUS_TYPE_INVALID)) {
745 LogMessage(X_ERROR, &quot;systemd-logind: out of memory\n&quot;);
746 goto cleanup;
747 }
748
749 reply = dbus_connection_send_with_reply_and_block(info-&gt;conn, msg,
750 <span class="hl kwb">- DBUS_TIMEOUT, &amp;error);</span>
751 <span class="hl kwa">+ DBUS_TIMEOUT_USE_DEFAULT, &amp;error);</span>
752 if (!reply)
753 LogMessage(X_ERROR, &quot;systemd-logind: failed to ack pause: %s\n&quot;,
754 error.message);
755
756 cleanup:
757 if (msg)
758 dbus_message_unref(msg);
759 if (reply)
760 dbus_message_unref(reply);
761 dbus_error_free(&amp;error);
762 }
763
764 static DBusHandlerResult
765 message_filter(DBusConnection * connection, DBusMessage * message, void *data)
766 {
767 struct systemd_logind_info *info = data;
768 struct xf86_platform_device *pdev = NULL;
769 InputInfoPtr pInfo = NULL;
770 int ack = 0, pause = 0, fd = -1;
771 DBusError error;
772 dbus_int32_t major, minor;
773 char *pause_str;
774
775 if (dbus_message_get_type (message) != DBUS_MESSAGE_TYPE_SIGNAL)
776 return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
777
778 dbus_error_init(&amp;error);
779
780 if (dbus_message_is_signal(message,
781 &quot;org.freedesktop.DBus&quot;, &quot;NameOwnerChanged&quot;)) {
782 &#64;&#64; -430,96 +428,96 &#64;&#64; message_filter(DBusConnection * connection, DBusMessage * message, void *data)
783 }
784
785 static void
786 connect_hook(DBusConnection *connection, void *data)
787 {
788 struct systemd_logind_info *info = data;
789 DBusError error;
790 DBusMessage *msg = NULL;
791 DBusMessage *reply = NULL;
792 dbus_int32_t arg;
793 char *session = NULL;
794
795 dbus_error_init(&amp;error);
796
797 msg = dbus_message_new_method_call(&quot;org.freedesktop.login1&quot;,
798 &quot;/org/freedesktop/login1&quot;, &quot;org.freedesktop.login1.Manager&quot;,
799 &quot;GetSessionByPID&quot;);
800 if (!msg) {
801 LogMessage(X_ERROR, &quot;systemd-logind: out of memory\n&quot;);
802 goto cleanup;
803 }
804
805 arg = getpid();
806 if (!dbus_message_append_args(msg, DBUS_TYPE_UINT32, &amp;arg,
807 DBUS_TYPE_INVALID)) {
808 LogMessage(X_ERROR, &quot;systemd-logind: out of memory\n&quot;);
809 goto cleanup;
810 }
811
812 reply = dbus_connection_send_with_reply_and_block(connection, msg,
813 <span class="hl kwb">- DBUS_TIMEOUT, &amp;error);</span>
814 <span class="hl kwa">+ DBUS_TIMEOUT_USE_DEFAULT, &amp;error);</span>
815 if (!reply) {
816 LogMessage(X_ERROR, &quot;systemd-logind: failed to get session: %s\n&quot;,
817 error.message);
818 goto cleanup;
819 }
820 dbus_message_unref(msg);
821
822 if (!dbus_message_get_args(reply, &amp;error, DBUS_TYPE_OBJECT_PATH, &amp;session,
823 DBUS_TYPE_INVALID)) {
824 LogMessage(X_ERROR, &quot;systemd-logind: GetSessionByPID: %s\n&quot;,
825 error.message);
826 goto cleanup;
827 }
828 session = XNFstrdup(session);
829
830 dbus_message_unref(reply);
831 reply = NULL;
832
833
834 msg = dbus_message_new_method_call(&quot;org.freedesktop.login1&quot;,
835 session, &quot;org.freedesktop.login1.Session&quot;, &quot;TakeControl&quot;);
836 if (!msg) {
837 LogMessage(X_ERROR, &quot;systemd-logind: out of memory\n&quot;);
838 goto cleanup;
839 }
840
841 arg = FALSE; /* Don't forcibly take over over the session */
842 if (!dbus_message_append_args(msg, DBUS_TYPE_BOOLEAN, &amp;arg,
843 DBUS_TYPE_INVALID)) {
844 LogMessage(X_ERROR, &quot;systemd-logind: out of memory\n&quot;);
845 goto cleanup;
846 }
847
848 reply = dbus_connection_send_with_reply_and_block(connection, msg,
849 <span class="hl kwb">- DBUS_TIMEOUT, &amp;error);</span>
850 <span class="hl kwa">+ DBUS_TIMEOUT_USE_DEFAULT, &amp;error);</span>
851 if (!reply) {
852 LogMessage(X_ERROR, &quot;systemd-logind: TakeControl failed: %s\n&quot;,
853 error.message);
854 goto cleanup;
855 }
856
857 dbus_bus_add_match(connection,
858 &quot;type='signal',sender='org.freedesktop.DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',path='/org/freedesktop/DBus'&quot;,
859 &amp;error);
860 if (dbus_error_is_set(&amp;error)) {
861 LogMessage(X_ERROR, &quot;systemd-logind: could not add match: %s\n&quot;,
862 error.message);
863 goto cleanup;
864 }
865
866 /*
867 * HdG: This is not useful with systemd &lt;= 208 since the signal only
868 * contains invalidated property names there, rather than property, val
869 * pairs as it should. Instead we just use the first resume / pause now.
870 */
871 #if 0
872 snprintf(match, sizeof(match),
873 &quot;type='signal',sender='org.freedesktop.login1',interface='org.freedesktop.DBus.Properties',member='PropertiesChanged',path='%s'&quot;,
874 session);
875 dbus_bus_add_match(connection, match, &amp;error);
876 if (dbus_error_is_set(&amp;error)) {
877 LogMessage(X_ERROR, &quot;systemd-logind: could not add match: %s\n&quot;,
878 error.message);
879 goto cleanup;
880 }
881 &#64;&#64; -537,61 +535,61 &#64;&#64; connect_hook(DBusConnection *connection, void *data)
882 info-&gt;session = session;
883 info-&gt;vt_active = info-&gt;active = TRUE; /* The server owns the vt during init */
884 session = NULL;
885
886 cleanup:
887 free(session);
888 if (msg)
889 dbus_message_unref(msg);
890 if (reply)
891 dbus_message_unref(reply);
892 dbus_error_free(&amp;error);
893 }
894
895 static void
896 systemd_logind_release_control(struct systemd_logind_info *info)
897 {
898 DBusError error;
899 DBusMessage *msg = NULL;
900 DBusMessage *reply = NULL;
901
902 dbus_error_init(&amp;error);
903
904 msg = dbus_message_new_method_call(&quot;org.freedesktop.login1&quot;,
905 info-&gt;session, &quot;org.freedesktop.login1.Session&quot;, &quot;ReleaseControl&quot;);
906 if (!msg) {
907 LogMessage(X_ERROR, &quot;systemd-logind: out of memory\n&quot;);
908 goto cleanup;
909 }
910
911 reply = dbus_connection_send_with_reply_and_block(info-&gt;conn, msg,
912 <span class="hl kwb">- DBUS_TIMEOUT, &amp;error);</span>
913 <span class="hl kwa">+ DBUS_TIMEOUT_USE_DEFAULT, &amp;error);</span>
914 if (!reply) {
915 LogMessage(X_ERROR, &quot;systemd-logind: ReleaseControl failed: %s\n&quot;,
916 error.message);
917 goto cleanup;
918 }
919
920 cleanup:
921 if (msg)
922 dbus_message_unref(msg);
923 if (reply)
924 dbus_message_unref(reply);
925 dbus_error_free(&amp;error);
926 }
927
928 static void
929 disconnect_hook(void *data)
930 {
931 struct systemd_logind_info *info = data;
932
933 free(info-&gt;session);
934 info-&gt;session = NULL;
935 info-&gt;conn = NULL;
936 }
937
938 static struct dbus_core_hook core_hook = {
939 .connect = connect_hook,
940 .disconnect = disconnect_hook,
941 .data = &amp;logind_info,
942 };
943
944 <span class="hl kwb">-- </span>
945 2.3.3
946 </code></pre></td></tr></table>
947 </div> <!-- class=content -->
948 <div class="foot" style="padding-left:1em;padding-right:1em;">
949 <p>Copyright &copy; 2002-2014 <a href="mailto:jvinet@zeroflux.org"
950 title="contact Judd Vinet">Judd Vinet</a> and <a href="mailto:aaron@archlinux.org"
951 title="contact Aaron Griffin">Aaron Griffin</a>. The Arch Linux name and logo
952 are recognized trademarks. Some rights reserved. The registered trademark
953 Linux&reg; is used pursuant to a sublicense from LMI, the exclusive licensee
954 of Linus Torvalds, owner of the mark on a world-wide basis.</p>
955 </div>
956 </div> <!-- id=cgit -->
957 </body>
958 </html>