bk pull on ia64 linux tree

From: Luck, Tony <tony.luck_at_intel.com>
Date: 2005-01-23 14:05:12
Hi Linus,

please do a

	bk pull http://lia64.bkbits.net/linux-ia64-release-2.6.11

This will update the files shown below.

Thanks!

-Tony

 arch/ia64/sn/include/shub.h         |   39 --
 arch/ia64/configs/tiger_defconfig   |   59 +++-
 arch/ia64/ia32/binfmt_elf32.c       |    6 
 arch/ia64/ia32/sys_ia32.c           |    2 
 arch/ia64/kernel/domain.c           |    5 
 arch/ia64/kernel/efi.c              |    1 
 arch/ia64/kernel/entry.S            |  188 ++++++++------
 arch/ia64/kernel/entry.h            |   25 +
 arch/ia64/kernel/fsys.S             |    5 
 arch/ia64/kernel/gate.S             |    4 
 arch/ia64/kernel/irq.c              |   50 ---
 arch/ia64/kernel/irq_ia64.c         |    6 
 arch/ia64/kernel/ivt.S              |   25 +
 arch/ia64/kernel/mca.c              |    2 
 arch/ia64/kernel/mca_drv.c          |    2 
 arch/ia64/kernel/process.c          |    6 
 arch/ia64/kernel/ptrace.c           |    7 
 arch/ia64/kernel/smpboot.c          |    3 
 arch/ia64/kernel/unwind.c           |    9 
 arch/ia64/lib/bitop.c               |    2 
 arch/ia64/mm/contig.c               |    2 
 arch/ia64/pci/pci.c                 |    3 
 arch/ia64/sn/kernel/bte_error.c     |    1 
 arch/ia64/sn/kernel/irq.c           |   12 
 arch/ia64/sn/kernel/setup.c         |    9 
 arch/ia64/sn/kernel/sn2/sn_hwperf.c |   46 +++
 arch/ia64/sn/pci/pci_dma.c          |  480 +++++++++++-------------------------
 drivers/char/drm/drm_vm.c           |   12 
 drivers/video/fbmem.c               |    9 
 include/asm-ia64/bitops.h           |    2 
 include/asm-ia64/hw_irq.h           |   16 -
 include/asm-ia64/machvec.h          |   15 -
 include/asm-ia64/machvec_init.h     |    2 
 include/asm-ia64/machvec_sn2.h      |    4 
 include/asm-ia64/pal.h              |   20 +
 include/asm-ia64/sal.h              |    2 
 include/asm-ia64/sn/sn_cpuid.h      |    1 
 include/asm-ia64/uaccess.h          |    2 
 include/asm-ia64/unistd.h           |    2 
 include/linux/efi.h                 |   21 +
 40 files changed, 500 insertions(+), 607 deletions(-)

through these ChangeSets:

<tony.luck@intel.com> (05/01/22 1.2017)
   [IA64] clean up loose ends from addition of efi_range_is_wc()
   
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<tony.luck@intel.com> (05/01/22 1.2016)
   [IA64] irq handling cleanup
   
   Patch from Christoph Hellwig to:
   - irq_desc and irq_to_vector machvecs.  SN2 has it's own versions,
     but they're the same as the generic ones
   - kill do do_IRQ and use __do_IRQ directly everywhere
   - kill dead X86 ifdefs
   - move some variable declarations around in irq.c to recuce # of ifdefs
   
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<jbarnes@sgi.com> (05/01/22 1.2015)
   [IA64] remove superfluous layer from sn2 DMA API
   
   When I converted the sn2 code over to the new DMA API, I left the old routines
   in place and added wrappers to call them from the generic DMA API functions.
   This added an unnecessary level of obfuscation since the generic ia64 code
   calls those functions when any of the old style PCI DMA API functions are
   called.  This patch rectifies the problem making the code much easier to
   understand and hopefully a little more efficient (though I'm sure gcc was
   already inlining things pretty well, there were a bunch of unnecessary checks
   that I took this opportunity to remove).  It also shrinks the size of the sn2
   pci_dma.c quite a bit.
    
     pci_dma.c |  480 +++++++++++++++++++-----------------------------------------
     1 files changed, 151 insertions(+), 329 deletions(-)
       
   Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<jbarnes@sgi.com> (05/01/22 1.2014)
   [IA64] fix early SAL init for sn2
   
   sn2 does early initialization of the SAL so it can use it for early console
   support.  Unfortunately, the loop to find the SAL entry point was buggy so
   when we tried out new EFI and SAL system table layouts, the loop didn't
   terminate.  Here's the fix (doh!, use two different loop counters instead of
   one and just return if we find the SAL entry point).
    
   Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<jbarnes@sgi.com> (05/01/22 1.2013)
   [IA64] new api efi_range_is_wc()
   
   Ok, here you go Tony.  This one fixes the loop and also fixes drm_vm.c.  All
   of the bits aside from the efi.h bit are ia64 specific (either under
   arch/ia64 or __ia64__), so your tree is probably the right place for all of
   it.
    
   This patch adds efi_range_is_wc() to efi.h.  It's used to determine whether an
   address range can be mapped with the write coalescing attribute.  It also
   fixes up some ia64 specific callers to use the new routine instead of
   unconditionally calling pgprot_writecombined, which can be dangerous if used
   on ranges that don't support it.
   
   Signed-off-by: Jesse Barnes <jbarnes@sgi.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<jes@trained-monkey.org> (05/01/22 1.2012)
   [IA64] fix PAL_PREFETCH_VISIBILITY call
   
   The following patch fixes the ia64_pal_prefetch_visibility function to
   take a transaction type argument for either virtual or physical memory
   as specified in the System Architechture Manual page 2:358.
    
   Signed-Off-By: Jes Sorensen <jes@trained-monkey.org>
   Signed-Off-By: Tony Luck <tony.luck@intel.com>

<eranian@hpl.hp.com> (05/01/22 1.2011)
   [IA64] entry.S: perfmon psr.pp fix
   
   Problem:
   	There exists a case where we stop monitoring, i.e. clear
   	psr.pp/dcr.pp, via IPI. This is when the stop is triggered
   	by a close(), either explicit in the application or implicit
   	via exit_files(). The IPI is necessary because at the time the
   	thread (controlling the context) issues a close() it may not run
   	on the CPU the context is bound to. Yet the call must succeed,
   	hence we need to propagate the call to the right CPU.
   	But what is the problem then?
   	Under IPI, we invoke a perfmon routine which clear the kernel
   	(live) kernel psr.pp bit and also dcr.pp. Then we return from
   	the function and execute the kernel exit path which restores
   	the interrupted state. Unfortunately, this restores the kernel
   	psr from ipsr which now contains a stale value. Therefore
   	monitoring in the kernel will be active even though we stopped it.
   	You cannot modify the "global" psr in an interrupt routine because
   	it will be systematically restored on the way back.
   	
   Solution:
   	We need to patch ipsr.pp in the kernel exit path to reflect the
   	kernel value of the kernel psr.pp bit. This must be done only when
   	returning to kernel. 
   
   	The proposed patch does patch ipsr.pp such that it is identical
   	to psr.pp. The patch is subtle because the exit path does not have
   	a lot of free registers and also because we need to schedule for
   	a psr read. I had to shuffle  things around a little bit.
   
   	The patch is important because there will be another situation where
   	this problem can occur once we incorporate the support for event set
   	and multiplexing. In this configuration, you may be in the middle of
   	the idle loop and on a timer interrupt, you may stop monitoring.
   	Slightly different condition, yet same problem with ipsr.pp vs. psr.pp.
   
   
   Changelog:
   	- update kernel exit path when returning to kernel to copy
   	psr.pp to ipsr.pp. This is necesary to ensure that if psr.pp
   	was modified during the kernel entry, the change is propagated
   	the the psr.pp of the of the interrupted thread. Psr.pp can
   	be modified as a consequence of an IPI under certain conditions,
   	such as when a system-wide context is closed from a remote CPU.
   
   Special thanks to David for reworking the patch to fit
   into the enhanced exit path.
   
   signed-off-by: stephane eranian <eranian@hpl.hp.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<tony.luck@intel.com> (05/01/22 1.2010)
   [IA64] clean up ptrace corner cases
   
   Patch from yanmin.zhang@intel.com to fix up some corner cases
   in ptrace.  Many thanks to davidm for reviewing and improving.
   
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<tony.luck@intel.com> (05/01/22 1.2009)
   [IA64] mca.c: delete unused "return_to_sal" label
   
   Label is unused, and so the compiler generates a warning.
   
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<davidm@hpl.hp.com> (05/01/22 1.2008)
   [IA64] entry.S update the copyright year & fix a comment
   
   Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<davidm@hpl.hp.com> (05/01/22 1.2007)
   [IA64] Use srlz.d instead of srlz.i in ia64_leave_syscall
   
   Use srlz.d instead of srlz.i.  Safe because we don't care whether
   the VHPT walker sees the clearing of PSR.ic (if it does, that's fine
   if it doesn't, it's OK too since the kernel-text is pinned anyhow).
   Good for another 11+ cycles in (normal) getpid().
   
   Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<davidm@hpl.hp.com> (05/01/22 1.2006)
   [IA64] Improve ia64_leave_syscall() for McKinley-type cores.
   
   Optimize ia64_leave_syscall() a bit better for McKinley-type cores.
   The patch looks big, but that's mostly due to renaming r16/r17 to r2/r3.
   Good for a 13 cycle improvement.
    
   Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<davidm@hpl.hp.com> (05/01/22 1.2005)
   [IA64] Resched skip_rbs_switch to run 4 cycles faster on McKinley-type cores
   
   Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<davidm@hpl.hp.com> (05/01/22 1.2004)
   [IA64] entry.S: Align rse_clear_invalid to double-bundle boundary.
   
   Trivial patch: align rse_clear_invalid to 32-byte boundary.  Good for
   a 9 cycle speed up.
   
   Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<davidm@hpl.hp.com> (05/01/22 1.2003)
   [IA64] Don't forget to initialize PKStk for kernel-threads
   
   Kernel-threads had both pUStk and pKStk set to FALSE, which was
   unintentional.  I don't think the bug has shown any ill effects, but
   it's clearly wrong and could come around to bite us later, so let's
   fix it now.  Depends on the previous patch to clean up C usage of the
   global/root-function predicates.
   
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<davidm@hpl.hp.com> (05/01/22 1.2002)
   [IA64] cleanup C uage of global/root-function predicates
    
   The patch below is purely a cleanup but it's a prerequisite for the
   next bug fix patch.
      
   Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<nacc@us.ibm.com> (05/01/22 1.2001)
   [IA64] smpboot.c: use msleep(100) instead of inlined equivalent
   
   Use msleep() instead of schedule_timeout() to guarantee the task
   delays as expected.
   
   Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<rja@sgi.com> (05/01/22 1.2000)
   [IA64] increase limit on #pages to isolate for MCA errors
   
   The fixed sized array of pages that are isolated because of 2xECC
   memory errors can run out.  Increasing the size of the array is a
   band-aid measure, the real fix will require changes to generic code
   to add some bits to page_flags so that pages with errors can be
   marked so as to prevent them ever being examined.
   
   Signed-off-by: Russ Anderson <rja@sgi.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<davidm@hpl.hp.com> (05/01/22 1.1999)
   [IA64] sys_ia32.c: add missing __user annotation for sparse
   
   Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<kaos@sgi.com> (05/01/22 1.1998)
   [IA64] Sanity check unw_unwind_to_user
   
   Signed-off-by: Keith Owens <kaos@sgi.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<davidm@hpl.hp.com> (05/01/22 1.1997)
   [IA64] domain.c: eliminate warning when compiling CONFIG_NUMA=n
   
   When compiling for non-NUMA variable "node" ended up not being used,
   which solicits a warning from GCC.  Fix is to evluate cpu_to_node(i)
   in place.  This has the effect of doing cpu_to_node(i) twice on NUMA,
   but this is init code, so performance is not an issue (and even if
   it were, you can just declare cpu_to_node() as being a pure function,
   so the compiler can eliminate the second call).
   
   Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<davidm@hpl.hp.com> (05/01/22 1.1996)
   [IA64] uaccess.h: add missing __user annotation for sparse
   
   I was getting a lot of spurious warnings with "make C=1", due to a
   missing "__user" attribute.  I'm not sure whether this got lost or
   whether earlier versions of sparse failed to warn about it, but it's
   clearly needed (and the i386 version of uaccess.h does the same).
   	    
   Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<tony.luck@intel.com> (05/01/22 1.1995)
   [IA64] binfmt_elf32.c: BUG if insert_vm_struct fails
   
   It seems that in ia64_elf32_init, instead of calling return, if we insert
   an overlapping vma, we should instead BUG(). We should never get into this
   code path, because the vma's are set above PAGE_OFFSET, and thus a
   Xmalicious user can not trigger this code path. This change is being
   suggested mainly for clarity. Thanks to Stephen Tweedie for pointing out
   that returning early in ia64_elf32_init could have unpredictable results.
   
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<markgw@sgi.com> (05/01/22 1.1994)
   [IA64] fix SN2 hwperf error handling
   
   Fix the error handling for the SN2 hardware perf ioctl interface.
    
   Signed-off-by: Mark Goodwin <markgw@sgi.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<steiner@sgi.com> (05/01/22 1.1993)
   [IA64] Delete: arch/ia64/sn/include/shub.h
   
   Signed-off-by: Jack Steiner <steiner@sgi.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<steiner@sgi.com> (05/01/22 1.1992)
   [IA64] Delete duplicate SN2 definition of cpu_logical_id for UP build
   
   Signed-off-by: Jack Steiner <steiner@sgi.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<bob.picco@hp.com> (05/01/22 1.1991)
   [IA64] fix declaration of __find_next_zero_bit, first arg is "const"
   
   Signed-off-by: Bob Picco <bob.picco@hp.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<tony.luck@intel.com> (05/01/22 1.1990)
   [IA64] tiger_defconfig: updated for 2.6.11-rc2
   
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<tony.luck@intel.com> (05/01/19 1.1986)
   [IA64] two trivial build fixes for generic uniprocessor
   
   Patches supplied by Dann Frazier.
   
   Signed-off-by: Tony Luck <tony.luck@intel.com>

<rja@sgi.com> (05/01/18 1.1984)
   [IA64] contig.c save physical address of MCA save area
   
   Ashok Raj uncovered a problem while testing the MCA code
   on a tiger box with contig memory.  The virtual address
   was getting saved instead of the physical address of the
   MCA save area.  This patch fixes that problem.
    
   Signed-off-by: Russ Anderson <rja@sgi.com>
   Signed-off-by: Tony Luck <tony.luck@intel.com>

-
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.html
Received on Sat Jan 22 22:06:35 2005

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:35 EST