1commit 89f064748554e11832a3ec783945e1f4c7fe846e 2Author: Alan Coopersmith <alan.coopersmith@oracle.com> 3Date: Fri Dec 13 18:00:57 2024 -0800 4 5 libxshmfence 1.3.3 6 7 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 8 9commit 3aaf46a2742d1698f3a4399b2bb2f855c0b904fe 10Author: Asahi Lina <lina@asahilina.net> 11Date: Tue Oct 22 22:28:19 2024 +0900 12 13 alloc: Allow disabling memfd usage at runtime with XSHMFENCE_NO_MEMFD=1 14 15 For thin VMs used for compatibility reasons, it is desirable to directly 16 proxy the X11 protocol between an application running in a VM and an X 17 server running on the host. We can proxy futex wakeups with some watcher 18 code, but we need the futex memory itself to be shared. This works when 19 /dev/shm is mounted with virtiofs with DAX, but cannot work for memfds. 20 21 Add a XSHMFENCE_NO_MEMFD environment variable that, when set, disables 22 the memfd codepath and falls back to /dev/shm. 23 24 Signed-off-by: Asahi Lina <lina@asahilina.net> 25 Part-of: <https://gitlab.freedesktop.org/xorg/lib/libxshmfence/-/merge_requests/9> 26 27commit 4fca45a71f08a5bebd12d39c85f49e0b0e4426bf 28Author: Thomas Devoogdt <thomas@devoogdt.com> 29Date: Fri Apr 5 10:45:15 2024 +0200 30 31 src/xshmfence_futex.h: fix build on 32-bit architectures using 64-bit time_t 32 33 Fix the following build failure on 32-bit architectures using 64-bit 34 time_t (e.g. riscv32): 35 36 xshmfence_futex.h: In function 'sys_futex': 37 xshmfence_futex.h:58:24: error: 'SYS_futex' undeclared (first use in this function); did you mean 'sys_futex'? 38 58 | return syscall(SYS_futex, addr1, op, val1, timeout, addr2, val3); 39 | ^~~~~~~~~ 40 | sys_futex 41 42 Similar to: 43 https://gitlab.freedesktop.org/mesa/mesa/-/commit/7d87478124061915582412ba410759afe863d679 44 45 Fixes: 46 https://gitlab.com/buildroot.org/buildroot/-/commit/e39ad96136a8c340b3aea6b036024e28f14584f3 47 48 Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com> 49 Part-of: <https://gitlab.freedesktop.org/xorg/lib/libxshmfence/-/merge_requests/8> 50 51commit 042a1cf3705a2c70f6e22eb5bd8541dd32652c9b 52Author: Alan Coopersmith <alan.coopersmith@oracle.com> 53Date: Sat Dec 2 12:26:28 2023 -0800 54 55 configure: replace deprecated AC_TRY_COMPILE with AC_COMPILE_IFELSE 56 57 Clears autoconf warnings: 58 configure.ac:127: warning: The macro 'AC_TRY_COMPILE' is obsolete. 59 configure.ac:127: You should run autoupdate. 60 ./lib/autoconf/general.m4:2845: AC_TRY_COMPILE is expanded from... 61 configure.ac:127: the top level 62 63 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 64 65commit 0c5b190725bf1818308979ac4480960b75987aa5 66Author: Alan Coopersmith <alan.coopersmith@oracle.com> 67Date: Wed Mar 8 14:50:24 2023 -0800 68 69 configure: replace deprecated AC_HELP_STRING with AS_HELP_STRING 70 71 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 72 73commit 9723b888ccc0efc1d38ae63bf12a0d134cf594ae 74Author: Alan Coopersmith <alan.coopersmith@oracle.com> 75Date: Sat Mar 4 10:44:45 2023 -0800 76 77 configure: Use LT_INIT from libtool 2 instead of deprecated AC_PROG_LIBTOOL 78 79 AC_PROG_LIBTOOL was replaced by LT_INIT in libtool 2 in 2008, 80 so it's time to rely on it. 81 82 Clears autoconf warnings: 83 84 configure.ac:13: warning: The macro `AC_PROG_LIBTOOL' is obsolete. 85 configure.ac:13: You should run autoupdate. 86 aclocal.m4:3465: AC_PROG_LIBTOOL is expanded from... 87 configure.ac:13: the top level 88 89 libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac, 90 libtoolize: and rerunning libtoolize and aclocal. 91 92 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 93 94commit edbb7d9e5f3912fe521f0cfe5ae416bb9ca83633 95Author: Matt Turner <mattst88@gmail.com> 96Date: Thu Dec 8 10:40:00 2022 -0500 97 98 libxshmfence 1.3.2 99 100 Signed-off-by: Matt Turner <mattst88@gmail.com> 101 102commit 7df37ab0c44ee9c24153c7a1eaf05a8a95e9ac80 103Author: Matt Turner <mattst88@gmail.com> 104Date: Tue Nov 29 12:08:54 2022 -0500 105 106 configure: Use AC_SYS_LARGEFILE to enable large file support 107 108 Signed-off-by: Matt Turner <mattst88@gmail.com> 109 110commit 43749ba6a7631f5060ef85c93942ec32dfd39bf8 111Author: Alan Coopersmith <alan.coopersmith@oracle.com> 112Date: Tue Oct 18 09:38:22 2022 -0700 113 114 libxshmfence 1.3.1 115 116 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 117 118commit bff067edd6c9ad231affd29283757fe6b431bc54 119Author: Alan Coopersmith <alan.coopersmith@oracle.com> 120Date: Sun Jul 17 18:05:30 2022 -0700 121 122 gitlab CI: add a basic build test 123 124 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 125 126commit 7aa043acaff88d5ee5a18e40796acf0da1d98a6c 127Author: Alan Coopersmith <alan.coopersmith@oracle.com> 128Date: Sun Jul 17 18:03:52 2022 -0700 129 130 Fix spelling/wording issues 131 132 Found by using: 133 codespell --builtin clear,rare,usage,informal,code,names 134 135 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 136 137commit 48446b1610f3d4e4236bd83143718042cd6460a8 138Author: Alan Coopersmith <alan.coopersmith@oracle.com> 139Date: Sun Jul 17 18:02:46 2022 -0700 140 141 Build xz tarballs instead of bzip2 142 143 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 144 145commit 946f99b9e4e80d98e5af96bf7f4b0b0107cf25de 146Author: Jan Beich <jbeich@FreeBSD.org> 147Date: Sat Aug 3 21:40:37 2019 +0000 148 149 alloc: prefer SHM_ANON on FreeBSD a la memfd_create 150 151 Signed-off-by: Jan Beich <jbeich@FreeBSD.org> 152 153commit 51d4b7eafef091bd77c59777537e762fe3e586a8 154Author: Jan Beich <jbeich@FreeBSD.org> 155Date: Fri Jul 7 13:57:56 2017 +0000 156 157 alloc: prefer atomic close-on-exec without O_TMPFILE as well 158 159 Signed-off-by: Jan Beich <jbeich@FreeBSD.org> 160 161commit 87a66f2eae8016a62d1b29e38160ed38de3144ef 162Author: Alan Coopersmith <alan.coopersmith@oracle.com> 163Date: Fri Dec 7 19:50:56 2018 -0800 164 165 Update configure.ac bug URL for gitlab migration 166 167 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 168 169commit 40f80ca096251353977d3d75e63e6efd5e2321dc 170Author: Alan Coopersmith <alan.coopersmith@oracle.com> 171Date: Mon Nov 19 23:08:58 2018 -0800 172 173 Update README for gitlab migration 174 175 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 176 177commit f38b2e73071ba516127f8f5ae47f48df58dc9d53 178Author: Matt Turner <mattst88@gmail.com> 179Date: Mon Feb 26 09:26:06 2018 -0800 180 181 libxshmfence 1.3 182 183 Signed-off-by: Matt Turner <mattst88@gmail.com> 184 185commit 30d946bc7b522ada9ec2fdbd502f9e36aae21bba 186Author: Michał Górny <mgorny@gentoo.org> 187Date: Thu Feb 22 19:23:38 2018 +0100 188 189 Fix missing <limits.h> include for HAVE_UMTX branch of futex 190 191 This fixes build on Gentoo/FreeBSD which failed due to undefined 192 'INT_MAX'. 193 194 Signed-off-by: Michał Górny <mgorny@gentoo.org> 195 Signed-off-by: Matt Turner <mattst88@gmail.com> 196 197commit 517f21745c43883c1fd7128eeba3e2ae963cb779 198Author: Adam Jackson <ajax@redhat.com> 199Date: Mon Jan 29 14:36:04 2018 -0500 200 201 Revert "configure: Nerf a thing" 202 203 Definitely didn't mean to push this. 204 205 This reverts commit 1f194603cb927352c42798bead29c8ac3a680d02. 206 207commit 0b550a4e7acf02d3478602848f6afbfcbfb0d4b2 208Author: Ross Burton <ross.burton@intel.com> 209Date: Mon Jan 29 16:24:36 2018 +0000 210 211 configure.ac: call AC_USE_SYSTEM_EXTENSIONS 212 213 With glibc 2.27 memfd_create() is inside a _GNU_SOURCE guard, so call 214 AC_USE_SYSTEM_EXTENSIONS to get this defined. 215 216 Signed-off-by: Ross Burton <ross.burton@intel.com> 217 218commit 1f194603cb927352c42798bead29c8ac3a680d02 219Author: Adam Jackson <ajax@redhat.com> 220Date: Thu Dec 14 14:31:17 2017 -0500 221 222 configure: Nerf a thing 223 224 Signed-off-by: Adam Jackson <ajax@redhat.com> 225 226commit db7966bee2ec46b835d0bb374f35ae631a0edbd1 227Author: Mihail Konev <k.mvc@ya.ru> 228Date: Thu Jan 26 13:52:49 2017 +1000 229 230 autogen: add default patch prefix 231 232 Signed-off-by: Mihail Konev <k.mvc@ya.ru> 233 234commit e242a02f650663f5d25915899126cd081f6c6083 235Author: Emil Velikov <emil.l.velikov@gmail.com> 236Date: Mon Mar 9 12:00:52 2015 +0000 237 238 autogen.sh: use quoted string variables 239 240 Place quotes around the $srcdir, $ORIGDIR and $0 variables to prevent 241 fall-outs, when they contain space. 242 243 Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> 244 Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> 245 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> 246 247commit f290f3946105e76999f4107100a619f00b065141 248Author: Peter Hutterer <peter.hutterer@who-t.net> 249Date: Tue Jan 24 10:32:07 2017 +1000 250 251 autogen.sh: use exec instead of waiting for configure to finish 252 253 Syncs the invocation of configure with the one from the server. 254 255 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> 256 Reviewed-by: Emil Velikov <emil.velikov@collabora.com> 257 258commit fe2d6dbba6356ff275649017dd516f0270d79595 259Author: Keith Packard <keithp@keithp.com> 260Date: Fri Jan 2 10:44:39 2015 -0800 261 262 Bump version to 1.2 263 264 Release with memfd support 265 266 Signed-off-by: Keith Packard <keithp@keithp.com> 267 268commit b63ea144a0439c54a3a147274afeeb115caced5a 269Author: Keith Packard <keithp@keithp.com> 270Date: Thu Oct 9 14:01:21 2014 +0200 271 272 Use linux 3.17 memfd_create syscall when available 273 274 Linux 3.17 introduces a new anonymous memory allocation that returns a 275 file descriptor which we can pass around. Use this in preference to 276 creating a file in the filesystem where available. 277 278 Signed-off-by: Keith Packard <keithp@keithp.com> 279 280commit 9c4f070e1304a3503cfab08f68573443025fc4c9 281Author: Keith Packard <keithp@keithp.com> 282Date: Tue Jun 17 13:45:24 2014 -0700 283 284 Use /dev/shm as an optional shared memory directory 285 286 This is the path coded into glibc, so it should exist and be useful on 287 any glibc-based system 288 289 Signed-off-by: Keith Packard <keithp@keithp.com> 290 291commit d3efccb33fa599d48004b22f2e07a19da4aaf789 292Author: Jung-uk Kim <jkim@FreeBSD.org> 293Date: Mon Dec 9 18:35:45 2013 -0500 294 295 Add support for FreeBSD using umtx (v3). 296 297 This fixes a sign-extension bug in the previous versions. 298 299 Signed-off-by: Jung-uk Kim <jkim@FreeBSD.org> 300 Signed-off-by: Keith Packard <keithp@keithp.com> 301 302commit 2b3415a32d44b9b51bf57877bb61d982667c10f0 303Author: Alan Coopersmith <alan.coopersmith@oracle.com> 304Date: Sat May 31 21:39:32 2014 -0700 305 306 autogen.sh: Honor NOCONFIGURE=1 307 308 See http://people.gnome.org/~walters/docs/build-api.txt 309 310 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 311 312commit 9089c55ac4433bc79b6f3951c71dda9691ab5c29 313Author: Alan Coopersmith <alan.coopersmith@oracle.com> 314Date: Sat May 31 21:38:41 2014 -0700 315 316 configure: Drop AM_MAINTAINER_MODE 317 318 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> 319 320commit ca4ef282b55f3f05acc29a7c76b624f130cc74de 321Author: Julien Cristau <jcristau@debian.org> 322Date: Tue Dec 3 20:14:38 2013 +0100 323 324 Check return value from ftruncate 325 326 Silences compiler warning: 327 328 xshmfence_alloc.c: In function 'xshmfence_alloc_shm': 329 xshmfence_alloc.c:54:11: warning: ignoring return value of 'ftruncate', declared with attribute warn_unused_result [-Wunused-result] 330 ftruncate(fd, sizeof (struct xshmfence)); 331 ^ 332 333 Signed-off-by: Julien Cristau <jcristau@debian.org> 334 Reviewed-by: Keith Packard <keithp@keithp.com> 335 336commit e8dd66fee206f93e1bee059bdadde064901ed745 337Author: Keith Packard <keithp@keithp.com> 338Date: Tue Nov 26 21:55:20 2013 -0800 339 340 Update to version 1.1 341 342 Signed-off-by: Keith Packard <keithp@keithp.com> 343 344commit 4b7c89d0dcaf48140c190dfe6a4560960229ab44 345Author: Keith Packard <keithp@keithp.com> 346Date: Mon Nov 25 13:36:54 2013 -0800 347 348 Describe the library better in the README file 349 350 Signed-off-by: Keith Packard <keithp@keithp.com> 351 352commit c43c79c34d26277609fa02aedc1b862f4a280808 353Author: Keith Packard <keithp@keithp.com> 354Date: Wed Nov 20 14:21:35 2013 -0800 355 356 Ignore test build files and release announcements 357 358 Signed-off-by: Keith Packard <keithp@keithp.com> 359 360commit d4938bf5e57375b70c73831402fc8637996aad31 361Author: Keith Packard <keithp@keithp.com> 362Date: Wed Nov 20 11:23:56 2013 -0800 363 364 Set symbol visibility attribute to hide internal symbols 365 366 Expose only the official API. 367 368 Signed-off-by: Keith Packard <keithp@keithp.com> 369 Reviewed-by: Adam Jackson <ajax@redhat.com> 370 371commit e390e3aaee3dace2a1e6cfe66efd884fc256b0f0 372Author: Keith Packard <keithp@keithp.com> 373Date: Wed Nov 20 11:22:04 2013 -0800 374 375 Provide pthread-based alternative implementation 376 377 This uses pthread mutexes and condition variables instead of futexes. 378 379 Signed-off-by: Keith Packard <keithp@keithp.com> 380 Reviewed-by: Adam Jackson <ajax@redhat.com> 381 382commit daa78ee9a5f9b5590d540aa06466d6728fb2c795 383Author: Keith Packard <keithp@keithp.com> 384Date: Wed Nov 20 11:19:50 2013 -0800 385 386 Split out futex implementation from general API 387 388 This splits the futex-specific code out into a separate file so that 389 future versions of the library could use some other underlying primitive. 390 391 Signed-off-by: Keith Packard <keithp@keithp.com> 392 Reviewed-by: Adam Jackson <ajax@redhat.com> 393 394commit e15fa576597fb09330e603d17a51d7449a392e7c 395Author: Keith Packard <keithp@keithp.com> 396Date: Wed Nov 20 09:13:48 2013 -0800 397 398 Add test program 399 400 Signed-off-by: Keith Packard <keithp@keithp.com> 401 Reviewed-by: Adam Jackson <ajax@redhat.com> 402 403commit bdbb26378da91e541f2fe2b3e827d9f6ed11f4a8 404Author: Keith Packard <keithp@keithp.com> 405Date: Wed Nov 20 09:12:36 2013 -0800 406 407 Use O_TMPFILE if available 408 409 Signed-off-by: Keith Packard <keithp@keithp.com> 410 Reviewed-by: Adam Jackson <ajax@redhat.com> 411 412commit c17583d05872e4d9fb39af1a9963dc3738556b27 413Author: Keith Packard <keithp@keithp.com> 414Date: Wed Nov 20 08:30:44 2013 -0800 415 416 Locate directory for shared memory files at configure time 417 418 Signed-off-by: Keith Packard <keithp@keithp.com> 419 Reviewed-by: Adam Jackson <ajax@redhat.com> 420 421commit b394d499eeb6abb0f23a629f22f6634f137d279e 422Author: Keith Packard <keithp@keithp.com> 423Date: Wed Nov 20 08:25:44 2013 -0800 424 425 Change fence memory type from 'int32_t' to 'struct shmfence' 426 427 This will allow other implementations to use alternate 428 representations, as well as providing additional typechecking. 429 430 Signed-off-by: Keith Packard <keithp@keithp.com> 431 Reviewed-by: Adam Jackson <ajax@redhat.com> 432 433commit d6fe39b4c3ec6ca75fb935b88a14916c730a6c26 434Author: Gaetan Nadon <memsize@videotron.ca> 435Date: Tue Nov 5 21:49:48 2013 -0500 436 437 lint: remove usage of libxshmfence_la_SOURCES 438 439 This variable is always empty. 440 441 Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 442 443commit 3b70b526f1dd4ccf35a63fc7d385d4d7098b8f6a 444Author: Gaetan Nadon <memsize@videotron.ca> 445Date: Tue Nov 5 21:36:18 2013 -0500 446 447 make: list non installed headers under the _SOURCES variable 448 449 Recommended by Automake: 450 http://www.gnu.org/software/automake/manual/automake.html#Headers 451 452 Also, this header is missing in the lint target $(libxshmfence_la_SOURCES) 453 454 As a bonus, all other libraries are following this advice. 455 456 Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 457 458commit f3fbd8e5026c0bb8b4d7f48875550bd3711e3c6e 459Author: Gaetan Nadon <memsize@videotron.ca> 460Date: Tue Nov 5 21:31:42 2013 -0500 461 462 make: add $(CWARNFLAGS) 463 464 It's required for all X libraries 465 466 Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 467 468commit b77bedb25d8eea02cc8114daf105dfed096ca024 469Author: Gaetan Nadon <memsize@videotron.ca> 470Date: Tue Nov 5 09:20:46 2013 -0500 471 472 Add the required README file 473 474 Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 475 476commit 67517e51374688c899e295d4d37371bda85bedbc 477Author: Gaetan Nadon <memsize@videotron.ca> 478Date: Tue Nov 5 09:18:53 2013 -0500 479 480 Add mandatory COPYING file. 481 482 Signed-off-by: Gaetan Nadon <memsize@videotron.ca> 483 484commit d2272731010bd352219eb4ac738224bb5b69a6f9 485Author: Aaron Plattner <aplattner@nvidia.com> 486Date: Fri Nov 1 14:44:54 2013 -0700 487 488 Copy autotools boilerplate from http://www.x.org/wiki/NewModuleGuidelines/ 489 490 I verified that this works with autoconf both 2.60 and 2.69. 491 492 Signed-off-by: Aaron Plattner <aplattner@nvidia.com> 493 Reviewed-by: Gaetan Nadon <memsize@videotron.ca> 494 495commit 7f32d04bd4f583b0d4871450560bd2e9bafc3d79 496Author: Aaron Plattner <aplattner@nvidia.com> 497Date: Fri Nov 1 14:12:55 2013 -0700 498 499 Copy the standard .gitignore from other lib packages 500 501 Signed-off-by: Aaron Plattner <aplattner@nvidia.com> 502 Reviewed-by: Gaetan Nadon <memsize@videotron.ca> 503 504commit 8c83034247886168218eaa4d378cc8bf0c65a9cd 505Author: Keith Packard <keithp@keithp.com> 506Date: Thu Oct 31 16:36:54 2013 -0700 507 508 Update to verion 1.0 509 510 Signed-off-by: Keith Packard <keithp@keithp.com> 511 512commit 534cfada3291b56fd13546615f12654cde1a502f 513Author: Keith Packard <keithp@keithp.com> 514Date: Mon Apr 29 13:21:56 2013 -0700 515 516 Import first version of the library 517 518 Signed-off-by: Keith Packard <keithp@keithp.com> 519