/* Read 'n' bytes from @src, where 'n' is the size of an address on the native machine. We return the number of bytes read, which should always be 'n'. We also have to be careful when reading from @src and writing to @dst, because they can be arbitrarily aligned. Return 'n' - the number of bytes read.  */
static int dwarf_read_addr(unsigned long *src, unsigned long *dst)
/* Read 'n' bytes from @src, where 'n' is the size of an address on the native machine. We return the number of bytes read, which should always be 'n'. We also have to be careful when reading from @src and writing to @dst, because they can be arbitrarily aligned. Return 'n' - the number of bytes read.  */
static int dwarf_read_addr(unsigned long *src, unsigned long *dst)
{
	u32 val = get_unaligned(src);
	put_unaligned(val, dst);
	return sizeof(unsigned long *);
}