const volatile __u32 num_cpu = 1;
 const volatile __u32 num_metric = 1;
-#define MAX_NUM_MATRICS 4
+#define MAX_NUM_METRICS 4
 
 SEC("fentry/XXX")
 int BPF_PROG(fentry_XXX)
 {
-       struct bpf_perf_event_value___local *ptrs[MAX_NUM_MATRICS];
+       struct bpf_perf_event_value___local *ptrs[MAX_NUM_METRICS];
        u32 key = bpf_get_smp_processor_id();
        u32 i;
 
        /* look up before reading, to reduce error */
-       for (i = 0; i < num_metric && i < MAX_NUM_MATRICS; i++) {
+       for (i = 0; i < num_metric && i < MAX_NUM_METRICS; i++) {
                u32 flag = i;
 
                ptrs[i] = bpf_map_lookup_elem(&fentry_readings, &flag);
                        return 0;
        }
 
-       for (i = 0; i < num_metric && i < MAX_NUM_MATRICS; i++) {
+       for (i = 0; i < num_metric && i < MAX_NUM_METRICS; i++) {
                struct bpf_perf_event_value___local reading;
                int err;
 
 SEC("fexit/XXX")
 int BPF_PROG(fexit_XXX)
 {
-       struct bpf_perf_event_value___local readings[MAX_NUM_MATRICS];
+       struct bpf_perf_event_value___local readings[MAX_NUM_METRICS];
        u32 cpu = bpf_get_smp_processor_id();
        u32 i, zero = 0;
        int err;
        u64 *count;
 
        /* read all events before updating the maps, to reduce error */
-       for (i = 0; i < num_metric && i < MAX_NUM_MATRICS; i++) {
+       for (i = 0; i < num_metric && i < MAX_NUM_METRICS; i++) {
                err = bpf_perf_event_read_value(&events, cpu + i * num_cpu,
                                                (void *)(readings + i),
                                                sizeof(*readings));
        count = bpf_map_lookup_elem(&counts, &zero);
        if (count) {
                *count += 1;
-               for (i = 0; i < num_metric && i < MAX_NUM_MATRICS; i++)
+               for (i = 0; i < num_metric && i < MAX_NUM_METRICS; i++)
                        fexit_update_maps(i, &readings[i]);
        }
        return 0;