cr2
void vm_inject_pf(struct vcpu *vcpu, int error_code, uint64_t cr2);
*retval = state->cr2;
state->cr2 = val;
uint64_t cr2;
vm_inject_pf(struct vcpu *vcpu, int error_code, uint64_t cr2)
error_code, cr2);
error = vm_set_register(vcpu, VM_REG_GUEST_CR2, cr2);
#define CANSIGIO(cr1, cr2) \
(cr1)->cr_ruid == (cr2)->cr_ruid || \
(cr1)->cr_uid == (cr2)->cr_ruid || \
(cr1)->cr_ruid == (cr2)->cr_uid || \
(cr1)->cr_uid == (cr2)->cr_uid)
mac_cred_check_visible(struct ucred *cr1, struct ucred *cr2)
MAC_POLICY_CHECK_NOSLEEP(cred_check_visible, cr1, cr2);
MAC_CHECK_PROBE2(cred_check_visible, error, cr1, cr2);
int mac_cred_check_visible(struct ucred *cr1, struct ucred *cr2);
void mac_cred_copy(struct ucred *cr1, struct ucred *cr2);
struct ucred *cr2);
lomac_cred_check_visible(struct ucred *cr1, struct ucred *cr2)
obj = SLOT(cr2->cr_label);
mls_cred_check_visible(struct ucred *cr1, struct ucred *cr2)
obj = SLOT(cr2->cr_label);
partition_cred_check_visible(struct ucred *cr1, struct ucred *cr2)
error = partition_check(cr1->cr_label, cr2->cr_label);
seeotheruids_check(struct ucred *cr1, struct ucred *cr2)
if (cr1->cr_rgid == cr2->cr_rgid)
if (cr1->cr_ruid == cr2->cr_ruid)
seeotheruids_cred_check_visible(struct ucred *cr1, struct ucred *cr2)
return (seeotheruids_check(cr1, cr2));
stub_cred_check_visible(struct ucred *cr1, struct ucred *cr2)
static void cr2(void);
static void (*functions[])(void) = {&cr1, &cr2, &cr3, &rn1, &rw1, &rw2};
uint64_t cr0, cr2, cr3, cr4, dr0, dr1, dr2, dr3, dr6, dr7;
error = vm_get_register(vcpu, VM_REG_GUEST_CR2, &cr2);
printf("cr2[%d]\t\t0x%016lx\n", vcpuid, cr2);