mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-22 09:11:26 +03:00
misc: nvsciipc: Fix build for Linux v6.12
In Linux v6.12, commit 88a2f6468d01 ("struct fd: representation change")
removed the 'struct file' pointer from 'struct fd'. This breaks building
the NVSCIIPC driver that tries to directly access the 'file' pointer
from the 'fd' structure. Fix this by using the helper macros 'fd_empty'
and 'fd_file' as necessary to fix the build.
Bug 4593750
Change-Id: I0f84736b408f533a732476175a8745091bc8542f
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3217429
(cherry picked from commit 0f21c4134eb08dfcafad832d97308f2d98601f1d)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3226681
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
This commit is contained in:
committed by
mobile promotions
parent
7cdcfd844e
commit
43f2b77b06
@@ -82,11 +82,20 @@ NvSciError NvSciIpcEndpointValidateAuthTokenLinuxCurrent(
|
||||
}
|
||||
|
||||
f = fdget((int)authToken);
|
||||
#if defined(NV_FD_EMPTY_PRESENT) /* Linux v6.12 */
|
||||
if (fd_empty(f)) {
|
||||
#else
|
||||
if (!f.file) {
|
||||
#endif
|
||||
ERR("invalid auth token\n");
|
||||
return NvSciError_BadParameter;
|
||||
}
|
||||
|
||||
#if defined(NV_FD_FILE_PRESENT) /* Linux v6.12 */
|
||||
filp = fd_file(f);
|
||||
#else
|
||||
filp = f.file;
|
||||
#endif
|
||||
|
||||
devlen = strlen(filp->f_path.dentry->d_name.name);
|
||||
#if DEBUG_VALIDATE_TOKEN
|
||||
|
||||
@@ -125,6 +125,8 @@ NV_CONFTEST_FUNCTION_COMPILE_TESTS += ethtool_kernel_ethtool_ts_info_struct_pres
|
||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += ethtool_ops_get_set_coalesce_has_coal_and_extack_args
|
||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += ethtool_ops_get_set_ringparam_has_ringparam_and_extack_args
|
||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += ethtool_ops_get_set_rxfh_has_rxfh_param_args
|
||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += fd_empty
|
||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += fd_file
|
||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += folio_entire_mapcount
|
||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += genpd_xlate_t_has_const_of_phandle_args
|
||||
NV_CONFTEST_FUNCTION_COMPILE_TESTS += get_file_rcu_has_double_ptr_file_arg
|
||||
|
||||
@@ -7197,6 +7197,40 @@ compile_test() {
|
||||
"NV_ETHTOOL_OPS_GET_SET_RXFH_HAS_RXFH_PARAM_ARGS" "" "types"
|
||||
;;
|
||||
|
||||
fd_empty)
|
||||
#
|
||||
# Determine if macro fd_empty() is present.
|
||||
#
|
||||
# Added by commit 88a2f6468d01 ("struct fd: representation change")
|
||||
# in Linux v6.12.
|
||||
#
|
||||
CODE="
|
||||
#include <linux/file.h>
|
||||
void conftest(void)
|
||||
{
|
||||
fd_empty();
|
||||
}"
|
||||
|
||||
compile_check_conftest "$CODE" "NV_FD_EMPTY_PRESENT" "" "functions"
|
||||
;;
|
||||
|
||||
fd_file)
|
||||
#
|
||||
# Determine if macro fd_file() is present.
|
||||
#
|
||||
# Added by commit 88a2f6468d01 ("struct fd: representation change")
|
||||
# in Linux v6.12.
|
||||
#
|
||||
CODE="
|
||||
#include <linux/file.h>
|
||||
void conftest(void)
|
||||
{
|
||||
fd_file();
|
||||
}"
|
||||
|
||||
compile_check_conftest "$CODE" "NV_FD_FILE_PRESENT" "" "functions"
|
||||
;;
|
||||
|
||||
folio_entire_mapcount)
|
||||
#
|
||||
# Determine if function folio_entire_mapcount() is present.
|
||||
|
||||
Reference in New Issue
Block a user