- 14 May, 2004 40 commits
-
-
Benjamin Herrenschmidt authored
This patch fixes SMP boot on Apple Xserve G5
-
Andrew Morton authored
From: Stephen Rothwell <sfr@canb.auug.org.au> It is possible to attach a virtual disk to a logical partition on an iSeries machine so that it is read only to the partition. This patch allows Linux to use such virtual disks.
-
Andrew Morton authored
From: Paul Mackerras <paulus@samba.org> After I sent the recent patch to include/asm-ppc64/io.h which put stronger barriers in the I/O accessor macros, Paul McKenney pointed out to me that a writex/outx could still slide out from inside a spinlocked region. This patch makes the barriers a bit stronger so that this can't happen. It means that we need to use a sync instruction for wmb (a full "heavyweight" sync), since drivers rely on wmb for ordering between writes to system memory and writes to a device. I have left smb_wmb() as a lighter-weight barrier that orders stores, and doesn't impose an ordering between cacheable and non-cacheable accesses (the amusingly-named eieio instruction). I am assuming here that smp_wmb is only used for ordering stores to system memory so that another cpu will see them in order. It can't be used for enforcing any ordering that a device will see, because it is just a gcc barrier on UP. This also changes the spinlock/rwlock unlock code to use lwsync ("light-weight sync") rather than eieio, since eieio doesn't order loads, and we need to ensure that loads stay inside the spinlocked region.
-
Andrew Morton authored
From: Paul Mackerras <paulus@samba.org> When I sent the patch to uninline the spinlocks, I inadvertently left out the change to arch/ppc64/Kconfig which defines the config symbol for inlining the locks (CONFIG_SPINLINE now). This patch adds it. It also adds a symbol CONFIG_PPC_SPLPAR which enables the code for calling the hypervisor on shared-processor logically-partitioned system to yield the physical processor to the lock holder when spinning. (The code that depends on this symbol is already present in arch/ppc64/lib/locks.c.)
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> It turns out we do avoid irq recursion on iseries so remove the workaround.
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> We check nvram_fetch/nvram_store against -1, so better not make these unsigned.
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> Based on feedback from the hardware guys align jiffies and tb_last_stamp. We update both regularly and there are other read only, heavily accessed things that share those cachelines.
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> We need to set MSR_RI in iseries exception prolog.
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> We were allocating radix tree nodes in the interrupt code with GFP_KERNEL under a spinlock. Change it to GFP_ATOMIC.
-
Andrew Morton authored
From: Paul Mackerras <paulus@samba.org> The patch below moves some declarations from C files into the appropriate header file in include/asm-ppc (and removes an unused local variable in a function).
-
Andrew Morton authored
From: Paul Mackerras <paulus@samba.org> Matt Porter's recent changes broke the compile for non-4xx ppc32 systems, unfortunately. I get an error that mfdcr is not defined in include/asm-ppc/ocp.h when compiling for powermac (reasonable, since the mfdcr instruction only exists on 4xx processors). The patch below fixes it.
-
Andrew Morton authored
From: Matt Porter <mporter@kernel.crashing.org> Merge all current PPC44x ports against new OCP.
-
Andrew Morton authored
From: Matt Porter <mporter@kernel.crashing.org> Merge all current PPC40x ports against new OCP.
-
Andrew Morton authored
From: Matt Porter <mporter@kernel.crashing.org> Update all current 4xx defconfigs for new OCP.
-
Andrew Morton authored
From: Matt Porter <mporter@kernel.crashing.org> Merge misc. 4xx core fixes and support for the new cascade scheme in the 440gx.
-
Andrew Morton authored
From: Matt Porter <mporter@kernel.crashing.org> Merge PPC4xx-specific OCP support for new OCP core.
-
Andrew Morton authored
From: Matt Porter <mporter@kernel.crashing.org> Merge PPC44x library support against new OCP.
-
Andrew Morton authored
From: Matt Porter <mporter@kernel.crashing.org> Merge Bubinga/405EP support against new OCP.
-
Andrew Morton authored
From: Matt Porter <mporter@kernel.crashing.org> New OCP infrastructure ported from 2.4 along with several enhancements. Updated patch with comments from hch and Valdis.
-
Andrew Morton authored
From: Matt Porter <mporter@kernel.crashing.org> Adds general Book E machine check exception support and PPC44x-specific machine check exception implementation.
-
Andrew Morton authored
From: Matt Porter <mporter@kernel.crashing.org> Adds general Book E debug exception support and PPC44x-specific debug exception implementation.
-
Andrew Morton authored
From: Matt Porter <mporter@kernel.crashing.org> This patch fixes the condition where prefetching cache lines beyond a buffer can cause data corruption on non cache coherent PPCs. It is a port of the version that went into 2.4. From Eugene Surovegin <ebs@ebshome.net>.
-
Andrew Morton authored
From: Matt Porter <mporter@kernel.crashing.org> This patch implements/uses __flush_dcache_icache_page() which kmaps on a Book E part, but keeps the existing behavior on other PowerPCs which can disable the MMU.
-
Andrew Morton authored
From: Olaf Hering <olh@suse.de> ext3 as module is not possible in 2.6.6, clear_pages, called from clear_page, is not exported. Also, unexport clear_page(), which is an inline.
-
Andrew Morton authored
Jorn Engel <joern@wohnheim.fh-wedel.de> inode->i_flags should never contain fs-specific flags. In fact, it doesn't; the checks against it cause "chattr +T" to be useless for ext[23]. Same bug was in befs as well.
-
Andrew Morton authored
From: "Sergey S. Kostyliov" <rathamahata@php4.ru> Acked by Will Dyson.
-
Andrew Morton authored
From: "Sergey S. Kostyliov" <rathamahata@php4.ru> - Reduce stack usage. - Kill useless duplication of error and warning messages when debug is on. Old behaviour was: ... BeFS(hda1):
-
Andrew Morton authored
From: "Sergey S. Kostyliov" <rathamahata@php4.ru> Fix really old typo in config help
-
Andrew Morton authored
From: "Sergey S. Kostyliov" <rathamahata@php4.ru> Move value initialisation out of the loop body.
-
Andrew Morton authored
From: "Sergey S. Kostyliov" <rathamahata@php4.ru> We already have block number (inode->i_ino), so there is no need to calculate it from befs_block_run before sb_bread() call (this is what befs_bread_iaddr() do).
-
Andrew Morton authored
From: "Sergey S. Kostyliov" <rathamahata@php4.ru> LBD patch merged long time ago, so it is safe to pass u64 block numbers to sb_bread() when sector_t is large enough.
-
Andrew Morton authored
From: Martin Schwidefsky <schwidefsky@de.ibm.com> Network driver changes: - lcs: Add missing irb error checking. - lcs: Fix multicasting. - lcs: Use a seperate lock (ipm_lock) for multicast list. - lcs: Add missing in_dev_put in multicase address list handling. - iucv: Set static variables to NULL after kfree. - iucv: Do bus_unregister if module initialization fails. - netiucv: Convert iucvMagic to EBCDIC in con_action_start. - netiucv: Remove administration of ifno-stuff for device name, - netiucv: Add attribute to remove a netiucv device. - qeth: Add version string that is displayed at driver load time. - qeth: Fix memory leak in qeth_arp_query. - qeth: Remove duplicate case statements in qeth_do_ioctl. - qeth: Fix OSA broadcast filtering. - qeth: Increase timeout for purge ARP cache IPA. - qeth: Fix hsi device naming. - qeth: Add do_QDIO count to qeth performance statistics. - qeth: Allow writing to IP address takeover attribute only in state DOWN or RECOVER. - qeth: Fix hang when removing a vlan device. - qeth: Cleanup error messages for ARP commands. - qeth: Return EOPNOTSUPP for purge ARP on HiperSockets. - qeth: Drop skbs if the net_device of a qeth device is down. - qeth: Simplify ip address list processing.
-
Andrew Morton authored
From: Martin Schwidefsky <schwidefsky@de.ibm.com> zfcp host adapter change: - Prevent infinite retry of SCSI commands when FCP adapter is unavailable. - Always queue error recovery structure to the error recovery running list. - Add help text to zfcp config option.
-
Andrew Morton authored
From: Martin Schwidefsky <schwidefsky@de.ibm.com> 3270 device driver change: - Don't allow activation of views while the initial size sensing is still in progress. Replace RAW3270_FLAGS_SHUTDOWN with RAW3270_FLAGS_READY. - Make 3270 views loadable as modules.
-
Andrew Morton authored
From: Martin Schwidefsky <schwidefsky@de.ibm.com> dasd driver changes: - Do error recovery for error recovery requests. - Retry request if the start_IO failed because of a timeout.
-
Andrew Morton authored
From: Martin Schwidefsky <schwidefsky@de.ibm.com> Common i/o layer changes: - Delay unregister/register of ccw devices reappering on a different subchannel. Search for the old ccw_device & subchannel for the reattached device and deregister it too to avoid inconsistencies. - Fix path grouping for devices that present command reject for SetPGID but not for SensePGID.
-
Andrew Morton authored
From: Martin Schwidefsky <schwidefsky@de.ibm.com> s390 core changes: - Rename idle_cpu_mask to nohz_cpu_mask as agreed with Dipankar. - Refine compiler version check for "Q" constraints in uaccess.h. - Store per process ptrace information to the correct place. - Fix per cpu data access for 64-bit modules. - Add topology_init function for cpu hotplug. - Define TASK_SIZE dependent on TIF_31BIT and define MM_VM_SIZE to 4TB to get rid of elf_map32 and arch_get_unmapped_area.
-
Andrew Morton authored
From: Geoff Gustafson <geoff@linux.jf.intel.com>, "Chen, Kenneth W" <kenneth.w.chen@intel.com>, Ingo Molnar <mingo@elte.hu>, me. The big-SMP guys are seeing high CPU load due to del_timer_sync()'s inefficiencies. The callers are fs/aio.c and schedule_timeout(). We note that neither of these callers' timer handlers actually re-add the timer - they are single-shot. So we don't need all that complexity in del_timer_sync() - we can just run del_timer() and if that worked we know the timer is dead. Add del_single_shot_timer(), export it to modules and use it in AIO and schedule_timeout(). (these numbers are for an earlier patch, but they'll be close) Before: 32p 4p Warm cache 29,000 505 Cold cache 37,800 1220 After: 32p 4p Warm cache 95 88 Cold cache 1,800 140 [Measurements are CPU cycles spent in a call to del_timer_sync, the average of 1000 calls. 32p is 16-node NUMA, 4p is SMP.] (I cleaned up a few things and added some commentary)
-
Andrew Morton authored
From: Yoshinori Sato <ysato@users.sourceforge.jp> - gcc-3.4 warning fix. - io access address fix. - cleanup code.
-
Andrew Morton authored
From: Yoshinori Sato <ysato@users.sourceforge.jp> - Delete obsolete header files
-