- 23 Jan, 2005 4 commits
-
-
Marcel Holtmann authored
The fix for socket unlink race introduced a deadlock in the RFCOMM code. The state change function is always called under the DLC lock and if rfcomm_sock_kill() is called the rfcomm_sock_destruct() will dead lock. So the DLC lock must be dropped first and claimed again afterwards. Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
-
Marcel Holtmann authored
This patch fixes the problem of keys repeating when too many keys are pressed at the same time (e.g. when typing quickly). This often results in "mount" becoming "mouount". It seems that Bluetooth keyboards send a HID report with the keys all set to 0x01 if too many keys were pressed at the same time. This confuses the previous report handling logic and now these reports are ignored. Signed-off-by: Juha Yrjölä <juha.yrjola@iki.fi> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
-
Marcel Holtmann authored
Use wait_event_timeout() instead of custom wait queue code. The current code uses TASK_INTERRUPTIBLE but only cares about timing out and the wait queue event taking place (does not actively do anything in response to signals), so wait_event_timeout() should be enough. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
-
Marcel Holtmann authored
Use wait_event_interruptible_timeout() instead of custom wait queue code. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
-
- 22 Jan, 2005 36 commits
-
-
bk://kernel.bkbits.net/davem/sparc-2.6Linus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
bk://kernel.bkbits.net/davem/net-2.6Linus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
http://lia64.bkbits.net/linux-ia64-release-2.6.11Linus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
David S. Miller authored
- If dst/src are equal, memcpy can be used. - Eliminate register writes which were unused Signed-off-by: David S. Miller <davem@davemloft.net>
-
David S. Miller authored
Signed-off-by: David S. Miller <davem@davemloft.net>
-
Tony Luck authored
Signed-off-by: Tony Luck <tony.luck@intel.com>
-
Tony Luck authored
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>
-
Jesse Barnes authored
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>
-
Jesse Barnes authored
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>
-
Jesse Barnes authored
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 Sorensen authored
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>
-
Stéphane Eranian authored
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 authored
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 authored
Label is unused, and so the compiler generates a warning. Signed-off-by: Tony Luck <tony.luck@intel.com>
-
David Mosberger authored
Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
David Mosberger authored
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>
-
David Mosberger authored
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>
-
David Mosberger authored
Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
David Mosberger authored
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>
-
David Mosberger authored
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>
-
David Mosberger authored
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>
-
Nishanth Aravamudan authored
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>
-
Russ Anderson authored
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>
-
David Mosberger authored
Signed-off-by: David Mosberger-Tang <davidm@hpl.hp.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
Keith Owens authored
Signed-off-by: Keith Owens <kaos@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
David Mosberger authored
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>
-
David Mosberger authored
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 authored
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>
-
Mark Goodwin authored
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>
-
Jack Steiner authored
Signed-off-by: Jack Steiner <steiner@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
Jack Steiner authored
Signed-off-by: Jack Steiner <steiner@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
Bob Picco authored
Signed-off-by: Bob Picco <bob.picco@hp.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
Johannes Stezenbach authored
- [DVB] dvb-ttpci: re-added support for Fujitsu-Siemens DVB-S rev 1.6 0x13c2:0x0006 - [DVB] dvb-ttpci: finally clean up debi irq/tasklet handling to make it work on SMP - [DVB] dvb-ttpci: misc. changes to av7110_send_fw_cmd() error handling done along the way - [DVB] dvb-ttpci: budgetpatch integrated into dvb-ttpci: enables full ts option running in parallel with all previous functions of dvb-ttpci - [DVB] dvb-ttpci: fix Oops provoked by insmod/rmmod test loop, patch by Emard - [DVB] budget: Fixed start_ts_capture(): saa7146 will not issue a VPE interrupt if VPE bit is set in PSR and VPE interrupts are enabled afterwards. - [DVB] budget: enable satelco support. code was commented out, but actually it works, patch by Emard - [DVB] budget: Budget patch improved driver, fixed slight packet loss by using different trigger mode Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Johannes Stezenbach <js@linuxtv.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Johannes Stezenbach authored
- [DVB] mt352: exported a mt352_read_reg-function, implemented a single byte write_register function (needed for dibusb) - [DVB] nxt2002: patch by Taylor Jacob to add support for ATSC/VSB frontends and the B2C2/BBTI Air2PC-ATSC card - [DVB] stv0297: fix tuning problems and compile time warnings, patch by Markus Breitenberger - [DVB] fix spelling errors in various frontend drivers Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Johannes Stezenbach <js@linuxtv.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Johannes Stezenbach authored
- [DVB] dib3000: driver refactoring, makes it easier to support device clones Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Johannes Stezenbach <js@linuxtv.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Johannes Stezenbach authored
- [DVB] dvb-core: vfree() checking cleanups, patch by Domen Puncer - [DVB] dvb-core: fix handling of discontinuity indicator in section filter, bug reported by Frank Rosengart - [DVB] dvb-core: handle PUSI in section filter correctly, patch by Emard, bug reported by Patrick Valsecchi - [DVB] dvb-core: add support for ATSC/VSB frontends, patch by Taylor Jacob - [DVB] dvb-core: removed semi-colon from a very wrong place; FE_ENABLE_HIGH_LNB_VOLTAGE kernel oops; thanks to Christophe Massiot - [DVB] dvb-core: Fixed slow tuning problems, remove frequeny bending support from frontend code, code simplification Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Johannes Stezenbach <js@linuxtv.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-