Lines Matching +full:multi +full:- +full:channel
1 /* SPDX-License-Identifier: GPL-2.0-only */
12 #include <asm/asm-offsets.h>
26 void *addr = (void *)0x10000 - 2 * PAGE_SIZE; in test_set_mb()
29 /* Multi block support came with EDAT 1 */ in test_set_mb()
37 ret1.val = get_storage_key(end - PAGE_SIZE) & (SKEY_ACC | SKEY_FP); in test_set_mb()
38 ret2.val = get_storage_key(end - PAGE_SIZE * 2) & (SKEY_ACC | SKEY_FP); in test_set_mb()
39 report(ret1.val == ret2.val && ret1.val == skey.val, "multi block"); in test_set_mb()
99 void *inv_addr = (void *)-1ull; in test_invalid_address()
142 report_prefix_push("fetch-protection override"); in test_test_protection()
155 "storage-protection override: no protection"); in test_test_protection()
194 /* ESOP-2: no need to check facility */ in check_key_prot_exc()
238 : "+Q" (*out) /* exception: old value remains in out -> + constraint */ in store_cpu_address_key_1()
275 report_prefix_push("storage-protection override, invalid key"); in test_store_cpu_address()
284 report_prefix_push("storage-protection override, override key"); in test_store_cpu_address()
293 report_prefix_push("storage-protection override disabled, override key"); in test_store_cpu_address()
314 /* key-controlled protection does not apply */ in test_diag_308()
332 * Perform CHANNEL SUBSYSTEM CALL (CHSC) instruction while temporarily executing
351 static const char chsc_msg[] = "Performed store-channel-subsystem-characteristics";
355 /* store-channel-subsystem-characteristics command */ in init_comm_block()
366 report_prefix_push("CHANNEL SUBSYSTEM CALL"); in test_channel_subsystem_call()
409 report_prefix_push("storage-protection override, invalid key"); in test_channel_subsystem_call()
417 report_prefix_push("storage-protection override, override key"); in test_channel_subsystem_call()
426 report_prefix_push("storage-protection override disabled, override key"); in test_channel_subsystem_call()
605 schib->pmcw.intparm = 100; in test_msch()
609 WRITE_ONCE(schib->pmcw.intparm, 0); in test_msch()
611 report(!cc && schib->pmcw.intparm == 100, "fetched from SCHIB"); in test_msch()
618 schib->pmcw.intparm = 200; in test_msch()
622 WRITE_ONCE(schib->pmcw.intparm, 0); in test_msch()
624 report(!cc && schib->pmcw.intparm == 200, "fetched from SCHIB"); in test_msch()
633 schib->pmcw.intparm = 300; in test_msch()
637 WRITE_ONCE(schib->pmcw.intparm, 0); in test_msch()
639 report(!cc && schib->pmcw.intparm == 300, "fetched from SCHIB"); in test_msch()
645 schib->pmcw.intparm = 0; in test_msch()
648 schib->pmcw.intparm = 400; in test_msch()
654 report(!cc && schib->pmcw.intparm == 0, "did not modify subchannel"); in test_msch()
668 schib->pmcw.intparm = 0; in test_msch()
671 schib->pmcw.intparm = 500; in test_msch()
679 report(!cc && schib->pmcw.intparm == 0, "did not modify subchannel"); in test_msch()
687 report_prefix_push("fetch-protection override applies"); in test_msch()
688 schib->pmcw.intparm = 600; in test_msch()
694 WRITE_ONCE(schib->pmcw.intparm, 0); in test_msch()
696 report(!cc && schib->pmcw.intparm == 600, "fetched from SCHIB"); in test_msch()
702 schib->pmcw.intparm = 0; in test_msch()
704 report_prefix_push("fetch-protection override does not apply"); in test_msch()
705 schib->pmcw.intparm = 700; in test_msch()
715 report(!cc && schib->pmcw.intparm == 0, "did not modify subchannel"); in test_msch()