Skip to content
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

hv: align the MAX_IR_ENRIES to MAX_PT_IRQ_ENTRIES #6746

Closed
wants to merge 4 commits into from

Conversation

weichenli-intel
Copy link
Contributor

The CONFIG_MAX_IR_ENTRIES and CONFIG_MAX_PT_IRQ_ENTRIES are separate
configuration items, and they can be configured through configuration tool

When the number of PT irq entries are more than IR entries, then some
passthrough devices' irqs may failed to be protected by interrupt
remapping or automatically injected by post-interrupt mechanism.
And it waste memory if the CONFIG_MAX_IR_ENTRIES is larger.

This patch replace the CONFIG_MAX_IR_ENTRIES to MAX_IR_ENTRIES and
enforce it equal to CONFIG_PT_IRQ_ENTRIES. This way can enforce all PT
irqs works with IR or PI mechanism.

Tracked-On: #6745
Signed-off-by: Chenli Wei [email protected]
Acked-by: Eddie Dong [email protected]
Reviewed-by: Wang, Yu1 [email protected]

The CONFIG_MAX_IR_ENTRIES and CONFIG_MAX_PT_IRQ_ENTRIES are separate
configuration items, and they can be configured through configuration tool

When the number of PT irq entries are more than IR entries, then some
passthrough devices' irqs may failed to be protected by interrupt
remapping or automatically injected by post-interrupt mechanism.
And it waste memory if the CONFIG_MAX_IR_ENTRIES is larger.

This patch replace the CONFIG_MAX_IR_ENTRIES to MAX_IR_ENTRIES and
enforce it equal to CONFIG_PT_IRQ_ENTRIES. This way can enforce all PT
irqs works with IR or PI mechanism.

Tracked-On: projectacrn#6745
Signed-off-by: Chenli Wei <[email protected]>
Acked-by: Eddie Dong <[email protected]>
Reviewed-by: Wang, Yu1 <[email protected]>
@acrnsi-robot
Copy link
Contributor

OK to verify

5 similar comments
@acrnsi-robot
Copy link
Contributor

OK to verify

@acrnsi-robot
Copy link
Contributor

OK to verify

@acrnsi-robot
Copy link
Contributor

OK to verify

@acrnsi-robot
Copy link
Contributor

OK to verify

@acrnsi-robot
Copy link
Contributor

OK to verify

@acrnsi-robot
Copy link
Contributor

try verify EHL

@acrnsi-robot
Copy link
Contributor

try verify ldra

@acrnsi-robot
Copy link
Contributor

OK to verify doc

@acrnsi-robot
Copy link
Contributor

try verify ldra

@acrnsi-robot
Copy link
Contributor

No new violations to the coding guideline detected.
No New Name Conflict
No New Function Declaration/Definition Mismatch

@acrnsi-robot
Copy link
Contributor

OK to verify

@acrnsi-robot
Copy link
Contributor

try verify EHL

@acrnsi-robot
Copy link
Contributor

@weichenli-intel
builf fail
log:

ERROR: acrn-hypervisor-native-6746-1635835783 do_compile: oe_runmake failed
ERROR: acrn-hypervisor-native-6746-1635835783 do_compile: Execution of '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840' failed with exit code 1:
make: Entering directory '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor'
Board XML is fetched from /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/misc/config_tools/data/tgl-rvp/tgl-rvp.xml
Scneario XML is configuration fetched from /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/misc/config_tools/data/tgl-rvp/shared.xml
/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/allocation.xml generated
/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/unified.xml generated
/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/config.mk generated
/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/include/config.h generated
Board configurations for tgl-rvp is generated successfully.
Scenario configuration files were created successfully.
/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/recipe-sysroot-native/usr/bin/xsltproc
Generating vm_configurations.c:
vm_configurations.c was generated using xsltproc successfully.
Generating vm_configurations.h:
vm_configurations.h was generated using xsltproc successfully.
Generating pt_intx.c:
pt_intx.c was generated using xsltproc successfully.
Generating ivshmem_cfg.h:
ivshmem_cfg.h was generated using xsltproc successfully.
Generating misc_cfg.h:
misc_cfg.h was generated using xsltproc successfully.
Generating pci_dev.c:
pci_dev.c was generated using xsltproc successfully.
Generating board_info.h:
board_info.h was generated using xsltproc successfully.
clang-format cannot be found. The generated files under /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared are not formatted.
clang-format is a tool to format the C code automatically and improve the code readability.
Please install clang-format and format the generated files if those need to be included and reviewed.
Start pre-build static check ...
make -C ../misc/hv_prebuild BOARD=tgl-rvp SCENARIO=shared TARGET_DIR=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs
make[1]: Entering directory '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/misc/hv_prebuild'
SCENARIO for BOARD is specified.
Found BOARD tgl-rvp information under /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/boards
Found SCENARIO shared configurations under /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared
Found tgl-rvp configuration for SCENARIO shared under /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared
gcc main.c static_checks.c vm_cfg_checks.c ../../hypervisor/arch/x86/configs/vm_config.c /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared/vm_configurations.c /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared/pt_intx.c /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared/pci_dev.c -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/lib -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/lib/crypto -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/common -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/debug -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/public -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/dm -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/hw -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/boot/include -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/boot/include/guest -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/arch/x86 -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/include -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/boards -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared -include /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/include/config.h -I . -fno-stack-protector -fno-builtin -W -Wall -o /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/hv_prebuild_check.out
static_checks.c:33:2: error: #error "MAX_IR_ENTRIES must >=256 and be 2^n"
#error "MAX_IR_ENTRIES must >=256 and be 2^n"
^~~~~
Makefile:39: recipe for target 'default' failed
make[1]: *** [default] Error 1
make[1]: Leaving directory '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/misc/hv_prebuild'
Makefile:409: recipe for target 'pre_build' failed
make: *** [pre_build] Error 2
make: Leaving directory '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor'
WARNING: /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840:181 exit 1 from 'exit 1'
WARNING: Backtrace (BB generated script):
#1: bbfatal_log, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 181
#2: die, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 156
#3: oe_runmake, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 151
#4: do_compile, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 146
#5: main, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 185

Backtrace (metadata-relative locations):
#1: bbfatal_log, /home/meta-acrn/workspace/poky/meta/classes/logging.bbclass, line 72
#2: die, /home/meta-acrn/workspace/poky/meta/classes/base.bbclass, line 56
#3: oe_runmake, /home/meta-acrn/workspace/poky/meta/classes/base.bbclass, line 65
#4: do_compile, autogenerated, line 2
ERROR: Logfile of failure stored in: /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/log.do_compile.840
Log data follows:
| DEBUG: Executing shell function do_compile
| NOTE: make RELEASE=0 SYSROOT= O=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build/ DESTDIR=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/image prefix=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/recipe-sysroot-native/usr bindir=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/recipe-sysroot-native/usr/bin libdir=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/recipe-sysroot-native/usr/lib datadir=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/recipe-sysroot-native/usr/share includedir=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/recipe-sysroot-native/usr/include systemd_unitdir=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/recipe-sysroot-native/lib/systemd HV_OBJDIR=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor BOARD=tgl-rvp SCENARIO=shared EFI_OBJDIR=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//misc/efi-stub -C hypervisor pre_build
| make: Entering directory '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor'
| Board XML is fetched from /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/misc/config_tools/data/tgl-rvp/tgl-rvp.xml
| Scneario XML is configuration fetched from /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/misc/config_tools/data/tgl-rvp/shared.xml
| /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/allocation.xml generated
| /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/unified.xml generated
| /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/config.mk generated
| /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/include/config.h generated
| Board configurations for tgl-rvp is generated successfully.
| Scenario configuration files were created successfully.
| /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/recipe-sysroot-native/usr/bin/xsltproc
| Generating vm_configurations.c:
| vm_configurations.c was generated using xsltproc successfully.
| Generating vm_configurations.h:
| vm_configurations.h was generated using xsltproc successfully.
| Generating pt_intx.c:
| pt_intx.c was generated using xsltproc successfully.
| Generating ivshmem_cfg.h:
| ivshmem_cfg.h was generated using xsltproc successfully.
| Generating misc_cfg.h:
| misc_cfg.h was generated using xsltproc successfully.
| Generating pci_dev.c:
| pci_dev.c was generated using xsltproc successfully.
| Generating board_info.h:
| board_info.h was generated using xsltproc successfully.
| clang-format cannot be found. The generated files under /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared are not formatted.
| clang-format is a tool to format the C code automatically and improve the code readability.
| Please install clang-format and format the generated files if those need to be included and reviewed.
| Start pre-build static check ...
| make -C ../misc/hv_prebuild BOARD=tgl-rvp SCENARIO=shared TARGET_DIR=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs
| make[1]: Entering directory '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/misc/hv_prebuild'
| SCENARIO for BOARD is specified.
| Found BOARD tgl-rvp information under /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/boards
| Found SCENARIO shared configurations under /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared
| Found tgl-rvp configuration for SCENARIO shared under /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared
| gcc main.c static_checks.c vm_cfg_checks.c ../../hypervisor/arch/x86/configs/vm_config.c /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared/vm_configurations.c /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared/pt_intx.c /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared/pci_dev.c -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/lib -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/lib/crypto -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/common -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/debug -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/public -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/dm -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/hw -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/boot/include -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/boot/include/guest -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/arch/x86 -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/include -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/boards -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared -include /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/include/config.h -I . -fno-stack-protector -fno-builtin -W -Wall -o /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/hv_prebuild_check.out
| static_checks.c:33:2: error: #error "MAX_IR_ENTRIES must >=256 and be 2^n"
| #error "MAX_IR_ENTRIES must >=256 and be 2^n"
| ^~~~~
| Makefile:39: recipe for target 'default' failed
| make[1]: *** [default] Error 1
| make[1]: Leaving directory '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/misc/hv_prebuild'
| Makefile:409: recipe for target 'pre_build' failed
| make: *** [pre_build] Error 2
| make: Leaving directory '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor'
| ERROR: oe_runmake failed
| WARNING: /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840:181 exit 1 from 'exit 1'
| WARNING: Backtrace (BB generated script):
| #1: bbfatal_log, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 181
| #2: die, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 156
| #3: oe_runmake, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 151
| #4: do_compile, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 146
| #5: main, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 185
| ERROR: Execution of '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840' failed with exit code 1:
| make: Entering directory '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor'
| Board XML is fetched from /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/misc/config_tools/data/tgl-rvp/tgl-rvp.xml
| Scneario XML is configuration fetched from /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/misc/config_tools/data/tgl-rvp/shared.xml
| /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/allocation.xml generated
| /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/unified.xml generated
| /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/config.mk generated
| /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/include/config.h generated
| Board configurations for tgl-rvp is generated successfully.
| Scenario configuration files were created successfully.
| /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/recipe-sysroot-native/usr/bin/xsltproc
| Generating vm_configurations.c:
| vm_configurations.c was generated using xsltproc successfully.
| Generating vm_configurations.h:
| vm_configurations.h was generated using xsltproc successfully.
| Generating pt_intx.c:
| pt_intx.c was generated using xsltproc successfully.
| Generating ivshmem_cfg.h:
| ivshmem_cfg.h was generated using xsltproc successfully.
| Generating misc_cfg.h:
| misc_cfg.h was generated using xsltproc successfully.
| Generating pci_dev.c:
| pci_dev.c was generated using xsltproc successfully.
| Generating board_info.h:
| board_info.h was generated using xsltproc successfully.
| clang-format cannot be found. The generated files under /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared are not formatted.
| clang-format is a tool to format the C code automatically and improve the code readability.
| Please install clang-format and format the generated files if those need to be included and reviewed.
| Start pre-build static check ...
| make -C ../misc/hv_prebuild BOARD=tgl-rvp SCENARIO=shared TARGET_DIR=/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs
| make[1]: Entering directory '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/misc/hv_prebuild'
| SCENARIO for BOARD is specified.
| Found BOARD tgl-rvp information under /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/boards
| Found SCENARIO shared configurations under /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared
| Found tgl-rvp configuration for SCENARIO shared under /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared
| gcc main.c static_checks.c vm_cfg_checks.c ../../hypervisor/arch/x86/configs/vm_config.c /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared/vm_configurations.c /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared/pt_intx.c /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared/pci_dev.c -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/lib -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/lib/crypto -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/common -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/debug -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/public -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/dm -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/hw -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/boot/include -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/boot/include/guest -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor/include/arch/x86 -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/include -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/boards -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared -I /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/configs/scenarios/shared -include /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/include/config.h -I . -fno-stack-protector -fno-builtin -W -Wall -o /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/build//hypervisor/hv_prebuild_check.out
| static_checks.c:33:2: error: #error "MAX_IR_ENTRIES must >=256 and be 2^n"
| #error "MAX_IR_ENTRIES must >=256 and be 2^n"
| ^~~~~
| Makefile:39: recipe for target 'default' failed
| make[1]: *** [default] Error 1
| make[1]: Leaving directory '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/misc/hv_prebuild'
| Makefile:409: recipe for target 'pre_build' failed
| make: *** [pre_build] Error 2
| make: Leaving directory '/home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/git/hypervisor'
| WARNING: /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840:181 exit 1 from 'exit 1'
| WARNING: Backtrace (BB generated script):
| #1: bbfatal_log, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 181
| #2: die, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 156
| #3: oe_runmake, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 151
| #4: do_compile, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 146
| #5: main, /home/meta-acrn/workspace/build/master-acrn-sos/work/x86_64-linux/acrn-hypervisor-native/6746-1635835783/temp/run.do_compile.840, line 185
|
| Backtrace (metadata-relative locations):
| #1: bbfatal_log, /home/meta-acrn/workspace/poky/meta/classes/logging.bbclass, line 72
| #2: die, /home/meta-acrn/workspace/poky/meta/classes/base.bbclass, line 56
| #3: oe_runmake, /home/meta-acrn/workspace/poky/meta/classes/base.bbclass, line 65
| #4: do_compile, autogenerated, line 2
NOTE: recipe acrn-hypervisor-native-6746-1635835783: task do_compile: Failed
ERROR: Task (virtual:native:/home/meta-acrn/workspace/meta-acrn/recipes-core/acrn/acrn-hypervisor.bb:do_compile) failed with exit code '1'
WARNING: Recipe acrn-life-mngr sets S variable with trailing slash '/home/meta-acrn/workspace/build/master-acrn-sos/work/corei7-64-oe-linux/acrn-life-mngr/6746-1635835783/git/', remove it
WARNING: Recipe acrn-life-mngr sets B variable with trailing slash '/home/meta-acrn/workspace/build/master-acrn-sos/work/corei7-64-oe-linux/acrn-life-mngr/6746-1635835783/build/', remove it
NOTE: recipe acrn-life-mngr-6746-1635835783: task do_packagedata: Started
NOTE: recipe acrn-tools-6746-1635835783: task do_compile: Succeeded
NOTE: recipe acrn-life-mngr-6746-1635835783: task do_packagedata: Succeeded
NOTE: Tasks Summary: Attempted 1912 tasks of which 1880 didn't need to be rerun and 1 failed.

@acrnsi-robot acrnsi-robot added the build_fail build fail label Nov 2, 2021
@wenlingz wenlingz removed the build_fail build fail label Nov 3, 2021
@wenlingz
Copy link
Contributor

wenlingz commented Nov 3, 2021

OK to verify

@wenlingz wenlingz added the build_fail build fail label Nov 3, 2021
@wenlingz
Copy link
Contributor

wenlingz commented Nov 8, 2021

OK to verify

@wenlingz
Copy link
Contributor

wenlingz commented Nov 8, 2021

try verify EHL

@dongyaozu
Copy link
Contributor

I am fine with 1st patch, but not sure on the 2nd one.

The CONFIG_MAX_IR_ENTRIES and CONFIG_MAX_PT_IRQ_ENTRIES are separate
configuration items, and they can be configured through configuration tool

When the number of PT irq entries are more than IR entries, then some
passthrough devices' irqs may failed to be protected by interrupt
remapping or automatically injected by post-interrupt mechanism.
And it waste memory if the CONFIG_MAX_IR_ENTRIES is larger.

This patch replace the CONFIG_MAX_IR_ENTRIES to MAX_IR_ENTRIES and
enforce it align to CONFIG_PT_IRQ_ENTRIES and round up to > 2^n as the
IRTA_REG spec.This way can enforce all PT irqs works with IR or PI
mechanism.

Tracked-On: projectacrn#6745
Signed-off-by: Chenli Wei <[email protected]>
Acked-by: Eddie Dong <[email protected]>
Reviewed-by: Wang, Yu1 <[email protected]>
@acrnsi-robot
Copy link
Contributor

No new violations to the coding guideline detected.
No New Name Conflict
No New Function Declaration/Definition Mismatch

@weichenli-intel
Copy link
Contributor Author

update

Copy link
Contributor

@dongyaozu dongyaozu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This series is bad. We shouldn;t include that many patches

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants