Xen custom %p format options. A subset, borrowed from Linux. All parameters to a %p option should be compatible with void*. Regular pointers are fine. Numbers should make use of the _p() macro. Raw buffer as hex string: %*ph 00 01 02 ... 3f %*phC 00:01:02: ... :3f %*phD 00-01-02- ... -3f %*phN 000102 ... 3f Up to 64 characters. Buffer length expected via the field_width paramter. i.e. printk("%*ph", 8, buffer); Symbol/Function pointers: %ps Symbol name with condition offset and size (iff offset != 0) e.g. printk default_idle+0x78/0x7d %pS Symbol name with unconditional offset and size e.g. printk+0/0x48 default_idle+0x78/0x7d In the case that an appropriate symbol name can't be found, %p[sS] will fall back to '%p' and print the address in hex. Domain and vCPU information: %pv Domain and vCPU ID from a 'struct vcpu *' (printed as "dv")