1. 16 Oct, 2003 1 commit
    • Tony Luck's avatar
      [PATCH] ia64: MCA min_state area must be uncacheable · 761552e7
      Tony Luck authored
      Software Developer's Manual page 2:270, section 11.3.2.3
      says that the processor min-state save area must be in an
      uncacheable region ... but current MCA recovery code
      allocates the min-state area "ia64_mca_min_state_save_info"
      in regular kernel data/bss.
      
      This patch re-uses the same min-state area that the PAL/SAL
      used to report the error to Linux ... which mostly requires
      deleting code and declarations (some of which were wrong,
      MIN_STATE_AREA_SIZE ought to have been 58).  The real "work"
      is copying the pointer to the min-state area from the
      sal_to_os handoff structure into the os_to_sal structure.
      761552e7
  2. 15 Oct, 2003 7 commits
    • David Mosberger's avatar
      ia64: Important security fix for fsyscalls. Without this patch, the McKinley E9 · 04f8dec9
      David Mosberger authored
      	workaround caused fsyscalls to return with the wrong privilege level.
      	This patch also adds fsys_rt_sigprocmask(), which happens to be a good
      	test-case for this bug.  Only McKinley systems using fsyscalls are affected.
      	Merced and Madison are OK.
      04f8dec9
    • Ian Wienand's avatar
      [PATCH] ia64: a little more documentation in fsys.txt · 197e3123
      Ian Wienand authored
      Attached is a suggestion for a small addition to fsys.txt about how
      userspace can use fast system calls.
      
      If people think this is totally wrong, or that something like this
      might be more appropriate in our WiKi, that's fine.
      197e3123
    • David Mosberger's avatar
      ia64: Fix __delay() even more: it's just not safe to inline the delay- · cc19d58d
      David Mosberger authored
      	loop because, e.g., the compiler might decide to unroll the
      	loop when passed a constant, etc.
      cc19d58d
    • Bjorn Helgaas's avatar
      [PATCH] ia64: fix serial port naming · cdbb8f93
      Bjorn Helgaas authored
      Now that the serial driver fully supports discovery via ACPI,
      we can get rid of all the legacy junk in asm-ia64/serial.h.
      This keeps the serial driver from blindly probing I/O port
      space.
      
      This also fixes a long-standing serial device naming issue:
      ttyS0-ttyS3 were always reserved for the compiled-in
      COM ports, even if they weren't present in the box.
      Any additional PCI or ACPI ports appeared starting at
      ttyS4 (except for the special case of things described
      in the HCDP).   Now we'll just name ttyS devices in the
      order they're discovered, without any holes for non-existent
      devices.
      
      This is a little bit ugly for serial console because the HCDP
      is currently the only way we learn about serial ports before
      the actual ACPI discovery.  All HP firmware implements HCDP,
      but Intel firmware does not.  So in the absence of an HCDP,
      we have to probe for legacy COM ports.  Otherwise, the serial
      console wouldn't work until the serial driver discovers the
      port via ACPI.
      cdbb8f93
    • Nathan Scott's avatar
      [PATCH] ia64: correct ino_t to be 64 bits wide · 5772f930
      Nathan Scott authored
      This brings the kernel in sync with glibc (and all other 64-bit platforms
      other than Alpha and S390x).  This fixes ustat() and breaks nfsctl_export,
      but the latter is a deprecated interface anyhow (newer versions of
      nfsutils use "exportfs" instead).
      5772f930
    • David Mosberger's avatar
      ia64: Fix __delay() to do The Right Thing. In practice, this may · 5a86523b
      David Mosberger authored
      	cause BogoMIPS to drop to half the clock-speed with current
      	versions of GCC, but this just shows that GCC doesn't generate
      	very good code for single-cycle loops.  Perhaps it will motivate
      	someone to improve GCC in this area (though it's hardly of
      	practical value, other than for producing large BogoMIPS values).
      5a86523b
    • Jesse Barnes's avatar
      [PATCH] ia64: force on appropriate generic options · ba79587f
      Jesse Barnes authored
      Make sure that generic kernels actually build by forcing on the
      necessary options.  With this patch I was able to build a generic kernel
      out of the to-linus-2.5 tree.
      ba79587f
  3. 14 Oct, 2003 3 commits
    • Ian Wienand's avatar
      [PATCH] ia64: drop bogus "now < last_tick" message · e29f2b50
      Ian Wienand authored
      itc_get_offset() has a consistency check which is no longer valid now that
      xtime_lock is a seq_lock.  Drop the bogus check.
      e29f2b50
    • Jesse Barnes's avatar
      [PATCH] ia64: SN2 module fix · 27f02e28
      Jesse Barnes authored
      Because we're the only platform with seperate in, out, and read
      routines, we have to include the file that defines them in our machvec
      header so that users of the functions will get the right defines and not
      use the non-inline function variants (which are only necessary for
      generic kernels).
      27f02e28
    • Tony Luck's avatar
      [PATCH] ia64: Another MCA fix · 10c59cf0
      Tony Luck authored
      The definition of the pal_process_state_info_s structure
      misses out some useful pieces (e.g. the "mi" bit which indicates
      whether we should call PAL_MC_ERROR_INFO to get more details).
      
      Worse yet, some of the bits are in the wrong places (cc/tc/bc).
      
      See Volume 2 of "Intel Itanium Architecture Software Developer's
      Manual".  (In the Rev 2.1 October 2002 edition, p. 2:268 and 2:276).
      10c59cf0
  4. 13 Oct, 2003 2 commits
    • Tony Luck's avatar
      [PATCH] ia64: cannot convert region 5 address to physical by clearing bits 63:61 · d9f2ec86
      Tony Luck authored
      Another no-brainer bug fix snipped out of the quagmire of
      the MCA/TLB patch.  This one is for 2.6 only, we must use
      the new LOAD_PHYSICAL() macro to get the physical address of
      the code label that we want to jump to, the INST_VA_TO_PA()
      macro just clears the region bits, which only works for region
      7 addresses.
      d9f2ec86
    • Tony Luck's avatar
      [PATCH] ia64: infinite loop in ia64_mca_wakeup_ipi_wait · bcf50865
      Tony Luck authored
      This bugfix has been hiding inside the MCA TLB patches.
      
      There is an infinite loop in ia64_mca_wakeup_ipi_wait() because
      the compiler optimizes away the test at the bottom of the while
      loop.  It does this because IA64_MCA_WAKEUP_VECTOR is 0xf0, so
      irr_bit is known to be the constant 0x30, a.k.a. 48 in decimal.
      So when the compiler looks at the expression:
      
      
      It observes that 1' as unsigned
      long.
      bcf50865
  5. 10 Oct, 2003 8 commits
  6. 09 Oct, 2003 9 commits
  7. 08 Oct, 2003 10 commits