Re: [PATCH v9 01/17] h8300: Assembly headers.
From: Tobias Klauser
Date: Mon Apr 27 2015 - 03:42:47 EST
On 2015-04-27 at 07:35:08 +0200, Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx> wrote:
[...]
> diff --git a/arch/h8300/include/asm/elf.h b/arch/h8300/include/asm/elf.h
> new file mode 100644
> index 0000000..09031d0
> --- /dev/null
> +++ b/arch/h8300/include/asm/elf.h
> @@ -0,0 +1,101 @@
> +#ifndef __ASM_H8300_ELF_H
> +#define __ASM_H8300_ELF_H
> +
> +/*
> + * ELF register definitions..
> + */
> +
> +#include <asm/ptrace.h>
> +#include <asm/user.h>
> +
> +typedef unsigned long elf_greg_t;
> +
> +#define ELF_NGREG (sizeof(struct user_regs_struct) / sizeof(elf_greg_t))
> +typedef elf_greg_t elf_gregset_t[ELF_NGREG];
> +typedef unsigned long elf_fpregset_t;
> +
> +/*
> + * This is used to ensure we don't load something for the wrong architecture.
> + */
> +#define elf_check_arch(x) ((x)->e_machine == EM_H8_300)
EM_H8_300 is still used before it is introduced in patch 15/17, please
change the patch order. Otherwise you break bisectability.
[...]
> diff --git a/arch/h8300/include/asm/pgtable.h b/arch/h8300/include/asm/pgtable.h
> new file mode 100644
> index 0000000..8341db6
> --- /dev/null
> +++ b/arch/h8300/include/asm/pgtable.h
> @@ -0,0 +1,49 @@
> +#ifndef _H8300_PGTABLE_H
> +#define _H8300_PGTABLE_H
> +#include <asm-generic/pgtable-nopud.h>
> +#include <asm-generic/pgtable.h>
> +#define pgtable_cache_init() do { } while (0)
> +extern void paging_init(void);
> +#define PAGE_NONE __pgprot(0) /* these mean nothing to NO_MM */
> +#define PAGE_SHARED __pgprot(0) /* these mean nothing to NO_MM */
> +#define PAGE_COPY __pgprot(0) /* these mean nothing to NO_MM */
> +#define PAGE_READONLY __pgprot(0) /* these mean nothing to NO_MM */
> +#define PAGE_KERNEL __pgprot(0) /* these mean nothing to NO_MM */
> +#define __swp_type(x) (0)
> +#define __swp_offset(x) (0)
> +#define __swp_entry(typ, off) ((swp_entry_t) { ((typ) | ((off) << 7)) })
> +#define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) })
> +#define __swp_entry_to_pte(x) ((pte_t) { (x).val })
> +#define kern_addr_valid(addr) (1)
> +#define pgprot_writecombine(prot) (prot)
> +#define pgprot_noncached pgprot_writecombine
> +
> +static inline int pte_file(pte_t pte) { return 0; }
No need to define pte_file() anymore. Please see my review comments for
v8.
> +#define swapper_pg_dir ((pgd_t *) 0)
> +/*
> + * ZERO_PAGE is a global shared page that is always zero: used
> + * for zero-mapped memory areas etc..
> + */
> +#define ZERO_PAGE(vaddr) (virt_to_page(0))
> +
> +/*
> + * These would be in other places but having them here reduces the diffs.
> + */
> +extern unsigned int kobjsize(const void *objp);
> +extern int is_in_rom(unsigned long);
These aren't needed as well, as mentioned in my earlier review comments.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/