Commit Graph

22095 Commits

Author SHA1 Message Date
Alan Coopersmith
bf24ecb95b glamor: silence false positive in glamor_validate_gc()
We know that if gc->tileIsPixel is false, then gc->tile.pixmap must be
a valid pixmap, but gcc's static analyzer doesn't and needs to be told.

Silences false positive reported in https://gitlab.freedesktop.org/xorg/xserver/-/issues/1817:

xwayland-24.1.6/redhat-linux-build/../glamor/glamor_core.c:205:19:
 warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’

Signed-off-by: default avatarAlan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2094>
2025-11-27 12:03:27 +01:00
Alan Coopersmith
d228cfd194 glamor: handle allocation failure in glamor_create_pixmap()
Reported by gcc 15.1:

../glamor/glamor.c: In function ‘glamor_create_pixmap’:
../glamor/glamor.c:233:23: warning: potential null pointer dereference
 [-Wnull-dereference]
  233 |     pixmap_priv->type = GLAMOR_TEXTURE_ONLY;
      |     ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
../glamor/glamor.c:228:26: warning: potential null pointer dereference
 [-Wnull-dereference]
  228 |     pixmap_priv->is_cbcr = (GLAMOR_CREATE_FORMAT_CBCR & usage) == GLAMOR_CREATE_FORMAT_CBCR;

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2094>
2025-11-27 12:03:27 +01:00
Alan Coopersmith
794c8e04a1 glamor: handle potential NULL return from GetPictureScreenIfSet()
Unlike GetPictureScreen(), GetPictureScreenIfSet() checks if the
private key is registered, and returns NULL if it is not.

Reported in https://gitlab.freedesktop.org/xorg/xserver/-/issues/1817:
xwayland-24.1.6/redhat-linux-build/../glamor/glamor.c:926:5:
 warning[-Wanalyzer-null-dereference]: dereference of NULL ‘ps’

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2094>
2025-11-27 12:03:27 +01:00
Enrico Weigelt, metux IT consult
fda3695872 os: move MILLI_PER_MIN and MILLI_PER_SECOND to osdep.h
Not needed in public SDK, so move them into a private header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 11:58:45 +01:00
Enrico Weigelt, metux IT consult
080a4d5afd render: drop obsolete pict_t_* defines
There just had been for backwards compat with older driver sources
that hadn't been kept up to date yet. Not needed anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 11:58:33 +01:00
Enrico Weigelt, metux IT consult
39cf14d0e9 render: drop PictureScreenPrivateKey and PictureWindowPrivateKey defines
Not used by any external drivers, so we can drop them and directly use
the corresponding fields.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 11:58:09 +01:00
stefan11111
3550e1e873 xfree86/{loader,common}: Search all module directory prefixes in LoaderListDir
Fixes: 01c0b7fd38

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2025-11-27 11:57:25 +01:00
Enrico Weigelt, metux IT consult
07d6ca4254 os: move ComputeLocalClient() prototype to auth.h
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 10:45:36 +01:00
Enrico Weigelt, metux IT consult
ce75ddb0bb os: move OsVendorFatalError() and OsVendorInit() to ddx_priv.h
These are implemented by DDX, thus should be declared in ddx_priv.h

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 10:44:58 +01:00
Enrico Weigelt, metux IT consult
5532917d76 os: move AllowByteSwappedClients setting into DIX
Adding new source and header that's going to host all DIX
settings (set via cmdline or xf86 config file) in the future.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 10:44:23 +01:00
Enrico Weigelt, metux IT consult
5501c60f1b include: drop unused dix-config-apple-verbatim.h
Not included anywhere, so no need to keep it around anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 10:43:24 +01:00
Herman Semenov
50037a450d Xext: remove excess dobule-check pointer (IsSystemCounter already have) 2025-11-26 16:47:14 +01:00
Herman Semenov
4689dfb21f mi: fix missing braces for expected logical condition 'if-else if'
Without missing braces, logical behavior 'if-else if' block works as two 'if' independent blocks.
2025-11-26 16:45:55 +01:00
stefan11111
5460be02c9 modesetting: read DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP when parsing async flip capabilities
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2025-11-26 10:53:36 +01:00
stefan11111
7b301ee278 modesetting: small formating changes and extra NULL checks
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2025-11-26 10:51:48 +01:00
Enrico Weigelt, metux IT consult
8039c2cbf1 dix: unexport SwapLongs()
Not used by any external drivers, so no need to keep it in public SDK.
Since it's used by internal modules, still needs to be _X_EXPORT'ed.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-25 18:26:02 +01:00
Tautvis
e00b4b55c8 os: utils.c ignore '-reset' and '-noreset' command line arguments
Certain display managers (for example SDDM) starts X server with
-noreset flag and it is not user configurable. This patch add code to
ignore -noreset and -reset command line arguments to prevent X server
crash due to unknown arguments.

Signed-off-by: Tautvis <gtautvis@gmail.com>
2025-11-22 13:25:52 +01:00
Oleh Nykyforchyn
77830f2284 modesetting: make DevPrivateKeyRec struct static
dixRegisterPrivateKey() assumes that DevPrivateKeyRec struct passed
to it is zero-filled before the first use, otherwise assert() fails.
Therefore these structs are usually static, which assures that they
are initialized to 0. A newly introduced key in the modesetting driver
was not static, and the driver crashed. This should be corrected.

Signed-off-by: Oleh Nykyforchyn <oleh.nyk@gmail.com>
2025-11-22 13:24:44 +01:00
Enrico Weigelt, metux IT consult
4aa6d3e4fd xfree86: loader: fix NULL warning on LogMessage() call
> ../hw/xfree86/loader/loadmod.c: In function ‘LoaderSetPath’:
> ../hw/xfree86/loader/loadmod.c:230:67: warning: ‘%s’ directive argument is null [-Wformat-overflow=]
>   230 |         LogMessage(X_ERROR, "Failed to store module search path \"%s\" for module %s\n", path, driver);
>       |                                                                   ^~

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-21 15:20:27 +01:00
Mike Gelfand
0aea4cf3a7 xkb: move include guards up to wrap the whole file
See: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
Signed-off-by: Mike Gelfand <mikedld@mikedld.com>
2025-11-21 15:20:11 +01:00
Mike Gelfand
fcf7fb1f42 xfixes: move include guards up to wrap the whole file
See: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
Signed-off-by: Mike Gelfand <mikedld@mikedld.com>
2025-11-21 15:20:11 +01:00
Mike Gelfand
64e4ded9fb test: move include guards up to wrap the whole file
See: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
Signed-off-by: Mike Gelfand <mikedld@mikedld.com>
2025-11-21 15:20:11 +01:00
Mike Gelfand
4b0c603f3d miext: move include guards up to wrap the whole file
See: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
Signed-off-by: Mike Gelfand <mikedld@mikedld.com>
2025-11-21 15:20:11 +01:00
Mike Gelfand
770c21c947 mi: move include guards up to wrap the whole file
See: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
Signed-off-by: Mike Gelfand <mikedld@mikedld.com>
2025-11-21 15:20:11 +01:00
Mike Gelfand
e47ef3c2bf include: move include guards up to wrap the whole file
See: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
Signed-off-by: Mike Gelfand <mikedld@mikedld.com>
2025-11-21 15:20:11 +01:00
Mike Gelfand
84a2fc014d hw: move include guards up to wrap the whole file
See: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
Signed-off-by: Mike Gelfand <mikedld@mikedld.com>
2025-11-21 15:20:11 +01:00
Mike Gelfand
683573df26 glamor: move include guards up to wrap the whole file
See: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
Signed-off-by: Mike Gelfand <mikedld@mikedld.com>
2025-11-21 15:20:11 +01:00
Mike Gelfand
f40bfb5ca9 dix: move include guards up to wrap the whole file
See: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
Signed-off-by: Mike Gelfand <mikedld@mikedld.com>
2025-11-21 15:20:11 +01:00
Mike Gelfand
c662acf4cc composite: move include guards up to wrap the whole file
See: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
Signed-off-by: Mike Gelfand <mikedld@mikedld.com>
2025-11-21 15:20:11 +01:00
Mike Gelfand
d7e0b9e5c2 xext: move include guards up to wrap the whole file
See: https://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
Signed-off-by: Mike Gelfand <mikedld@mikedld.com>
2025-11-21 15:20:11 +01:00
alex14fr
d655cc145d Add module ABI tag to fix "Xorg -configure" ("No output driver" message).
The driver directory name now includes a version tag, and the configure code has to search in the right directory.

Signed-off-by: alex14fr <alex14fr@gmail.com>
2025-11-21 14:49:11 +01:00
stefan11111
7293fc12fe modesetting: map gbm bo's if possible
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2025-11-21 10:17:51 +01:00
Oleh Nykyforchyn
9db422c1ca xfree86: add MatchLayout entry to OutputClass
It is patch 2/2 of a series that provides a convenient way to specify
module search paths on a per-driver basis.

This entry proved to be useful in InputClass, so added it to OutputClass
as well. This allows to configure graphic drivers separately depending
on server layout names.

Signed-off-by: Oleh Nykyforchyn <oleh.nyk@gmail.com>
2025-11-20 19:29:51 +01:00
Oleh Nykyforchyn
9f25f5d3f1 xfree86: make search paths configurable for certain modules
It is patch 1/2 of a series that provides a convenient way to specify
module search paths on a per-driver basis.

This patch allows to set ModulePath for certain modules, in particular,
GPU drivers.

Signed-off-by: Oleh Nykyforchyn <oleh.nyk@gmail.com>
2025-11-20 19:29:51 +01:00
Enrico Weigelt, metux IT consult
d66dea68af dix: dixfonts: drop unused GetFontPath()
Not used anywhere, neither in Xserver nor in drivers, so no need
to keep it around any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:26:32 +01:00
Enrico Weigelt, metux IT consult
0bfa59e601 Xext: sleepuntil: drop obsolete support for internal server reset
Not used anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:26:00 +01:00
callmetango
2b21b98ad1 NEWS: updated to version 25.0.0.16
Updated the NEWS with the shortlogs of version 25.0.0.10 up to
25.0.0.16.

Signed-off-by: callmetango <callmetango@users.noreply.github.com>
2025-11-20 19:25:50 +01:00
Enrico Weigelt, metux IT consult
95499a9525 dix: unexport enableIndirectGLX
Still needs to be _X_EXPORT'ed for internal modules, but
not supposed to be visible to external drivers.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:25:41 +01:00
callmetango
9d89346c27 README.md: add configuration-less Nvidia driver support
Starting with version 25.0.0.16, the proprietary Nvidia driver is
autodetected and handled internally without any special configuration.

Part-of: X11Libre/misc#431
Signed-off-by: callmetango <callmetango@users.noreply.github.com>
2025-11-20 19:24:04 +01:00
Enrico Weigelt, metux IT consult
864b9f154c pseudoramiX: drop obsolete support for internal server reset
Not used anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:23:39 +01:00
Enrico Weigelt, metux IT consult
5c592210e7 glamor: drop special internal server reset support
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:23:32 +01:00
Enrico Weigelt, metux IT consult
44620ed67c glx: drop internal server reset support
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:23:19 +01:00
Enrico Weigelt, metux IT consult
845642e23e include: move PropertyPtr from property.h to window.h
The property.h file is deprecated and going to be removed, so move
over the typedef to window.h -- also drivers needing it already including
window.h one way or another.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:23:05 +01:00
Enrico Weigelt, metux IT consult
f0347e249c Xext: panoramiX: drop server reset support
Not needed anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:22:55 +01:00
Enrico Weigelt, metux IT consult
0b3aaa0369 os: drop ResetWellKnownSockets() and XdmcpReset()
Since internal server reset is gone, those aren't needed anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:22:44 +01:00
Enrico Weigelt, metux IT consult
6a1bdcedd3 dix: unexport DeleteProperty()
Not used by any external driver, so no need to keep it public.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:22:35 +01:00
Enrico Weigelt, metux IT consult
40acb2d83e dix: unexport PrintPassiveGrabs() and PrintWindowTree()
These are only for internal debug output, not needed for drivers.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:22:18 +01:00
Enrico Weigelt, metux IT consult
8059c260c2 dix: unexport XIUnregisterPropertyHandler() and XIDeleteAllDeviceProperties()
Not used by any external drivers, so no need to keep the exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:21:37 +01:00
Enrico Weigelt, metux IT consult
93dd3049e9 include: dixfont.h: drop unused NullDIXFontProp and DIXFontPropPtr
Not used anywhere, so no need to keep them around any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:21:03 +01:00
Enrico Weigelt, metux IT consult
f24822c2b5 rootless: drop obsolete support for internal server reset
Not used anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 19:20:51 +01:00