-#if SUPPORTED_PERSONALITIES > 1
- union {
- struct { u_int32_t base; u_int32_t len; } iov32;
- struct { u_int64_t base; u_int64_t len; } iov64;
- } iov;
-#define sizeof_iov \
- (current_wordsize == 4 ? sizeof(iov.iov32) : sizeof(iov.iov64))
-#define iov_iov_base \
- (current_wordsize == 4 ? (uint64_t) iov.iov32.base : iov.iov64.base)
-#define iov_iov_len \
- (current_wordsize == 4 ? (uint64_t) iov.iov32.len : iov.iov64.len)
-#else
- struct iovec iov;
-#define sizeof_iov sizeof(iov)
-#define iov_iov_base iov.iov_base
-#define iov_iov_len iov.iov_len
-#endif
- unsigned long size, cur, end, abbrev_end;
- int failed = 0;
+ const kernel_ulong_t *iov;
+ kernel_ulong_t iov_buf[2], len;
+ struct print_iovec_config *c = data;