12 Oct, 2007

2 commits


25 Mar, 2007

1 commit

  • This patch fixes two places where we used plain 'x - PAGE_OFFSET' to
    achieve virtual to physical address convertions. This type of convertion
    is no more allowed since commit 6f284a2ce7b8bc49cb8455b1763357897a899abb.

    Reported-by: Maxime Bizon
    Signed-off-by: Franck Bui-Huu

    [Build fixes for machines that don't use the generic dma-coherence.h]

    Signed-off-by: Ralf Baechle

    Franck Bui-Huu
     

07 Dec, 2006

1 commit


30 Nov, 2006

1 commit

  • This is a patch to load 64-bit modules to CKSEG0 so that can be
    compiled with -msym32 option. This makes each module ~10% smaller.

    * introduce MODULE_START and MODULE_END
    * custom module_alloc()
    * PGD for modules
    * change XTLB refill handler synthesizer
    * enable -msym32 for modules again
    (revert ca78b1a5c6a6e70e052d3ea253828e49b5d07c8a)

    New XTLB refill handler looks like this:

    80000080 dmfc0 k0,C0_BADVADDR
    80000084 bltz k0,800000e4 # goto l_module_alloc
    80000088 lui k1,0x8046 # %high(pgd_current)
    8000008c ld k1,24600(k1) # %low(pgd_current)
    80000090 dsrl k0,k0,0x1b # l_vmalloc_done:
    80000094 andi k0,k0,0x1ff8
    80000098 daddu k1,k1,k0
    8000009c dmfc0 k0,C0_BADVADDR
    800000a0 ld k1,0(k1)
    800000a4 dsrl k0,k0,0x12
    800000a8 andi k0,k0,0xff8
    800000ac daddu k1,k1,k0
    800000b0 dmfc0 k0,C0_XCONTEXT
    800000b4 ld k1,0(k1)
    800000b8 andi k0,k0,0xff0
    800000bc daddu k1,k1,k0
    800000c0 ld k0,0(k1)
    800000c4 ld k1,8(k1)
    800000c8 dsrl k0,k0,0x6
    800000cc mtc0 k0,C0_ENTRYLO0
    800000d0 dsrl k1,k1,0x6
    800000d4 mtc0 k1,C0_ENTRYL01
    800000d8 nop
    800000dc tlbwr
    800000e0 eret
    800000e4 dsll k1,k0,0x2 # l_module_alloc:
    800000e8 bgez k1,80000008 # goto l_vmalloc
    800000ec lui k1,0xc000
    800000f0 dsubu k0,k0,k1
    800000f4 lui k1,0x8046 # %high(module_pg_dir)
    800000f8 beq zero,zero,80000000
    800000fc nop
    80000000 beq zero,zero,80000090 # goto l_vmalloc_done
    80000004 daddiu k1,k1,0x4000
    80000008 dsll32 k1,k1,0x0 # l_vmalloc:
    8000000c dsubu k0,k0,k1
    80000010 beq zero,zero,80000090 # goto l_vmalloc_done
    80000014 lui k1,0x8046 # %high(swapper_pg_dir)

    Signed-off-by: Atsushi Nemoto
    Signed-off-by: Ralf Baechle

    Atsushi Nemoto
     

02 Nov, 2006

1 commit


27 Sep, 2006

1 commit

  • The code in pgtable-64.h assumes TASK_SIZE is always bigger than a first
    level PGDIR_SIZE. This is not the case for 64K pages, where task size is
    40 bits (1TB) and a pgd entry can map 42 bits. This leads to
    USER_PTRS_PER_PGD being zero for 64K pages.

    Signed-off-by: Peter Watkins
    Signed-off-by: Ralf Baechle

    Peter Watkins
     

26 Sep, 2006

1 commit

  • One of the changes necessary for shared page tables is to standardize the
    pxx_page macros. pte_page and pmd_page have always returned the struct
    page associated with their entry, while pte_page_kernel and pmd_page_kernel
    have returned the kernel virtual address. pud_page and pgd_page, on the
    other hand, return the kernel virtual address.

    Shared page tables needs pud_page and pgd_page to return the actual page
    structures. There are very few actual users of these functions, so it is
    simple to standardize their usage.

    Since this is basic cleanup, I am submitting these changes as a standalone
    patch. Per Hugh Dickins' comments about it, I am also changing the
    pxx_page_kernel macros to pxx_page_vaddr to clarify their meaning.

    Signed-off-by: Dave McCracken
    Cc: Hugh Dickins
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave McCracken
     

21 Jun, 2006

1 commit

  • * git://git.infradead.org/hdrcleanup-2.6: (63 commits)
    [S390] __FD_foo definitions.
    Switch to __s32 types in joystick.h instead of C99 types for consistency.
    Add to headers included for userspace in
    Move inclusion of out of user scope in asm-x86_64/mtrr.h
    Remove struct fddi_statistics from user view in
    Move user-visible parts of drivers/s390/crypto/z90crypt.h to include/asm-s390
    Revert include/media changes: Mauro says those ioctls are only used in-kernel(!)
    Include and use __uXX types in
    Use __uXX types in , include too
    Remove private struct dx_hash_info from public view in
    Include and use __uXX types in
    Use __uXX types in for struct divert_blk et al.
    Use __u32 for elf_addr_t in , not u32. It's user-visible.
    Remove PPP_FCS from user view in , remove __P mess entirely
    Use __uXX types in user-visible structures in
    Don't use 'u32' in user-visible struct ip_conntrack_old_tuple.
    Use __uXX types for S390 DASD volume label definitions which are user-visible
    S390 BIODASDREADCMB ioctl should use __u64 not u64 type.
    Remove unneeded inclusion of from
    Fix private integer types used in V4L2 ioctls.
    ...

    Manually resolve conflict in include/linux/mtd/physmap.h

    Linus Torvalds
     

06 Jun, 2006

1 commit

  • Fix the non-linear memory mapping done via remap_file_pages() -- it
    didn't work on any MIPS CPU because the page offset clashing with
    _PAGE_FILE and some other page protection bits which should have been left
    zeros for this kind of pages.

    Signed-off-by: Konstantin Baydarov
    Signed-off-by: Sergei Shtylyov
    Signed-off-by: Ralf Baechle

    Sergei Shtylyov
     

26 Apr, 2006

1 commit


31 Oct, 2005

1 commit

  • This patch removes page_pte_prot and page_pte macros from all
    architectures. Some architectures define both, some only page_pte (broken)
    and others none. These macros are not used anywhere.

    page_pte_prot(page, prot) is identical to mk_pte(page, prot) and
    page_pte(page) is identical to page_pte_prot(page, __pgprot(0)).

    * The following architectures define both page_pte_prot and page_pte

    arm, arm26, ia64, sh64, sparc, sparc64

    * The following architectures define only page_pte (broken)

    frv, i386, m32r, mips, sh, x86-64

    * All other architectures define neither

    Signed-off-by: Tejun Heo
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tejun Heo
     

30 Oct, 2005

3 commits


20 Apr, 2005

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds