-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Rpmsg virtio: update rpmsg virtio and add sim config to verify rpmsg virtio #14077
Conversation
[Experimental Bot, please feedback here] NuttX PR Requirements ReviewThe provided summary partially meets the NuttX PR requirements. Here's a breakdown: Strengths:
Areas for Improvement:
Recommendation: Expand the summary, complete the "Impact" section with specific YES/NO answers and explanations, and enhance the "Testing" section with details about the build host and relevant testing logs. |
Wait the rpmsg command fix PR merged: apache/nuttx-apps#2677 |
0f6c306
to
2a18181
Compare
Rebased to fix the CI problem. |
2da76ed
to
010ad92
Compare
Just rebase to fix the CI problem. |
CI Failed, but unrelated to this PR 100 496k 100 496k 0 0 1123k 0 --:--:-- --:--:-- --:--:-- 1123k
Error: syslog/vsyslog.c:212:32: error: format specifies type 'intmax_t' (aka 'long long') but the argument has type 'uintmax_t' (aka 'unsigned long') [-Werror,-Wformat]
, (uintmax_t)ts.tv_sec
^~~~~~~~~~~~~~~~~~~~
1 error generated.
make[1]: *** [vsyslog.o] Error 1
make[1]: Target `libdrivers.a' not remade because of errors.
make: *** [drivers/libdrivers.a] Error 2
Error: inttypes/lib_strtoimax.c:100:22: error: implicit conversion from 'long long' to 'intmax_t' (aka 'long') changes value from -9223372036854775808 to 0 [-Werror,-Wconstant-conversion]
return INTMAX_MIN;
~~~~~~ ^~~~~~~~~~
/Users/runner/work/nuttx/nuttx/sources/nuttx/include/stdint.h:136:29: note: expanded from macro 'INTMAX_MIN'
# define INTMAX_MIN INT64_MIN
^~~~~~~~~
/Users/runner/work/nuttx/nuttx/sources/nuttx/include/stdint.h:65:41: note: expanded from macro 'INT64_MIN'
# define INT64_MIN (-INT64_MAX - 1)
~~~~~~~~~~~^~~
Error: inttypes/lib_strtoimax.c:103:37: error: implicit conversion from 'long long' to 'intmax_t' (aka 'long') changes value from -9223372036854775808 to 0 [-Werror,-Wconstant-conversion]
return (accum == limit) ? INTMAX_MIN : -(intmax_t)accum;
~~~~~~ ^~~~~~~~~~
/Users/runner/work/nuttx/nuttx/sources/nuttx/include/stdint.h:136:29: note: expanded from macro 'INTMAX_MIN'
# define INTMAX_MIN INT64_MIN
^~~~~~~~~
/Users/runner/work/nuttx/nuttx/sources/nuttx/include/stdint.h:65:41: note: expanded from macro 'INT64_MIN'
# define INT64_MIN (-INT64_MAX - 1)
~~~~~~~~~~~^~~
Error: inttypes/lib_strtoimax.c:106:17: error: result of comparison of constant 9223372036854775807 with expression of type 'uintmax_t' (aka 'unsigned long') is always false [-Werror,-Wtautological-constant-out-of-range-compare]
if (accum > INTMAX_MAX) |
010ad92
to
1382de0
Compare
Rebased to fix the CI problem. |
1382de0
to
2d1c3ae
Compare
Local compile pass, just rebase to fix the CI problem. |
2d1c3ae
to
f0472d9
Compare
Updated to fix the MacOS warning, Please see the commit: fix the sim compile warning in MacOS |
but the same warning still exist |
…rror /data/project/code/apache/nuttx/include/nuttx/rpmsg/rpmsg_virtio.h:176:28: error: field ‘rsc_tbl_hdr’ has incomplete type 176 | struct resource_table rsc_tbl_hdr; | ^~~~~~~~~~~ /data/project/code/apache/nuttx/include/nuttx/rpmsg/rpmsg_virtio.h:178:28: error: field ‘log_trace’ has incomplete type 178 | struct fw_rsc_trace log_trace; | ^~~~~~~~~ /data/project/code/apache/nuttx/include/nuttx/rpmsg/rpmsg_virtio.h:179:28: error: field ‘rpmsg_vdev’ has incomplete type 179 | struct fw_rsc_vdev rpmsg_vdev; | ^~~~~~~~~~ /data/project/code/apache/nuttx/include/nuttx/rpmsg/rpmsg_virtio.h:180:28: error: field ‘rpmsg_vring0’ has incomplete type 180 | struct fw_rsc_vdev_vring rpmsg_vring0; | ^~~~~~~~~~~~ /data/project/code/apache/nuttx/include/nuttx/rpmsg/rpmsg_virtio.h:181:28: error: field ‘rpmsg_vring1’ has incomplete type 181 | struct fw_rsc_vdev_vring rpmsg_vring1; | ^~~~~~~~~~~~ /data/project/code/apache/nuttx/include/nuttx/rpmsg/rpmsg_virtio.h:182:28: error: field ‘config’ has incomplete type 182 | struct fw_rsc_config config; Signed-off-by: Bowen Wang <[email protected]>
Has change the virtio feature bit to 64bit, so rpmsg virtio need change to 64bit too. Signed-off-by: buxiasen <[email protected]>
notify_wait_cb has been moved to struct rpmsg_virtio_device, so change rpmsg_virtio.c transport too. Signed-off-by: Bowen Wang <[email protected]>
add rpserver_virtio and rproxy_virtio to verify the rpmsg virtio transport Signed-off-by: Bowen Wang <[email protected]>
f0472d9
to
563a12a
Compare
CC: clk/clk_fixed_rate.c clk/clk_divider.c:177:14: warning: taking the absolute value of unsigned type 'unsigned int' has no effect [-Wabsolute-value] return abs(rate - now) < abs(rate - best); ^ clk/clk_divider.c:177:14: note: remove the call to 'abs' since unsigned values cannot be negative return abs(rate - now) < abs(rate - best); ^~~ clk/clk_divider.c:177:32: warning: taking the absolute value of unsigned type 'unsigned int' has no effect [-Wabsolute-value] return abs(rate - now) < abs(rate - best); ^ clk/clk_divider.c:177:32: note: remove the call to 'abs' since unsigned values cannot be negative return abs(rate - now) < abs(rate - best); ^~~ CC: mm_heap/mm_initialize.c 2 warnings generated. clk/clk.c:1324:11: warning: variable 'irqflags' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized] if (clk->parents == NULL) ^~~~~~~~~~~~~~~~~~~~ clk/clk.c:1341:19: note: uninitialized use occurs here clk_list_unlock(irqflags); ^~~~~~~~ clk/clk.c:1324:7: note: remove the 'if' if its condition is always false if (clk->parents == NULL) ^~~~~~~~~~~~~~~~~~~~~~~~~ clk/clk.c:1255:22: note: initialize the variable 'irqflags' to silence this warning irqstate_t irqflags; ^ = 0 CC: clk/clk_mux.c clk/clk_multiplier.c:110:14: warning: taking the absolute value of unsigned type 'unsigned int' has no effect [-Wabsolute-value] return abs(rate - new) < abs(rate - best); ^ clk/clk_multiplier.c:110:14: note: remove the call to 'abs' since unsigned values cannot be negative return abs(rate - new) < abs(rate - best); ^~~ clk/clk_multiplier.c:110:32: warning: taking the absolute value of unsigned type 'unsigned int' has no effect [-Wabsolute-value] return abs(rate - new) < abs(rate - best); ^ clk/clk_multiplier.c:110:32: note: remove the call to 'abs' since unsigned values cannot be negative return abs(rate - new) < abs(rate - best); ^~~ clk/clk_mux.c:47:14: warning: taking the absolute value of unsigned type 'unsigned int' has no effect [-Wabsolute-value] return abs(now - rate) < abs(best - rate); ^ clk/clk_mux.c:47:14: note: remove the call to 'abs' since unsigned values cannot be negative return abs(now - rate) < abs(best - rate); ^~~ clk/clk_mux.c:47:32: warning: taking the absolute value of unsigned type 'unsigned int' has no effect [-Wabsolute-value] return abs(now - rate) < abs(best - rate); ^ clk/clk_mux.c:47:32: note: remove the call to 'abs' since unsigned values cannot be negative return abs(now - rate) < abs(best - rate); ^~~ AS: sim/sim_fork_x86.S 2 warnings generated. 1 warning2 warnings generated. generated. iperf.c:325:14: warning: format specifies type 'uintmax_t' (aka 'unsigned long long') but the argument has type 'unsigned long' [-Wformat] now_len -last_len, ^~~~~~~~~~~~~~~~~ iperf.c:340:14: warning: format specifies type 'uintmax_t' (aka 'unsigned long long') but the argument has type 'uintmax_t' (aka 'unsigned long') [-Wformat] now_len, ^~~~~~~ CC: misc/rpmsgblk_server.c 2 warnings generated. :28: warning: format specifies type 'uintmax_t' (aka 'unsigned long long') but the argument has type 'uintmax_t' (aka 'unsigned long') [-Wformat] (uintmax_t)skip); ^~~~~~~~~~~~~~~ nsh_dbgcmds.c:473:20: warning: format specifies type 'uintmax_t' (aka 'unsigned long long') but the argument has type 'uintmax_t' (aka 'unsigned long') [-Wformat] (uintmax_t)position); ^~~~~~~~~~~~~~~~~~~ CC: nsh_main.c 2 warnings generated. return INTMAX_MIN; ~~~~~~ ^~~~~~~~~~ CC: nsh_system.c note: expanded from macro 'INTMAX_MIN' ^~~~~~~~~ /Users/vela/work/nuttx/include/stdint.h:65:41: note: expanded from macro 'INT64_MIN' ~~~~~~~~~~~^~~ inttypes/lib_strtoimax.c:103:37: warning: implicit conversion from 'long long' to 'intmax_t' (aka 'long') changes value from -9223372036854775808 to 0 [-Wconstant-conversion] return (accum == limit) ? INTMAX_MIN : -(intmax_t)accum; ~~~~~~ ^~~~~~~~~~ /Users/vela/work/nuttx/include/stdint.h:136:29: note: expanded from macro 'INTMAX_MIN' ^~~~~~~~~ /Users/vela/work/nuttx/include/stdint.h:65:41: note: expanded from macro 'INT64_MIN' ~~~~~~~~~~~^~~ inttypes/lib_strtoimax.c:106:17: warning: result of comparison of constant 9223372036854775807 with expression of type 'uintmax_t' (aka 'unsigned long') is always false [-Wtautological-constant-out-of-range-compare] if (accum > INTMAX_MAX) ~~~~~ ^ ~~~~~~~~~~ inttypes/lib_strtoimax.c:109:18: warning: implicit conversion from 'long long' to 'intmax_t' (aka 'long') changes value from 9223372036854775807 to -1 [-Wconstant-conversion] return INTMAX_MAX; ~~~~~~ ^~~~~~~~~~ /Users/vela/work/nuttx/include/stdint.h:137:29: note: expanded from macro 'INTMAX_MAX' ^~~~~~~~~ /Users/vela/work/nuttx/include/stdint.h:66:29: note: expanded from macro 'INT64_MAX' ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/vela/work/nuttx/include/arch/inttypes.h:35:23: note: expanded from macro 'INT64_C' ^~~~~~~ <scratch space>:12:1: note: expanded from here 9223372036854775807ll ^~~~~~~~~~~~~~~~~~~~~ syslog/vsyslog.c:212:32: warning: format specifies type 'uintmax_t' (aka 'unsigned long long') but the argument has type 'uintmax_t' (aka 'unsigned long') [-Wformat] , (uintmax_t)ts.tv_sec ^~~~~~~~~~~~~~~~~~~~ CC: iob/iob_free.c 4 warnings generated. 1 warning generated. CC: mqueue/mq_msgqalloc.c inttypes/lib_strtoumax.c:91:23: warning: implicit conversion from 'unsigned long long' to 'uintmax_t' (aka 'unsigned long') changes value from 18446744073709551615 to 4294967295 [-Wconstant-conversion] accum = UINTMAX_MAX; ~ ^~~~~~~~~~~ /Users/vela/work/nuttx/include/stdint.h:140:29: note: expanded from macro 'UINTMAX_MAX' ^~~~~~~~~~ /Users/vela/work/nuttx/include/stdint.h:67:29: note: expanded from macro 'UINT64_MAX' ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/vela/work/nuttx/include/arch/inttypes.h:36:23: note: expanded from macro 'UINT64_C' ^~~~~~~~ <scratch space>:8:1: note: expanded from here 18446744073709551615ull ^~~~~~~~~~~~~~~~~~~~~~~ CC: icmp/icmp_ioctl.c 1 warning generated. time/lib_strftime.c:584:52: warning: format specifies type 'uintmax_t' (aka 'unsigned long long') but the argument has type 'uintmax_t' (aka 'unsigned long') [-Wformat] len = snprintf(dest, chleft, "%ju", (uintmax_t)mktime(&tmp)); ~~~ ^~~~~~~~~~~~~~~~~~~~~~~ %ju Signed-off-by: Bowen Wang <[email protected]>
563a12a
to
48e5f5c
Compare
Summary
Impact
rpmsg_virtio
Testing
sim rpserver_virtio and rpproxy_virtio