Hi, I encountered several errors and warnings while compiling my kernel and am seeking assistance. I am using the 5.10-rt Linux kernel version (5.10-rt) and the following cross compiler: gcc-linaro-7.5.0-2019.12.
Here are the specific errors and warnings I encountered:
arch/arm/boot/dts/bbai-bone-buses.dtsi:548.8-555.5: Warning (graph_port): /ocp/target-module@58000000/dss@0/ports/port: graph node unit address error, expected "0"
from mm/compaction.c:11:
In function ‘__list_cut_position’,
inlined from ‘list_cut_position’ at ./include/linux/list.h:400:3,
inlined from ‘move_freelist_tail’ at mm/compaction.c:1241:3:
./include/linux/list.h:370:21: warning: storing the address of local variable ‘sublist’ in ‘*&freepage_6(D)->D.15816.D.15761.lru.next’ [-Wdangling-pointer=]
370 | entry->next = list;
| ~~~~~~~~~~~~^~~~~~
mm/compaction.c: In function ‘move_freelist_tail’:
mm/compaction.c:1238:19: note: ‘sublist’ declared here
1238 | LIST_HEAD(sublist);
| ^~~~~~~
./include/linux/list.h:24:26: note: in definition of macro ‘LIST_HEAD’
24 | struct list_head name = LIST_HEAD_INIT(name)
| ^~~~
mm/compaction.c:1236:61: note: ‘freepage’ declared here
1236 | move_freelist_tail(struct list_head *freelist, struct page *freepage)
|
kernel/workqueue.c: In function ‘get_work_pwq’:
kernel/workqueue.c:687:24: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
687 | return (void *)(data & WORK_STRUCT_WQ_DATA_MASK);
| ^
kernel/workqueue.c: In function ‘get_work_pool’:
kernel/workqueue.c:715:25: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
715 | return ((struct pool_workqueue *)
| ^
kernel/workqueue.c: In function ‘get_work_pool_id’:
kernel/workqueue.c:737:25: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
737 | return ((struct pool_workqueue *)
| ^
block/blk-iocost.c: In function ‘ioc_weight_prfill’:
block/blk-iocost.c:3023:37: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 4 has type ‘long long unsigned int’ [-Wformat=]
3023 | seq_printf(sf, "%s %u\n", dname, iocg->cfg_weight / WEIGHT_ONE);
| ~^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| | |
| unsigned int long long unsigned int
| %llu
block/blk-iocost.c: In function ‘ioc_weight_show’:
block/blk-iocost.c:3033:34: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 3 has type ‘long long unsigned int’ [-Wformat=]
3033 | seq_printf(sf, "default %u\n", iocc->dfl_weight / WEIGHT_ONE);
| ~^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| | |
| unsigned int long long unsigned int
| %llu
drivers/gpu/drm/omapdrm/dss/dispc.c: In function ‘pixinc’:
drivers/gpu/drm/omapdrm/dss/dispc.c:2141:9: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
2141 | else
| ^~~~
drivers/gpu/drm/omapdrm/dss/dispc.c:2143:17: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’
2143 | return 0;
| ^~~~~~
In file included from <command-line>:
drivers/ata/libahci.c: In function ‘ahci_led_store’:
././include/linux/compiler_types.h:309:45: error: call to ‘__compiletime_assert_347’ declared with attribute error: BUILD_BUG_ON failed: sizeof(_s) > sizeof(long)
309 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^
././include/linux/compiler_types.h:290:25: note: in definition of macro ‘__compiletime_assert’
290 | prefix ## suffix(); \
| ^~~~~~
././include/linux/compiler_types.h:309:9: note: in expansion of macro ‘_compiletime_assert’
309 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
./include/linux/build_bug.h:39:37: note: in expansion of macro ‘compiletime_assert’
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
./include/linux/build_bug.h:50:9: note: in expansion of macro ‘BUILD_BUG_ON_MSG’
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
./include/linux/nospec.h:58:9: note: in expansion of macro ‘BUILD_BUG_ON’
58 | BUILD_BUG_ON(sizeof(_s) > sizeof(long)); \
| ^~~~~~~~~~~~
drivers/ata/libahci.c:1142:23: note: in expansion of macro ‘array_index_nospec’
1142 | pmp = array_index_nospec(pmp, EM_MAX_SLOTS);
After updating my Ubuntu PC, I attempted to compile the kernel and encountered these errors. Here are the commands I used:
i tried these command so for.
make ARCH=arm distclean
make ARCH=arm bb.org_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig (nothing changed in menuconfig)
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- uImage dtbs LOADADDR=0x80008000 -j4
Please provide any suggestions to resolve this issue and successfully compile the kernel.