kip 133 kernel/kprobes.c struct kprobe_insn_page *kip; kip 140 kernel/kprobes.c list_for_each_entry_rcu(kip, &c->pages, list) { kip 141 kernel/kprobes.c if (kip->nused < slots_per_page(c)) { kip 144 kernel/kprobes.c if (kip->slot_used[i] == SLOT_CLEAN) { kip 145 kernel/kprobes.c kip->slot_used[i] = SLOT_USED; kip 146 kernel/kprobes.c kip->nused++; kip 147 kernel/kprobes.c slot = kip->insns + (i * c->insn_size); kip 153 kernel/kprobes.c kip->nused = slots_per_page(c); kip 164 kernel/kprobes.c kip = kmalloc(KPROBE_INSN_PAGE_SIZE(slots_per_page(c)), GFP_KERNEL); kip 165 kernel/kprobes.c if (!kip) kip 173 kernel/kprobes.c kip->insns = c->alloc(); kip 174 kernel/kprobes.c if (!kip->insns) { kip 175 kernel/kprobes.c kfree(kip); kip 178 kernel/kprobes.c INIT_LIST_HEAD(&kip->list); kip 179 kernel/kprobes.c memset(kip->slot_used, SLOT_CLEAN, slots_per_page(c)); kip 180 kernel/kprobes.c kip->slot_used[0] = SLOT_USED; kip 181 kernel/kprobes.c kip->nused = 1; kip 182 kernel/kprobes.c kip->ngarbage = 0; kip 183 kernel/kprobes.c kip->cache = c; kip 184 kernel/kprobes.c list_add_rcu(&kip->list, &c->pages); kip 185 kernel/kprobes.c slot = kip->insns; kip 192 kernel/kprobes.c static int collect_one_slot(struct kprobe_insn_page *kip, int idx) kip 194 kernel/kprobes.c kip->slot_used[idx] = SLOT_CLEAN; kip 195 kernel/kprobes.c kip->nused--; kip 196 kernel/kprobes.c if (kip->nused == 0) { kip 203 kernel/kprobes.c if (!list_is_singular(&kip->list)) { kip 204 kernel/kprobes.c list_del_rcu(&kip->list); kip 206 kernel/kprobes.c kip->cache->free(kip->insns); kip 207 kernel/kprobes.c kfree(kip); kip 216 kernel/kprobes.c struct kprobe_insn_page *kip, *next; kip 221 kernel/kprobes.c list_for_each_entry_safe(kip, next, &c->pages, list) { kip 223 kernel/kprobes.c if (kip->ngarbage == 0) kip 225 kernel/kprobes.c kip->ngarbage = 0; /* we will collect all garbages */ kip 227 kernel/kprobes.c if (kip->slot_used[i] == SLOT_DIRTY && collect_one_slot(kip, i)) kip 238 kernel/kprobes.c struct kprobe_insn_page *kip; kip 243 kernel/kprobes.c list_for_each_entry_rcu(kip, &c->pages, list) { kip 244 kernel/kprobes.c idx = ((long)slot - (long)kip->insns) / kip 251 kernel/kprobes.c kip = NULL; kip 255 kernel/kprobes.c if (kip) { kip 257 kernel/kprobes.c WARN_ON(kip->slot_used[idx] != SLOT_USED); kip 259 kernel/kprobes.c kip->slot_used[idx] = SLOT_DIRTY; kip 260 kernel/kprobes.c kip->ngarbage++; kip 264 kernel/kprobes.c collect_one_slot(kip, idx); kip 277 kernel/kprobes.c struct kprobe_insn_page *kip; kip 281 kernel/kprobes.c list_for_each_entry_rcu(kip, &c->pages, list) { kip 282 kernel/kprobes.c if (addr >= (unsigned long)kip->insns && kip 283 kernel/kprobes.c addr < (unsigned long)kip->insns + PAGE_SIZE) { kip 591 security/security.c static int lsm_ipc_alloc(struct kern_ipc_perm *kip) kip 594 security/security.c kip->security = NULL; kip 598 security/security.c kip->security = kzalloc(blob_sizes.lbs_ipc, GFP_KERNEL); kip 599 security/security.c if (kip->security == NULL)