- 15 Jul, 2003 14 commits
-
-
Dave Jones authored
Implement per-CPU memory allocation. Is a bit cleaner than the previous "once and for all" approach.
-
Dave Jones authored
Remove the final instances of the now-deprecated cpufreq_driver_sem. Also, the previous "one-frequency change at one moment" limitation is gone. If it's needed by the cpufreq driver, it should be implemented in its cpufreq_driver->{target,setpolicy} callback.
-
Dave Jones authored
Use the per-CPU policy->lock to lock the per-CPU "policy" data. Also, use it to serialize the setting of new frequency policies on each CPU.
-
Dave Jones authored
Split up cpufreq_governor into a locking and non-locking variant.
-
Dave Jones authored
Finally implement the two different cpufreq_driver_target callbacks -- the one called while the per-CPU lock is held, the other while not. While we're at it, clean up cpufreq_governor.
-
Dave Jones authored
Change the function parameter of cpufreq_cpu_put to struct cpufreq_policy *.
-
Dave Jones authored
Make cpufreq_set_policy a bit more readable by storing the CPU's cpufreq_policy into a pointer.
-
Dave Jones authored
Make cpufreq_remove_dev a bit more readable. Also, assure that the GOV_STOP and the cpufreq_driver->exit() call are indeed the last calls done.
-
Dave Jones authored
Change the return value of cpufreq_cpu_get from a nondescriptent int to struct cpufreq_policy*. This will allow for cleaner code - and later it will be expected that anyone who grabs a reference by calling cpufreq_cpu_get must return this struct cpufreq_policy* to cpufreq_cpu_put.
-
Dave Jones authored
As the per-CPU initialization can fail, we need to deal with this situation in cpufreq_remove_dev as the sysdev core doesn't (yet) do this for us. The solution: add a "struct cpufreq_policy *cpufreq_cpu_data[NR_CPUS]" array, which has a NULL pointer for each CPU not managed by cpufreq (yet) and a pointer to the per-CPU data for each CPU managed by cpufreq. It is locked by cpufreq_driver_lock.
-
Dave Jones authored
First part in a series of patches from Dominik which clean up the locking in cpufreq. It sort of worked, but is full of races. But to keep it working at least as well it works now, add a new spinlock cpufreq_driver_lock which will be what cpufreq_driver_sem intended to be -- but it can indeed be a spinlock instead of a semaphore. This driver adds proper protection for struct cpufreq_driver *cpufreq_driver which can only go away during cpufreq_unregister -- block this by increasing the driver's module reference count.
-
Dave Jones authored
From Dominik Instead of trying to guess what the user intended, fail if the user requests a setting which is not supported by the longrun driver.
-
Dave Jones authored
From Dominik
-
Dave Jones authored
- the path to sysfs changed - add the cpufreq_driver.owner requirement - clarify another paragraph
-
- 12 Jul, 2003 11 commits
-
-
Linus Torvalds authored
from 2.4-ac - it seems to cause hangs for people.
-
Linus Torvalds authored
-
Samuel Thibault authored
This tunes the volume control of maestro sound boards: The log conversion seems not good for PCM and CD. The volume buttons incrementing / decrementing the main volume by 10 on 100 is too much, much better set it to 5.
-
Brian Gerst authored
-
François Romieu authored
Memory leak fix: the allocated areas weren't referenced any more once the original error path returned.
-
Linus Torvalds authored
It used to depend on us having a signed type (which in turn is incorrect for the later division).
-
Ulrich Drepper authored
alpha, ia64, PA, sparc already export the existing "utimes()" system call (using 'timeval[2]' instead of 'utimebuf' like the old "utime()"). Make it available on x86 too..
-
Andi Kleen authored
Some minimum critical fixes for x86-64: - Make it compile for uni processor again - Tell BIOS about long mode - Fix 32bit IPC (broken by earlier patch)
-
Andi Kleen authored
Deprecate the numerical sysctl name space. People can use /proc/sys instead. The numeric name space was never well maintained and especially in distribution kernels is not very consistent (everybody has their own extensions, conflicting with others). It's also a great source of rejects when merging patches. The name-based /proc/sys is a much better interface for this, which people should use instead. Discussion of this on l-k found no advocate for it, so it seems to not be very popular anyways. This patch deprecates numerical name space accesses to make it possible to remove them in the future. The only exception is kernel.version, which is used by glibc (this one has to be maintained forever)
-
Bernardo Innocenti authored
- __div64_32(): remove __attribute_pure__ qualifier from the prototype since this function obviously clobbers memory through &(n); - do_div(): add a check to ensure (n) is type-compatible with uint64_t; - as_update_iohist(): Use sector_div() instead of do_div(). (Whether the result of the addition should always be stored in 64bits regardless of CONFIG_LBD is still being discussed, therefore it's unadderessed here); - Fix all places where do_div() was being called with a bad divisor argument.
-
Jens Axboe authored
Every failed SG_IO request is replayed second time without data transfer. Fix the problem by immediately purging the failed SG_IO request from the request queue. It fixes (among others) http://marc.theaimsgroup.com/?t=105634805100001&r=1&w=2 where induced kernel crash occurs upon packet replay.
-
- 11 Jul, 2003 15 commits
-
-
Linus Torvalds authored
people not to remove the HAVE_KERNEL_CTX_SWITCH support that the sparc drivers require. Fix a FIXME.
-
François Romieu authored
- include/linux/wrapper.h doesn't exist in 2.5.75 and none of it's content is used by the driver; - s/MINOR/minor/; - KConfig/Makefile update.
-
Alan Cox authored
-
Alan Cox authored
-
Alan Cox authored
-
Alan Cox authored
-
Alan Cox authored
-
Alan Cox authored
-
Alan Cox authored
-
Alan Cox authored
-
Alan Cox authored
-
Alan Cox authored
-
Alan Cox authored
-
Alan Cox authored
-
Alan Cox authored
-