Hi Marcelo, Please do a bk pull http://lia64.bkbits.net/to-marcelo-2.4 This will update the following files: arch/ia64/sn/fakeprom/runsim | 387 - arch/ia64/sn/io/alenlist.c | 899 --- arch/ia64/sn/io/ate_utils.c | 204 arch/ia64/sn/io/eeprom.c | 1422 ---- arch/ia64/sn/io/efi-rtc.c | 185 arch/ia64/sn/io/hcl.c | 1531 ----- arch/ia64/sn/io/hcl_util.c | 200 arch/ia64/sn/io/hubdev.c | 132 arch/ia64/sn/io/hubspc.c | 251 arch/ia64/sn/io/ifconfig_bus.c | 345 - arch/ia64/sn/io/ifconfig_net.c | 298 - arch/ia64/sn/io/invent.c | 224 arch/ia64/sn/io/klconflib.c | 1046 --- arch/ia64/sn/io/klgraph.c | 795 -- arch/ia64/sn/io/klgraph_hack.c | 341 - arch/ia64/sn/io/l1.c | 3143 ----------- arch/ia64/sn/io/l1_command.c | 1378 ---- arch/ia64/sn/io/labelcl.c | 654 -- arch/ia64/sn/io/ml_SN_init.c | 235 arch/ia64/sn/io/ml_iograph.c | 1570 ----- arch/ia64/sn/io/module.c | 312 - arch/ia64/sn/io/pci.c | 294 - arch/ia64/sn/io/pci_bus_cvlink.c | 743 -- arch/ia64/sn/io/pci_dma.c | 700 -- arch/ia64/sn/io/pciba.c | 916 --- arch/ia64/sn/io/pciio.c | 1511 ----- arch/ia64/sn/io/sgi_io_init.c | 336 - arch/ia64/sn/io/sn1/Makefile | 25 arch/ia64/sn/io/sn1/eeprom.c | 1421 ---- arch/ia64/sn/io/sn1/efi-rtc.c | 202 arch/ia64/sn/io/sn1/hub_intr.c | 307 - arch/ia64/sn/io/sn1/hubcounters.c | 282 arch/ia64/sn/io/sn1/huberror.c | 228 arch/ia64/sn/io/sn1/ip37.c | 47 arch/ia64/sn/io/sn1/klconflib.c | 979 --- arch/ia64/sn/io/sn1/klgraph.c | 940 --- arch/ia64/sn/io/sn1/l1.c | 3124 ---------- arch/ia64/sn/io/sn1/l1_command.c | 1409 ---- arch/ia64/sn/io/sn1/mem_refcnt.c | 220 arch/ia64/sn/io/sn1/ml_SN_init.c | 211 arch/ia64/sn/io/sn1/ml_SN_intr.c | 1154 ---- arch/ia64/sn/io/sn1/ml_iograph.c | 1505 ----- arch/ia64/sn/io/sn1/module.c | 311 - arch/ia64/sn/io/sn1/pci_bus_cvlink.c | 696 -- arch/ia64/sn/io/sn1/pcibr.c | 7704 --------------------------- arch/ia64/sn/io/sn1/pciio.c | 1681 ----- arch/ia64/sn/io/sn1/sgi_io_init.c | 324 - arch/ia64/sn/io/sn1/xbow.c | 1086 --- arch/ia64/sn/io/sn1/xtalk.c | 1003 --- arch/ia64/sn/io/sn2/efi-rtc.c | 202 arch/ia64/sn/io/sn2/l1.c | 291 - arch/ia64/sn/io/sn2/pci_bus_cvlink.c | 811 -- arch/ia64/sn/io/sn2/pcibr/pcibr_idbg.c | 147 arch/ia64/sn/io/sn2/sgi_io_init.c | 230 arch/ia64/sn/io/stubs.c | 139 arch/ia64/sn/io/xbow.c | 1325 ---- arch/ia64/sn/io/xtalk.c | 1024 --- arch/ia64/sn/kernel/bte_regr_test.c | 1062 --- arch/ia64/sn/kernel/iomv.c | 115 arch/ia64/sn/kernel/llsc4.c | 1044 --- arch/ia64/sn/kernel/llsc4.h | 107 arch/ia64/sn/kernel/misctest.c | 371 - arch/ia64/sn/kernel/sn1/Makefile | 47 arch/ia64/sn/kernel/sn1/cache.c | 81 arch/ia64/sn/kernel/sn1/error.c | 187 arch/ia64/sn/kernel/sn1/iomv.c | 65 arch/ia64/sn/kernel/sn1/sn1_smp.c | 476 - arch/ia64/sn/kernel/sn1/synergy.c | 533 - arch/ia64/sn/kernel/sn2/iomv.c | 68 arch/ia64/sn/kernel/sn_asm.S | 107 arch/ia64/sn/tools/make_textsym | 171 include/asm-ia64/machvec_sn1.h | 97 include/asm-ia64/sn/ate_utils.h | 51 include/asm-ia64/sn/bte_copy.h | 382 - include/asm-ia64/sn/eeprom.h | 384 - include/asm-ia64/sn/gda.h | 109 include/asm-ia64/sn/hack.h | 66 include/asm-ia64/sn/hires_clock.h | 52 include/asm-ia64/sn/idle.h | 44 include/asm-ia64/sn/intr_public.h | 19 include/asm-ia64/sn/mca.h | 128 include/asm-ia64/sn/nic.h | 129 include/asm-ia64/sn/sn1/addrs.h | 275 include/asm-ia64/sn/sn1/arch.h | 89 include/asm-ia64/sn/sn1/bedrock.h | 74 include/asm-ia64/sn/sn1/hubdev.h | 21 include/asm-ia64/sn/sn1/hubio.h | 5016 ----------------- include/asm-ia64/sn/sn1/hubio_next.h | 762 -- include/asm-ia64/sn/sn1/hublb.h | 1607 ----- include/asm-ia64/sn/sn1/hublb_next.h | 109 include/asm-ia64/sn/sn1/hubmd.h | 2476 -------- include/asm-ia64/sn/sn1/hubmd_next.h | 812 -- include/asm-ia64/sn/sn1/hubni.h | 1781 ------ include/asm-ia64/sn/sn1/hubni_next.h | 174 include/asm-ia64/sn/sn1/hubpi.h | 4263 -------------- include/asm-ia64/sn/sn1/hubpi_next.h | 331 - include/asm-ia64/sn/sn1/hubspc.h | 24 include/asm-ia64/sn/sn1/hubstat.h | 56 include/asm-ia64/sn/sn1/hubxb.h | 1288 ---- include/asm-ia64/sn/sn1/hubxb_next.h | 32 include/asm-ia64/sn/sn1/hwcntrs.h | 96 include/asm-ia64/sn/sn1/intr.h | 237 include/asm-ia64/sn/sn1/intr_public.h | 53 include/asm-ia64/sn/sn1/ip27config.h | 657 -- include/asm-ia64/sn/sn1/mem_refcnt.h | 25 include/asm-ia64/sn/sn1/mmzone_sn1.h | 149 include/asm-ia64/sn/sn1/slotnum.h | 87 include/asm-ia64/sn/sn1/sn_private.h | 292 - include/asm-ia64/sn/sn1/synergy.h | 184 include/asm-ia64/sn/sn2/mmzone_sn2.h | 165 include/asm-ia64/sn/sn_pio_sync.h | 53 include/asm-ia64/sn/snconfig.h | 18 include/asm-ia64/sn/systeminfo.h | 73 arch/ia64/Makefile | 33 arch/ia64/config.in | 4 arch/ia64/configs/dig | 25 arch/ia64/configs/generic | 27 arch/ia64/configs/ski | 21 arch/ia64/configs/zx1 | 27 arch/ia64/defconfig | 27 arch/ia64/dig/machvec.c | 3 arch/ia64/dig/setup.c | 4 arch/ia64/hp/common/sba_iommu.c | 385 - arch/ia64/hp/sim/hpsim_console.c | 12 arch/ia64/hp/sim/hpsim_irq.c | 16 arch/ia64/hp/sim/hpsim_machvec.c | 3 arch/ia64/hp/zx1/hpzx1_machvec.c | 3 arch/ia64/ia32/binfmt_elf32.c | 2 arch/ia64/ia32/ia32_entry.S | 7 arch/ia64/ia32/ia32_ioctl.c | 2 arch/ia64/ia32/sys_ia32.c | 155 arch/ia64/kernel/acpi.c | 321 - arch/ia64/kernel/brl_emu.c | 10 arch/ia64/kernel/efi.c | 21 arch/ia64/kernel/efivars.c | 128 arch/ia64/kernel/entry.S | 55 arch/ia64/kernel/gate.S | 49 arch/ia64/kernel/head.S | 6 arch/ia64/kernel/ia64_ksyms.c | 4 arch/ia64/kernel/iosapic.c | 282 arch/ia64/kernel/irq.c | 10 arch/ia64/kernel/irq_ia64.c | 6 arch/ia64/kernel/irq_lsapic.c | 16 arch/ia64/kernel/machvec.c | 2 arch/ia64/kernel/mca.c | 663 +- arch/ia64/kernel/mca_asm.S | 8 arch/ia64/kernel/palinfo.c | 97 arch/ia64/kernel/pci.c | 125 arch/ia64/kernel/perfmon.c | 1102 ++- arch/ia64/kernel/perfmon_mckinley.h | 11 arch/ia64/kernel/process.c | 43 arch/ia64/kernel/ptrace.c | 199 arch/ia64/kernel/sal.c | 18 arch/ia64/kernel/salinfo.c | 316 + arch/ia64/kernel/setup.c | 29 arch/ia64/kernel/sigframe.h | 2 arch/ia64/kernel/signal.c | 23 arch/ia64/kernel/smpboot.c | 89 arch/ia64/kernel/sys_ia64.c | 32 arch/ia64/kernel/time.c | 25 arch/ia64/kernel/traps.c | 47 arch/ia64/kernel/unwind.c | 513 + arch/ia64/kernel/unwind_i.h | 3 arch/ia64/lib/memcpy_mck.S | 6 arch/ia64/lib/memset.S | 6 arch/ia64/lib/swiotlb.c | 2 arch/ia64/mm/extable.c | 7 arch/ia64/mm/fault.c | 39 arch/ia64/mm/init.c | 4 arch/ia64/mm/tlb.c | 18 arch/ia64/scripts/check-gas-for-hint.S | 2 arch/ia64/scripts/unwcheck.sh | 109 arch/ia64/sn/fakeprom/Makefile | 9 arch/ia64/sn/fakeprom/README | 2 arch/ia64/sn/fakeprom/fpmem.c | 78 arch/ia64/sn/fakeprom/fpmem.h | 33 arch/ia64/sn/fakeprom/fprom.lds | 2 arch/ia64/sn/fakeprom/fpromasm.S | 18 arch/ia64/sn/fakeprom/fw-emu.c | 51 arch/ia64/sn/fakeprom/klgraph_init.c | 330 - arch/ia64/sn/fakeprom/main.c | 18 arch/ia64/sn/io/Makefile | 39 arch/ia64/sn/io/ate_utils.c | 3 arch/ia64/sn/io/cdl.c | 140 arch/ia64/sn/io/drivers/Makefile | 18 arch/ia64/sn/io/drivers/hubdev.c | 106 arch/ia64/sn/io/drivers/ifconfig_net.c | 302 + arch/ia64/sn/io/drivers/ioconfig_bus.c | 433 + arch/ia64/sn/io/drivers/pciba.c | 945 +++ arch/ia64/sn/io/hwgdfs/Makefile | 18 arch/ia64/sn/io/hwgdfs/hcl.c | 1006 +++ arch/ia64/sn/io/hwgdfs/hcl_util.c | 202 arch/ia64/sn/io/hwgdfs/invent_stub.c | 146 arch/ia64/sn/io/hwgdfs/labelcl.c | 653 ++ arch/ia64/sn/io/hwgfs/Makefile | 19 arch/ia64/sn/io/hwgfs/hcl.c | 948 +++ arch/ia64/sn/io/hwgfs/hcl_util.c | 200 arch/ia64/sn/io/hwgfs/hwgfs.h | 23 arch/ia64/sn/io/hwgfs/interface.c | 326 + arch/ia64/sn/io/hwgfs/invent_stub.c | 148 arch/ia64/sn/io/hwgfs/labelcl.c | 657 ++ arch/ia64/sn/io/hwgfs/ramfs.c | 341 + arch/ia64/sn/io/ifconfig_net.c | 6 arch/ia64/sn/io/io.c | 204 arch/ia64/sn/io/machvec/Makefile | 18 arch/ia64/sn/io/machvec/iomv.c | 75 arch/ia64/sn/io/machvec/pci.c | 297 + arch/ia64/sn/io/machvec/pci_bus_cvlink.c | 950 +++ arch/ia64/sn/io/machvec/pci_dma.c | 592 ++ arch/ia64/sn/io/pciba.c | 28 arch/ia64/sn/io/platform_init/Makefile | 16 arch/ia64/sn/io/platform_init/irix_io_init.c | 89 arch/ia64/sn/io/platform_init/sgi_io_init.c | 113 arch/ia64/sn/io/sgi_if.c | 79 arch/ia64/sn/io/sgi_io_sim.c | 77 arch/ia64/sn/io/sn1/hubcounters.c | 2 arch/ia64/sn/io/sn1/pcibr.c | 32 arch/ia64/sn/io/sn2/Makefile | 10 arch/ia64/sn/io/sn2/bte_error.c | 324 - arch/ia64/sn/io/sn2/geo_op.c | 2 arch/ia64/sn/io/sn2/kdba_io.c | 76 arch/ia64/sn/io/sn2/klconflib.c | 275 arch/ia64/sn/io/sn2/klgraph.c | 74 arch/ia64/sn/io/sn2/l1.c | 90 arch/ia64/sn/io/sn2/l1_command.c | 110 arch/ia64/sn/io/sn2/ml_SN_init.c | 25 arch/ia64/sn/io/sn2/ml_SN_intr.c | 120 arch/ia64/sn/io/sn2/ml_iograph.c | 448 - arch/ia64/sn/io/sn2/module.c | 20 arch/ia64/sn/io/sn2/pcibr/Makefile | 15 arch/ia64/sn/io/sn2/pcibr/pcibr_ate.c | 167 arch/ia64/sn/io/sn2/pcibr/pcibr_config.c | 198 arch/ia64/sn/io/sn2/pcibr/pcibr_dvr.c | 1467 +---- arch/ia64/sn/io/sn2/pcibr/pcibr_error.c | 449 - arch/ia64/sn/io/sn2/pcibr/pcibr_hints.c | 35 arch/ia64/sn/io/sn2/pcibr/pcibr_intr.c | 194 arch/ia64/sn/io/sn2/pcibr/pcibr_rrb.c | 206 arch/ia64/sn/io/sn2/pcibr/pcibr_slot.c | 478 - arch/ia64/sn/io/sn2/pciio.c | 611 -- arch/ia64/sn/io/sn2/pic.c | 204 arch/ia64/sn/io/sn2/shub.c | 292 - arch/ia64/sn/io/sn2/shub_intr.c | 31 arch/ia64/sn/io/sn2/shuberror.c | 302 - arch/ia64/sn/io/sn2/shubio.c | 36 arch/ia64/sn/io/sn2/xbow.c | 440 - arch/ia64/sn/io/sn2/xtalk.c | 283 arch/ia64/sn/io/xswitch.c | 71 arch/ia64/sn/kernel/Makefile | 22 arch/ia64/sn/kernel/bte.c | 320 - arch/ia64/sn/kernel/idle.c | 36 arch/ia64/sn/kernel/irq.c | 368 - arch/ia64/sn/kernel/machvec.c | 29 arch/ia64/sn/kernel/mca.c | 30 arch/ia64/sn/kernel/probe.c | 2 arch/ia64/sn/kernel/setup.c | 508 - arch/ia64/sn/kernel/sn2/Makefile | 10 arch/ia64/sn/kernel/sn2/cache.c | 7 arch/ia64/sn/kernel/sn2/io.c | 91 arch/ia64/sn/kernel/sn2/prominfo_proc.c | 367 + arch/ia64/sn/kernel/sn2/ptc_deadlock.S | 18 arch/ia64/sn/kernel/sn2/sn2_smp.c | 491 - arch/ia64/sn/kernel/sn2/sn_proc_fs.c | 100 arch/ia64/sn/kernel/sn2/timer.c | 100 arch/ia64/sn/kernel/sn_ksyms.c | 25 arch/ia64/sn/kernel/sv.c | 2 arch/ia64/sn/tools/make_textsym | 4 arch/ia64/tools/print_offsets.c | 2 arch/ia64/vmlinux.lds.S | 57 include/asm-ia64/atomic.h | 2 include/asm-ia64/bitops.h | 6 include/asm-ia64/fpu.h | 7 include/asm-ia64/ia32.h | 3 include/asm-ia64/intrinsics.h | 222 include/asm-ia64/iosapic.h | 25 include/asm-ia64/machvec_init.h | 4 include/asm-ia64/machvec_sn2.h | 54 include/asm-ia64/mca.h | 4 include/asm-ia64/mmu_context.h | 25 include/asm-ia64/pal.h | 7 include/asm-ia64/pci.h | 3 include/asm-ia64/perfmon.h | 11 include/asm-ia64/processor.h | 57 include/asm-ia64/ptrace.h | 2 include/asm-ia64/rwsem.h | 236 include/asm-ia64/sal.h | 769 +- include/asm-ia64/smp.h | 14 include/asm-ia64/sn/addrs.h | 97 include/asm-ia64/sn/alenlist.h | 4 include/asm-ia64/sn/arc/hinv.h | 2 include/asm-ia64/sn/arc/types.h | 2 include/asm-ia64/sn/arch.h | 12 include/asm-ia64/sn/ate_utils.h | 2 include/asm-ia64/sn/bte.h | 142 include/asm-ia64/sn/cdl.h | 176 include/asm-ia64/sn/clksupport.h | 27 include/asm-ia64/sn/dmamap.h | 5 include/asm-ia64/sn/driver.h | 6 include/asm-ia64/sn/fetchop.h | 54 include/asm-ia64/sn/geo.h | 10 include/asm-ia64/sn/hcl.h | 87 include/asm-ia64/sn/hcl_util.h | 14 include/asm-ia64/sn/hwgfs.h | 34 include/asm-ia64/sn/idle.h | 12 include/asm-ia64/sn/ifconfig_net.h | 2 include/asm-ia64/sn/intr.h | 15 include/asm-ia64/sn/invent.h | 19 include/asm-ia64/sn/io.h | 26 include/asm-ia64/sn/ioc3.h | 2 include/asm-ia64/sn/ioc4.h | 2 include/asm-ia64/sn/ioconfig_bus.h | 46 include/asm-ia64/sn/ioerror.h | 2 include/asm-ia64/sn/ioerror_handling.h | 35 include/asm-ia64/sn/iograph.h | 10 include/asm-ia64/sn/klclock.h | 2 include/asm-ia64/sn/klconfig.h | 104 include/asm-ia64/sn/kldir.h | 2 include/asm-ia64/sn/ksys/elsc.h | 78 include/asm-ia64/sn/ksys/l1.h | 228 include/asm-ia64/sn/labelcl.h | 22 include/asm-ia64/sn/leds.h | 19 include/asm-ia64/sn/mmtimer_private.h | 2 include/asm-ia64/sn/module.h | 136 include/asm-ia64/sn/nag.h | 2 include/asm-ia64/sn/nodepda.h | 80 include/asm-ia64/sn/pci/bridge.h | 353 - include/asm-ia64/sn/pci/pci_bus_cvlink.h | 7 include/asm-ia64/sn/pci/pci_defs.h | 111 include/asm-ia64/sn/pci/pciba.h | 2 include/asm-ia64/sn/pci/pcibr.h | 104 include/asm-ia64/sn/pci/pcibr_private.h | 87 include/asm-ia64/sn/pci/pciio.h | 144 include/asm-ia64/sn/pci/pciio_private.h | 14 include/asm-ia64/sn/pci/pic.h | 2 include/asm-ia64/sn/pda.h | 41 include/asm-ia64/sn/pio.h | 58 include/asm-ia64/sn/prio.h | 2 include/asm-ia64/sn/router.h | 19 include/asm-ia64/sn/rw_mmr.h | 2 include/asm-ia64/sn/sgi.h | 76 include/asm-ia64/sn/simulator.h | 2 include/asm-ia64/sn/slotnum.h | 11 include/asm-ia64/sn/sn2/addrs.h | 4 include/asm-ia64/sn/sn2/arch.h | 3 include/asm-ia64/sn/sn2/geo.h | 2 include/asm-ia64/sn/sn2/intr.h | 8 include/asm-ia64/sn/sn2/io.h | 290 - include/asm-ia64/sn/sn2/shub.h | 2 include/asm-ia64/sn/sn2/shub_md.h | 4 include/asm-ia64/sn/sn2/shub_mmr.h | 16 include/asm-ia64/sn/sn2/shub_mmr_t.h | 2 include/asm-ia64/sn/sn2/shubio.h | 140 include/asm-ia64/sn/sn2/slotnum.h | 2 include/asm-ia64/sn/sn2/sn_private.h | 21 include/asm-ia64/sn/sn_cpuid.h | 94 include/asm-ia64/sn/sn_fru.h | 2 include/asm-ia64/sn/sn_private.h | 6 include/asm-ia64/sn/sn_sal.h | 374 + include/asm-ia64/sn/sndrv.h | 2 include/asm-ia64/sn/sv.h | 4 include/asm-ia64/sn/systeminfo.h | 2 include/asm-ia64/sn/types.h | 9 include/asm-ia64/sn/uart16550.h | 2 include/asm-ia64/sn/vector.h | 45 include/asm-ia64/sn/xtalk/xbow.h | 8 include/asm-ia64/sn/xtalk/xbow_info.h | 8 include/asm-ia64/sn/xtalk/xswitch.h | 21 include/asm-ia64/sn/xtalk/xtalk.h | 69 include/asm-ia64/sn/xtalk/xtalk_private.h | 12 include/asm-ia64/sn/xtalk/xtalkaddrs.h | 2 include/asm-ia64/sn/xtalk/xwidget.h | 31 include/asm-ia64/spinlock.h | 48 include/asm-ia64/system.h | 226 include/asm-ia64/unaligned.h | 131 include/asm-ia64/unwind.h | 12 374 files changed, 18427 insertions(+), 88073 deletions(-) through these ChangeSets: <bjorn_helgaas@hp.com> (03/06/30 1.1180) ia64: Ignore empty address ranges from _CRS to workaround buggy Big Sur firmware. See linux-ia64 archives, May 9, 2003: "Re: [Linux-ia64] [PATCH] 1/4 multi-ioport space support for 2.5" <jh@sgi.com> (03/06/30 1.1179) ia64: SN2 update 030630 Here's an update of SN2 specific files relative to to-marcelo-2.4. It includes: Clean-up/remove early prototype code. hwgraph changes Fix some error return values. pci bridge RRB tweaks Generic kernel tweaks for SN. Fix for IO port space on SN (fixes slow console) Support for changing memory protections and registering nofault ranges. Other miscellaneous bug fixes. <jsm@udlkern.fc.hp.com> (03/06/30 1.1178) [PATCH] ia64: don't let PTRACE_POKEDATA write the NaT bits of syscall args <arun.sharma@intel.com> (03/06/30 1.1177) [PATCH] ia64: IA-32 support patch: mmap should return ENOMEM Single Unix Specification says: [ENOMEM] MAP_FIXED was specified, and the range [addr, addr + len) exceeds that allowed for the address space of a process. Therefore if addr + len > IA32_PAGE_OFFSET, we should return ENOMEM. <arun.sharma@intel.com> (03/06/30 1.1176) [PATCH] ia64: IA-32 support patch: munmap should return EINVAL if size == 0 Native IA-32 returns EINVAL on a unmap of size 0. Our behavior is currently not compatible. <arun.sharma@intel.com> (03/06/30 1.1175) [PATCH] ia64: IA-32 support patch: msgsnd/msgrcv return value off by 4 <garyhade@us.ibm.com> (03/06/25 1.1174) ia64: fix sysinfo(2) memory value truncation for 32-bit apps <bjorn_helgaas@hp.com> (03/06/25 1.1173) Cset exclude: rohit.seth@intel.com[helgaas]|ChangeSet|20030623203306|58862 <davidm@tiger.hpl.hp.com> (03/06/23 1.1172) ia64: Fixups for GCC v3.3. <rohit.seth@intel.com> (03/06/23 1.1171) ia64: Use "hint @pause" in cpu_relax() and locking routines (if supported by gas). <bjorn_helgaas@hp.com> (03/06/19 1.1170) ia64: Rename EFI systab tags (no spaces, etc, for easier parsing). <chad_smith@hp.com> (03/06/17 1.1168) ia64: expose pointers from EFI system table in /proc. <arun.sharma@intel.com> (03/06/17 1.1167) [PATCH] ia64: work around race conditions in ia32 support code This is an old problem, first reported in December 2001. The test case is a multithreaded application doing a large number of malloc()/free(). When running on a 16k page size kernel, the current algorithm creates a temporary page, copies data to that page, does a new mmap and copies back subpages from the temporary page. This leaves a window of opportunity open for another thread to unmap or change the data in such a way that the new page has stale data. A patch was proposed which tries to do away with copying if the old page was writable. The patch was rejected because it could corrupt data in the MAP_SHARED case. https://external-lists.vasoftware.com/archives/linux-ia64/2001-December/002549.html https://external-lists.vasoftware.com/archives/linux-ia64/2001-December/002550.html Since we found that most of the apps which ran into this problem were dealing with pages where the old data and new data are both anonymous, I reworked the above patch in such a way that we don't optimize for the MAP_SHARED case. Infact, the only case that we optimize is the case where the old and new mapping are both anonymous. <mort@wildopensource.com> (03/06/16 1.1166) [PATCH] ia64: runtime platform detection for 2.5 This is a 2.5 version of the patch that I juggled around a couple of weeks ago. It's just a simple macro that allows one to check if the kernel is running on a specific ia64 platform. <bjorn_helgaas@hp.com> (03/06/03 1.1164) ia64: Export SAL error records in /proc/sal/{mca,init,cmc,cpe}/{event,data}. A user-level daemon can retrieve and decode the error records. A simple example of such a daemon is available here: ftp://kernel.org/pub/linux/kernel/people/helgaas/salinfo-0.2.tar.gz N.B.: The kernel used to clear error records from the SAL log. In the new scheme, it is the user-level daemon's responsibility to clear the records. If there is no daemon, the records won't get cleared, and the firmware log may fill up, preventing future errors from being logged. The kernel used to decode the generic parts of any saved MCA records to the console at boot-time. This has also been removed. <kaos@ocs.com.au> (03/06/03 1.1163) [PATCH] ia64: fix unwinder to call get_scratch_regs() only when really needed Only call get_scratch_regs() when pt is really needed. The extraneous calls to get_scratch_regs() can otherwise pick up the wrong address for pt. For example, calling unw_access_ar(&info, UNW_AR_BSPSTORE,...) before pt_regs had been reached could trigger this bug. <venkatesh.pallipadi@intel.com> (03/06/02 1.1162) [PATCH] ia64: IA-32 emulation patch: ptrace get_FPREGS bug fix A bug-fix in IA-32 emulation ptrace code. The bug originally got introduced with the addition of FPXREGS support in ptrace. The bug is in ptrace get/set FPREGS routine. gdb by default will not use FPREGS routines when FPXREGS routines are supported. So we may not see this bug during normal gdb operations. But, if gdb (or any other app) directly tries to get/set FPREGS (probably an old version of gdb), it will end with an segmentation fault due to this bug. Attached patch fixes the issue. The patch is taken against 2.5.69. But it applies to 2.4 tree as well. <arun.sharma@intel.com> (03/05/29 1.1160) ia64: Fix SMP FPH handling. From 2.5 patch by Asit Mallick, David Mosberger, Arun Sharma. <arun.sharma@intel.com> (03/05/29 1.1159) ia64: Patch by Arun Sharma: In the absence of the patch, this system call fails: shmctl(shmid, IPC_STAT, &shmid_ds) The patch corrects the definition of the ipc_perm32 structure. <arun.sharma@intel.com> (03/05/29 1.1158) ia64: ia32 semctl check for bad command. <arun.sharma@intel.com> (03/05/29 1.1157) [PATCH] ia64: fix IA-32 version of shmctl() This one is similar to msgctl. We should be calling sys_shmctl with struct shmid64_ds. In the absence of this patch: shmctl(shmid, IPC_SET, &shmid_ds) will fail. <arun.sharma@intel.com> (03/05/29 1.1156) ia64: define rlim_cur/rlim_max as unsigned <arun.sharma@intel.com> (03/05/29 1.1155) [PATCH] ia64: fix IA-32 emulation of msgctl() IA-32 programs executing: msgctl(id, IPC_SET, &buf) currently fail with EPERM due to this bug. <jh@sgi.com> (03/05/29 1.1154) ia64: SN2 update 030528 Here's an update of SN2 specific files relative to to-marcelo-2.4. It includes: Start adding sn2 support for generic kernels (CONFIG_IA64_GENERIC). machvec updates. Start removing use of CONFIG_IA64_SGI_SN. It is deprecated. Remove use of CONFIG_IA64_SGI_SN2 when not necessary. Add calls to ia64_platform_is("sn2"). Remove more SN1 code. Changes to IRQ handling. Changes to pci dma Remove l1.c, now included in console driver. Remove I/O infrastructure dependency on DEVFS. New sn/kernel/idle.c replacing idle.h for SN specific idle code. Add sn2/io.c, update sn2/io.h: generic function wrappers New gettimeoffset code for SN (but still need full port of non-SN code). Remove arch/ia64/sn/tools/make_textsym Cleanup: Remove $Id lines. Don't set global data to 0, let it go into BSS. Make more things static, make some things not static. Removed unused cruft from sn/sgi.h. Spelling corrections. Miscellaneous cleanup. Many bug fixes. <davidm@tiger.hpl.hp.com> (03/05/28 1.1152) ia64: Fix unwinder so core-dumps work again. Without this patch, most scratch-regs came out wrong. <bjorn_helgaas@hp.com> (03/05/19 1.1151) ia64: add hugetlb and cmd649 IDE to configs. <davidm@tiger.hpl.hp.com> (03/05/16 1.1150) ia64: Fix page-fault handler so it handles not-present translations for region 5 (patch by John Marvin). <bjorn_helgaas@hp.com> (03/05/16 1.1149) ia64: ptrace whitespace changes to follow 2.5. <davidm@tiger.hpl.hp.com> (03/05/16 1.1148) ia64: Fix ptrace() RNaT accessors. <davidm@tiger.hpl.hp.com> (03/05/16 1.1147) ia64: ptrace: don't let reading NaT bits for R4-R7 overwrite the value we're intending to write; get_rnat & put_rnat cleanups. <davidm@tiger.hpl.hp.com> (03/05/16 1.1146) ia64: Fix INIT copying of banked registers. <eranian@hpl.hp.com> (03/05/15 1.1145) ia64: perfmon TLB_* and ALAT event fix Please apply this on top of what I sent last week. This fixes a problem reported by UNSW on McKinley with the DATA_EAR_TLB_* or DATA_EAR_ALAT event. There was also a bug in the libpfm library, but the generalized solution requires a small kernel fix. Basically, we must let the users reprogram the PMC to their default value even though this violates some of the session requirements. This is safe because default PMC values ensure that nothing get measured. <kaos@sgi.com> (03/05/13 1.1144) ia64: Handle SAL rejection of MCA rendezvous timeout value. <kaos@sgi.com> (03/05/13 1.1143) ia64: Hold modlist_lock while searching exception tables. a64 is not taking the spinlock that closes the race between module removal and traversal of exception tables. It can result in oops when one cpu takes an exception while another is unloading a module. Other architectures take this lock. The patch is almost a cut and paste from i386. <bjorn_helgaas@hp.com> (03/05/13 1.1141) ia64: Disable interrupts during context switch. This depends on two additional patches: - The 5/9/2003 perfmon update - The 5/13/2003 TLB flushing change These avoid the use of smp_call_function in the context-switch path. The reason for disabling interrupts during context switch is to avoid the following scenario (description by John Marvin): 1) schedule calls switch_mm to switch to the new mm. This sets up the new pgd and region registers (i.e. activate_context is called for the new mm). 2) An IPI comes in and local_flush_tlb_mm() is called. Since current hasn't been changed yet (switch_to hasn't been called yet), current->active_mm still points to the old mm. local_flush_tlb_mm checks for mm == current->active_mm, so if the mm matches the old mm, activate_context is called for the old mm, resetting the region registers back to the context of the previous mm. 3) Now switch_to is called which updates current. So now we exit schedule with region registers set incorrectly. The incorrect region registers leads to the following loop: After exiting schedule with the wrong region registers, the new task takes a VHPT miss and inserts a page table translation. That mapping points to the correct page table, but of course has the wrong region (in this case, that of the grandparent task). But the VHPT miss handler also inserts the mapping for the original fault, so the task runs fine. The grandparent task subsequently runs and gets stuck in an infinite loop of page not present faults because the handler fixes the correct PTE, but the VMLPT mapping incorrectly inserted by the grandchild points elsewhere. <bjorn_helgaas@hp.com> (03/05/13 1.1140) ia64: TLB flushing fixes - don't use smp_call_function in context-switch path. <davidm@tiger.hpl.hp.com> (03/05/12 1.1139) mca.c: (show_min_state): Fix typo r11 -> r12. <bjorn_helgaas@hp.com> (03/05/12 1.1138) ia64: pci warning for unavailable resources. <eranian@hpl.hp.com> (03/05/09 1.1137) ia64: perfmon update Find attached a patch with some of the modifications you asked for. This patch is not perfect. Each time I look at this code base, I find more problems, some of which cannot be solved easily and would require huge changes. There are still some locking problems which I cannot change. Anyway, this patch gets rid of all the smp_call_function() code. Also the notification mechanism now uses tasklet() as this is the only "safe" mechanism. It is not possible to send a signal from an interrupt handler due to deadlock possibilities. The context switch in SMP does still use a simplified lazy approach. This code is mostly a backport from what I have for perfmon-2. We systematically save on ctxsw out. On ctxswin we check if our state is still there, in which case, we don't restore what not required. The algorithm uses per CPU activations counts. <alex_williamson@hp.com> (03/05/09 1.1136) [PATCH] ia64: fix timer interrupts getting lost This patch fixes the issue of some CPUs not showing timer interrupts going off. Seems during the process of sync'ing the itc, we jumped over the next timer value. This patch is against 2.5.67 + ia64. I haven't seen the problem on 2.4, but a quick looks seems like it's potentially an issue there too. <mkp@mkp.net> (03/05/09 1.1135) ia64: declare ia64_sal_handler_init non-static early_sn_init requires ia64_sal_handler_init to be declared non-static. Already fixed in 2.5. <jh@sgi.com> (03/05/09 1.1134) ia64: SGI SN update This removes the stale sn1 support, so it should make things smaller. Lots of other updates, too. Still won't compile, I'm sure, but we're working on pushing stuff much more actively, so I'm optimistic about that. The biggest issue is still discontig, Jack Steiner is working that issue. You might have already seen his latest patch in the last day or two. Let me know if any part of the patch generation isn't right. Humm. Have you taken any changes from anyone else to the SN files since my last update? If so, this will likely wipe out those changes. If you have, I'll probably want to track those changes down and get them applied to our tree. John <bjorn_helgaas@hp.com> (03/04/29 1.1132) Move UP cpu_online definition to <linux/smp.h>. <bjorn_helgaas@hp.com> (03/04/29 1.1131) ia64: acpi: handle vendor resources more generically. <bjorn_helgaas@hp.com> (03/04/29 1.1130) ia64: sba_iommu: use seq_file. <bjorn_helgaas@hp.com> (03/04/29 1.1129) ia64: pci.c: Trivial changes to follow 2.5. <bjorn_helgaas@hp.com> (03/04/29 1.1128) ia64: Don't blindly probe PCI buses (probe only those reported by ACPI). <bjorn_helgaas@hp.com> (03/04/23 1.1127) ia64: Wrap pal.h with #ifdef __KERNEL__ to solve userland compilation issues (including <linux/modules.h>). <bjorn_helgaas@hp.com> (03/04/21 1.1126) ia64: Remove unused acpi_get_addr_space() interface. <eranian@hpl.hp.com> (03/04/21 1.1124) ia64: perfmon fixes for system-wide monitoring overflow, opcode matcher, and force PMC[89] bit 2 on. Please apply this small fix to perfmon in your 2.4 tree. This patch does not include what you asked for last week. This patches fixes: - broken system-wide monitoring overflow notifications - correct McKinley opcode matcher reserved bitmask. Bug reported by UIUC. - forcing bit 2 on PMC8,PMC9 is now done via reserved bitmask on McKinley. <bjorn_helgaas@hp.com> (03/04/21 1.1123) ia64: simplify syscalls with force_successful_syscall_return(). <bjorn_helgaas@hp.com> (03/04/21 1.1122) ia64: palinfo whitespace changes to match 2.5. <davidm@wailua.hpl.hp.com> (03/04/21 1.1121) ia64: Don't output backspaces in palinfo output. <davidm@tiger.hpl.hp.com> (03/04/21 1.1120) ia64: Fix printing of memory attributes. <davidm@tiger.hpl.hp.com> (03/04/21 1.1119) ia64: fix /proc/.../vm_info memory attributes <bjorn_helgaas@hp.com> (03/04/18 1.1118) ia64: Update configs. <kaos@sgi.com> (03/04/18 1.1006.13.74) [PATCH] ia64: mca rendezvous fix We are not setting the 'always rendezvous for mca' flag. kdb needs it set to get decent mca debugging on all cpus but I do not want kdb to change sal behaviour. Since we do not recover from mca without a debugger, I see no reason why this flag should not be on for all kernels. The rendezvous timeout was set to 100 * HZ, but SAL expects the timeout to be in milliseconds, HZ may not be 1 millisecond. The patch makes the timeout an explicit 20 seconds, semi-arbitrary value. <bjorn_helgaas@hp.com> (03/04/18 1.1006.13.73) ia64: whitespace and trivial changes in mca.c. <davidm@tiger.hpl.hp.com> (03/04/18 1.1006.13.72) ia64: Consolidate backtrace printing in a single routine (ia64_do_show_stack()). <davidm@tiger.hpl.hp.com> (03/04/18 1.1006.13.71) ia64: Update platform INIT handler to print a backtrace. <davidm@tiger.hpl.hp.com> (03/04/17 1.1006.13.70) ia64: dump the min-state area in the MCA INIT platform handler. <davidm@tiger.hpl.hp.com> (03/04/17 1.1006.13.69) ia64: Manual merge of Keith Owen's patch to avoid deadlock on ia64_sal_mc_rendez(). Also prefix local-variables in SAL macros to avoid name collisions. <davidm@tiger.hpl.hp.com> (03/04/17 1.1006.13.68) ia64: Fix SAL processor-log info handling. Based on patch by Keith Owens. <davidm@tiger.hpl.hp.com> (03/04/17 1.1006.13.67) ia64: Minor whitespace & formatting fixups in asm-ia64/sal.h. <james@cobaltmountain.com> (03/04/17 1.1006.13.66) [PATCH] include_asm-ia64_sal.h, typo: the the <bjorn_helgaas@hp.com> (03/04/17 1.1006.13.65) ia64: remove incorrect and redundant "cpu not responding" message. <bjorn_helgaas@hp.com> (03/04/17 1.1006.13.64) ia64: sba_iommu: fix warning and use old-style ACPI typedef. <bjorn_helgaas@hp.com> (03/04/17 1.1006.13.63) ia64: Remove unused variable from acpi.c <mort@wildopensource.com> (03/04/17 1.1006.13.62) [PATCH] ia64: print ISR for FPSWA faults Here is a simple patch to also print isr during the handling of a floating point assist fault. <bjorn_helgaas@hp.com> (03/04/17 1.1006.13.61) ia64: brl_emu.c: use temporary variable to avoid gcc3.1 warning. <davidm@tiger.hpl.hp.com> (03/04/17 1.1006.13.60) ia64: Patch by Arun Sharma: In brl_emu.c, a 64 bit value was being assigned to an int. <davidm@tiger.hpl.hp.com> (03/04/17 1.1006.13.59) ia64: Sync sys32_ipc() with x86 counter-part. <bjorn_helgaas@hp.com> (03/04/17 1.1006.13.58) ia64: remove cpu_is_online local defs, in favor of a 2.5-style cpu_online. Based on a patch from Martin Hicks. <bjorn_helgaas@hp.com> (03/04/17 1.1006.13.57) ia64: sba_iommu: remove workarounds for broken, never released, firmware that didn't program IBASE/IMASK correctly. <bjorn_helgaas@hp.com> (03/04/17 1.1006.13.56) ia64: sba_iommu: Combine HWP0001 and HWP0004 ACPI claim (from 2.5 changes by Alex Williamson). <bjorn_helgaas@hp.com> (03/04/17 1.1006.13.55) ia64: sba_iommu: make sure devices are at least 32-bit capable (from 2.5). <bjorn_helgaas@hp.com> (03/04/17 1.1006.13.54) ia64: sba_iommu: Encapsulate sba_proc_init to follow 2.5. <bjorn_helgaas@hp.com> (03/04/17 1.1006.13.53) ia64: sba_iommu: printk text and other trivial changes to align with 2.5. <bjorn_helgaas@hp.com> (03/04/17 1.1006.13.52) ia64: sba_iommu: prefetch_spill_page alignment with 2.5. <bjorn_helgaas@hp.com> (03/04/17 1.1006.13.51) ia64: sba_iommu: whitespace and comment changes to align with 2.5. <alex_williamson@hp.com> (03/04/16 1.1006.13.50) ia64: add wmb in sba_iommu to guarantee IOPDIR updates are visible This patch ensures that iopdir updates are visible on the bus before we return a DMA mapping. Without this there is a small window where the chipset could fetch an invalid iodpir entry from memory. As Grant mentioned before, we've only seen this problem exposed with multiple tulip NICs under load. <davidm@wailua.hpl.hp.com> (03/04/16 1.1006.13.49) ia64: Change struct ia64_fpreg so it will get 16-byte alignment with all ia64 compilers, not just GCC. <schwab@suse.de> (03/04/16 1.1006.13.48) ia64: make sys32_ptrace() use ptrace_check_attach(). <schwab@suse.de> (03/04/16 1.1006.13.47) [PATCH] ia64: Fix request_module from ia32 process When an ia32 process triggers request_module the kernel cannot execute modprobe because the kernel thread still has the ia32 address limits in force. I think a kernel thread should always have the ia64 address limits, similar to what sys32_execve is doing. <davidm@tiger.hpl.hp.com> (03/04/16 1.1006.13.46) ia64: Sync itc after interrupts enabled. <jes@wildopensource.com> (03/04/16 1.1006.13.45) [PATCH] ia64: don't try to synchronize ITCs on ITC_DRIFT platforms A small patch for 2.4 that stops the kernel from trying to syncrhonize ITC clocks between CPUs if we know that the ITC isn't synchronized across the backplane. <bjorn_helgaas@hp.com> (03/04/16 1.1006.13.44) ia64: mca.c whitespace changes and dead code removal from 2.5. <kaos@sgi.com> (03/04/16 1.1006.13.43) ia64: Trivial stack-size correction in mca.c. <davidm@tiger.hpl.hp.com> (03/04/16 1.1006.13.42) ia64: Two small MCA fixes. <schwab@suse.de> (03/04/16 1.1006.13.41) [PATCH] ia64: fix unwinder bug in unw_access_gr() I've found this by inspecting the code: pt_regs_off returns an offset into struct pt_regs. Relative to latest bk, 2.5 has the same bug. <sv@sw.com.sg> (03/04/16 1.1006.13.40) [PATCH] ia64: improve show_trace_task() portability Trying to port some patches from i386 to ia64 I've found that show_trace_task is the only portable way to show tasks' call traces(perhaps because it is called from ./kernel/sched.c:)). But its ia64 implementation can't work with running task. Attached patch fixes this issue. As I understand show_trace and show_stack are platform dependent or have different sense/args. <davidm@tiger.hpl.hp.com> (03/04/16 1.1006.13.39) ia64: Minor fixes. <davidm@tiger.hpl.hp.com> (03/04/16 1.1006.13.38) ia64: More vmlinux.lds.S cleanups (__start/__end inside sections). <rusty@rustcorp.com.au> (03/03/17 1.1006.13.36) [PATCH] Designated initializers for ia64 The old form of designated initializers are obsolete: we need to replace them with the ISO C forms before 2.6. Gcc has always supported both forms anyway. (Ported from 2.5 to 2.4 by Bjorn Helgaas to reduce gratuitous diffs). <eranian@hpl.hp.com> (03/03/17 1.1006.13.35) ia64: perfmon update to v1.4 Please apply this patch to your 2.4 BK tree. The patch includes: - a fix for a sampling bug. When sampling was enabled we were record a sample each time a HW counter overflowed instead of only when a 64-bit counter value (maintained in software) would overflow. This caused bogus samples to be stored in the sampling buffer. - fix a problem when a HW counter overflow by which we would get a new PMU overflow right away because the top bits were not cleared. - moves PFM_CPUINFO_* into perfmon.h (needed by oprofile) - adds a new context option PFM_FL_UNSECURE to allow a monitored application to start/stop monitoring using rum/sum - perfmon is now at version 1.4 <Matt_Domsch@Dell.com> (03/03/14 1.1006.13.34) ia64: efivars fix by Matt Domsch and Peter Chubb. <kaos@sgi.com> (03/03/14 1.1006.13.33) [PATCH] ia64: unwind.c - allow unw_access_gr(r0) The patch allows unw_access_gr() to read from r0, to support unwind directives such as .save ar.pfs,r0 and .save rp,r0. <davidm@tiger.hpl.hp.com> (03/03/14 1.1006.13.32) ia64: clean up unneeded test in kernel unwinder. <bjorn_helgaas@hp.com> (03/03/14 1.1006.13.31) ia64: cleanup unwind.c warnings (from David's 2.5 change). <davidm@tiger.hpl.hp.com> (03/03/14 1.1006.13.30) ia64: Correct region_start calculation in kernel unwinder. <bjorn_helgaas@hp.com> (03/03/14 1.1006.13.29) ia64: Use printk severity-levels where appropriate. Triggered by analysis done by Philipp Marek. (Ported from 2.5 change by Bjorn Helgaas). <peter@chubb.wattle.id.au> (03/03/14 1.1006.13.28) [PATCH] ia64: declare test_bit() arg as "const" While you're fixing bitops.h, making test_bit take a const qualified arg will kill some warnings in reiserfs... <bjorn_helgaas@hp.com> (03/03/13 1.1006.13.27) ia64: Export io_space so drivers using legacy I/O ports can insmod. (From Jes Sorensen). <bjorn_helgaas@hp.com> (03/03/12 1.1006.13.26) ia64: iosapic: Remove gratuitous differences with 2.5 (whitespace, C99 initializers, printk levels, etc). <bjorn_helgaas@hp.com> (03/03/12 1.1006.13.25) [PATCH] ia64: iosapic: rationalize __init/__devinit Rationalize __init/__devinit attributes. The noteworthy changes are that iosapic_system_init(), iosapic_init(), iosapic_register_platform_intr(), and iosapic_override_isa_irq() are __init (only called from ACPI __init functions), but iosapic_lists[], num_iosapic, find_iosapic(), register_intr(), iosapic_register_intr(), and acpi_register_irq() are not because they may be used after init-time by modules. More detailed analysis: iosapic_lists[], num_iosapic: normal, referenced by find_iosapic (normal) register_intr (normal) iosapic_init (__init) pcat_compat: __initdata, referenced by iosapic_system_init (__init) iosapic_init (__init) iosapic_parse_prt (__init) find_iosapic: normal, called by register_intr (normal) register_intr: normal, called by iosapic_register_intr (normal), called by acpi_register_irq (normal), called by modules (=> can't be __init or __devinit) iosapic_register_platform_intr (__init) iosapic_override_isa_irq (__init) iosapic_parse_prt (__init) iosapic_reassign_vector: __init, called by iosapic_register_platform_intr (__init), called by acpi_parse_plat_int_src (__init) iosapic_system_init: __init, called by acpi_parse_madt (__init) iosapic_init: __init, called by acpi_parse_iosapic (__init) iosapic_register_platform_intr: __init, called by acpi_parse_plat_int_src (__init) iosapic_override_isa_irq: __init, called by acpi_parse_int_src_ovr (__init) iosapic_init (__init) fixup_vector: __init, called by iosapic_parse_prt (__init), called by acpi_pci_irq_init (__init) <bjorn_helgaas@hp.com> (03/03/12 1.1006.13.24) [PATCH] ia64: iosapic: self-documenting polarity/trigger arguments Make interrupt registration functions take named constants for polarity and trigger mode. Old -> new magic decoder ring: polarity 0 -> IOSAPIC_POL_LOW (#defined to 1) polarity 1 -> IOSAPIC_POL_HIGH (#defined to 0) trigger 0 -> IOSAPIC_LEVEL (#defined to 1) trigger 1 -> IOSAPIC_EDGE (#defined to 0) <bjorn_helgaas@hp.com> (03/03/12 1.1006.13.23) [PATCH] ia64: iosapic: simplify ISA IRQ init Simplify ISA IRQ init by taking advantage of iosapic_override_isa_irq(), which already does what we need. <bjorn_helgaas@hp.com> (03/03/12 1.1006.13.22) [PATCH] ia64: iosapic: remove find_iosapic duplication Remove IOSAPIC address and GSI base from external interrupt registration interfaces. This lets us remove acpi_find_iosapic(), which is functionally similar to find_iosapic(). <bjorn_helgaas@hp.com> (03/03/12 1.1006.13.21) [PATCH] ia64: iosapic: make pcat_compat system property Make pcat_compat a system property, not a per-IOSAPIC property. <alex_williamson@hp.com> (03/03/10 1.1006.4.21) ia64: CMC deadlock fix. Here's a bugfix update to my previous patch. I was mistakenly using smp_call_function w/ interrupts disabled. There's a definite danger of deadlock under those circumstances. <bjorn_helgaas@hp.com> (03/03/10 1.1006.4.20) ia64: chmod +x unwcheck.sh script <davidm@tiger.hpl.hp.com> (03/03/07 1.1006.4.19) ia64: Make signal deliver work when the current register frame is incomplete (as a result of a faulting mandatory RSE load). <davidm@tiger.hpl.hp.com> (03/03/07 1.1006.4.18) ia64: Minor cleanups. (From 2.5 by Bjorn Helgaas). <davidm@tiger.hpl.hp.com> (03/03/07 1.1006.4.17) ia64: Add unwcheck.sh script contributed by Harish Patil. It checks the unwind info for consistency (well, just the obvious stuff, but it's a start). Fix the couple of bugs that this script uncovered (and work around one false positive). (Ported to 2.4 by Bjorn Helgaas). <davidm@tiger.hpl.hp.com> (03/03/07 1.1006.4.16) ia64: In kernel unwinder, replace dump_info_pt() with get_scratch_regs() and reformat to make it fit in 100 columns. <davidm@tiger.hpl.hp.com> (03/03/07 1.1006.4.15) ia64; Improve debug output from kernel unwinder. Based on patch by Keith Owens. (Ported to 2.4 by Bjorn Helgaas). <kaos@sgi.com> (03/03/07 1.1006.4.14) [PATCH] ia64: fix scratch-regs handling in kernel unwinder This patch has been running inside SGI for 2 months. It handles kernel stacks with multiple struct pt_regs, as found while debugging the kernel. <jbarnes@sgi.com> (03/03/07 1.1006.4.13) [PATCH] ia64: ACPI fix for no PCI Andy Grover told me this should be posted here. It allows ACPI to compile even with PCI turned off. Patch against 2.5.60. <bjorn_helgaas@hp.com> (03/03/06 1.1006.4.12) ia64: Update default configs. <davidm@tiger.hpl.hp.com> (03/03/06 1.1006.4.11) ia64: Implement pcibios_set_mwi() and define HAVE_ARCH_PCI_MWI to ensure that PCI line-size gets programmed properly. Based on patch by Grant Grundler, ported from 2.5 by Bjorn Helgaas. <davidm@tiger.hpl.hp.com> (03/03/06 1.1006.4.10) ia64: Make ia64_fetch_and_add() simpler to optimize so lib/rwsem.c can be optimized properly. <bjorn_helgaas@hp.com> (03/03/06 1.1006.4.9) ia64: ia64_fetch_and_add(), xchg(), ia64_cmpxchg(), etc. to intrinsics.h. (From similar 2.5 changes by David Mosberger). <kenneth.w.chen@intel.com> (03/03/06 1.1006.4.8) [PATCH] ia64: rwsem using atomic primitive <davidm@hpl.hp.com> (03/03/06 1.1006.4.7) ia64: For SIGSEGV triggered by NaT page, set si_addr to faulting data address, not the faulting IP. <bjorn_helgaas@hp.com> (03/03/06 1.1006.4.6) ia64: Make CONFIG_SYSCTL control sys32_sysctl as well. Based on a patch from Peter Chubb. <bjorn_helgaas@hp.com> (03/03/04 1.1006.4.5) ia64: Make struct sysinfo32 internal padding explicit. <alex_williamson@hp.com> (03/03/04 1.1006.4.4) ia64: Switch to polling for CMCs if they happen too fast. Here's another feature I'd like to add to MCA support; the ability to detect a flood of CMCs and switch to polling mode for retrieving CMC logs. Once no more CMC logs are found, return to and interrupt driven handler. If the "flood" threshold is never reached, the CMC handler simply behaves as it does today. It's useful to get the CMC logs to know that something isn't quite right, but if you end up with some bad memory it's too easy for them to interfere with useful work. I've tested this on an HP rx2600, with a known bad DIMM. This DIMM acts like it has a completely dead DRAM on it. With the current CMC handler, once I hit that range of memory addresses, the system essentially dies, constantly handling CMC errors. With this patch, the system hits the threshold quickly, but remains functional with no performance degredation once in polling mode. This patch applies against linux-2.4.20-ia64-021210 and includes: - Switching CMCs to polling mode at predeterimined threshold <alex_williamson@hp.com> (03/03/04 1.1006.4.3) ia64: Poll for CPEs on all CPUs, improve check for # of CPEs logged Here's an update to the patch I sent a couple weeks ago. I'm going to retract the memory scrubbing piece of the patch till I get some more validation that it's beneficial. I kept the CPE polling on all processors, the MCA timestamp fix, and added a better mechanism for the CPE polling to determine if a log was found. Previously, if an even number of CPE logs were retrieved, the index looked like nothing happened. Feedback welcome. Thanks, <bjorn_helgaas@hp.com> (03/03/04 1.1006.4.2) ia64: sys32_sysinfo: update to current struct sysinfo (add totalhigh, freehigh, mem_unit). <bjorn_helgaas@hp.com> (03/03/04 1.1006.4.1) ia64: Export pm_idle. Thanks! Bjorn - To unsubscribe from this list: send the line "unsubscribe linux-ia64" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.htmlReceived on Wed Jul 2 13:39:30 2003
This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:16 EST