Skip to content

Commit e69d8c8

Browse files
kkdwivediintel-lab-lkp
authored andcommitted
selftests/bpf: Add IRQ save/restore tests
Include tests that check for rejection in erroneous cases, like unbalanced IRQ-disabled counts, within and across subprogs, invalid IRQ flag state or input to kfuncs, behavior upon overwriting IRQ saved state on stack, interaction with sleepable kfuncs/helpers, global functions, and out of order restore. Include some success scenarios as well to demonstrate usage. torvalds#128/1 irq/irq_save_bad_arg:OK torvalds#128/2 irq/irq_restore_bad_arg:OK torvalds#128/3 irq/irq_restore_missing_2:OK torvalds#128/4 irq/irq_restore_missing_3:OK torvalds#128/5 irq/irq_restore_missing_3_minus_2:OK torvalds#128/6 irq/irq_restore_missing_1_subprog:OK torvalds#128/7 irq/irq_restore_missing_2_subprog:OK torvalds#128/8 irq/irq_restore_missing_3_subprog:OK torvalds#128/9 irq/irq_restore_missing_3_minus_2_subprog:OK torvalds#128/10 irq/irq_balance:OK torvalds#128/11 irq/irq_balance_n:OK torvalds#128/12 irq/irq_balance_subprog:OK torvalds#128/13 irq/irq_global_subprog:OK torvalds#128/14 irq/irq_restore_ooo:OK torvalds#128/15 irq/irq_restore_ooo_3:OK torvalds#128/16 irq/irq_restore_3_subprog:OK torvalds#128/17 irq/irq_restore_4_subprog:OK torvalds#128/18 irq/irq_restore_ooo_3_subprog:OK torvalds#128/19 irq/irq_restore_invalid:OK torvalds#128/20 irq/irq_save_invalid:OK torvalds#128/21 irq/irq_restore_iter:OK torvalds#128/22 irq/irq_save_iter:OK torvalds#128/23 irq/irq_flag_overwrite:OK torvalds#128/24 irq/irq_flag_overwrite_partial:OK torvalds#128/25 irq/irq_ooo_refs_array:OK torvalds#128/26 irq/irq_sleepable_helper:OK torvalds#128/27 irq/irq_sleepable_kfunc:OK torvalds#128 irq:OK Summary: 1/27 PASSED, 0 SKIPPED, 0 FAILED Acked-by: Eduard Zingerman <[email protected]> Signed-off-by: Kumar Kartikeya Dwivedi <[email protected]>
1 parent b64bf18 commit e69d8c8

File tree

2 files changed

+446
-0
lines changed

2 files changed

+446
-0
lines changed

tools/testing/selftests/bpf/prog_tests/verifier.c

+2
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,7 @@
9898
#include "verifier_xdp_direct_packet_access.skel.h"
9999
#include "verifier_bits_iter.skel.h"
100100
#include "verifier_lsm.skel.h"
101+
#include "irq.skel.h"
101102

102103
#define MAX_ENTRIES 11
103104

@@ -225,6 +226,7 @@ void test_verifier_xdp(void) { RUN(verifier_xdp); }
225226
void test_verifier_xdp_direct_packet_access(void) { RUN(verifier_xdp_direct_packet_access); }
226227
void test_verifier_bits_iter(void) { RUN(verifier_bits_iter); }
227228
void test_verifier_lsm(void) { RUN(verifier_lsm); }
229+
void test_irq(void) { RUN(irq); }
228230

229231
void test_verifier_mtu(void)
230232
{

0 commit comments

Comments
 (0)