- 14 Jan, 2005 14 commits
-
-
Kumar Gala authored
Converted the driver to work as either a OCP or platform_device driver. The intent in the future (once we convert all PPC sub-archs from OCP to platform_device) is to remove the OCP code. Signed-off-by: Kumar Gala <kumar.gala@freescale.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Kumar Gala authored
Use wait_event_interruptible_timeout so we dont waste time waiting between transactions like we use to. Also, we use the adapters timeout so the ioctl cmd I2C_TIMEOUT will now work. Signed-off-by: Kumar Gala <kumar.gala@freescale.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Jean Delvare authored
This patch improves the detection of Super-I/O it87 chips (IT8712F, IT8705F). * Find the IT8712F and IT8705F address through Super-I/O (as opposed to IT8712F only so far). * Verify that the device is activated. Print info lines if a disactivated or unconfigured chip is found. * Print an info line when finding either chip, with device name, address and revision. * Rearrange code in it87_find() (error path). * (bonus) Get rid of the useless i2c_client id. Successfully tested on two IT8712F and one IT8705F, thanks to Jonas Munsin, Rudolf Marek and Karine Proot. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Rafael Ávila de Espíndola authored
I have ported the support for the EMC6D100 sensor from kernel 2.4 to kernel 2.6. In the process I received some comments from Jean Delvare. Signed-off-by: Rafael Ãvila de EspÃndola <rafael.espindola@gmail.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Jonas Munsin authored
> 2* I would then add a check to the it87 driver, which completely disables > the fan speed control interface if the initial configuration looks weird > (all fans supposedly stopped and polarity set to "active low"). This > should protect users of the driver who have a faulty BIOS. > > When a bogus configuration is detected, we would of course complain in > the logs and invite the user to complain to his/her motherboard maker > too. Here is it87.c_2.6.10-jm4-detect_broken_bios_20050112.diff implementing this. It goes on top of the previous patch. - detects broken bioses, disables the pwm for them and prints a message - fixes an unrelated minor bug in set_fan_div() Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Jonas Munsin <jmunsin@iki.fi> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Jean Delvare authored
Here comes a cleanup patch to the i2c eeprom client driver: * Get rid of the unused i2c_client client_id. * Get rid of the redundant non-ISA bus check. * Fix the adapter capability check. We were previously using capabilities without checking if they were supported. Document which capabilities are required and which are optional. * Reorder things a bit. In particular, wait to have a valid client before we bother checking if this is a Vaio EEPROM. * Use strlcpy instead of strncpy, because I Heard It Was Better (TM) and all other chip drivers use it. * Take benefit of the auto-increment feature of EEPROMs to speed up the Vaio check. * Display an information message when a Vaio EEPROM is detected. Tested successfully on my laptop, which happens to be a Vaio. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Jean Delvare authored
There is a bitmask error in one debug message of my lm63 chip driver. Nothing critical but still worth fixing, hence comes a patch. Credits go to Mohan Mistry for finding the error. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Justin Thiessen authored
Ok, take 3 on the adm1026 patch. In this patch: (1) Code has been added which ensures that the fan divisor registers are properly read into the data structure before fan minimum speeds are determined. This prevents a possible divide by zero error. The line which reads the hardware default fan divisor values has been reformatted as suggested by Andreas Dilger to make the intent of the statement clearer. (2) In a similar spirit, an unecessary carriage return from a "dev_dbg" statement in the adm1026_print_gpio() function has been elminated, shortening the statement to a single line and making the code easier to read. Signed-off-by: Justin Thiessen <jthiessen@penguincomputing.com Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Jonas Munsin authored
On Tue, Jan 11, 2005 at 10:26:22AM +0100, Jean Delvare wrote: > 1* Jonas, please send a modified version of your original patch to Greg. > The only difference would be that you wouldn't force on/off mode to be > on at driver load time. Instead, disabling PWM for one fan control > output (echo 0 > pwmN_enable) would both set on/off mode to on for that > output (new) and turn that output to on/off mode (same as before). Ok, thanks for doing the thinking ;), here is the modified patch (it87.c_2.6.10-jm3-corrected_manual_pwm_20050111.diff). In addition to the above change, it also refreshes fan_main_ctrl in the update routine, as suggested by Jean on IRC. - adds manual PWM - removes buggy "reset" module parameter - fixes some whitespaces Signed-off-by: Jonas Munsin <jmunsin@iki.fi> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Jason Gaston authored
This patch adds the Intel ICH7 DID to the i2c-i801.c driver and adds an entry to Kconfig for I2C(SMBus) support. Note: This patch relies on the already submitted and accepted PATA patch to pci_ids.h containing all ICH7 DID's. Signed-off-by: Jason Gaston <Jason.d.gaston@intel.com> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Greg Kroah-Hartman authored
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
-
Jens Axboe authored
noop doesn't follow the instructions on where to insert a request, because it uses q->queue_head instead of the *insert assigned. Clean it up so it's easier to read. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Jens Axboe authored
Doing some raid testing threw a bug in the scsi mid layer, because the segment counts wasn't correct. Initially I worried that we still had problems in this area, but it turns out that is due to the raid usage of bio clones. Currently you have to hold on to the original bio as well, since the clone only maintains a pointer to the bio_vec inside the original bio. If the original bio is freed first, the clone will have garbage in its bio->bi_io_vec as soon as that memory is scribbled. I think the best fix is to maintain flexibility and duplicate the io_vec inside the clone as well. Attached patch does this. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
http://linux-sound.bkbits.net/linux-soundLinus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
- 13 Jan, 2005 26 commits
-
-
bk://kernel.bkbits.net/davem/sparc-2.6Linus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
Jaroslav Kysela authored
into suse.cz:/home/perex/bk/linux-sound/linux-sound
-
David S. Miller authored
Signed-off-by: David S. Miller <davem@davemloft.net>
-
Grant Grundler authored
Signed-off-by: Grant Grundler <grundler@parisc-linux.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Andrew Morton authored
Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Olaf Kirch authored
Signed-off-by: David S. Miller <davem@davemloft.net>
-
Neil Horman authored
Signed-off-by: Neil Horman <nhorman@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Adrian Bunk authored
- make needlessly global code static - dn_fib.c: remove the write-only global variable dn_fib_info_cnt - dn_fib.c: remove the unused global function dn_fib_rt_message - dn_neigh.c: remove the unused global function dn_neigh_pointopoint_notify - dn_timer.c: remove the fast timer code that isn't used Signed-off-by: David S. Miller <davem@davemloft.net>
-
-
Thomas Gleixner authored
Use the new lock initializers DEFINE_SPIN_LOCk and DEFINE_RW_LOCK Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: David S. Miller <davem@davemloft.net>
-
http://linux-mh.bkbits.net/bluetooth-2.6David S. Miller authored
into nuts.davemloft.net:/disk1/BK/net-2.6
-
Hideaki Yoshifuji authored
Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Jaroslav Kysela authored
-
bk://212.42.230.204/net-2.6-schedDavid S. Miller authored
into nuts.davemloft.net:/disk1/BK/tgraf-2.6
-
David S. Miller authored
Signed-off-by: David S. Miller <davem@davemloft.net>
-
David S. Miller authored
The netlink_post stuff Arjan removed was the only user of this array. Signed-off-by: David S. Miller <davem@davemloft.net>
-
David S. Miller authored
Signed-off-by: David S. Miller <davem@davemloft.net>
-
David S. Miller authored
do_tcp_sendpages() needs to do skb->truesize et al. accounting just like tcp_sendmsg() does. tcp_sendmsg() works by gradually adjusting these accounting knobs as user data is copied into the packet. do_tcp_sendpages() works differently, when it allocates a new SKB it optimistically adds in tp->mss_cache to these values and then makes no adjustments at all as pages are tacked onto the packet. This does not work at all if tcp_sendmsg() queues a packet onto the send queue, and then do_tcp_sendpages() attaches pages onto the end of that SKB. We are left with a very inaccurate skb->truesize in that case. Consequently, if we were building a TSO frame and it gets partially ACK'd, then since skb->truesize is too small tcp_trim_skb() will potentially underflow it's value and all the accounting becomes corrupted. This is usually seen as sk->sk_forward_alloc being negative at socket destroy time, which triggers an assertion check. Signed-off-by: David S. Miller <davem@davemloft.net>
-
David S. Miller authored
into nuts.davemloft.net:/disk1/BK/sparc-2.6
-
David S. Miller authored
into nuts.davemloft.net:/disk1/BK/net-2.6
-
Paul Mackerras authored
This patch fixes a problem I have been seeing since all the preempt changes went in, which is that ppc64 SMP systems would livelock randomly if preempt was enabled. It turns out that what was happening was that one cpu was spinning in spin_lock_irq (the version at line 215 of kernel/spinlock.c) madly doing preempt_enable() and preempt_disable() calls. The other cpu had the lock and was trying to set the TIF_NEED_RESCHED flag for the task running on the first cpu. That is an atomic operation which has to be retried if another cpu writes to the same cacheline between the load and the store, which the other cpu was doing every time it did preempt_enable() or preempt_disable(). I decided to move the thread_info flags field into the next cache line, since it is the only field that would regularly be modified by cpus other than the one running the task that owns the thread_info. (OK possibly the `cpu' field would be on a rebalance; I don't know the rebalancing code, but that should be pretty infrequent.) Thus, moving the flags field seems like a good idea generally as well as solving the immediate problem. For the record I am pretty unhappy with the code we use for spin_lock et al. with preemption turned on (the BUILD_LOCK_OPS stuff in spinlock.c). For a start we do the atomic op (_raw_spin_trylock) each time around the loop. That is going to be generating a lot of unnecessary bus (or fabric) traffic. Instead, after we fail to get the lock we should poll it with simple loads until we see that it is clear and then retry the atomic op. Assuming a reasonable cache design, the loads won't generate any bus traffic until another cpu writes to the cacheline containing the lock. Secondly we have lost the __spin_yield call that we had on ppc64, which is an important optimization when we are running under the hypervisor. I can't just put that in cpu_relax because I need to know which (virtual) cpu is holding the lock, so that I can tell the hypervisor which virtual cpu to give my time slice to. That information is stored in the lock variable, which is why __spin_yield needs the address of the lock. Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Paul Mackerras authored
This patch adds the PREEMPT_BKL config option for PPC64, shamelessly stolen from the i386 version. I have this turned on in the kernel on my desktop G5 and it seems to be just fine. Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Paul Mackerras authored
This patch enables the DEBUG_PREEMPT config option for PPC64. I have this turned on on my desktop G5 and it isn't finding any problems. (It did find one problem, in flush_tlb_pending(), that I have just sent a patch for.) BTW, do we really need to restrict which architectures the config option is available on? Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Paul Mackerras authored
This patch mirrors the recent changes on x86 to call preempt_schedule rather than schedule in the exception exit path, in the case where the preempt_count is zero and the TIF_NEED_RESCHED bit is set. I'm a little concerned that this means that we have a window where interrupts are enabled and we are on our way into preempt_schedule, but preempt_count is still zero. Ingo's proposed preempt_schedule_irq would fix this, and I think something like that should go in. Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Paul Mackerras authored
The preempt debug stuff found a place where we were using smp_processor_id() without having preemption disabled, in flush_tlb_pending. This patch fixes it by using get_cpu_var and put_cpu_var instead of the __get_cpu_var variant. Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Jens Axboe authored
I stumbled across this the other day. The block layer only uses a single memory pool for request allocation, so it's very possible for eg writes to have allocated them all at any point in time. If that is the case and the machine is low on memory, a reader attempting to allocate a request and failing in blk_alloc_request() can get stuck for a long time since no one is there to wake it up. The solution is either to add the extra mempool so both reads and writes have one, or attempt to handle the situation. I chose the latter, to save the extra memory required for the additional mempool with BLKDEV_MIN_RQ statically allocated requests per-queue. If a read allocation fails and we have no readers in flight for this queue, mark us rq-starved so that the next write being freed will wake up the sleeping reader(s). Same situation would happen for writes as well of course, it's just a lot more unlikely. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-