drivers: Fix build for Linux v6.12

In Linux v6.12 the definition 'no_llseek' was finally removed. Since
Linux v6.0 it had been redefined as NULL. Add a test to conftest to
determine if 'no_llseek' is present and if not then it is no longer
necessary to populate this and we can leave as NULL.

Bug 4876974

Change-Id: I051fdb285b32260b5913dad89cabe0be04253f67
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3222106
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Jon Hunter
2024-10-01 15:20:08 +01:00
parent cc49f73763
commit 5a54d4161a
11 changed files with 53 additions and 13 deletions

View File

@@ -147,6 +147,7 @@ NV_CONFTEST_FUNCTION_COMPILE_TESTS += module_import_ns_macro
NV_CONFTEST_FUNCTION_COMPILE_TESTS += msi_get_virq
NV_CONFTEST_FUNCTION_COMPILE_TESTS += netif_set_tso_max_size
NV_CONFTEST_FUNCTION_COMPILE_TESTS += netif_napi_add_weight
NV_CONFTEST_FUNCTION_COMPILE_TESTS += no_llseek
NV_CONFTEST_FUNCTION_COMPILE_TESTS += of_get_named_gpio_flags
NV_CONFTEST_FUNCTION_COMPILE_TESTS += gpio_chip_struct_has_of_node_present
NV_CONFTEST_FUNCTION_COMPILE_TESTS += gpio_device_find

View File

@@ -7525,6 +7525,25 @@ compile_test() {
compile_check_conftest "$CODE" "NV_MODULE_IMPORT_NS_PRESENT" "" "types"
;;
no_llseek)
#
# Determine if the function no_llseek() is present.
#
# Commit cb787f4ac0c2 ("[tree-wide] finally take no_llseek out")
# removed the definition for no_llseek() in Linux v6.12-rc1. Note
# that commit 868941b14441 ("fs: remove no_llseek") in Linux v6.0
# had previously redefined no_llseek as NULL in preparation for
# its removal.
#
CODE="
#include <linux/fs.h>
void conftest_no_llseek(void) {
no_llseek();
}"
compile_check_conftest "$CODE" "NV_NO_LLSEEK_PRESENT" "" "functions"
;;
of_property_for_each_u32_removed_internal_args)
#
# Determine if the internal arguments for the macro