Due to an influx of spam, we have had to impose restrictions on new accounts. Please see this wiki page for instructions on how to get full permissions. Sorry for the inconvenience.
Admin message
The migration is almost done, at least the rest should happen in the background. There are still a few technical difference between the old cluster and the new ones, and they are summarized in this issue. Please pay attention to the TL:DR at the end of the comment.
"Module parameters that can be adjusted at runtime are used for historic reasons, and we need to come up with a better uapi for them. We should talk with @airlied to determine whether to move them to atomic properties, debugfs or configfs (sysfs?)."
So, I'm not sure we want to keep using module params or part ways with it and just initialize the values to please the display side in some other ways. I think @mattrope was investigating the use of configfs for that, so adding him here. Also @mlankhorst FYI if you have already a plan for that.
atomic properties is a bad idea, users uses it to disable certain features that are causing issues(fbc, psr, mst...).
debugfs would only disable features after driver load, what could be too late for some features.
But I agree that current solution don't scale for multiple GPUs, maybe a combination of module parameters + debugfs per device?
@zehortigoza , I was looking at configfs as a possibility for the developer/debug-specific knobs since that will let us adjust settings on a per-device (rather than per-driver) basis, before the device is probed. The general flow is a bit more complicated than just setting a module parameter, but if we're only using this for the kernel-tainting items intended specifically for kernel devs, the extra complexity is probably okay (and maybe even beneficial if it discourages end users from just copy/pasting dangerous settings they don't really understand):
@zehortigoza, I think guidance like those wiki pages are providing is part of what we're trying to block. If disabling those features is truly correct/beneficial, then it's a driver bug that that it isn't happening automatically and we need to fix that asap. It's never correct for end users to be touching those knobs just to get their system to work properly.
If a user has an issue that is fixed by one of these parameters, what should they do without it?
Wait for us to fix it, then wait for the fix to land in their Linux kernel version so they can use their device with GPU acceleration again?
They could roll back to an older kernel version, but what if that doesn't fix it for their new hardware?
I agree that we have too many i915 parameters, but some are necessary to work around issues.
commit 8015bee0bfec6920f2441e5adc77e6ac2b65be8bAuthor: Jouni Högander <jouni.hogander@intel.com>Date: Tue Oct 24 15:40:47 2023 +0300 drm/i915/display: Add framework to add parameters specific to display Currently all module parameters are handled by i915_param.c/h. This is a problem for display parameters when Xe driver is used. Add a mechanism to add parameters specific to the display. This is mainly copied from i915_[debugfs]_params.[ch]. Parameters are not yet moved. This is done by subsequent patches.