copied = 0;
list_for_each(pos, &my_pages) {
unsigned long to_copy;
- page = list_entry(pos, struct page, list);
+ void *addr;
+ page = list_entry(pos, struct page, list);
to_copy = min(total - off, PAGE_SIZE);
if (to_copy == 0) {
off = 0;
to_copy = min(debug_size - off, PAGE_SIZE);
}
finish_partial:
- memcpy(kmap(page), debug_buf + off, to_copy);
- kunmap(page);
+ addr = kmap_atomic(page, KM_USER0);
+ memcpy(addr, debug_buf + off, to_copy);
+ kunmap_atomic(addr, KM_USER0);
copied += to_copy;
if (copied >= total)
break;
subsys, mask, smp_processor_id(),
tv.tv_sec, tv.tv_usec, stack, current->pid);
max_nob -= prefix_nob;
- if(*(format + strlen(format) - 1) != '\n')
- *(format + strlen(format)) = '\n';
#if defined(__arch_um__) && (LINUX_VERSION_CODE < KERNEL_VERSION(2,4,20))
msg_nob = snprintf(debug_buf + debug_off + prefix_nob, max_nob,
char *portals_debug_dumpstack(void)
{
asm("int $3");
+ return "dump stack";
}
#elif defined(__i386__)