]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/log
linux-2.6-omap-h63xx.git
17 years agoOMAP: HSMMC: Make driver support dynamic idle
Amit Kucheria [Mon, 22 Sep 2008 07:23:09 +0000 (10:23 +0300)]
OMAP: HSMMC: Make driver support dynamic idle

Add a timer that is kept active by MMC requests. FCLK is disabled on timeout

Signed-off-by: Amit Kucheria <amit.kucheria@verdurent.com>
17 years agoigb: Add support for pci-e Advanced Error Reporting
Alexander Duyck [Thu, 27 Nov 2008 08:24:37 +0000 (00:24 -0800)]
igb: Add support for pci-e Advanced Error Reporting

Add the calls necessary to enable advanced error reporting for igb on
systems with AER enabled.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoe100: cleanup link up/down messages
Jeff Kirsher [Thu, 27 Nov 2008 08:23:37 +0000 (00:23 -0800)]
e100: cleanup link up/down messages

The system log messages created on a link status change need to follow a
specific format to work with tools some customers use.  This also makes
the messages consistant with other Intel driver link messages.

Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoixgb: cleanup link up/down messages
Jeff Kirsher [Thu, 27 Nov 2008 08:23:12 +0000 (00:23 -0800)]
ixgb: cleanup link up/down messages

The system log messages created on a link status change need to follow a
specific format to work with tools some customers use.  This also makes
the messages consistant with other Intel driver link messages.

Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoe1000: cleanup link up/down messages
Jeff Kirsher [Thu, 27 Nov 2008 08:22:45 +0000 (00:22 -0800)]
e1000: cleanup link up/down messages

The system log messages created on a link status change need to follow a
specific format to work with tools some customers use.  This also makes
the messages consistant with other Intel driver link messages.

Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoixgbe: cleanup link up/down messages
Jeff Kirsher [Thu, 27 Nov 2008 08:22:21 +0000 (00:22 -0800)]
ixgbe: cleanup link up/down messages

The system log messages created on a link status change need to follow a
specific format to work with tools some customers use.  This also makes
the messages consistant with other Intel driver link messages.

Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoigb: link up/down messages must follow a specific format
Alexander Duyck [Thu, 27 Nov 2008 08:21:39 +0000 (00:21 -0800)]
igb: link up/down messages must follow a specific format

The system log messages created on a link status change need to follow a
specific format to work with tools some customers use.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agodecnet: remove private wrappers of endian helpers
Harvey Harrison [Thu, 27 Nov 2008 08:12:47 +0000 (00:12 -0800)]
decnet: remove private wrappers of endian helpers

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Reviewed-by: Steven Whitehouse <swhiteho@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
David S. Miller [Thu, 27 Nov 2008 07:48:40 +0000 (23:48 -0800)]
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6

Conflicts:

drivers/net/hp-plus.c
drivers/net/wireless/ath5k/base.c
drivers/net/wireless/ath9k/recv.c
net/wireless/reg.c

17 years agoALSA: snd-usb-caiaq: clean up the control adding code
Daniel Mack [Thu, 27 Nov 2008 07:21:05 +0000 (08:21 +0100)]
ALSA: snd-usb-caiaq: clean up the control adding code

snd-usb-caiaq: clean up the control adding code by moving dulpicate code
to a function.

Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
17 years agoACPICA: disable _BIF warning
Lin Ming [Thu, 27 Nov 2008 06:42:30 +0000 (14:42 +0800)]
ACPICA: disable _BIF warning

A generic work-around from ACPICA is in the queue,
but since Linux has a work-around in its battery
driver, we can disable this warning now.

Allow _BIF method to return an Package with Buffer elements

http://bugzilla.kernel.org/show_bug.cgi?id=11822

Signed-off-by: Lin Ming <ming.m.lin@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPI: delete OSI(Linux) DMI dmesg spam
Len Brown [Sat, 8 Nov 2008 06:21:10 +0000 (01:21 -0500)]
ACPI: delete OSI(Linux) DMI dmesg spam

Linux will continue to ignore OSI(Linux),
except for a white-list containing a few systems.

So delete the black-list,
and stop soliciting user-feedback on the console.

Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPICA: Allow _WAK method to return an Integer
Bob Moore [Thu, 13 Nov 2008 03:01:34 +0000 (11:01 +0800)]
ACPICA: Allow _WAK method to return an Integer

This can happen if the _WAK method returns nothing (as per ACPI
1.0) but does return an integer if the implicit return mechanism
is enabled.  This is the only method that has this problem,
since it is also defined to return a package of two integers
(ACPI 1.0b+). In all other cases, if a method returns an object
when one was not expected, no warning is issued.

Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lin Ming <ming.m.lin@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPI: thinkpad-acpi: fix fan sleep/resume path
Henrique de Moraes Holschuh [Sun, 9 Nov 2008 12:54:02 +0000 (10:54 -0200)]
ACPI: thinkpad-acpi: fix fan sleep/resume path

This fixes a regression from v2.6.27, caused by commit
5814f737e1cd2cfa2893badd62189acae3e1e1fd, "ACPI: thinkpad-acpi:
attempt to preserve fan state on resume".

It is possible for fan_suspend() to fail to properly initialize
fan_control_desired_level as required by fan_resume(), resulting on
the fan always being set to level 7 on resume if the user didn't
touch the fan controller.

In order to get fan sleep/resume handling to work right:

1. Fix the fan_suspend handling of the T43 firmware quirk. If it is
still undefined, we didn't touch the fan yet and that means we have no
business doing it on resume.

2. Store the fan level on its own variable to avoid any possible
issues with hijacking fan_control_desired_level (which isn't supposed
to have anything other than 0-7 in it, anyway).

3. Change the fan_resume code to me more straightforward to understand
(although we DO optimize the boolean logic there, otherwise it looks
disgusting).

4. Add comments to help understand what the code is supposed to be
doing.

5. Change fan_set_level to be less strict about how auto and
full-speed modes are requested.

http://bugzilla.kernel.org/show_bug.cgi?id=11982

Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Reported-by: Tino Keitel <tino.keitel@tikei.de>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agocxgb3: Update FW loading path.
Divy Le Ray [Wed, 26 Nov 2008 23:38:36 +0000 (15:38 -0800)]
cxgb3: Update FW loading path.

Update FW loading path to accomodate in-kernel images location

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agocxgb3: integrate FW and protocol engines in the kernel
Divy Le Ray [Wed, 26 Nov 2008 23:37:50 +0000 (15:37 -0800)]
cxgb3: integrate FW and protocol engines in the kernel

Include firmware and protocol images in the kernel image if requested

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agocxgb3: avoid potential memory leak.
Divy Le Ray [Wed, 26 Nov 2008 23:35:59 +0000 (15:35 -0800)]
cxgb3: avoid potential memory leak.

Add consistency in alloc_ring() parameter checking
to avoid potential memory leaks.
alloc_ring() callers are correct fo far.

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agocxgb3: set hard_xmit in the netdev_ops
Divy Le Ray [Wed, 26 Nov 2008 23:35:26 +0000 (15:35 -0800)]
cxgb3: set hard_xmit in the netdev_ops

Fix t3_eth_xmit() missing into the netdev_ops structure.

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agonet: Fix soft lockups/OOM issues w/ unix garbage collector
dann frazier [Wed, 26 Nov 2008 23:32:27 +0000 (15:32 -0800)]
net: Fix soft lockups/OOM issues w/ unix garbage collector

This is an implementation of David Miller's suggested fix in:
  https://bugzilla.redhat.com/show_bug.cgi?id=470201

It has been updated to use wait_event() instead of
wait_event_interruptible().

Paraphrasing the description from the above report, it makes sendmsg()
block while UNIX garbage collection is in progress. This avoids a
situation where child processes continue to queue new FDs over a
AF_UNIX socket to a parent which is in the exit path and running
garbage collection on these FDs. This contention can result in soft
lockups and oom-killing of unrelated processes.

Signed-off-by: dann frazier <dannf@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agomacvlan: don't broadcast PAUSE frames to macvlan devices
Patrick McHardy [Wed, 26 Nov 2008 23:30:48 +0000 (15:30 -0800)]
macvlan: don't broadcast PAUSE frames to macvlan devices

PAUSE frames are only relevant for the real device, broadcasting them
to all macvlan devices can cause a significant load increase.

Reported-by: Ben Greear <greearb@candelatech.com>
Tested-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wirel...
David S. Miller [Wed, 26 Nov 2008 23:28:40 +0000 (15:28 -0800)]
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6

17 years agoPhonet: fix oops in phonet_address_del() on non-Phonet device
Rémi Denis-Courmont [Wed, 26 Nov 2008 23:26:43 +0000 (15:26 -0800)]
Phonet: fix oops in phonet_address_del() on non-Phonet device

A NULL dereference would occur when trying to delete an addres from a
network device that does not have any Phonet address.

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agopkt_sched: gen_estimator: Optimize gen_estimator_active()
Jarek Poplawski [Wed, 26 Nov 2008 23:24:32 +0000 (15:24 -0800)]
pkt_sched: gen_estimator: Optimize gen_estimator_active()

Since all other gen_estimator functions use bstats and rate_est params
together, and searching for them is optimized now, let's use this also
in gen_estimator_active(). The return type of gen_estimator_active()
is changed to bool, and gen_find_node() parameters to const, btw.

In tcf_act_police_locate() a check for ACT_P_CREATED is added before
calling gen_estimator_active().

Signed-off-by: Jarek Poplawski <jarkao2@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agosony-laptop: printk tweak
Alessandro Guido [Wed, 12 Nov 2008 22:13:35 +0000 (23:13 +0100)]
sony-laptop: printk tweak

There's no need to print "Sony: " just after "sony-laptop: " (DRV_PFX).

Signed-off-by: Alessandro Guido <ag@alessandroguido.name>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agosony-laptop: brightness regression fix
Alessandro Guido [Wed, 12 Nov 2008 22:03:28 +0000 (23:03 +0100)]
sony-laptop: brightness regression fix

After commit 540b8bb9c33935183ceb5bed466a42ad72b2af56:

  sony-laptop: fingers off backlight if video.ko is serving this functionality

I can't set brightness on my sony laptop (nothing in /sys/class/backlight).
dmesg says "sony-laptop: Sony: Brightness ignored, must be controlled by ACPI
video driver".

The function acpi_video_backlight_support returns 0 if we should use the
vendor-specific backlight support, while non-0 if the ACPI generic should
be used. Because of this, the check introduced by the said commit appears
reversed.

Signed-off-by: Alessandro Guido <ag@alessandroguido.name>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoOMAP: MCSPI: Convert bit shifted values into BIT format
Jouni Hogander [Wed, 19 Nov 2008 07:41:11 +0000 (09:41 +0200)]
OMAP: MCSPI: Convert bit shifted values into BIT format

Convert bit shifted values into BIT format

Signed-off-by: Jouni Hogander <jouni.hogander@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agoOMAP: MCSPI: Enable mcspi wake-up v2
Jouni Hogander [Wed, 26 Nov 2008 22:45:35 +0000 (14:45 -0800)]
OMAP: MCSPI: Enable mcspi wake-up v2

Currently mcspi wake-ups are not enabled. This might cause case where
OMAP is not waking up on mcspi events.

Signed-off-by: Jouni Hogander <jouni.hogander@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agotwl4030-power: minor cleanup
David Brownell [Wed, 26 Nov 2008 21:09:08 +0000 (13:09 -0800)]
twl4030-power: minor cleanup

Minor cleanups to the twl4030 power script support:  move its
init code out of the "add children" call (it adds no children!),
and move the power bus messages earlier in the header file to
unclutter the platform data section and since they're not used
only for those scripts.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agotwl4030: linkage fix for generic power scripts
David Brownell [Wed, 26 Nov 2008 21:07:44 +0000 (13:07 -0800)]
twl4030: linkage fix for generic power scripts

Section fixes for generic twl4030 power scripts.

NOTE:  doesn't fix the bug whereby Beagle won't reset when
these scripts are loaded.  Or fix SDP section warnings.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agoOMAP3: Fixes for suspend / resume GPIO wake-up handling
Tero Kristo [Wed, 26 Nov 2008 11:47:10 +0000 (13:47 +0200)]
OMAP3: Fixes for suspend / resume GPIO wake-up handling

Signed-off-by: Tero Kristo <tero.kristo@nokia.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agoRevert "ACPI: don't enable control method power button as wakeup device when Fixed...
Len Brown [Wed, 26 Nov 2008 22:55:15 +0000 (17:55 -0500)]
Revert "ACPI: don't enable control method power button as wakeup device when Fixed Power button is used"

This reverts commit faee816b1502385dc9bc5abf2960d1cc645844d1.

http://bugzilla.kernel.org/show_bug.cgi?id=12091

Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPI suspend: Blacklist boxes that require us to set SCI_EN directly on resume
Rafael J. Wysocki [Wed, 26 Nov 2008 22:53:13 +0000 (17:53 -0500)]
ACPI suspend: Blacklist boxes that require us to set SCI_EN directly on resume

Some Apple boxes evidently require us to set SCI_EN on resume
directly, because if we don't do that, they hung somewhere in the
resume code path.  Moreover, on these boxes it is not sufficient to
use acpi_enable() to turn ACPI on during resume.  All of this is
against the ACPI specification which states that (1) the BIOS is
supposed to return from the S3 sleep state with ACPI enabled
(SCI_EN set) and (2) the SCI_EN bit is owned by the hardware and we
are not supposed to change it.

For this reason, blacklist the affected systems so that the SCI_EN
bit is set during resume on them.

[NOTE: Unconditional setting SCI_EN for all system on resume doesn't
 work, because it makes some other systems crash (that's to be
 expected).  Also, it is not entirely clear right now if all of the
 Apple boxes require this workaround.]

This patch fixes the recent regression tracked as
http://bugzilla.kernel.org/show_bug.cgi?id=12038

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Tested-by: Tino Keitel <tino.keitel@gmx.de>
Tested-by: Bob Copeland <me@bobcopeland.com>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPI: scheduling in atomic via acpi_evaluate_integer ()
Pavel Machek [Tue, 25 Nov 2008 11:05:08 +0000 (12:05 +0100)]
ACPI: scheduling in atomic via acpi_evaluate_integer ()

Now I know why I had strange "scheduling in atomic" problems:
acpi_evaluate_integer() does malloc(..., irqs_disabled() ? GFP_ATOMIC
: GFP_KERNEL)... which is (of course) broken.

There's no way to reliably tell if we need GFP_ATOMIC or not from
code, this one for example fails to detect spinlocks held.

Fortunately, allocation seems small enough to be done on stack.

Signed-off-by: Pavel Machek <pavel@suse.cz>
Acked-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoARM: OMAP: Fixes for suspend / resume GPIO wake-up handling
Tero Kristo [Wed, 26 Nov 2008 22:35:16 +0000 (14:35 -0800)]
ARM: OMAP: Fixes for suspend / resume GPIO wake-up handling

Use the correct wake-up enable register, and make it
work with 34xx also.

Signed-off-by: Tero Kristo <tero.kristo@nokia.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agoACPI: battery: Convert discharge energy rate to current properly
Alexey Starikovskiy [Fri, 21 Nov 2008 14:41:01 +0000 (22:41 +0800)]
ACPI: battery: Convert discharge energy rate to current properly

ACPI battery interface reports its state either in mW or in mA, and
discharge rate in your case is reported in mW. power_supply interface
does not have such a parameter, so current_now parameter is used
for all cases. But in case of mW, reported discharge should
be converted into mA.

Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Tested-by: Ferenc Wagner <wferi@niif.hu>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoparisc: struct device - replace bus_id with dev_name(), dev_set_name()
Kay Sievers [Fri, 7 Nov 2008 00:42:46 +0000 (01:42 +0100)]
parisc: struct device - replace bus_id with dev_name(), dev_set_name()

(I did not compile or test it, please let me know, or help fixing
 it, if something is wrong with the conversion)

This patch is part of a larger patch series which will remove
the "char bus_id[20]" name string from struct device. The device
name is managed in the kobject anyway, and without any size
limitation, and just needlessly copied into "struct device".

To set and read the device name dev_name(dev) and dev_set_name(dev)
must be used. If your code uses static kobjects, which it shouldn't
do, "const char *init_name" can be used to statically provide the
name the registered device should have. At registration time, the
init_name field is cleared, to enforce the use of dev_name(dev) to
access the device name at a later time.

We need to get rid of all occurrences of bus_id in the entire tree
to be able to enable the new interface. Please apply this patch,
and possibly convert any remaining remaining occurrences of bus_id.

We want to submit a patch to -next, which will remove bus_id from
"struct device", to find the remaining pieces to convert, and finally
switch over to the new api, which will remove the 20 bytes array
and does no longer have a size limitation.

Thanks,
Kay

Cc: Matthew Wilcox <matthew@wil.cx>
Cc: linux-parisc@vger.kernel.org
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
17 years agoparisc: fix kernel crash when unwinding a userspace process
Helge Deller [Wed, 26 Nov 2008 20:46:22 +0000 (12:46 -0800)]
parisc: fix kernel crash when unwinding a userspace process

Any user on existing parisc 32- and 64bit-kernels can easily crash
the kernel and as such enforce a DSO.
A simple testcase is available here:
        http://gsyprf10.external.hp.com/~deller/crash.tgz

The problem is introduced by the fact, that the handle_interruption()
crash handler calls the show_regs() function, which in turn tries to
unwind the stack by calling parisc_show_stack().  Since the stack contains
userspace addresses, a try to unwind the stack is dangerous and useless
and leads to the crash.

The fix is trivial: For userspace processes
a) avoid to unwind the stack, and
b) avoid to resolve userspace addresses to kernel symbol names.

While touching this code, I converted print_symbol() to %pS
printk formats and made parisc_show_stack() static.

An initial patch for this was written by Kyle McMartin back in August:
http://marc.info/?l=linux-parisc&m=121805168830283&w=2

Compile and run-tested with a 64bit parisc kernel.

Signed-off-by: Helge Deller <deller@gmx.de>
Cc: Grant Grundler <grundler@parisc-linux.org>
Cc: Matthew Wilcox <matthew@wil.cx>
Cc: <stable@kernel.org> [2.6.25.x, 2.6.26.x, 2.6.27.x, earlier...]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
17 years agoparisc: __kernel_time_t is always long
Geert Uytterhoeven [Sun, 16 Nov 2008 11:04:13 +0000 (12:04 +0100)]
parisc: __kernel_time_t is always long

__kernel_time_t is always long on PA-RISC, irrespective of CONFIG_64BIT,
hence move it out of the #ifdef CONFIG_64BIT / #else / #endif block.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
17 years agoACPI: EC: count interrupts only if called from interrupt handler.
Alexey Starikovskiy [Thu, 13 Nov 2008 09:00:03 +0000 (12:00 +0300)]
ACPI: EC: count interrupts only if called from interrupt handler.

fix 2.6.28 EC interrupt storm regression

Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPI: EC: Add some basic check for ECDT data
Alexey Starikovskiy [Wed, 26 Nov 2008 22:11:53 +0000 (17:11 -0500)]
ACPI: EC: Add some basic check for ECDT data

One more ASUS comes with empty ECDT, add a guard for it...

http://bugzilla.kernel.org/show_bug.cgi?id=11880

Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years ago[CIFS] fix regression in cifs_write_begin/cifs_write_end
Jeff Layton [Wed, 26 Nov 2008 19:32:33 +0000 (19:32 +0000)]
[CIFS] fix regression in cifs_write_begin/cifs_write_end

The conversion to write_begin/write_end interfaces had a bug where we
were passing a bad parameter to cifs_readpage_worker. Rather than
passing the page offset of the start of the write, we needed to pass the
offset of the beginning of the page. This was reliably showing up as
data corruption in the fsx-linux test from LTP.

It also became evident that this code was occasionally doing unnecessary
read calls. Optimize those away by using the PG_checked flag to indicate
that the unwritten part of the page has been initialized.

CC: Nick Piggin <npiggin@suse.de>
Acked-by: Dave Kleikamp <shaggy@us.ibm.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
17 years agoOMAP3: PM: readability fix for IVA2 DPLL autoidle
Kevin Hilman [Tue, 25 Nov 2008 15:23:35 +0000 (07:23 -0800)]
OMAP3: PM: readability fix for IVA2 DPLL autoidle

No functional change, just a readability fix.

The symbolic name of the shift value used in writing
CM_AUTOIDLE_PLL_IVA2 referred values in the CM_CLKSTCTRL_IVA2
register.  Fix this to use the AUTOIDLE fields.

Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Acked-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agoOMAP2/3 GPTIMER: skip unnecessary TLDR write during non-autoreload
Paul Walmsley [Wed, 26 Nov 2008 18:48:12 +0000 (10:48 -0800)]
OMAP2/3 GPTIMER: skip unnecessary TLDR write during non-autoreload

The GPTIMER TLDR register does not need to be written if the GPTIMER
is not in autoreload mode.  This is the usual case for dynamic tick-enabled
kernels.

Simulation data indicate that skipping the read that occurs as part of
the write should save at least 300-320 ns for each GPTIMER1 timer
reprogram.  (This assumes L4-Wakeup is at 19MHz and GPTIMER write
posting is enabled.)  Skipping the write itself probably won't have
much impact since it should be posted on the OCP interconnect.

Tested on 2430SDP and 3430SDP.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Richard Woodruff <r-woodruff2@ti.com>
Acked-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agoOMAP2/3 GPTIMER: drop redundant pending write check
Paul Walmsley [Wed, 26 Nov 2008 18:48:12 +0000 (10:48 -0800)]
OMAP2/3 GPTIMER: drop redundant pending write check

omap_dm_timer_write_reg() already waits for pending writes to complete,
so the extra wait in omap_dm_timer_set_load() is superfluous.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Richard Woodruff <r-woodruff2@ti.com>
Acked-by: Kevin Hilman <khilman@deeprootsystems.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agoASoC: Allow more routing features for tlv320aic3x
Daniel Mack [Wed, 26 Nov 2008 16:47:36 +0000 (17:47 +0100)]
ASoC: Allow more routing features for tlv320aic3x

This patch enables more routing functions for tlv320aic3x codecs.
It is now possible to

 - control the volume of the PGA bypass path for the HPL, HPR, HPLCOM
   and HPRCOM outputs individually
 - route right line1 input to the left ADC channel
 - route left line1 input to the right ADC channel
 - route right mic3 input to left DAC channel
 - route left mic3 input to right DAC channel
 - route left line1 input to right line1 output
 - route right line1 input to left line1 output

Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
17 years agoSDTI: Add netlink support for debug message output.
Roman Tereshonkov [Wed, 29 Oct 2008 11:39:28 +0000 (13:39 +0200)]
SDTI: Add netlink support for debug message output.

Add support for user to use netlink for message output to XTI.
Add autoidle feature if SDTI is not used.

Signed-off-by: Roman Tereshonkov <roman.tereshonkov@nokia.com>
Acked-by: Felipe Balbi <felipe.balbi@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
17 years agoInput: wacom - add support for new USB Tablet PCs
Ping Cheng [Mon, 24 Nov 2008 16:44:27 +0000 (11:44 -0500)]
Input: wacom - add support for new USB Tablet PCs

Signed-off-by: Ping Cheng <pingc@wacom.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
17 years agoslab: Update the kmem_cache_create documentation regarding the name parameter
Catalin Marinas [Fri, 21 Nov 2008 12:56:22 +0000 (12:56 +0000)]
slab: Update the kmem_cache_create documentation regarding the name parameter

kmem_cache implementations like slub are allowed to merge multiple
caches but only the initial name is preserved. Therefore,
kmem_cache_name() is not guaranteed to return the same pointer passed to
the former function. This patch updates the documentation to make this
clearer.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
17 years agomac80211_hwsim: fix-up some print_mac merge damage
John W. Linville [Tue, 25 Nov 2008 21:47:36 +0000 (16:47 -0500)]
mac80211_hwsim: fix-up some print_mac merge damage

Some print_mac -> %pM conversions got lost in some merge or another...

Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agomac80211: fix unaligned access in ieee80211_wep_encrypt_data
Ivan Kuten [Mon, 24 Nov 2008 20:17:54 +0000 (15:17 -0500)]
mac80211: fix unaligned access in ieee80211_wep_encrypt_data

Signed-off-by: Ivan Kuten <ivan.kuten@promwad.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agop54: fix wmm queue settings
Christian Lamparter [Mon, 24 Nov 2008 13:52:51 +0000 (14:52 +0100)]
p54: fix wmm queue settings

This patch fixes a regression (introduced by
"p54: more definitions form lmac_longbow.h and pda.h")

It turned out that the "ret" variable wasn't initialized and
this caused the following warnings/errors to appear:

wmaster1: failed to set TX queue parameters for queue 2
wmaster1: failed to set TX queue parameters for queue 3
wmaster1: failed to set TX queue parameters for queue 1
wmaster1: failed to set TX queue parameters for queue 0

Signed-off-by: Christian Lamparter <chunkeey@web.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Use proper TX channel width for setting channels
Sujith [Mon, 24 Nov 2008 06:38:35 +0000 (12:08 +0530)]
ath9k: Use proper TX channel width for setting channels

The TX channel width of the BSS can be obtained only after association.
In all cases, default to HT20 if HT is enabled, and set
chan width to HT40 only if the BSS supports it.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Code scrub
Sujith [Mon, 24 Nov 2008 06:37:55 +0000 (12:07 +0530)]
ath9k: Code scrub

Merge core.c and base.c
Remove Antenna Diversity (unused now).
Remove unused chainmask handling code.
Comment, indentation scrub.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agonl80211: Change max TX power to be in mBm instead of dBm
Jouni Malinen [Sat, 22 Nov 2008 20:00:31 +0000 (22:00 +0200)]
nl80211: Change max TX power to be in mBm instead of dBm

In order to be consistent with NL80211_ATTR_POWER_RULE_MAX_EIRP,
change NL80211_FREQUENCY_ATTR_MAX_TX_POWER to use mBm and U32 instead
of dBm and U8. This is a userspace interface change, but the previous
version had not yet been pushed upstream and there are no userspace
programs using this yet, so there is justification to get this change in
as long as it goes in before the previous version gets out.

Signed-off-by: Jouni Malinen <j@w1.fi>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoorinoco: Provide option to avoid unnecessary fw caching
David Kilroy [Sat, 22 Nov 2008 10:37:28 +0000 (10:37 +0000)]
orinoco: Provide option to avoid unnecessary fw caching

Make firmware caching on startup optional, and make it default.

When the option is not selected and PM_SLEEP is configured, then
cache firmware in the suspend pm_notifier. This configuration saves
about 64k RAM in normal use, but can lead to a situation where the
driver is configured to use a different firmware.

Signed-off by: David Kilroy <kilroyd@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoorinoco: Resume spectrum_cs in the same way as orinoco_cs
David Kilroy [Sat, 22 Nov 2008 10:37:27 +0000 (10:37 +0000)]
orinoco: Resume spectrum_cs in the same way as orinoco_cs

Retrieval of external firmware has been resolved, and should work with
the standard orinoco resume algorithm.

This fixes an issue where priv->hw_unavailable indicates the card is
ready when firmware has not been loaded.

Signed-off by: David Kilroy <kilroyd@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoorinoco: Cache Symbol firmware
David Kilroy [Sat, 22 Nov 2008 10:37:26 +0000 (10:37 +0000)]
orinoco: Cache Symbol firmware

Signed-off by: David Kilroy <kilroyd@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoorinoco: Separate fw caching from download
David Kilroy [Sat, 22 Nov 2008 10:37:25 +0000 (10:37 +0000)]
orinoco: Separate fw caching from download

This refactorring will make it easier to share logic with Symbol
firmware.

Signed-off by: David Kilroy <kilroyd@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Handle -ENOMEM on RX gracefully
Luis R. Rodriguez [Sat, 22 Nov 2008 01:41:33 +0000 (17:41 -0800)]
ath9k: Handle -ENOMEM on RX gracefully

We would get an oops on RX on -ENOMEM by passing
NULL to the hardware on ath_rx_buf_link(). The oops
would look something like this:

ath_rx_tasklet+0x515/0x53b
ath9k_tasklet+0x48
tasklet_action
__do_softirq
irq_exit
do_IRQ

RIP: ath_rx_buf_link+0x3a

We correct this by handling the requeue directly on
the ath_rx_tasklet() and trying to allocate an skb
*prior* to sending up the last hardware processed
skb. If we run out of memory this gauranteees we have
skbs to work with while it simply drops new received
frames.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agorfkill: always call get_state() hook on resume
Henrique de Moraes Holschuh [Fri, 21 Nov 2008 22:40:10 +0000 (20:40 -0200)]
rfkill: always call get_state() hook on resume

We "optimize" away the get_state() hook call on rfkill_toggle_radio
when doing a forced state change.  This means the resume path is not
calling get_state() as it should.

Call it manually on the resume handler, as we don't want to mess with
the EPO path by removing the optimization.  This has the added benefit
of making it explicit that rfkill->state could have been modified
before we hit the rfkill_toggle_radio() call in the class resume
handler.

Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Acked-by: Ivo van Doorn <IvDoorn@gmail.com>
Cc: Matthew Garrett <mjg59@srcf.ucam.org>
Cc: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agorfkill: preserve state across suspend
Henrique de Moraes Holschuh [Fri, 21 Nov 2008 22:40:09 +0000 (20:40 -0200)]
rfkill: preserve state across suspend

The rfkill class API requires that the driver connected to a class
call rfkill_force_state() on resume to update the real state of the
rfkill controller, OR that it provides a get_state() hook.

This means there is potentially a hidden call in the resume code flow
that changes rfkill->state (i.e. rfkill_force_state()), so the
previous state of the transmitter was being lost.

The simplest and most future-proof way to fix this is to explicitly
store the pre-sleep state on the rfkill structure, and restore from
that on resume.

Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Acked-by: Ivo van Doorn <IvDoorn@gmail.com>
Cc: Matthew Garrett <mjg59@srcf.ucam.org>
Cc: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agomac80211: Look out for some other AP when disassoc is received.
Vivek Natarajan [Sat, 22 Nov 2008 06:19:50 +0000 (22:19 -0800)]
mac80211: Look out for some other AP when disassoc is received.

When a disassoc packet is received from the AP with a reason code of
'leaving the BSS', mac80211 should go into DISABLED state just as it
would do if the AP suddenly went away for some reason, as that is what
will happen shortly after the AP leaves anyway.

Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agonl80211: Report max TX power in NL80211_BAND_ATTR_FREQS
Jouni Malinen [Fri, 21 Nov 2008 17:01:30 +0000 (19:01 +0200)]
nl80211: Report max TX power in NL80211_BAND_ATTR_FREQS

This is useful information to provide for userspace (e.g., hostapd needs
this to generate Country IE).

Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath5k: Clean up eeprom parsing and add missing calibration data
Felix Fietkau [Thu, 20 Nov 2008 14:16:22 +0000 (15:16 +0100)]
ath5k: Clean up eeprom parsing and add missing calibration data

This patch brings the ath5k eeprom parsing code in sync with the work
done on ath_info by Nick Kossifidis and integrates the missing parts
based on the code of the Atheros Legacy HAL release.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Dont update rate control for every AMPDU
Vasanthakumar Thiagarajan [Thu, 20 Nov 2008 06:21:18 +0000 (11:51 +0530)]
ath9k: Dont update rate control for every AMPDU

Update the rate control only with the tx status of first
AMPDU of an aggregation. This patch fixes frequent drops
in throughput.

Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoiwlwifi: TX update chicken bits
Winkler, Tomas [Wed, 19 Nov 2008 23:32:27 +0000 (15:32 -0800)]
iwlwifi: TX update chicken bits

This instructs FH to increment the retry count of a packet when
it is brought from the memory to TX-FIFO to save transactions
during aggregation flow.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoiwlwifi: TX setup fix confusion between TX queue and TX DMA channel
Winkler, Tomas [Wed, 19 Nov 2008 23:32:26 +0000 (15:32 -0800)]
iwlwifi: TX setup fix confusion between TX queue and TX DMA channel

This patch configures correctly TX DMA channel. It is not
the same as TX queue.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Acked-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoiwlwifi: 4965 define firmware file name once
Winkler, Tomas [Wed, 19 Nov 2008 23:32:25 +0000 (15:32 -0800)]
iwlwifi: 4965 define firmware file name once

Apply same idiom as in 5000 introduced by
'iwlwifi: define firmware file name once'

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoiwlwifi: enable base band calibration in 5000 HW
Tomas Winkler [Wed, 19 Nov 2008 23:32:24 +0000 (15:32 -0800)]
iwlwifi: enable base band calibration in 5000 HW

This patch adds base band calibration support.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoiwlwifi: move iwl_clear_stations_table to iwl-sta.c
Winkler, Tomas [Wed, 19 Nov 2008 23:32:23 +0000 (15:32 -0800)]
iwlwifi: move iwl_clear_stations_table to iwl-sta.c

This patch moves iwl_clear_stations_table into iwl-sta.c

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoiwl3945 : Fix ad-hoc mode for 3945
Abhijeet Kolekar [Wed, 19 Nov 2008 23:32:22 +0000 (15:32 -0800)]
iwl3945 : Fix ad-hoc mode for 3945

Patch fixes the ad-hoc mode by
1) Removing redundant clear_stations_table which prevented generation of
beacons.
2) Setting assoc_id to 1. It was never set so preventing tx flow
in iwl3945_tx_skb.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath5k: set mac address in add_interface
Bob Copeland [Tue, 18 Nov 2008 04:40:38 +0000 (23:40 -0500)]
ath5k: set mac address in add_interface

Configure the mac address in add_interface and clear it in
remove_interface so that users can change the mac address
to something other than the one in the eeprom.  Also avoid
setting it at attach time so that we won't ack packets
until fully set up.

Signed-off-by: Bob Copeland <me@bobcopeland.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Use straightforward PCI routines to setup the TX buffer.
Sujith [Tue, 18 Nov 2008 03:40:42 +0000 (09:10 +0530)]
ath9k: Use straightforward PCI routines to setup the TX buffer.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Update TX trigger level on a FIFO underrun.
Sujith [Tue, 18 Nov 2008 03:40:22 +0000 (09:10 +0530)]
ath9k: Update TX trigger level on a FIFO underrun.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Fix bug in deciphering channel flags
Sujith [Tue, 18 Nov 2008 03:39:54 +0000 (09:09 +0530)]
ath9k: Fix bug in deciphering channel flags

CHANNEL_CCK flag is set for all 2 Ghz channels, so IS_CHAN_CCK() would
turn out to be true for all channles in that band.
Use IS_CHAN_B() now, which checks the channel mode and not the channel
flags.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Move TX completion routine to xmit.c
Sujith [Tue, 18 Nov 2008 03:39:30 +0000 (09:09 +0530)]
ath9k: Move TX completion routine to xmit.c

Also, use a helper function to setup RC status data
when processing completed TX descriptors.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Use helpers
Sujith [Tue, 18 Nov 2008 03:38:33 +0000 (09:08 +0530)]
ath9k: Use helpers

Break down huge functions, use helper functions or
macros instead.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: General code scrub
Sujith [Tue, 18 Nov 2008 03:38:13 +0000 (09:08 +0530)]
ath9k: General code scrub

Replace TRUE/FALSE macros with VALID/INVALID macros.
Follow a consistent variable convention.
Remove unnecessary comments.
Add all RC phy macros into a single enum.
Merge functions into reasonably sized entities.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Remove ath9k_rate_table
Sujith [Tue, 18 Nov 2008 03:37:53 +0000 (09:07 +0530)]
ath9k: Remove ath9k_rate_table

Maintaining two sets of rate tables is redundant, remove one
and use struct ath_rate_table exclusively.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Use rate_driver_data
Sujith [Tue, 18 Nov 2008 03:37:30 +0000 (09:07 +0530)]
ath9k: Use rate_driver_data

Remove the hack using vif, and use rate_driver_data within
skb->cb to hold driver specific rate information.
Setup the rate series in the skb's tx control area and remove
all references to ath9k specific rate series ( using struct ath_rc_series ).

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Remove ath_rate_softc
Sujith [Tue, 18 Nov 2008 03:37:06 +0000 (09:07 +0530)]
ath9k: Remove ath_rate_softc

Move the hw rate tables to ath_softc, and access them directly.
tx_triglevel_max is global, move it to ath_rate_node.
Now that ath_rate_softc is gone, rate control attach becomes simpler.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Remove rate control reference in VAP
Sujith [Tue, 18 Nov 2008 03:36:44 +0000 (09:06 +0530)]
ath9k: Remove rate control reference in VAP

Rate control init is now confined to itself, using the
HT capabilites of the STA from rate_init().

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoslub: make early_kmem_cache_node_alloc void
David Rientjes [Wed, 26 Nov 2008 03:14:19 +0000 (19:14 -0800)]
slub: make early_kmem_cache_node_alloc void

The return value for early_kmem_cache_node_alloc() is unused, so it is
better defined as void.

Acked-by: Christoph Lameter <cl@linux-foundation.org>
Signed-off-by: David Rientjes <rientjes@google.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
17 years agoath9k: We don't support non-HT devices, so remove superfluous code.
Sujith [Tue, 18 Nov 2008 03:36:18 +0000 (09:06 +0530)]
ath9k: We don't support non-HT devices, so remove superfluous code.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoslab: unsigned slabp->inuse cannot be less than 0
roel kluin [Wed, 29 Oct 2008 21:18:07 +0000 (17:18 -0400)]
slab: unsigned slabp->inuse cannot be less than 0

unsigned slabp->inuse cannot be less than 0

Acked-by: Christoph Lameter <cl@linux-foundation.org
Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
17 years agoath9k: Revamp RX handling
Sujith [Tue, 18 Nov 2008 03:35:55 +0000 (09:05 +0530)]
ath9k: Revamp RX handling

Remove a lot of old, crufty code and make
RX status reporting a bit sane and clean.

Do not do anything to the RX skb before unmapping.
So in ath_rx_tasklet(), move the skb_put() after PCI unmap.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoslub - fix get_object_page comment
Cyrill Gorcunov [Tue, 28 Oct 2008 19:02:26 +0000 (22:02 +0300)]
slub - fix get_object_page comment

Use 'slab page' instead of 'slab object'.

Acked-by: Christoph Lameter <cl@linux-foundation.org>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
17 years agoath9k: Nuke fixed rate handling in driver
Sujith [Tue, 18 Nov 2008 03:35:35 +0000 (09:05 +0530)]
ath9k: Nuke fixed rate handling in driver

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoSLUB: Replace __builtin_return_address(0) with _RET_IP_.
Eduard - Gabriel Munteanu [Tue, 19 Aug 2008 17:43:25 +0000 (20:43 +0300)]
SLUB: Replace __builtin_return_address(0) with _RET_IP_.

This patch replaces __builtin_return_address(0) with _RET_IP_, since a
previous patch moved _RET_IP_ and _THIS_IP_ to include/linux/kernel.h and
they're widely available now. This makes for shorter and easier to read
code.

[penberg@cs.helsinki.fi: remove _RET_IP_ casts to void pointer]
Signed-off-by: Eduard - Gabriel Munteanu <eduard.munteanu@linux360.ro>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
17 years agoath9k: Remove half/quarter rate tables
Sujith [Tue, 18 Nov 2008 03:35:13 +0000 (09:05 +0530)]
ath9k: Remove half/quarter rate tables

Half/Quarter rate tables are needed only for legacy chipsets.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoSLUB: cleanup - define macros instead of hardcoded numbers
Cyrill Gorcunov [Wed, 22 Oct 2008 19:00:38 +0000 (23:00 +0400)]
SLUB: cleanup - define macros instead of hardcoded numbers

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Acked-by: Christoph Lameter <cl@linux-foundation.org>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
17 years agoath9k: Remove ath_rate_newassoc()
Sujith [Tue, 18 Nov 2008 03:34:21 +0000 (09:04 +0530)]
ath9k: Remove ath_rate_newassoc()

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Remove ath_setup_rates
Sujith [Tue, 18 Nov 2008 03:34:00 +0000 (09:04 +0530)]
ath9k: Remove ath_setup_rates

Setup legacy rates in ath_rate_init() itself.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Simplify RC alloc/free functions
Sujith [Tue, 18 Nov 2008 03:33:36 +0000 (09:03 +0530)]
ath9k: Simplify RC alloc/free functions

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Merge struct ath_tx_ratectrl with ath_rate_node
Sujith [Tue, 18 Nov 2008 03:33:12 +0000 (09:03 +0530)]
ath9k: Merge struct ath_tx_ratectrl with ath_rate_node

Avoid casting of ath_tx_ratctrl and access the elements directly.

Signed-off-by: Sujith <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoath9k: Fix panic while unregistering rfkill
Vasanthakumar Thiagarajan [Mon, 17 Nov 2008 19:49:56 +0000 (01:19 +0530)]
ath9k: Fix panic while unregistering rfkill

 [ 6133.670329] BUG: unable to handle kernel NULL pointer dereference at 0000000000000010
 [ 6133.672802] IP: [<ffffffffa030fcf6>] ieee80211_stop_queues+0x26/0x40 [mac80211]
 [ 6133.672802] PGD 759dc067 PUD 74f1d067 PMD 0
 [ 6133.672802] Oops: 0002 [#1] PREEMPT SMP
 [ 6133.672802] last sysfs file: /sys/class/backlight/acpi_video0/brightness
 [ 6133.672802] CPU 0
 [ 6133.672802] Modules linked in: ath9k(-) mac80211 pciehp pci_hotplug arc4 ecb joydev pcmcia ppdev lp ppp_generic psmouse sg pcspkr s]
 [ 6133.735830] Pid: 4445, comm: rmmod Tainted: G        W  2.6.28-rc5-wl #1
 [ 6133.735830] RIP: 0010:[<ffffffffa030fcf6>]  [<ffffffffa030fcf6>] ieee80211_stop_queues+0x26/0x40 [mac80211]
 [ 6133.735830] RSP: 0018:ffff88007d1efd10  EFLAGS: 00010246
 [ 6133.735830] RAX: 0000000000000000 RBX: ffff880074f41aa0 RCX: 0000000000000000
 [ 6133.735830] RDX: 0000000000000010 RSI: 0000000000000000 RDI: ffff880074f40340
 [ 6133.735830] RBP: ffff880074990000 R08: 0000000000000000 R09: 000000000000224d
 [ 6133.735830] R10: 0000000000000000 R11: ffffffff8031dc70 R12: 0000000000000000
 [ 6133.735830] R13: 0000000000000001 R14: ffff880074f46c9c R15: 0000000000000000
 [ 6133.735830] FS:  00007f1e2e0bc6f0(0000) GS:ffffffff805e0b80(0000) knlGS:0000000000000000
 [ 6133.735830] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
 [ 6133.735830] CR2: 0000000000000010 CR3: 0000000075593000 CR4: 00000000000006e0
 [ 6133.735830] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
 [ 6133.735830] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
 [ 6133.735830] Process rmmod (pid: 4445, threadinfo ffff88007d1ee000, task ffff88007c0c8000)
 [ 6133.735830] Stack:
 [ 6133.735830]  ffffffffa034d583 ffff88007c7d9410 ffff88007c7d9410 ffff88007c7d9410
 [ 6133.735830]  ffffffff80481dab ffff880074f41aa0 00000000fffffff0 0000000000000000
 [ 6133.735830]  0000000000000001 0000000000000001 ffffffffa034d8a5 ffff88007c7d9400
 [ 6133.735830] Call Trace:
 [ 6133.735830]  [<ffffffffa034d583>] ? ath_radio_disable+0x33/0x150 [ath9k]
 [ 6133.735830]  [<ffffffff80481dab>] ? __mutex_lock_slowpath+0x20b/0x2a0
 [ 6133.735830]  [<ffffffffa034d8a5>] ? ath_sw_toggle_radio+0x65/0xa0 [ath9k]
 [ 6133.735830]  [<ffffffffa019d1f4>] ? rfkill_toggle_radio+0x74/0x140 [rfkill]
 [ 6133.735830]  [<ffffffffa019d597>] ? rfkill_remove_switch+0x67/0x80 [rfkill]
 [ 6133.735830]  [<ffffffffa019d955>] ? rfkill_unregister+0x25/0x50 [rfkill]
 [ 6133.735830]  [<ffffffffa034bf75>] ? ath_detach+0xf5/0x140 [ath9k]
 [ 6133.735830]  [<ffffffffa034bfe9>] ? ath_pci_remove+0x29/0x80 [ath9k]
 [ 6133.735830]  [<ffffffff8035263c>] ? pci_device_remove+0x2c/0x60
 [ 6133.735830]  [<ffffffff803c3829>] ? __device_release_driver+0x99/0x100
 [ 6133.735830]  [<ffffffff803c3950>] ? driver_detach+0xc0/0xd0
 [ 6133.735830]  [<ffffffff803c296e>] ? bus_remove_driver+0x8e/0xd0
 [ 6133.735830]  [<ffffffff80352916>] ? pci_unregister_driver+0x36/0xa0
 [ 6133.735830]  [<ffffffffa0356ad4>] ? exit_ath_pci+0x10/0x29 [ath9k]
 [ 6133.735830]  [<ffffffff8026bb1b>] ? sys_delete_module+0x1cb/0x2d0
 [ 6133.735830]  [<ffffffff802960d9>] ? do_munmap+0x349/0x390
 [ 6133.735830]  [<ffffffff80342d01>] ? __up_write+0x21/0x150
 [ 6133.735830]  [<ffffffff8020c45b>] ? system_call_fastpath+0x16/0x1b
 [ 6133.735830] Code: c3 0f 1f 40 00 0f b7 57 5e 0f b7 47 5c 01 c2 74 30 31 c9 66 90 48 8b 57 78 0f b7 c1 48 c1 e0 07 48 03 82 00 03 00
 [ 6133.735830] RIP  [<ffffffffa030fcf6>] ieee80211_stop_queues+0x26/0x40 [mac80211]

Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agortl8187: Fix transmission count sent to mac80211
Larry Finger [Mon, 17 Nov 2008 15:08:21 +0000 (09:08 -0600)]
rtl8187: Fix transmission count sent to mac80211

In the commit entitled "mac80211/drivers: rewrite the rate control
API", the meaning of the packet transmit count was changed from the
number of retries to the total number.  In driver rtl8187, this change
was missed.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Acked-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Tested-by: Hin-Tak Leung <htl10@users.sourceforge.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agomac80211: Fix pid rate-setting algorithm to allow rate changes
Larry Finger [Sun, 16 Nov 2008 23:09:25 +0000 (17:09 -0600)]
mac80211: Fix pid rate-setting algorithm to allow rate changes

In commit 9ea2c74 named "mac80211/drivers: rewrite the rate control API",
the meaning of status.rates[i].count was changed from number of retries
to total number of tries. As a result, the pid rate-setting algorithm fails
because every packet appears to have needed a retransmit.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agort2x00: Don't switch off LED on initialization
Ivo van Doorn [Sat, 15 Nov 2008 23:08:50 +0000 (00:08 +0100)]
rt2x00: Don't switch off LED on initialization

When we switch off the LEDS during initialization
we kill rt73usb from proper functioning. The immediate
result after the first LED command are MCU failures
and a complete breakdown of TX/RX.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 years agoorinoco: indicate it is using dBm in wireless_stats and spy
Andrey Borzenkov [Sat, 15 Nov 2008 14:15:09 +0000 (17:15 +0300)]
orinoco: indicate it is using dBm in wireless_stats and spy

Since WE7 /proc/net/wireless checks whether level and noise  are in dBm
and shows them accordingly. Indicate that we return signal and noice
levels in dBm.

Before:
Inter-| sta-|   Quality        |   Discarded packets               | Missed | WE
 face | tus | link level noise |  nwid  crypt   frag  retry   misc | beacon | 22
  eth1: 0000   65.  219.  165.       0      0    148     41      0        0

After:
Inter-| sta-|   Quality        |   Discarded packets               | Missed | WE
 face | tus | link level noise |  nwid  crypt   frag  retry   misc | beacon | 22
  eth1: 0000   65.  -37.  -91.       0      0      0      0      0        0

While at it, replace raw numbers with appropriate macro.

Signed-off-by: Andrey Borzenkov <arvidjaar@mail.ru>
Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>