cee2351c55
Add config for vendor and device
2019-02-12 08:55:23 +00:00
8d4e9ac54e
Add gpuclockctl to allow privilaged control of GPU parameters
2019-02-12 08:55:23 +00:00
b1bf33d386
Add config parameters for GPU clocking
2019-02-12 08:55:23 +00:00
aeaef7377d
Preliminary (empty) implementation of GPU optimisations
2019-02-12 08:55:23 +00:00
cc646fe5d2
Fix bug in tests: mypath contained junk so wasn't always null terminated
2019-02-06 19:24:55 +00:00
66cc9e10f2
Fix up a few more logs not using our macros
2019-02-06 19:18:08 +00:00
3ae26596bc
Fix up logging in the tests to use our macros
2019-02-06 19:11:12 +00:00
6793d0d436
Prepend ERROR: to all error logs
2019-02-06 17:08:50 +00:00
ae016c4b5e
Actually log errors to stderr and LOG_ERR
...
Amazingly, this has been a mistake since c459c05
2019-02-06 17:08:37 +00:00
d90d1a71d6
Add -r -t to the usage text
2019-02-06 17:04:23 +00:00
f09ce2a96c
Add a required NULL to execl
...
And add a more descriptive error for issue #100
2019-02-05 21:30:14 +00:00
89263ba6fd
Silence cpugovctl when it succeeds
...
Remove a duplicate journal log that fills up the status
2019-02-03 16:56:53 +00:00
ba49055519
Set up inhibit_screensaver config option to disable the feature
2019-02-03 15:45:11 +00:00
5b55506050
Correct double invalid in error message, and actually skip out on the renice
2019-02-03 15:05:53 +00:00
b54a406b97
Don't log an error about a default initial renice value
2019-01-31 19:06:02 +00:00
e342b6e394
Remove SCHED_ISO from gamemode.c
...
As per request, no longer needed
2019-01-29 16:38:25 +00:00
82efafd54d
Define SCHED_ISO if not defined
2019-01-28 18:57:56 +00:00
a725ae21a0
Merge pull request #96 from mdiluz/disable-screensaver
...
Add code to disable the screensaver during Game Mode
2019-01-28 18:13:08 +00:00
b4ba947255
Fix up calling screensaver, now appears to work
2019-01-28 16:36:56 +00:00
42dd7e6ea8
Add initial screensaver inhibiting code
2019-01-28 16:36:56 +00:00
f0816230d7
Correct error message when the initial query fails
2019-01-28 16:36:08 +00:00
5e705f3225
Correct help message
2019-01-28 16:36:08 +00:00
0eece55433
Improve the test output
2019-01-28 16:36:08 +00:00
b97182141f
Properly handle quitting by request, and use that in the tests
2019-01-28 16:36:08 +00:00
c99e06ed9e
Small refactor
...
Single and dual client tests split into functions
2019-01-28 16:36:08 +00:00
0b4e86651e
Add a preliminary client test suite
...
This simply tests the current functionality of the gamemode_client tools by calling each function in turn and checking the values return correctly.
Requires the gamemode service to currently be running and installed on the system.
2019-01-28 16:36:08 +00:00
94cfa2de54
Add game_mode_run_tests function to trigger tests
2019-01-28 16:36:08 +00:00
951cf1f8b9
Add -t
option to run tests on self
...
Right now only prints
2019-01-28 16:36:08 +00:00
5396370e5d
refactor: Simplify the log hinter
...
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-09 00:33:46 +02:00
f4cd01f989
refactor: Break wine API functions out of the main daemon source
...
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-09 00:33:46 +02:00
403ce122f6
refactor: Break ioprio API functions out of the main daemon source
...
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-09 00:33:46 +02:00
edf9257de4
refactor: Break sched API functions out of the main daemon source
...
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-09 00:33:46 +02:00
b9c9a5f120
refactor: Avoid exposing various internal types
...
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-09 00:33:46 +02:00
92967b135b
refactor: Break env API functions out of the main daemon source
...
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-09 00:33:46 +02:00
748808be7e
refactor: Break proc API functions out of the main daemon source
...
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-09 00:33:46 +02:00
c4ff3d7250
refactor: Break helpers out of the main daemon source
...
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-08 20:53:04 +02:00
9bbcc03c50
Merge pull request #84 from kakra/improve-scheduler-logging
...
gamemode-scheduler: Improve logging
2018-10-08 17:30:06 +01:00
29f8f0883c
gamemode: Explain the concerning logs a little better
...
Testing showed that wine processes may provoke some concerning logs
multiple times. Let's explain this a little more so no questions from
worried users show up.
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 20:03:17 +02:00
fd4166279b
gamemode: Convert game_mode_context_has_client() to return the client
...
Returning a bool is not useful if we want to create some log information
from this. It now returns NULL or a client pointer which is compatible
with all of the current users.
When dereferencing the returned pointer, a read lock must be acquired
around using the returned result as the client may be deallocated from
heap otherwise.
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 20:03:17 +02:00
d023495a5d
gamemode: Add a tiny buffered snprintf helper
...
Be careful using this as it may introduce some non-obvious pitfalls.
This saves us from a heap allocation in some code locations.
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 20:03:17 +02:00
4fd93ee30a
gamemode: Map wine preloaders to original exe
...
This commit hooks game_mode_resolve_wine_preloader() into the function
to lookup the exe from a PID.
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 19:54:40 +02:00
ba80a6cc3d
gamemode: Add function to resolve the wine preloader executable
...
This commit adds a function to resolve a wine preloader binary into its
original windows binary.
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 19:54:40 +02:00
373fe5a8af
gamemode: Add a helper to compare string tails
...
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 19:54:40 +02:00
c2344f4387
gamemode: Add function to search environment of a PID
...
This function can look up arbitrary environment variables from a running
PID (given we have access permissions which should be usually true).
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 19:54:40 +02:00
47ea4514cd
gamemode: Add function to lookup user home directory
...
We first try to use `$HOME`, and only then fall back to passwd lookup.
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 19:54:40 +02:00
3a6d258eae
gamemode: Make game_mode_context_find_exe() thread-safe
...
Let's use our new safe_snprintf() helper. It's designed to make
thread-safe usage easy and will also be used by the next commits.
Reported-by: Alex Smith <alex@alex-smith.me.uk >
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 19:54:40 +02:00
81a52ddc4d
gamemode: Add a tiny safe snprintf helper
...
Give it a buffer, it returns an allocated string respecting the buffer
size.
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 19:54:23 +02:00
bd811c6646
gamemode: Add executable to initializer
...
This allows to initialize the GameModeClient later and cleans up the
error path.
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 19:45:31 +02:00
8214f93630
gamemode: Optimize detection of dupe registers
...
GameMode can do a pretty expensive lookup function now for the exe.
Let's spare some CPU cycles by detecting a duplicate PID early. Nothing
makes use of the exe path at this stage.
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 19:45:31 +02:00
2a0c6e7098
gamemode: Never add NULL to the client list
...
When running wine games, there's good chance the executable is already
gone when GameMode decided to add it to the list. Let's silently bail
out here. It probably grabs a non-matching PID anyway in this moment.
Signed-off-by: Kai Krakow <kai@kaishome.de >
2018-10-05 19:45:31 +02:00