Lines Matching refs:note

68  * .note.stapsdt ELF section. Here's an example USDT definition as emitted by
178 * note) as a lookup key in a hashmap. USDT spec string uniquely defines
193 #define USDT_NOTE_SEC ".note.stapsdt"
576 static int parse_usdt_spec(struct usdt_spec *spec, const struct usdt_note *note, __u64 usdt_cookie);
623 struct usdt_note note;
627 err = parse_usdt_note(elf, path, &nhdr, data->d_buf, name_off, desc_off, &note);
631 if (strcmp(note.provider, usdt_provider) != 0 || strcmp(note.name, usdt_name) != 0)
637 * Each SDT probe also expands into a non-allocated ELF note. You can
639 * see below for details. Because the note is non-allocated, it means
643 * However, this means that prelink won't adjust the note's contents
651 * Each probe note records the link-time address of the .stapsdt.base
653 * base address stored in the note with the .stapsdt.base section's
661 usdt_abs_ip = note.loc_addr;
663 usdt_abs_ip += base_addr - note.base_addr;
730 note.loc_addr, note.base_addr, usdt_abs_ip, usdt_rel_ip, note.args,
734 if (note.sema_addr) {
742 seg = find_elf_seg(segs, seg_cnt, note.sema_addr);
746 usdt_provider, usdt_name, path, note.sema_addr);
753 note.sema_addr);
757 usdt_sema_off = note.sema_addr - seg->start + seg->offset;
761 path, note.sema_addr, note.base_addr, usdt_sema_off,
783 target->spec_str = note.args;
785 err = parse_usdt_spec(&target->spec, &note, usdt_cookie);
1130 /* Parse out USDT ELF note from '.note.stapsdt' section.
1135 struct usdt_note *note)
1141 /* sanity check USDT note name and type first */
1147 /* sanity check USDT note contents ("description" in ELF terminology) */
1175 note->provider = provider;
1176 note->name = name;
1178 note->args = "";
1180 note->args = args;
1181 note->loc_addr = addrs[0];
1182 note->base_addr = addrs[1];
1183 note->sema_addr = addrs[2];
1190 static int parse_usdt_spec(struct usdt_spec *spec, const struct usdt_note *note, __u64 usdt_cookie)
1199 s = note->args;
1203 USDT_MAX_ARG_CNT, note->provider, note->name, note->args);