summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* libertas: fix memory alignment problems on the blackfinIhar Hrachyshka2008-02-012-3/+5
| | | | | | | | | | | Fixing unaligned memory access on the blackfin architecture (maybe on the ARM also). Signed-off-by: Ihar Hrachyshka <ihar.hrachyshka@promwad.com> Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* iwlwifi: correct math in elapsed_jiffiesEric Sandeen2008-02-011-2/+2
| | | | | | | | | | | | | w/o the first change: if end == start you get MAX_JIFFY_OFFSET which isn't what you want... For the latter I think to be technically correct you need the +1 to account for the jiffy between MAX_JIFFY_OFFSET and 0 (hmm w/ the 2nd change the first isn't strictly needed... ah well) Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* rfkill: add the WiMAX radio typeIñaky Pérez-González2008-02-014-0/+16
| | | | | | | | | | | | | | | | Teach rfkill about wimax radios. Had to define a KEY_WIMAX as a 'key for disabling only wimax radios', as other radio technologies have. This makes sense as hardware has specific keys for disabling specific radios. The RFKILL enabling part is, otherwise, a copy and paste of any other radio technology. Signed-off-by: Inaky Perez-Gonzalez <inaky@linux.intel.com> Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* b43: Drop packets that we are not able to encryptMichael Buesch2008-02-013-30/+58
| | | | | | | | | | | | | | | We must not transmit packets we're not able to encrypt. This fixes a bug where in a tiny timeframe after machine resume packets can get sent unencrypted and might leak information. This also fixes three small resource leakages I spotted while fixing the security problem. Properly deallocate the DMA slots in any DMA allocation error path. Signed-off-by: Michael Buesch <mb@bu3sch.de> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* b43: Fix suspend/resumeMichael Buesch2008-02-012-16/+25
| | | | | | | | | | | This fixes suspend/resume. We must not overwrite the MAC addresses on resume. Otherwise the card won't ACK any packets anymore. Signed-off-by: Michael Buesch <mb@bu3sch.de> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* iwlwifi: Fix uCode error on associationGregory Greenman2008-02-013-4/+5
| | | | | | | | | | | | | | | | The problem is that priv->assoc_id is set when assoc. resp frame is received. But, when it is set, LQ cmd is still not sent to the uCode, it is done from bg_post_assoc, which is called through a workqueue. On the other hand, when a tx arrives at the moment when this flag is set, but LQ is still not sent, the if condition in tx_skb will not hold and the frame will not be dropped. Thus, it will be sent through which is still not in the sta table in the uCoded. Signed-off-by: Gregory Greenman <gregory.greenman@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* iwlwifi: do not schedule tasklet when rcv unused irqJoonwoo Park2008-02-014-10/+18
| | | | | | | | | | | | The nic controller's scheduler interrupt (CSR_INT_BIT_SCD) indicates to the driver that scheduler finished to transmit the frame/frames. This bit is not used and the tasklet should thus not be scheduled upon its receipt. Signed-off-by: Joonwoo Park <joonwpark81@gmail.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* iwlwifi: cleanup usage of inline functionsReinette Chatre2008-02-016-23/+20Star
| | | | | | | | | | Be consistent when using inline functions. If the function only used once we move it to where it is used - no need for externs. Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Cc: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* iwlwifi: initialize geo/channel information during probeReinette Chatre2008-02-012-28/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | The geo/channel information is obtained from the EEPROM, which is read during probe. We can thus set up channel information at this time. This helps us to support ioctl commands that rely on this before the interface is brought up. Clearly matches _init_channel_map with _free_channel_map and _init_geos with _free_geos to ensure functions calling these routines can also call their cleanup routines. Fixes a few bugs: - if channel information is not available when ioctl commands are issued then we get a NULL pointer oops. Having channel information set up during probe we can deal with ioctl commands without requiring interface to be brought up. This fixes bug: http://www.bughost.org/bugzilla/show_bug.cgi?id=1552 - Fix potential problem if user triggers probe/remove/probe sequence. The value of priv->channel_count was used to determine if channel map is set up. This value was never reset when channel map was removed. - Fix memory leak: priv->modes need to be freed when device removed. Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* iwl4965: fix return code indicating one interface is supportedReinette Chatre2008-02-011-1/+1
| | | | | | | | | | | This is a fix to patch "iwlwifi: fix iwl_mac_add_interface handler". In that patch the return code was corrected for iwl3945, but not for iwl4965. Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Cc: Tomas Carnecky <tom@dbservice.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* iwlwifi: Fix an invalid bitmask test in iwl3945 and iwl4965Maarten Lankhorst2008-02-012-2/+2
| | | | | | | Signed-off-by: Maarten Lankhorst <m.b.lankhorst@gmail.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* rtl8180_dev.c: add support for 1799:700fAdrian Bassett2008-02-011-0/+1
| | | | | | | | | | I have been using the rtl8180 driver via the git kernel route for a while now and would like to suggest that the following local ammendment is included in the development tree in order to support the PCI device 1799:700f. This device is found on the 'Belkin Wireless G Desktop Card' product, model 'F5D7000uk'. From memory, the chip on the card is inscribed RTL8185L; (I don't know the significance of the 'L', I'm afraid). Signed-off-by: Adrian Bassett <adrian.bassett@hotmail.co.uk> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* mac80211: fixing null qos data frames check for reordering bufferRon Rindjunsky2008-02-011-1/+1
| | | | | | | | | This patch fixes a wrong condition for null qos data frames, causing us to drop data frames needed for reordering as well. Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* b43legacy: fix MAC control and microcode initStefano Brivio2008-02-015-81/+110
| | | | | | | | | | | | | | | | | | | | | | | | | | This zeros out all microcode related memory before loading the microcode. This also fixes initialization of the MAC control register. The _only_ place where we overwrite the contents of the MAC control register is at the beginning of b43_chip_init(). All other places must do read() -> mask/set -> write() to not overwrite existing bits. This also adds a longer delay for waiting for the microcode to initialize itself. It seems that the current timeout is sufficient on all available devices, but there's no real reason why we shouldn't wait for up to one second. Slow embedded devices might exist. Better safe than sorry. While at it, fix naming of MACCTL values. This patch by Michael Buesch has been ported to b43legacy. Signed-off-by: Stefano Brivio <stefano.brivio@polimi.it> Acked-by: Michael Buesch <mb@bu3sch.de> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* b43legacy: Fix rfkill allocation leakage in error pathsMichael Buesch2008-02-011-1/+8
| | | | | | | | | We must kill rfkill in any error paths that trigger after rfkill init. Signed-off-by: Michael Buesch <mb@bu3sch.de> Acked-by: Stefano Brivio <stefano.brivio@polimi.it> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* b43: Fix rfkill allocation leakage in error pathsMichael Buesch2008-02-011-1/+8
| | | | | | | | We must kill rfkill in any error paths that trigger after rfkill init. Signed-off-by: Michael Buesch <mb@bu3sch.de> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* ath5k: debug level improvementsBruno Randolf2008-02-013-37/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | * use only one debug level for beacon debugging: unify ATH5K_DEBUG_BEACON and ATH5K_DEBUG_BEACON_PROC. * remove debug level ATH5K_DEBUG_FATAL. doesn't make sense as a debug level - if it's fatal it should be logged as an error. * fancier printing of debug levels. cat /debugfs/ath5k/phy0/debug. * allow debug levels to be changed by echoing their name into /debugfs/ath5k/phy0/debug. this will toggle the state, when it was off it will be turned on and vice versa. * use copy_from_user() when reading from the debug files. use unsigned int for better optimization. reduce buffer sizes on stack. drivers/net/wireless/ath5k/base.c: Changes-licensed-under: 3-Clause-BSD drivers/net/wireless/ath5k/debug.c: Changes-licensed-under: GPL drivers/net/wireless/ath5k/debug.h: Changes-licensed-under: GPL Signed-off-by: Bruno Randolf <bruno@thinktube.com> Acked-by: Luis R. Rodriguez <mcgrof@winlab.rutgers.edu> Acked-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* mac80211: fix alignment warningJohannes Berg2008-02-011-13/+33
| | | | | | | | | | | | When I introduced the alignment warning I forgot the A-MSDU case which has a different requirement because each frame contains 14-byte 802.3 headers in front of the IP payload. This patch moves the alignment warning to a place where we know whether we're dealing with an A-MSDU frame and adjusts it accordingly. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* rt61pci: fix-up merge damageJohn W. Linville2008-02-011-1/+2
| | | | | | | | A subtle merge error was introduced after re-queueing a patch for 2.6.24 instead of 2.6.25... Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* Ensure that we export __fatal_signal_pending()Trond Myklebust2008-02-011-0/+1
| | | | | | | | It may be used by the modules nfs.ko and sunrpc.ko Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> [ Made it a regular export rather than GPL-only - Linus ] Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Merge branch 'task_killable' of ↵Linus Torvalds2008-02-0138-252/+282
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc * 'task_killable' of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc: (22 commits) Remove commented-out code copied from NFS NFS: Switch from intr mount option to TASK_KILLABLE Add wait_for_completion_killable Add wait_event_killable Add schedule_timeout_killable Use mutex_lock_killable in vfs_readdir Add mutex_lock_killable Use lock_page_killable Add lock_page_killable Add fatal_signal_pending Add TASK_WAKEKILL exit: Use task_is_* signal: Use task_is_* sched: Use task_contributes_to_load, TASK_ALL and TASK_NORMAL ptrace: Use task_is_* power: Use task_is_* wait: Use TASK_NORMAL proc/base.c: Use task_is_* proc/array.c: Use TASK_REPORT perfmon: Use task_is_* ... Fixed up conflicts in NFS/sunrpc manually..
| * Remove commented-out code copied from NFSMatthew Wilcox2007-12-061-1/+1
| | | | | | | | | | | | | | This is a false positive when grepping ... change it to be what the NFS code looks like now. Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * NFS: Switch from intr mount option to TASK_KILLABLEMatthew Wilcox2007-12-0619-147/+30Star
| | | | | | | | | | | | | | | | | | By using the TASK_KILLABLE infrastructure, we can get rid of the 'intr' mount option. We have to use _killable everywhere instead of _interruptible as we get rid of rpc_clnt_sigmask/sigunmask. Signed-off-by: Liam R. Howlett <howlett@gmail.com> Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * Add wait_for_completion_killableMatthew Wilcox2007-12-062-2/+14
| | | | | | | | Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * Add wait_event_killableMatthew Wilcox2007-12-061-0/+41
| | | | | | | | Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * Add schedule_timeout_killableMatthew Wilcox2007-12-062-0/+8
| | | | | | | | Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * Use mutex_lock_killable in vfs_readdirLiam R. Howlett2007-12-061-1/+4
| | | | | | | | | | | | Signed-off-by: Liam R. Howlett <howlett@gmail.com> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * Add mutex_lock_killableLiam R. Howlett2007-12-062-3/+38
| | | | | | | | | | | | | | | | | | Similar to mutex_lock_interruptible, it can be interrupted by a fatal signal only. Signed-off-by: Liam R. Howlett <howlett@gmail.com> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * Use lock_page_killableMatthew Wilcox2007-12-061-4/+7
| | | | | | | | | | | | | | Replacing lock_page with lock_page_killable in do_generic_mapping_read() allows us to kill `cat' of a file on an NFS-mounted filesystem Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * Add lock_page_killableMatthew Wilcox2007-12-062-0/+28
| | | | | | | | | | | | This routine is like lock_page, but can be interrupted by a fatal signal Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * Add fatal_signal_pendingMatthew Wilcox2007-12-062-1/+13
| | | | | | | | | | | | | | Like signal_pending, but it's only true for signals which are fatal to this process Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * Add TASK_WAKEKILLMatthew Wilcox2007-12-062-12/+18
| | | | | | | | | | | | | | Set TASK_WAKEKILL for TASK_STOPPED and TASK_TRACED, add TASK_KILLABLE and use TASK_WAKEKILL in signal_wake_up() Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * exit: Use task_is_*Matthew Wilcox2007-12-061-49/+39Star
| | | | | | | | | | | | Also restructure the loop in do_wait() Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * signal: Use task_is_*Matthew Wilcox2007-12-061-3/+3
| | | | | | | | Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * sched: Use task_contributes_to_load, TASK_ALL and TASK_NORMALMatthew Wilcox2007-12-061-8/+5Star
| | | | | | | | Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * ptrace: Use task_is_*Matthew Wilcox2007-12-061-4/+4
| | | | | | | | Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * power: Use task_is_*Matthew Wilcox2007-12-061-3/+3
| | | | | | | | Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * wait: Use TASK_NORMALMatthew Wilcox2007-12-062-6/+7
| | | | | | | | | | | | Also move wake_up_locked() to be with the related functions Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * proc/base.c: Use task_is_*Matthew Wilcox2007-12-061-1/+1
| | | | | | | | Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * proc/array.c: Use TASK_REPORTMatthew Wilcox2007-12-061-6/+1Star
| | | | | | | | Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * perfmon: Use task_is_*Matthew Wilcox2007-12-061-2/+2
| | | | | | | | Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * Add macros to replace direct uses of TASK_ flagsMatthew Wilcox2007-12-061-0/+16
| | | | | | | | | | | | | | With the changes to support TASK_KILLABLE, ->state becomes a bitmask, and moving these tests to convenience macros will fix all the users. Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
| * Use wake_up_locked() in eventpollMatthew Wilcox2007-12-061-7/+4Star
| | | | | | | | | | | | Replace the uses of __wake_up_locked with wake_up_locked Signed-off-by: Matthew Wilcox <matthew@wil.cx>
* | Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-schedLinus Torvalds2008-02-014-9/+21
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched: debug: turn ignore_loglevel into an early param sched: remove unused params sched: let +nice tasks have smaller impact sched: fix high wake up latencies with FAIR_USER_SCHED RCU: add help text for "RCU implementation type"
| * | debug: turn ignore_loglevel into an early paramIngo Molnar2008-01-311-2/+2
| | | | | | | | | | | | | | | | | | | | | i was debugging early crashes and wondered where all the printks went. The reason: ignore_loglevel_setup() was not called yet ... Signed-off-by: Ingo Molnar <mingo@elte.hu>
| * | sched: remove unused paramsGerald Stralko2008-01-311-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | This removes the extra struct task_struct *p parameter in inc_nr_running and dec_nr_running functions. Signed-off by: Jerry Stralko <gerb.stralko@gmail.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
| * | sched: let +nice tasks have smaller impactPeter Zijlstra2008-01-311-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Michel Dänzr has bisected an interactivity problem with plus-reniced tasks back to this commit: 810e95ccd58d91369191aa4ecc9e6d4a10d8d0c8 is first bad commit commit 810e95ccd58d91369191aa4ecc9e6d4a10d8d0c8 Author: Peter Zijlstra <a.p.zijlstra@chello.nl> Date: Mon Oct 15 17:00:14 2007 +0200 sched: another wakeup_granularity fix unit mis-match: wakeup_gran was used against a vruntime fix this by assymetrically scaling the vtime of positive reniced tasks. Bisected-by: Michel Dänzer <michel@tungstengraphics.com> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Ingo Molnar <mingo@elte.hu>
| * | sched: fix high wake up latencies with FAIR_USER_SCHEDSrivatsa Vaddagiri2008-01-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The reason why we are getting better wakeup latencies for !FAIR_USER_SCHED is because of this snippet of code in place_entity(): if (!initial) { /* sleeps upto a single latency don't count. */ if (sched_feat(NEW_FAIR_SLEEPERS) && entity_is_task(se)) ^^^^^^^^^^^^^^^^^^ vruntime -= sysctl_sched_latency; /* ensure we never gain time by being placed backwards. */ vruntime = max_vruntime(se->vruntime, vruntime); } NEW_FAIR_SLEEPERS feature gives credit for sleeping only to tasks and not group-level entities. With the patch attached, I could see that wakeup latencies with FAIR_USER_SCHED are restored to the same level as !FAIR_USER_SCHED. Signed-off-by: Ingo Molnar <mingo@elte.hu>
| * | RCU: add help text for "RCU implementation type"Paul E. McKenney2008-01-311-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch supplies help text for the "RCU implementation type" kernel configuration choice. Reported-by: Stefan Richter <stefanr@s5r6.in-berlin.de> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
* | | Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/perex/alsaLinus Torvalds2008-02-01460-9853/+24404
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/perex/alsa: (299 commits) [ALSA] version 1.0.16rc2 [ALSA] hda: fix Mic in as output [ALSA] emu10k1 - Another EMU0404 Board ID [ALSA] emu10k1 - Fix kthread handling at resume [ALSA] emu10k1: General cleanup, add new locks, fix alsa bug#3501, kernel bug#9304. [ALSA] emu10k1 - Use enum for emu_model types [ALSA] emu10k1 - Don't create emu1010 controls for non-emu boards [ALSA] emu10k1 - 1616(M) cardbus improvements [ALSA] snd:emu10k1: E-Mu updates. Fixes to firmware loading and support for 0404. [ALSA] emu10k1: Add comments regarding E-Mu ins and outs. [ALSA] oxygen: revert SPI clock frequency change for AK4396/WM8785 [ALSA] es1938 - improve capture hw pointer reads [ALSA] HDA-Intel - Add support for Intel SCH [ALSA] hda: Add GPIO mute support to STAC9205 [ALSA] hda-codec - Add Dell T3400 support [ALSA] hda-codec - Add model for HP DV9553EG laptop [ALSA] hda-codec - Control SPDIF as slave [ALSA] hda_intel: ALSA HD Audio patch for Intel ICH10 DeviceID's [ALSA] Fix Oops with PCM OSS sync [ALSA] hda-codec - Add speaker automute to ALC262 HP models ...