- 14 Jun, 2003 40 commits
-
-
Andrew Morton authored
-
Andrew Morton authored
-
Andrew Morton authored
-
Andrew Morton authored
-
Andrew Morton authored
-
Andrew Morton authored
-
Andrew Morton authored
-
Andrew Morton authored
-
Andrew Morton authored
-
Andrew Morton authored
-
Andrew Morton authored
From: george anzinger <george@mvista.com> This patch addresses issues of roundoff error in the time keeping and NTP code as follows: The conversion of "actual jiffies" to TICK_USEC and then to TICK_NSEC introduced large errors if jiffies was not a power of 10 (e.g. 1024 for the ia64). Most of this is avoided by converting directly to TICK_NSEC. The calculation of MAX_SEC_IN_JIFFIES (the largest timespec or timeval the kernel will attempt) had overflow problems in the 64-bit machines. We introduce a different equation for those machines. The NTP frequency update code was allowing a micro second of error to accumulate before applying the correction. We change FINEUSEC to FINENSEC to do the correction as soon as a full nanosecond has accumulated. The initial calculation of time_freq for NTP had severe roundoff errors for HZ not a power of 10 (i.e. 1024). A new equation fixes this. clock_nanosleep is changed to round up to the next jiffie to cover starting between jiffies.
-
Andrew Morton authored
From: george anzinger <george@mvista.com> This patch does the following: Pushs down the change from timeval to timespec in the settime routines. Fixes two places where time was set without updating the monotonic clock offset. (Changes sys_stime() to call do_settimeofday() and changes clock_warp to do the update directly.) These were bugs! Changes the uptime code to use the posix_clock_monotonic notion of uptime instead of the jiffies. This time will track NTP changes and so should be better than your standard wristwatch (if your using ntp). Changes posix_clock_monotonic to start at 0 on boot (was set to start at initial jiffies). Fixes a bug (never experienced) in timer_create() in posix-timers.c where we "could" have released timer_id 0 if "id resources" were low. Adds a test in do_settimeofday() to error out (EINVAL) attempts to use unnormalized times. This is passed back up to both settimeofday and posix_setclock(). Warning: Requires changes in .../arch/???/kernel/time.c to change do_settimeofday() to return an error if time is not normalized and to use a timespec instead of timeval for its input.
-
Andrew Morton authored
From: Vojtech Pavlik <vojtech@suse.cz> - irq_return_t fixes - remove obsolete pci_driver.driver bits
-
Andrew Morton authored
From: "Protasevich, Natalie" <Natalie.Protasevich@UNISYS.com> Include ES7000 specific code for es7000 subarch.
-
Andrew Morton authored
From: "Protasevich, Natalie" <Natalie.Protasevich@unisys.com> The patch set adds support for the Unisys ES7000 series architecture. It covers different ES7000 platform variations with their corresponding APIC architectures, such as Fosters-Gallatins based (XAPIC) ES7000s as well as older Cascades based (logical cluster) ES7000 machines. The patch was discussed among platform developers on LK and later resided in the Alan's tree for 4-5 weeks for testing. Alan indicated that there are "Zero complaints of any kind, zero problems from the changed code". He recommended submit the patch. The code was tested by IBM as well as others and did not have any impact on existing subarchs and on standard systems. Here is the "generic" patch #1. It deals with the IRQ overrides (most of changes in mpparse.c and PCI range adjustment in io_apic.c), insufficient width of IO-APIC ID, and a corner case for defining quantities of things like APICs, IRQ sources, etc. (the attempt to make easier defining these items in subarchs resulted in separation of MP definition portion in include/asm-i386/mpparse.h from its enumeration portion). It has also Venkatesh Palladi's fix that he suggested earlier for the correct APIC version; I had to have it for this platform since the correct APIC version will be needed later for dynamic platform discovery when es7000 will be incorporated into genapic.
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> - Add BLKRASET/BLKFRASET as compatible ioctls - Remove ifdefs around RTC ioctls - ppc64 implements its own rtc driver and doesnt define CONFIG_RTC. - remove SG_IO which is not compatible - extra loop, autofs, NCP and bluetooth ioctls
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> Anton has been testing odd setups: /* node 0 - no cpus, no memory */ /* node 1 - 1 cpu, no memory */ /* node 2 - 0 cpus, 1GB memory */ /* node 3 - 3 cpus, 3GB memory */ Two things tripped so far. Firstly the ppc64 debug check for invalid cpus in cpu_to_node(). Fix that in kernel/sched.c:node_nr_running_init(). The other problem concerned nodes with memory but no cpus. kswapd tries to set_cpus_allowed(0) and bad things happen. So we only set cpu affinity for kswapd if there are cpus in the node.
-
Linus Torvalds authored
-
Anton Blanchard authored
compat_sys_getrusage was returning the result of a logical or. Make it return the result of sys_getrusage if it fails or -EFAULT if we cant write it out to userspace.
-
Paul Mackerras authored
Last night, Manfred and I found an interesting bug with kmalloc on ppc32, where the kmalloc in alloc_super() (fs/super.c) was requesting 432 bytes but only getting 256 bytes. The reason was that PAGE_SIZE wasn't defined at the point where the kmalloc() inline function occurs. Thus the CACHE(32) entry got omitted from the list in kmalloc_sizes.h, and kmalloc therefore used the entry in malloc_sizes[] before the correct entry. This patch fixes it by including asm/page.h and asm/cache.h in linux/slab.h. The list in kmalloc_sizes.h depends on L1_CACHE_BYTES as well as PAGE_SIZE, which is why I added asm/cache.h.
-
Mikael Pettersson authored
This patch cleans up a few leftovers after Mochel's recent driver model changes. Tested. Please apply. - arch/i386/kernel/apic.c: <linux/module.h> no longer needed - include/asm-i386/apic.h: device_lapic no longer exported
-
Mikael Pettersson authored
This patch removes the x86 local APIC blacklist rules for the Microstar 6163 and Intel AL440LX mainboards. These boards do work with local APIC enabled. Heavily tested. Please apply. Long story: When I worked on the initial UP_APIC code, these two mainboard (MS-6163 and AL440LX) were the only ones that caused hangs when the local APIC was enabled. At the time, I attributed these hangs to broken BIOSen and implemented DMI scan blacklist rules to prevent enabling the local APIC on them. However, the last year I've observed hangs on other mainboards that initially were believed to be safe for local APIC. The hangs turned out to be caused by APM's DISPLAY_BLANK option: When this option is enabled, APM will invoke BIOS and graphics card BIOS code without disabling the local APIC first. In many cases, a local APIC timer interrupt while APM is trying to blank the console will hang the system. APM also has two other options that can hang the system: CPU_IDLE and building APM as a module, both of which causes it to do BIOS calls without disabling the local APIC first. On all my systems, the only reliable configuration is to keep APM's DISPLAY_BLANK and CPU_IDLE disabled, and to build APM non-modular.
-
Bartlomiej Zolnierkiewicz authored
Patch by Matthew Wilcox. Allows all architectures to simply include the drivers/ide/Kconfig file.
-
Bartlomiej Zolnierkiewicz authored
Patch by Benjamin Herrenschmidt, minor fixes by me.
-
Bartlomiej Zolnierkiewicz authored
Unexpectedly there are some taskfile IO bugreports, so bring back old code and add taskfile IO config option (default y). This aids testing and lets people use safe(?) old code.
-
bk://kernel.bkbits.net/vojtech/inputLinus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Andrew Morton authored
From: Manfred Spraul <manfred@colorfullife.com> Martin found out what caused the deadlocks with 2.5.70 and SDET: I forgot to initialize proc_lock during fork(). Usually this works, because the parent lock is unlocked. But a proc lookup during fork can cause it to be locked, and then the system locks up.
-
Linus Torvalds authored
-
Linus Torvalds authored
-
Rusty Russell authored
1) Fix the comments for the migration_thread. A while back Ingo agreed they were exactly wrong, IIRC. 8). 2) Changed spin_lock_irqsave to spin_lock_irq, since it's in a kernel thread. 3) Don't repeat if the task has moved off the original CPU, just finish. This is because we are simply trying to push the task off this CPU: if it's already moved, great. Currently we might theoretically move a task which is actually running on another CPU, which is v. bad. 4) Replace the __ffs(p->cpus_allowed) with any_online_cpu(), since that's what it's for, and __ffs() can give the wrong answer, eg. if there's no CPU 0. 5) Move the core functionality of migrate_task into a separate function, move_task_away, which I want for the hotplug CPU patch.
-
http://linux-isdn.bkbits.net/linux-2.5.makeLinus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Vojtech Pavlik authored
-
Peter Osterlund authored
-
Peter Osterlund authored
-
Vojtech Pavlik authored
-
bk://kernel.bkbits.net/davem/net-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Vojtech Pavlik authored
-
bk://bk.arm.linux.org.uk/linux-2.5-serialLinus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Vojtech Pavlik authored
-
Vojtech Pavlik authored
-