I liked the old comment: "Use a relocation to set patches_data[i].new_addr at module loading time" which clarifies how new_addr is getting set.