| /linux/arch/x86/kernel/ |
| H A D | machine_kexec_32.c | 43 static void machine_kexec_free_page_tables(struct kimage *image) in machine_kexec_free_page_tables() argument 45 free_pages((unsigned long)image->arch.pgd, pgd_allocation_order()); in machine_kexec_free_page_tables() 46 image->arch.pgd = NULL; in machine_kexec_free_page_tables() 48 free_page((unsigned long)image->arch.pmd0); in machine_kexec_free_page_tables() 49 image->arch.pmd0 = NULL; in machine_kexec_free_page_tables() 50 free_page((unsigned long)image->arch.pmd1); in machine_kexec_free_page_tables() 51 image->arch.pmd1 = NULL; in machine_kexec_free_page_tables() 53 free_page((unsigned long)image->arch.pte0); in machine_kexec_free_page_tables() 54 image->arch.pte0 = NULL; in machine_kexec_free_page_tables() 55 free_page((unsigned long)image->arch.pte1); in machine_kexec_free_page_tables() [all …]
|
| /linux/kernel/ |
| H A D | kexec.c | 28 struct kimage *image; in kimage_alloc_init() local 41 image = do_kimage_alloc_init(); in kimage_alloc_init() 42 if (!image) in kimage_alloc_init() 45 image->start = entry; in kimage_alloc_init() 46 image->nr_segments = nr_segments; in kimage_alloc_init() 47 memcpy(image->segment, segments, nr_segments * sizeof(*segments)); in kimage_alloc_init() 52 image->control_page = crashk_res.start; in kimage_alloc_init() 53 image->type = KEXEC_TYPE_CRASH; in kimage_alloc_init() 57 ret = sanity_check_segment_list(image); in kimage_alloc_init() 67 image->control_code_page = kimage_alloc_control_pages(image, in kimage_alloc_init() [all …]
|
| H A D | kexec_internal.h | 10 int sanity_check_segment_list(struct kimage *image); 12 void kimage_free(struct kimage *image); 13 int kimage_load_segment(struct kimage *image, int idx); 14 void kimage_terminate(struct kimage *image); 15 int kimage_is_destination_range(struct kimage *image, 36 void kimage_file_post_load_cleanup(struct kimage *image); 40 static inline void kimage_file_post_load_cleanup(struct kimage *image) { } in kimage_file_post_load_cleanup() argument 48 int kho_fill_kimage(struct kimage *image); 56 static inline int kho_fill_kimage(struct kimage *image) { return 0; } in kho_fill_kimage() argument
|
| /linux/drivers/video/fbdev/core/ |
| H A D | fb_logo.c | 211 struct fb_image *image, int rotate) in fb_rotate_logo() argument 216 fb_rotate_logo_ud(image->data, dst, image->width, in fb_rotate_logo() 217 image->height); in fb_rotate_logo() 218 image->dx = info->var.xres - image->width - image->dx; in fb_rotate_logo() 219 image->dy = info->var.yres - image->height - image->dy; in fb_rotate_logo() 221 fb_rotate_logo_cw(image->data, dst, image->width, in fb_rotate_logo() 222 image->height); in fb_rotate_logo() 223 swap(image->width, image->height); in fb_rotate_logo() 224 tmp = image->dy; in fb_rotate_logo() 225 image->dy = image->dx; in fb_rotate_logo() [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/bios/ |
| H A D | image.c | 30 nvbios_imagen(struct nvkm_bios *bios, struct nvbios_image *image) in nvbios_imagen() argument 39 switch ((data = nvbios_rd16(bios, image->base + 0x00))) { in nvbios_imagen() 46 image->base, data); in nvbios_imagen() 50 if (!(data = nvbios_pcirTp(bios, image->base, &ver, &hdr, &pcir))) in nvbios_imagen() 52 image->size = pcir.image_size; in nvbios_imagen() 53 image->type = pcir.image_type; in nvbios_imagen() 54 image->last = pcir.last; in nvbios_imagen() 56 if (image->type != 0x70) { in nvbios_imagen() 57 if (!(data = nvbios_npdeTp(bios, image->base, &npde))) in nvbios_imagen() 59 image->size = npde.image_size; in nvbios_imagen() [all …]
|
| H A D | shadow.c | 55 struct nvbios_image image; in shadow_image() local 59 image.base = 0; in shadow_image() 60 image.type = 0; in shadow_image() 61 image.size = mthd->func->size(mthd->data); in shadow_image() 62 image.last = 1; in shadow_image() 70 if (!nvbios_image(bios, idx, &image)) { in shadow_image() 76 image.base, image.type, image.size); in shadow_image() 78 if (!shadow_fetch(bios, mthd, image.base + image.size)) { in shadow_image() 79 nvkm_debug(subdev, "%08x: fetch failed\n", image.base); in shadow_image() 83 switch (image.type) { in shadow_image() [all …]
|
| /linux/arch/riscv/kernel/ |
| H A D | machine_kexec.c | 31 machine_kexec_prepare(struct kimage *image) in machine_kexec_prepare() argument 33 struct kimage_arch *internal = &image->arch; in machine_kexec_prepare() 40 for (i = 0; i < image->nr_segments; i++) { in machine_kexec_prepare() 41 if (image->segment[i].memsz <= sizeof(fdt)) in machine_kexec_prepare() 44 if (image->file_mode) in machine_kexec_prepare() 45 memcpy(&fdt, image->segment[i].buf, sizeof(fdt)); in machine_kexec_prepare() 46 else if (copy_from_user(&fdt, image->segment[i].buf, sizeof(fdt))) in machine_kexec_prepare() 52 internal->fdt_addr = (unsigned long) image->segment[i].mem; in machine_kexec_prepare() 62 if (image->type != KEXEC_TYPE_CRASH) { in machine_kexec_prepare() 63 control_code_buffer = page_address(image->control_code_page); in machine_kexec_prepare() [all …]
|
| H A D | machine_kexec_file.c | 26 int arch_kimage_file_post_load_cleanup(struct kimage *image) in arch_kimage_file_post_load_cleanup() argument 28 kvfree(image->arch.fdt); in arch_kimage_file_post_load_cleanup() 29 image->arch.fdt = NULL; in arch_kimage_file_post_load_cleanup() 31 vfree(image->elf_headers); in arch_kimage_file_post_load_cleanup() 32 image->elf_headers = NULL; in arch_kimage_file_post_load_cleanup() 33 image->elf_headers_sz = 0; in arch_kimage_file_post_load_cleanup() 35 return kexec_image_post_load_cleanup_default(image); in arch_kimage_file_post_load_cleanup() 87 static char *setup_kdump_cmdline(struct kimage *image, char *cmdline, in setup_kdump_cmdline() argument 98 image->elf_load_addr); in setup_kdump_cmdline() 256 int load_extra_segments(struct kimage *image, unsigned long kernel_start, in load_extra_segments() argument [all …]
|
| H A D | kexec_elf.c | 24 static int riscv_kexec_elf_load(struct kimage *image, struct elfhdr *ehdr, in riscv_kexec_elf_load() argument 34 kbuf.image = image; in riscv_kexec_elf_load() 63 static int elf_find_pbase(struct kimage *image, unsigned long kernel_len, in elf_find_pbase() argument 86 kbuf.image = image; in elf_find_pbase() 104 image->start = ehdr->e_entry - lowest_vaddr + kbuf.mem; in elf_find_pbase() 109 static void *elf_kexec_load(struct kimage *image, char *kernel_buf, in elf_kexec_load() argument 124 ret = elf_find_pbase(image, kernel_len, &ehdr, &elf_info, in elf_kexec_load() 130 ret = riscv_kexec_elf_load(image, &ehdr, &elf_info, in elf_kexec_load() 135 ret = load_extra_segments(image, image->start, kernel_len, in elf_kexec_load()
|
| /linux/drivers/gpu/drm/qxl/ |
| H A D | qxl_image.c | 37 struct qxl_drm_image *image, in qxl_allocate_chunk() argument 53 list_add_tail(&chunk->head, &image->chunk_list); in qxl_allocate_chunk() 63 struct qxl_drm_image *image; in qxl_image_alloc_objects() local 66 image = kmalloc_obj(struct qxl_drm_image); in qxl_image_alloc_objects() 67 if (!image) in qxl_image_alloc_objects() 70 INIT_LIST_HEAD(&image->chunk_list); in qxl_image_alloc_objects() 72 ret = qxl_alloc_bo_reserved(qdev, release, sizeof(struct qxl_image), &image->bo); in qxl_image_alloc_objects() 74 kfree(image); in qxl_image_alloc_objects() 78 ret = qxl_allocate_chunk(qdev, release, image, sizeof(struct qxl_data_chunk) + stride * height); in qxl_image_alloc_objects() 80 qxl_bo_unref(&image->bo); in qxl_image_alloc_objects() [all …]
|
| /linux/arch/loongarch/kernel/ |
| H A D | machine_kexec_file.c | 29 int arch_kimage_file_post_load_cleanup(struct kimage *image) in arch_kimage_file_post_load_cleanup() argument 31 vfree(image->elf_headers); in arch_kimage_file_post_load_cleanup() 32 image->elf_headers = NULL; in arch_kimage_file_post_load_cleanup() 33 image->elf_headers_sz = 0; in arch_kimage_file_post_load_cleanup() 35 return kexec_image_post_load_cleanup_default(image); in arch_kimage_file_post_load_cleanup() 48 static void cmdline_add_initrd(struct kimage *image, unsigned long *cmdline_tmplen, in cmdline_add_initrd() argument 54 initrd, image->initrd_buf_len); in cmdline_add_initrd() 121 static void cmdline_add_elfcorehdr(struct kimage *image, unsigned long *cmdline_tmplen, in cmdline_add_elfcorehdr() argument 127 elfcorehdr_sz, image->elf_load_addr); in cmdline_add_elfcorehdr() 137 int load_other_segments(struct kimage *image, in load_other_segments() argument [all …]
|
| /linux/arch/powerpc/kexec/ |
| H A D | file_load_64.c | 52 int arch_check_excluded_range(struct kimage *image, unsigned long start, in arch_check_excluded_range() argument 58 emem = image->arch.exclude_ranges; in arch_check_excluded_range() 344 static int load_backup_segment(struct kimage *image, struct kexec_buf *kbuf) in load_backup_segment() argument 372 image->arch.backup_buf = buf; in load_backup_segment() 373 image->arch.backup_start = kbuf->mem; in load_backup_segment() 402 static int load_elfcorehdr_segment(struct kimage *image, struct kexec_buf *kbuf) in load_elfcorehdr_segment() argument 421 sync_backup_region_phdr(image, headers, false); in load_elfcorehdr_segment() 440 image->elf_load_addr = kbuf->mem; in load_elfcorehdr_segment() 448 image->elf_headers_sz = kbuf->memsz; in load_elfcorehdr_segment() 449 image->elf_headers = headers; in load_elfcorehdr_segment() [all …]
|
| /linux/arch/sh/kernel/ |
| H A D | machine_kexec.c | 41 int machine_kexec_prepare(struct kimage *image) in machine_kexec_prepare() argument 46 void machine_kexec_cleanup(struct kimage *image) in machine_kexec_cleanup() argument 50 static void kexec_info(struct kimage *image) in kexec_info() argument 54 for (i = 0; i < image->nr_segments; i++) { in kexec_info() 57 (unsigned int)image->segment[i].mem, in kexec_info() 58 (unsigned int)image->segment[i].mem + in kexec_info() 59 image->segment[i].memsz, in kexec_info() 60 (unsigned int)image->segment[i].memsz); in kexec_info() 62 printk(" start : 0x%08x\n\n", (unsigned int)image->start); in kexec_info() 69 void machine_kexec(struct kimage *image) in machine_kexec() argument [all …]
|
| /linux/drivers/video/fbdev/savage/ |
| H A D | savagefb_accel.c | 92 void savagefb_imageblit(struct fb_info *info, const struct fb_image *image) in savagefb_imageblit() argument 97 u32 *src = (u32 *) image->data; in savagefb_imageblit() 99 if (!image->width || !image->height) in savagefb_imageblit() 102 if (image->depth != 1) { in savagefb_imageblit() 103 cfb_imageblit(info, image); in savagefb_imageblit() 108 fg = image->fg_color; in savagefb_imageblit() 109 bg = image->bg_color; in savagefb_imageblit() 111 fg = ((u32 *)info->pseudo_palette)[image->fg_color]; in savagefb_imageblit() 112 bg = ((u32 *)info->pseudo_palette)[image->bg_color]; in savagefb_imageblit() 122 width = (image->width + 31) & ~31; in savagefb_imageblit() [all …]
|
| /linux/drivers/video/fbdev/mb862xx/ |
| H A D | mb862xxfb_accel.c | 71 u32 bgcolor, const struct fb_image *image, in mb86290fb_imageblit1() argument 90 line = image->data; in mb86290fb_imageblit1() 91 bytes = (image->width + 7) >> 3; in mb86290fb_imageblit1() 120 u32 bgcolor, const struct fb_image *image, in mb86290fb_imageblit8() argument 133 line = image->data; in mb86290fb_imageblit8() 134 bytes = image->width; in mb86290fb_imageblit8() 159 u32 bgcolor, const struct fb_image *image, in mb86290fb_imageblit16() argument 167 line = image->data; in mb86290fb_imageblit16() 168 bytes = image->width << 1; in mb86290fb_imageblit16() 183 const struct fb_image *image) in mb86290fb_imageblit() argument [all …]
|
| /linux/arch/s390/kernel/ |
| H A D | kexec_image.c | 16 static int kexec_file_add_kernel_image(struct kimage *image, in kexec_file_add_kernel_image() argument 21 buf.image = image; in kexec_file_add_kernel_image() 23 buf.buffer = image->kernel_buf; in kexec_file_add_kernel_image() 24 buf.bufsz = image->kernel_buf_len; in kexec_file_add_kernel_image() 28 if (image->type == KEXEC_TYPE_CRASH) in kexec_file_add_kernel_image() 33 data->kernel_buf = image->kernel_buf; in kexec_file_add_kernel_image() 35 data->parm = image->kernel_buf + PARMAREA; in kexec_file_add_kernel_image() 45 static void *s390_image_load(struct kimage *image, in s390_image_load() argument 50 return kexec_file_add_components(image, kexec_file_add_kernel_image); in s390_image_load()
|
| /linux/arch/parisc/kernel/ |
| H A D | kexec_file.c | 16 static void *elf_load(struct kimage *image, char *kernel_buf, in elf_load() argument 25 struct kexec_buf kbuf = { .image = image, .buf_min = 0, in elf_load() 32 ret = kexec_elf_load(image, &ehdr, &elf_info, &kbuf, &kernel_load_addr); in elf_load() 36 image->start = __pa(elf_info.ehdr->e_entry); in elf_load() 38 for (i = 0; i < image->nr_segments; i++) in elf_load() 39 image->segment[i].mem = __pa(image->segment[i].mem); in elf_load() 42 kernel_load_addr, image->start); in elf_load() 55 image->arch.initrd_start = kbuf.mem; in elf_load() 56 image->arch.initrd_end = kbuf.mem + initrd_len; in elf_load() 72 image->arch.cmdline = kbuf.mem; in elf_load()
|
| /linux/arch/arm/kernel/ |
| H A D | machine_kexec.c | 33 int machine_kexec_prepare(struct kimage *image) in machine_kexec_prepare() argument 39 image->arch.kernel_r2 = image->start - KEXEC_ARM_ZIMAGE_OFFSET in machine_kexec_prepare() 55 for (i = 0; i < image->nr_segments; i++) { in machine_kexec_prepare() 56 current_segment = &image->segment[i]; in machine_kexec_prepare() 67 image->arch.kernel_r2 = current_segment->mem; in machine_kexec_prepare() 72 void machine_kexec_cleanup(struct kimage *image) in machine_kexec_cleanup() argument 141 void machine_kexec(struct kimage *image) in machine_kexec() argument 156 page_list = image->head & PAGE_MASK; in machine_kexec() 158 reboot_code_buffer = page_address(image->control_code_page); in machine_kexec() 166 data->kexec_start_address = image->start; in machine_kexec() [all …]
|
| /linux/include/linux/ |
| H A D | kexec.h | 137 typedef void *(kexec_load_t)(struct kimage *image, char *kernel_buf, 159 int kexec_image_probe_default(struct kimage *image, void *buf, 161 int kexec_image_post_load_cleanup_default(struct kimage *image); 186 struct kimage *image; member 223 int kexec_load_purgatory(struct kimage *image, struct kexec_buf *kbuf); 224 int kexec_purgatory_get_set_symbol(struct kimage *image, const char *name, 227 void *kexec_purgatory_get_symbol_addr(struct kimage *image, const char *name); 231 arch_kexec_kernel_image_probe(struct kimage *image, void *buf, unsigned long buf_len) in arch_kexec_kernel_image_probe() argument 233 return kexec_image_probe_default(image, buf, buf_len); in arch_kexec_kernel_image_probe() 238 static inline int arch_kimage_file_post_load_cleanup(struct kimage *image) in arch_kimage_file_post_load_cleanup() argument [all …]
|
| /linux/drivers/gpu/drm/nouveau/dispnv50/ |
| H A D | ovly907e.c | 40 NVVAL(NV907E, SET_PRESENT_CONTROL, MIN_PRESENT_INTERVAL, asyw->image.interval)); in ovly907e_image_set() 42 PUSH_MTHD(push, NV907E, SET_CONTEXT_DMA_ISO, asyw->image.handle[0]); in ovly907e_image_set() 47 PUSH_MTHD(push, NV907E, SURFACE_SET_OFFSET, asyw->image.offset[0] >> 8); in ovly907e_image_set() 50 NVVAL(NV907E, SURFACE_SET_SIZE, WIDTH, asyw->image.w) | in ovly907e_image_set() 51 NVVAL(NV907E, SURFACE_SET_SIZE, HEIGHT, asyw->image.h), in ovly907e_image_set() 54 NVVAL(NV907E, SURFACE_SET_STORAGE, BLOCK_HEIGHT, asyw->image.blockh) | in ovly907e_image_set() 55 NVVAL(NV907E, SURFACE_SET_STORAGE, PITCH, (asyw->image.pitch[0] >> 8)) | in ovly907e_image_set() 56 NVVAL(NV907E, SURFACE_SET_STORAGE, PITCH, asyw->image.blocks[0]) | in ovly907e_image_set() 57 NVVAL(NV907E, SURFACE_SET_STORAGE, MEMORY_LAYOUT, asyw->image.layout), in ovly907e_image_set() 60 NVVAL(NV907E, SURFACE_SET_PARAMS, FORMAT, asyw->image.format) | in ovly907e_image_set() [all …]
|
| H A D | base827c.c | 38 NVVAL(NV827C, SET_PRESENT_CONTROL, BEGIN_MODE, asyw->image.mode) | in base827c_image_set() 39 NVVAL(NV827C, SET_PRESENT_CONTROL, MIN_PRESENT_INTERVAL, asyw->image.interval)); in base827c_image_set() 41 PUSH_MTHD(push, NV827C, SET_CONTEXT_DMAS_ISO(0), asyw->image.handle, 1); in base827c_image_set() 43 if (asyw->image.format == NV827C_SURFACE_SET_PARAMS_FORMAT_RF16_GF16_BF16_AF16) { in base827c_image_set() 59 PUSH_MTHD(push, NV827C, SURFACE_SET_OFFSET(0, 0), asyw->image.offset[0] >> 8, in base827c_image_set() 63 NVVAL(NV827C, SURFACE_SET_SIZE, WIDTH, asyw->image.w) | in base827c_image_set() 64 NVVAL(NV827C, SURFACE_SET_SIZE, HEIGHT, asyw->image.h), in base827c_image_set() 67 NVVAL(NV827C, SURFACE_SET_STORAGE, BLOCK_HEIGHT, asyw->image.blockh) | in base827c_image_set() 68 NVVAL(NV827C, SURFACE_SET_STORAGE, PITCH, asyw->image.pitch[0] >> 8) | in base827c_image_set() 69 NVVAL(NV827C, SURFACE_SET_STORAGE, PITCH, asyw->image.blocks[0]) | in base827c_image_set() [all …]
|
| /linux/drivers/video/fbdev/aty/ |
| H A D | mach64_accel.c | 287 void atyfb_imageblit(struct fb_info *info, const struct fb_image *image) in atyfb_imageblit() argument 290 u32 src_bytes, dx = image->dx, dy = image->dy, width = image->width; in atyfb_imageblit() 295 if (!image->width || !image->height) in atyfb_imageblit() 298 (image->depth != 1 && info->var.bits_per_pixel != image->depth)) { in atyfb_imageblit() 299 cfb_imageblit(info, image); in atyfb_imageblit() 305 switch (image->depth) { in atyfb_imageblit() 351 if (image->depth == 1 && M64_HAS(HW_TRIPLE) && image->width % 8 == 0) in atyfb_imageblit() 355 if (image->depth == 1) { in atyfb_imageblit() 359 fg = ((u32*)(info->pseudo_palette))[image->fg_color]; in atyfb_imageblit() 360 bg = ((u32*)(info->pseudo_palette))[image->bg_color]; in atyfb_imageblit() [all …]
|
| /linux/arch/powerpc/net/ |
| H A D | bpf_jit_comp.c | 52 void bpf_jit_build_fentry_stubs(u32 *image, struct codegen_context *ctx) in bpf_jit_build_fentry_stubs() argument 82 if (image) in bpf_jit_build_fentry_stubs() 83 *((unsigned long *)&image[ctx->idx]) = (unsigned long)dummy_tramp; in bpf_jit_build_fentry_stubs() 100 int bpf_jit_emit_exit_insn(u32 *image, struct codegen_context *ctx, int tmp_reg, long exit_addr) in bpf_jit_emit_exit_insn() argument 110 bpf_jit_build_epilogue(image, ctx); in bpf_jit_emit_exit_insn() 169 u8 *image = NULL; in bpf_int_jit_compile() local 228 image = (void *)hdr + ((void *)fimage - (void *)fhdr); in bpf_int_jit_compile() 297 fhdr = bpf_jit_binary_pack_alloc(alloclen, &fimage, 4, &hdr, &image, in bpf_int_jit_compile() 306 code_base = (u32 *)(image + FUNCTION_DESCR_SIZE); in bpf_int_jit_compile() 337 ((u64 *)image)[0] = (u64)fcode_base; in bpf_int_jit_compile() [all …]
|
| /linux/arch/sparc/boot/ |
| H A D | Makefile | 11 targets := tftpboot.img image zImage vmlinux.aout 15 cmd_elftoaout = $(ELFTOAOUT) $(obj)/image -o $@ 25 $(obj)/zImage: $(obj)/image FORCE 34 $(obj)/zImage: $(obj)/image FORCE 44 $(obj)/image.bin: $(obj)/image FORCE 47 $(obj)/image.gz: $(obj)/image.bin FORCE 59 $(obj)/uImage: $(obj)/image.gz FORCE 66 $(obj)/image: vmlinux FORCE 70 $(obj)/tftpboot.img: $(obj)/image $(obj)/piggyback System.map $(ROOT_IMG) FORCE
|
| /linux/security/integrity/ima/ |
| H A D | ima_kexec.c | 138 void ima_add_kexec_buffer(struct kimage *image) in ima_add_kexec_buffer() argument 140 struct kexec_buf kbuf = { .image = image, .buf_align = PAGE_SIZE, in ima_add_kexec_buffer() 151 if (image->type == KEXEC_TYPE_CRASH) in ima_add_kexec_buffer() 184 image->is_ima_segment_index_set = false; in ima_add_kexec_buffer() 192 image->ima_buffer_addr = kbuf.mem; in ima_add_kexec_buffer() 193 image->ima_buffer_size = kexec_segment_size; in ima_add_kexec_buffer() 194 image->ima_buffer = kexec_buffer; in ima_add_kexec_buffer() 195 image->ima_segment_index = image->nr_segments - 1; in ima_add_kexec_buffer() 196 image->is_ima_segment_index_set = true; in ima_add_kexec_buffer() 245 void ima_kexec_post_load(struct kimage *image) in ima_kexec_post_load() argument [all …]
|