31 Mar, 2011

1 commit


03 Sep, 2009

1 commit

  • The 32-bit parameters (len and csum) of csum_ipv6_magic() are passed in 64-bit
    registers in2 and in4. The high order 32 bits of the registers were never
    cleared, and garbage was sometimes calculated into the checksum.

    Fix this by clearing the high order 32 bits of these registers.

    Signed-off-by: Jiri Bohac
    Signed-off-by: Tony Luck

    Jiri Bohac
     

18 Oct, 2008

1 commit

  • The patch contains Intel IOMMU IA64 specific code. It defines new
    machvec dig_vtd, hooks for IOMMU, DMAR table detection, cache line flush
    function, etc.

    For a generic kernel with CONFIG_DMAR=y, if Intel IOMMU is detected,
    dig_vtd is used for machinve vector. Otherwise, kernel falls back to
    dig machine vector. Kernel parameter "machvec=dig" or "intel_iommu=off"
    can be used to force kernel to boot dig machine vector.

    Signed-off-by: Fenghua Yu
    Signed-off-by: Tony Luck

    Fenghua Yu
     

08 Dec, 2007

1 commit

  • With the unionfs patch applied I get

    ERROR: "copy_page" [fs/unionfs/unionfs.ko] undefined!

    the other architectures (some, at least) export copy_page() so I guess ia64
    should also do so.

    To do this we need to move the copy_page() functions out of lib.a and into
    built-in.o and add the EXPORT_SYMBOL().

    Cc: Sam Ravnborg
    Cc: Kyle McMartin
    Signed-off-by: Andrew Morton
    Signed-off-by: Tony Luck

    Andrew Morton
     

18 Jul, 2007

1 commit


28 Apr, 2007

1 commit

  • Fixes for various arch compilation problems:

    (*) Missing module exports.

    (*) Variable name collision when rxkad and af_rxrpc both built in
    (rxrpc_debug).

    (*) Large constant representation problem (AFS_UUID_TO_UNIX_TIME).

    (*) Configuration dependencies.

    (*) printk() format warnings.

    Signed-off-by: David Howells
    Signed-off-by: David S. Miller

    David Howells
     

07 Mar, 2007

1 commit

  • Always build ia64 xor.o because multiple config options now depend on it.

    Necessary to build .20-mm* on ia64 when, e.g., CONFIG_ASYNC_TX_DMA is
    defined. Don't know if '_ASYNC_TX_DMA makes sense on ia64. If not, maybe
    Kconfig should preclude it.

    Could have defined a Kconfig option that defaults to true if MD_RAID456 ||
    ASYNC_TX_DMA to control building of xor.o, but xor.o is only 848 bytes and
    this IS ia64...

    Signed-off-by: Lee Schermerhorn
    Cc: Bob Picco
    Cc: Eric Whitney
    Signed-off-by: Andrew Morton
    Signed-off-by: Tony Luck

    Lee Schermerhorn
     

08 Dec, 2006

2 commits

  • While working on implementing csum_ipv6_magic, I noticed that current
    version of ip_fast_csum will potentially return bits above "unsigned
    short" as 1. While no harm is done right now because all call sites
    will chop off the upper bits when it uses the return value. However,
    this is still dangerous and buggy. Here is a patch to enforce that the
    function really returns unsigned short in the native register format.

    The fix is free as there are plenty open slot to add one more asm instruction.

    Signed-off-by: Ken Chen
    Signed-off-by: Tony Luck

    Chen, Kenneth W
     
  • The asm version is 4.4 times faster than the generic C version and
    10X smaller in code size.

    Signed-off-by: Ken Chen
    Signed-off-by: Tony Luck

    Chen, Kenneth W
     

03 Dec, 2006

1 commit


04 Aug, 2006

1 commit


01 Jul, 2006

1 commit


06 May, 2006

1 commit

  • Bob Picco noted that 6edfba1b33c701108717f4e036320fc39abe1912
    dropped the -ffreestanding compiler flag from the top level
    Makefile, which allows the compiler to substitute memcpy() in
    places where strcpy() is used with a known size source string.
    But the ia64 memcpy() returns 0 for success, and "bytes copied"
    for failure.

    Fix to return the address of the destination string (like
    stdlibc version, and other architectures). There are no
    places where ia64 specific code makes use of the non-standard
    return value.

    Signed-off-by: Ken Chen
    Signed-off-by: Tony Luck

    Chen, Kenneth W
     

27 Mar, 2006

1 commit

  • - remove generic_fls64()
    - remove find_{next,first}{,_zero}_bit()
    - remove ext2_{set,clear,test,find_first_zero,find_next_zero}_bit()
    - remove minix_{test,set,test_and_clear,test,find_first_zero}_bit()
    - remove sched_find_first_bit()

    Signed-off-by: Akinobu Mita
    Cc: "Luck, Tony"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     

21 Oct, 2005

1 commit


20 Oct, 2005

1 commit

  • This introduces a limit parameter to the core bootmem allocator; The new
    parameter indicates that physical memory allocated by the bootmem
    allocator should be within the requested limit.

    We also introduce alloc_bootmem_low_pages_limit, alloc_bootmem_node_limit,
    alloc_bootmem_low_pages_node_limit apis, but alloc_bootmem_low_pages_limit
    is the only api used for swiotlb.

    The existing alloc_bootmem_low_pages() api could instead have been
    changed and made to pass right limit to the core allocator. But that
    would make the patch more intrusive for 2.6.14, as other arches use
    alloc_bootmem_low_pages(). We may be done that post 2.6.14 as a
    cleanup.

    With this, swiotlb gets memory within 4G for both x86_64 and ia64
    arches.

    Signed-off-by: Yasunori Goto
    Cc: Ravikiran G Thirumalai
    Signed-off-by: Linus Torvalds

    Yasunori Goto
     

30 Sep, 2005

1 commit

  • The swiotlb implementation is shared by both IA-64 and EM64T. However,
    the source itself lives under arch/ia64. This patch moves swiotlb.c
    from arch/ia64/lib to lib/ and fixes-up the appropriate Makefile and
    Kconfig files. No actual changes are made to swiotlb.c.

    Signed-off-by: John W. Linville
    Signed-off-by: Tony Luck

    John W. Linville
     

15 Sep, 2005

2 commits

  • Several implementations were essentialy a common piece of C code using
    the cmpxchg() macro. Put the implementation in one spot that everyone
    can share, and convert sparc64 over to using this.

    Alpha is the lone arch-specific implementation, which codes up a
    special fast path for the common case in order to avoid GP reloading
    which a pure C version would require.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Machine vector selection has always been a bit of a hack given how
    early in system boot it needs to be done. Services like ACPI namespace
    are not available and there are non-trivial problems to moving them to
    early boot. However, there's no reason we can't change to a different
    machvec later in boot when the services we need are available. By
    adding a entry point for later initialization of the swiotlb, we can add
    an error path for the hpzx1 machevec initialization and fall back to the
    DIG machine vector if IOMMU hardware isn't found in the system. Since
    ia64 uses 4GB for zone DMA (no ISA support), it's trivial to allocate a
    contiguous range from the slab for bounce buffer usage.

    Signed-off-by: Alex Williamson
    Signed-off-by: Tony Luck

    Alex Williamson
     

09 Sep, 2005

1 commit


08 Sep, 2005

1 commit


07 Sep, 2005

1 commit

  • The exception handler in copy user always expects fault occurs only on
    user space address and the fall back recovery code is written with that
    very assumption in mind. Recent source code inspection revealed that
    while it worked splendid and to the expectation under normal circumstances,
    It broke down under unexpected condition where some address calculation
    might go outside the legal address range the original copy_user was
    called for. This patch is to make copy_user exception handler more robust
    and to prevent potential memory corruption.

    Signed-off-by: Ken Chen
    Signed-off-by: Tony Luck

    Chen, Kenneth W
     

30 Aug, 2005

1 commit


27 Aug, 2005

1 commit

  • copy_page.o appeared twice in arch/ia64/lib/Makefile. The
    one in global lib-y is wrong where it should be just in
    lib-$(CONFIG_ITANIUM).

    Both copy_page.o and copy_page_mck.o are build for Itanium2
    processor and the link order will pick up the low performing
    copy_page function (originally written for itanium processor).
    In this case, we really want the copy_page_mck.o for optimized
    version.

    Signed-off-by: Kenneth Chen
    Signed-off-by: Tony Luck

    Kenneth Chen
     

19 Aug, 2005

1 commit

  • Fix swiotlb sizing to match what the comments and the kernel
    parameters documentation indicate. Given a default 16k page size kernel
    (ia64) and a 2k swiotlb page size, we're off by a multiple of 8 trying
    to size the swiotlb. When specified on the boot line, the swiotlb is
    made 8x bigger than requested. When left to the default value, it's 8x
    smaller than the comments indicate. For x86_64 the multiplier would be
    2x. The patch below fixes this. Now, what's a good default swiotlb
    size? Apparently we don't really need 64MB.

    Signed-off-by: Alex Williamson
    Signed-off-by: Tony Luck

    Alex Williamson
     

13 Jul, 2005

1 commit


04 May, 2005

3 commits

  • This is a small patch to switch fluch_icache_range() to use fc.i
    instead of fc. This would save time on processors which can establish
    i-cache coherency without flushing the cache-line out to memory (not
    that any current processors do). On existing processors, fc.i behaves
    like fc. The only caveat is that very old assemblers may not know
    about fc.i yet.

    Signed-off-by: David Mosberger-Tang
    Signed-off-by: Tony Luck

    David Mosberger-Tang
     
  • Patch below fixes 3 trivial typos which are caught by the new
    assembler (v2.169.90). Please apply.

    [Note: fix to memcpy that was also part of this patch was separately
    applied from patches by H.J. and Andreas ... so the delta here only
    has the other two fixes. -Tony]

    Signed-off-by: David Mosberger-Tang
    Signed-off-by: Tony Luck

    David Mosberger-Tang
     
  • The current ia64 assembler complains about mismatching .proc/.endp pairs.
    (Same patch also sent by H.J. Lu)

    Signed-off-by: Andreas Schwab
    Signed-off-by: Tony Luck

    Andreas Schwab
     

26 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