-
Notifications
You must be signed in to change notification settings - Fork 20
Fix module symbols import issue #236
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
jagadeeshrb1
wants to merge
110
commits into
intel-gpu:master
Choose a base branch
from
jagadeeshrb1:temp_vfio_pci
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Signed-off-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Base Source: Repo:https://git.kernel.org/pub/scm/linux/kernel/git/backports/backports.git/ Tag: v6.1.110-1 Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Remove files which are not needed for Xe backports from folders Backport-include headers compat files defconfigs patches Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Add all the files which are required by Xe driver to be built into copy-list file Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Add defconfig required for OoT xe driver module. Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Include Xe Kconfigs to config infra. Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Add neccessary changes in Makefile.kernel file to build xe module. Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Add the GNU Auto tools framework to verify the availability and prototypes of APIs on the target kernel and enable/disable associated macros. * Add Auto tools framework folder and copy them to the destination using gentree tool * Add M4 function fox xe as well as include core kernel definitions. * Update Configure.ac file to include Xe m4 file. * Add Makefile.am file with basic targets to be used by GNU Tools and generate final Makefile * Create backport_auto.h header inside backport-include folder and include in all file. * Update Readme * Update gitignore * Change folder structure to have drivers in sub-folder src as per the autotool compatibility <Destination Folder> |-->Autotool Infra files |-->M4 |-->src(will have all copied data from dev kernel) |-->Makefile.am |-->configure.ac Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: S A Muqthyar Ahmed syed.abdul.muqthyar.ahmed@intel.com
Change backport environment variables to align with the development kernel or release tag used in versions file. BACKPORTS_VERSION --> BACKPORTS_RELEASE_TAG (Tag of backporting releases repo) BACKPORTED_KERNEL_VERSION --> BASE_KERNEL_HEAD(Head of development kernel) Add TARGET_KERNEL_NAME ( Kernel name against which backports are build) V1: Change module name compat to xe-compat. v2: drm/xe: Add debug prints in xe driver Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com> Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Add OOT_BACKPORT config to disable non supported features for xe oot module. Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
This backport is required in order to support a TTM LRU-walk feature. This cannot be avoided due to the structural changes(struct ttm_resource_cursor) inside ttm driver and initialization of variables using ttm_lru_bulk_* apis. Series: https://patchwork.freedesktop.org/series/135802/ v2: Add BACKPORT_MOD_VERSIONS to display information about oot module version. Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Creates debian package for xe modules Generates File: intel-xe-dkms_<version>.deb example: intel-xe-dkms_1.586.241121.0+i1-1_all.deb Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
dma_fence_array_create was converted to two different functions
dma_fence_array_alloc and dma_fence_array_init in KV6.12. use older API
for older versions.
Error:
--------------------------------------------------------------------------
error: implicit declaration of function _dma_fence_array_alloc
error: implicit declaration of function _dma_fence_array_init
--------------------------------------------------------------------------
Reference:
ddc94d0b17e8
dma-buf: Split out dma fence array create into alloc and arm functions
Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com>
Signed-off-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
strscpy has moved to dynamic size calculation and only 2 arguments are
present in KV6.9. use alternative for older kernels.
Error:
--------------------------------------------------------------------------
error: too few arguments to function _strscpy
--------------------------------------------------------------------------
Reference:
e6584c3964f2 string: Allow 2-argument strscpy()
Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com>
Signed-off-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
str_plural was introduced in KV 6.9.0 onwards hence
enable the backport to avoid below error
Error:
----------------------------------------------------------
implicit declaration of function str_plural
---------------------------------------------------------
Reference:
9ca5facd0400f lib/string_choices: Add str_plural() helper
Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com>
Signed-off-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
For below kv 6.9 onwards define pm_runtime_get_if_active api
with 2nd argument.
Reference:
c0ef3df8dbaef
PM: runtime: Simplify pm_runtime_get_if_active() usage
Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com>
Co-authored-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Signed-off-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Create a macro to verify dev_coredumpm_timeout and dev_coredump_put function
availability.
Use dev_coredumpm in place of dev_coredumpm_timeout below KV6.10 as an
alternative to avoid implicit declaration.
dev_coredump_put api uses devcd_class global variable which cannot
be backported. Disable the devcoredump functionality in backports
by adding dummy dev_coredump_put to avoid below error.
Error:
--------------------------------------------------------------------------
implicit declaration of function _dev_coredumpm_timeout
implicit declaration of function _dev_coredump_put_
--------------------------------------------------------------------------
Reference:
3b9c181bcde8 devcoredump: Add dev_coredumpm_timeout()
a28380f119a9 devcoredump: Add dev_coredump_put()
Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com>
Signed-off-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Introduced 3rd argument for drm_buddy_free_list() api from kv 6.11,
which causes below issue.
Error:
-------------------------------------------------------------------------------
too many arguments to function drm_buddy_free_list
-------------------------------------------------------------------------------
Backport drm_buddy_free_list with 2 arguments for 6.8 KV to resolve it.
Reference:
96950929eb23
drm/buddy: Implement tracking clear page feature
Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Add a wrapper to switch from drm_dbg_printer() to drm_debug_printer() if
drm_dbg_printer is not available in the base kernel.
Error:
-------------------------------------------------------------------------------
implicit declaration of function _drm_dbg_printer_
-------------------------------------------------------------------------------
Reference:
e7835e023f84
drm/xe: switch from drm_debug_printer() to device specific drm_dbg_printer()
Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Starting from KV 6.11, a new start parameter has been added as a second
argument in the drm_buddy_block_trim function to specify the exact
address from where to start trimming.
Use drm_buddy_block_trim() base kenrel api without second argument
for kv 6.8 to resolve below issue.
Error:
-------------------------------------------------------------------------------
too many arguments to function _drm_buddy_block_trim
-------------------------------------------------------------------------------
Reference:
d507ae0dc83b
drm/buddy: Add start address support to trim function
Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Intel-specific header files have been moved to drm/intel from
KV 6.11 onwards.
Adding autoconf functions to select to correct header path based on the
target kernel.
Error:
-------------------------------------------------------------------------------
drm/intel/i915_gsc_proxy_mei_interface.h: No such file or directory
drm/intel/i915_component.h: No such file or directory
drm/intel/i915_drm.h: No such file or directory
-------------------------------------------------------------------------------
v2: i915_drm.h file is present in include/uapi/drm and include/drm.
Header availability is always true for all kernel versions, so we
can avoid checking header availability in include/drm/intel.
Reference:
0706d57100fd
drm: move i915_gsc_proxy_mei_interface.h under include/drm/intel
1bb01bdab03f
drm: move i915_component.h under include/drm/intel
03c7918d0d52
drm: move i915_drm.h under include/drm/intel
Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Backport wordpart.h header file for below KV 6.9, to resolve below error.
Error:
-------------------------------------------------------------------------------
linux/wordpart.h: No such file or directory
-------------------------------------------------------------------------------
Reference:
adeb04362d74
kernel.h: Move upper_*_bits() and lower_*_bits() to wordpart.h
Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Disabling display related configs in xe/Kconfig file by default for xe only oot module. Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
str_up_down was moved under header file string_choices.h in
KV 6.12 onwards, manage unavailability using m4 function.
Error:
----------------------------------------------------------
implicit declaration of function str_up_down
---------------------------------------------------------
Reference:
a98ae7f045b2 lib/string_choices: Add str_up_down() helper
Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
From KV 6.13 onwards, xe_pciids.h file is renamed with pciids.h file.
Update copy-list with pciids.h file to resolve below error.
Error:
-------------------------------------------------------------------------------
drm/intel/pciids.h: No such file or directory
-------------------------------------------------------------------------------
Reference:
f719c2a2d1e7 drm/intel/pciids: rename i915_pciids.h to just pciids.h
Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
From KV 6.12 onwards, platform/x86/intel/vsec.h file is
moved to include/linux folder.
Update copy-list to resolve below error:
Error:
-------------------------------------------------------------------------------
linux/intel_vsec.h: No such file or directory
-------------------------------------------------------------------------------
Reference:
fc9aef4382c0 platform/x86/intel/vsec.h: Move to include/linux
Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
From KV 6.12 onwards, FMODE_UNSIGNED_OFFSET is moved under fop_flags.
manage FOP_UNSIGNED_OFFSET availability by using m4 function if it is
not present in base kernel.
Error:
-------------------------------------------------------------------------------
‘const struct file_operations’ has no member named ‘fop_flags’
-------------------------------------------------------------------------------
Reference:
641bb4394f405 fs: move FMODE_UNSIGNED_OFFSET to fop_flags
Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
After changing assign_str to one argument in KV6.10, backporting to
older version need to change parameters with in trace definition.
Go back to old handling.
Error:
--------------------------------------------------------------------------
error: macro "__assign_str" requires 2 arguments, but only 1 given
--------------------------------------------------------------------------
Reference:
2c92ca849fcc
tracing/treewide: Remove second parameter of __assign_str()
Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com>
Signed-off-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Fix current version control for assign_str function by implementing a parser script called before build and dynamically generate a macro in a new header based on prototype. Reviewed-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
drm_line_printer is introduced in KV 6.13.
Add a wrapper to switch from drm_line_printer() to drm_debug_printer()
if drm_line_printer is not available in the base kernel.
Error:
-------------------------------------------------------------------------------
implicit declaration of function drm_line_printer
-------------------------------------------------------------------------------
Reference:
754e707e20e4
drm/print: Introduce drm_line_printer
Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
DRM_GPUVA_OP_DRIVER enum member of enum drm_gpuva_op_type has been introduced from 6.15 kernel. Hence observing below error for 6.6 kernel. To fix this error, backported DRM_GPUVA_OP_DRIVER enum member for below 6.15 kernel. Error: ----------------------------------------------------------------------- error: ‘DRM_GPUVA_OP_DRIVER’ undeclared ----------------------------------------------------------------------- Reference: e53c1e263e5c drm/gpuvm: Add DRM_GPUVA_OP_DRIVER Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com> Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
hrtimer_setup() is introduced to replace hrtimer_init() from 6.13 kernel. Hence observing below error for 6.6 kernel. To fix this error, called hrtimer_init from hrtimer_setup() api. Error: ----------------------------------------------------------------------- error: implicit declaration of function ‘hrtimer_setup’ ----------------------------------------------------------------------- Reference: 908a1d775422 hrtimers: Introduce hrtimer_setup() to replace hrtimer_init() Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com> Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
For struct ctl_table, const keyword has been added from 6.13 kernel to
protect its members.
Hence observing below warning.
To resolve this warning, not using const keyword for struct ctl_table for
below 6.13 kernels.
Error:
-----------------------------------------------------------------------
warning: passing argument 2 of ‘register_sysctl_sz’ discards ‘const’
qualifier from pointer target type
-----------------------------------------------------------------------
Reference:
7abc9b53bd51 sysctl: allow registration of const struct ctl_table
Reviewed-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
register_shrinker() api is replaced with shrinker_alloc() and
shrinker_register() from 6.7 kernel.
Also unregister_shrinker() is replaced with shrinker_free().
Also member private_data has been added into struct shrink to store xe
driver shrink struct.
Hence observing below errors.
To fix these errors, used older apis for below 6.7 kernels.
Errors:
------------------------------------------------------------------------------
error: ‘struct shrinker’ has no member named ‘private_data’
error: implicit declaration of function 'shrinker_alloc'
error: implicit declaration of function 'shrinker_register'
error: implicit declaration of function 'shrinker_free'
------------------------------------------------------------------------------
Reference:
c42d50aefd17
mm: shrinker: add infrastructure for dynamically allocating shrinker
Reviewed-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
pm_suspend_in_progress() macro has been introduced from 6.16 kernel. Hence observing below error for 6.6 kernel. To fix this error, backported pm_suspend_in_progress() macro. Error: ----------------------------------------------------------------------- error: implicit declaration of function ‘pm_suspend_in_progress’ ----------------------------------------------------------------------- Reference: 34a364ff04e9 PM: sleep: Introduce pm_suspend_in_progress() Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com> Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
DEFINE_SHOW_STORE_ATTRIBUTE() macro has been introduced from 6.7 kernel. Hence observing below error for 6.6 kernel. To fix this error, backported DEFINE_SHOW_STORE_ATTRIBUTE() macro for below 6.6 kernels. Error: ------------------------------------------------------------------------------- error: type defaults to ‘int’ in declaration of ‘DEFINE_SHOW_STORE_ATTRIBUTE’ error: ‘force_reset_fops’ undeclared error: ‘force_reset_sync_fops’ undeclared warning: ‘force_reset_sync_show’ defined but not used warning: ‘force_reset_sync_write’ defined but not used warning: ‘force_reset_show’ defined but not used warning: ‘force_reset_write’ defined but not used ------------------------------------------------------------------------------- Reference: 9cba82bba500 seq_file: add helper macro to define attribute for rw file Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com> Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
drm_coredump_printer_is_full() api is introduced from 6.16 kernel. Hence observing below error for 6.6 kernel. To fix this error, backported drm_coredump_printer_is_full(0 api for below 6.16 kernel. Error: ----------------------------------------------------------------------- error: implicit declaration of function ‘drm_coredump_printer_is_full’ ----------------------------------------------------------------------- Reference: fa4b8b3e3a11 drm/print: Add drm_coredump_printer_is_full Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com> Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
cancel_work_sync() api has been renamed as disable_work_sync from 6.10 kernel.
Hence observing below error for 6.6 kernel.
To fix this error, replaced disable_work_sync() with cancel_work_sync()
for below 6.10 kernels.
Error:
-----------------------------------------------------------------------
error: implicit declaration of function ‘disable_work_sync’
-----------------------------------------------------------------------
Reference:
86898fa6b8cd
workqueue: Implement disable/enable for (delayed) work items
Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
access_remote_vm() is getting used in eudebug for VM access. But access_remote_vm() is not exported and hence observing below error. To fix this error, used access_process_vm() instead of access_remote_vm() by converting mm_struct into task_struct. Error: ----------------------------------------------------------------------- ERROR: modpost: "access_remote_vm" undefined! ----------------------------------------------------------------------- Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com> Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
PAGE_SIZE_4KB config dependancy has been added for XE driver to support only 4KB page size to avoid issues with higher page sizes. Since X86 bu defualt supports 4KB page size, it's safe to remove this config check. Reference: 022906afdf90 Mark xe driver as BROKEN if kernel page size is not 4kB Reviewed-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com> Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
MODULE_IMPORT_NS is added for INTEL_PMT to use pmt related apis from 6.17 kv.
MTD_SPEAR_SMI config stopped enabling by default during compile testing.
Hence default value for MTD_SPEAR_SMI config has been changed from
default y to default PLAT_SPEAR.
struct bin_attribute using read_new instead read function pointer.
Hence observing hunk failures for these patches.
To resolve hunk failures, added MODULE_IMPORT_NS for INTEL_PMT, used
default PLAT_SPEAR and read_new respectively.
Reference:
42dabe544288
platform/x86/intel/pmt/telemetry: Add API to retrieve telemetry regions
Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
co-authored-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
DEFINE_SYSFS_GROUP_VISIBLE macro has been introduced from 6.17 kernel. Hence when using this macro aginst 6.6 lts headers, observing below errors. To fix these errors, backported DEFINE_SYSFS_GROUP_VISIBLE macro. Errors: ----------------------------------------------------------------------------- error: type defaults to ‘int’ in declaration of ‘DEFINE_SYSFS_GROUP_VISIBLE’ error: implicit declaration of function ‘SYSFS_GROUP_VISIBLE’ error: ‘intel_pmt’ undeclared here ------------------------------------------------------------------------------ Reference: d9a078809356 platform/x86/intel/pmt: Add PMT Discovery driver Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com> Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com> co-authored-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
…ction releases Keeping the package version starting with 1. will lead to package update issues once production releases are done. To avoid set 0 prefix and in future we will change to prefix 1. This will enable smoother package updates. DKMS package version prefix value is set to 0 instead of 1. old: intel-xe-dkms_1.250909.17.1+i1-1_all.deb new: intel-xe-dkms_0.250909.17.1+i1-1_all.deb Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com> Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
Below KV6.12, lockdep_map feature did not get introduced, previously
we were falling back to using older API alloc_ordered_workqueue, which
was resulting in creating ~2000 unique classes in BFS. This leads to
BFS memory getting exhausted along with class keys.
This was resulting in below error.
Error:
-------------------------------------------------------------------------------
lockdep bfs error:-1
WARNING: CPU:1 PID:6630 at kernel/locking/lockdep.c:2071 print_bfs_bug+0x29/0x40
-------------------------------------------------------------------------------
In order to fix it, falling back to older implementation where keys are
distributed and only 256 keys are created at max in case of versions
without lockdep_map.
Reference:
9286a191abe2
drm/xe: Drop GuC submit_wq pool
Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
The dma_fence_array_alloc() and dma_fence_array_init() functions
were introduced in kernel v6.12 to split the fence array creation into
separate allocation and initialization phases. These functions causing
implicit declaration errors during backport compilation on older version.
Currently we were simply using dma_fence_array_create in place, but
due to this we are facing deadlock issue as below. To fix this we are
now backporting the API and using it instead of older API usage.
Error:
------------------------------------------------------------------------------
WARNING: possible circular locking dependency detected
xe_exec_balance/2791 is trying to acquire lock:
ffff88816b0d1800 (&vm->userptr.notifier_lock){++++}-{3:3},
at: vma_userptr_invalidate+0xec/0x340 [xe]
but task is already holding lock:
ffffffff834bd980 (mmu_notifier_invalidate_range_start){+.+.}-{0:0},
at: unmap_vmas+0x9a/0x1f0
------------------------------------------------------------------------------
Reference:
ddc94d0b17e8e
dma-buf: Split out dma fence array create into alloc and arm functions
Reviewed-by: S A Muqthyar Ahmed <syed.abdul.muqthyar.ahmed@intel.com>
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Passing xe_lrc_ring_size() as an argument to xe_sched_init call,
causes the hunk failure. So rebasing them.
Reference:
75cadb3f0e39
drm/xe: Move queue init before LRC creation
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
drmm_alloc_ordered_workqueue() api is introduced in kv 6.15.
Backport drmm_alloc_ordered_workqueue() api to resolve below
error for older kernels.
Error:
-------------------------------------------------------------------------------
error: implicit declaration of function ‘drmm_alloc_ordered_workqueue’
-------------------------------------------------------------------------------
Reference:
c367b772e6d8
drm/managed: Add DRM-managed alloc_ordered_workqueue
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Include linux/sizes.h in the backport types.h header to make size definitions like SZ_16K available to xe driver files without requiring explicit includes. Error: ------------------------------------------------------------------------------- error: ‘SZ_16K’ undeclared ------------------------------------------------------------------------------- Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Backport DRM_WEDGE_RECOVERY_VENDOR flag for 6.6 kernel compatibility.
Required by xe_survivability_mode for vendor-specific recovery handling.
Error:
-------------------------------------------------------------------------------
error: ‘DRM_WEDGE_RECOVERY_VENDOR’ undeclared (first use in this function)
-------------------------------------------------------------------------------
Reference:
9c857a9d84e0
drm: Add a vendor-specific recovery method to drm device wedged uevent
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
From KV 6.18 onwards, introduced new intel_lb_mei_interface.h header
file for late binding component driver.
Add intel_lb_mei_interface.h file in copy-list to resolve below error.
Error:
-------------------------------------------------------------------------------
error: drm/intel/intel_lb_mei_interface.h: No such file or directory
-------------------------------------------------------------------------------
Reference:
741eeabb7c78
mei: late_bind: add late binding component driver
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
From 6.18 onwards, new enum member is added in i915_component_type,
instead of backporting enum add complete header in copy-list.
Error:
-------------------------------------------------------------------------------
error: ‘INTEL_COMPONENT_LB’ undeclared
-------------------------------------------------------------------------------
Reference:
741eeabb7c78 mei: late_bind: add late binding component driver
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Added tile-oriented printk messages in xe printk files which
causes hunk failures, So rebasing them.
Reference:
48a8659cd570
drm/xe: Add dedicated printk macros for tile and device
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Backport mutex_types.h header file to resolve below error.
Error:
---------------------------------------------------------------------------
fatal error: linux/mutex_types.h: No such file or directory
---------------------------------------------------------------------------
Reference:
d84f31791517
locking/mutex: split out mutex_types.h
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
drm_print_hex_dump() api is introduced in kv 6.17.
Backport drm_print_hex_dump() api to resolve below
error for older kernels.
Error:
--------------------------------------------------------------------------
error: implicit declaration of function drm_print_hex_dump
--------------------------------------------------------------------------
Reference:
3050c1811387
drm/print: add drm_print_hex_dump()
Signed-off-by: Kanaka Raju Nayana <kanaka.raju.nayana@intel.com>
Updated below files to enable vfio driver. 1. copy-list 2. defconfigs 3. Makefile.kernel 4. Kconfig.sources Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
xe-vfio-pci driver needs symbols from xe gpu driver but it's not import them. Hence observing below errors. To fix these errors, imported xe-vfio-pci symbols. Errors: ----------------------------------------------------------------------------- ERROR: modpost: module xe-vfio-pci uses symbol xe_sriov_vfio_stop_copy_enter from namespace module:xe-vfio-pci, but does not import it. ERROR: modpost: module xe-vfio-pci uses symbol xe_sriov_vfio_stop_copy_exit from namespace module:xe-vfio-pci, but does not import it. ERROR: modpost: module xe-vfio-pci uses symbol xe_sriov_vfio_suspend_device from namespace module:xe-vfio-pci, but does not import it. ---------------------------------------------------------------------------- Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
Signed-off-by: Rachapalli Bandi Jagadeesh <jagadeesh.rachapalli.bandi@intel.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
xe-vfio-pci driver needs symbols from xe gpu driver but it's not import
them. Hence observing below errors.
To fix these errors, imported xe-vfio-pci symbols.
Errors:
ERROR: modpost: module xe-vfio-pci uses symbol xe_sriov_vfio_stop_copy_enter
from namespace module:xe-vfio-pci, but does not import it.
ERROR: modpost: module xe-vfio-pci uses symbol xe_sriov_vfio_stop_copy_exit
from namespace module:xe-vfio-pci, but does not import it.
ERROR: modpost: module xe-vfio-pci uses symbol xe_sriov_vfio_suspend_device
from namespace module:xe-vfio-pci, but does not import it.
Signed-off-by: Rachapalli Bandi Jagadeesh jagadeesh.rachapalli.bandi@intel.com