void* co_name; // PyCodeObject.co_name
 } FrameData;
 
-static inline __attribute__((__always_inline__)) void*
-get_thread_state(void* tls_base, PidData* pidData)
+static __always_inline void *get_thread_state(void *tls_base, PidData *pidData)
 {
        void* thread_state;
        int key;
        return thread_state;
 }
 
-static inline __attribute__((__always_inline__)) bool
-get_frame_data(void* frame_ptr, PidData* pidData, FrameData* frame, Symbol* symbol)
+static __always_inline bool get_frame_data(void *frame_ptr, PidData *pidData,
+                                          FrameData *frame, Symbol *symbol)
 {
        // read data from PyFrameObject
        bpf_probe_read(&frame->f_back,
        .max_elem = 1000,
 };
 
-static inline __attribute__((__always_inline__)) int __on_event(struct pt_regs *ctx)
+static __always_inline int __on_event(struct pt_regs *ctx)
 {
        uint64_t pid_tgid = bpf_get_current_pid_tgid();
        pid_t pid = (pid_t)(pid_tgid >> 32);
 
        uint64_t offset;
 };
 
-static inline __attribute__((always_inline))
-void *calc_location(struct strobe_value_loc *loc, void *tls_base)
+static __always_inline void *calc_location(struct strobe_value_loc *loc,
+                                          void *tls_base)
 {
        /*
         * tls_mode value is:
                : NULL;
 }
 
-static inline __attribute__((always_inline))
-void read_int_var(struct strobemeta_cfg *cfg, size_t idx, void *tls_base,
-                 struct strobe_value_generic *value,
-                 struct strobemeta_payload *data)
+static __always_inline void read_int_var(struct strobemeta_cfg *cfg,
+                                        size_t idx, void *tls_base,
+                                        struct strobe_value_generic *value,
+                                        struct strobemeta_payload *data)
 {
        void *location = calc_location(&cfg->int_locs[idx], tls_base);
        if (!location)
                data->int_vals_set_mask |= (1 << idx);
 }
 
-static inline __attribute__((always_inline))
-uint64_t read_str_var(struct strobemeta_cfg* cfg, size_t idx, void *tls_base,
-                     struct strobe_value_generic *value,
-                     struct strobemeta_payload *data, void *payload)
+static __always_inline uint64_t read_str_var(struct strobemeta_cfg *cfg,
+                                            size_t idx, void *tls_base,
+                                            struct strobe_value_generic *value,
+                                            struct strobemeta_payload *data,
+                                            void *payload)
 {
        void *location;
        uint32_t len;
        return len;
 }
 
-static inline __attribute__((always_inline))
-void *read_map_var(struct strobemeta_cfg *cfg, size_t idx, void *tls_base,
-                  struct strobe_value_generic *value,
-                  struct strobemeta_payload* data, void *payload)
+static __always_inline void *read_map_var(struct strobemeta_cfg *cfg,
+                                         size_t idx, void *tls_base,
+                                         struct strobe_value_generic *value,
+                                         struct strobemeta_payload *data,
+                                         void *payload)
 {
        struct strobe_map_descr* descr = &data->map_descrs[idx];
        struct strobe_map_raw map;
  * read_strobe_meta returns NULL, if no metadata was read; otherwise returns
  * pointer to *right after* payload ends
  */
-static inline __attribute__((always_inline))
-void *read_strobe_meta(struct task_struct* task,
-                      struct strobemeta_payload* data) {
+static __always_inline void *read_strobe_meta(struct task_struct *task,
+                                             struct strobemeta_payload *data)
+{
        pid_t pid = bpf_get_current_pid_tgid() >> 32;
        struct strobe_value_generic value = {0};
        struct strobemeta_cfg *cfg;
 
        unsigned char value[0];
 } BPF_PACKET_HEADER;
 
-static __attribute__((always_inline)) struct ip6_srh_t *get_srh(struct __sk_buff *skb)
+static __always_inline struct ip6_srh_t *get_srh(struct __sk_buff *skb)
 {
        void *cursor, *data_end;
        struct ip6_srh_t *srh;
        return srh;
 }
 
-static __attribute__((always_inline))
-int update_tlv_pad(struct __sk_buff *skb, uint32_t new_pad,
-                  uint32_t old_pad, uint32_t pad_off)
+static __always_inline int update_tlv_pad(struct __sk_buff *skb,
+                                         uint32_t new_pad, uint32_t old_pad,
+                                         uint32_t pad_off)
 {
        int err;
 
        return 0;
 }
 
-static __attribute__((always_inline))
-int is_valid_tlv_boundary(struct __sk_buff *skb, struct ip6_srh_t *srh,
-                         uint32_t *tlv_off, uint32_t *pad_size,
-                         uint32_t *pad_off)
+static __always_inline int is_valid_tlv_boundary(struct __sk_buff *skb,
+                                                struct ip6_srh_t *srh,
+                                                uint32_t *tlv_off,
+                                                uint32_t *pad_size,
+                                                uint32_t *pad_off)
 {
        uint32_t srh_off, cur_off;
        int offset_valid = 0;
        return 0;
 }
 
-static __attribute__((always_inline))
-int add_tlv(struct __sk_buff *skb, struct ip6_srh_t *srh, uint32_t tlv_off,
-           struct sr6_tlv_t *itlv, uint8_t tlv_size)
+static __always_inline int add_tlv(struct __sk_buff *skb,
+                                  struct ip6_srh_t *srh, uint32_t tlv_off,
+                                  struct sr6_tlv_t *itlv, uint8_t tlv_size)
 {
        uint32_t srh_off = (char *)srh - (char *)(long)skb->data;
        uint8_t len_remaining, new_pad;