As Srikar mentioned, the least we start with is 1 page. Though you can
Well, the alternatives are very unappealing. Emulation and single-steppingSo how big chunks of the address space are we talking here for uprobes?
are going to be very slow compared to a couple of jumps.
have as many probes as you want, there are certain optimizations we can
do, depending on the most common usecases.
For eg., if you'd consider the start of a routine to be the most
commonly traced location, most routines in a binary would generally
start with the same instruction (say push %ebp), and we can refcount a
slot with that instruction to be used for all probes of the same
instruction.