17 Sep, 2009
12 commits
-
Prior to calling IUCV functions, the DECLARE BUFFER function must have been
called for at least one CPU to receive IUCV interrupts.With commit "iucv: establish reboot notifier" (6c005961), a check has been
introduced to avoid calling IUCV functions if the current CPU does not have
an interrupt buffer declared.
Because one interrupt buffer is sufficient, change the condition to ensure
that one interrupt buffer is available.In addition, checking the buffer on the current CPU creates a race with
CPU up/down notifications: before checking the buffer, the IUCV function
might be interrupted by an smp_call_function() that retrieves the interrupt
buffer for the current CPU.
When the IUCV function continues, the check fails and -EIO is returned. If a
buffer is available on any other CPU, the IUCV function call must be invoked
(instead of failing with -EIO).Signed-off-by: Hendrik Brueckner
Signed-off-by: Ursula Braun
Signed-off-by: David S. Miller -
During suspend IUCV exploiters have to close their IUCV connections.
When restoring an image, it can be checked if all IUCV pathes had
been closed before the Linux instance was suspended. If not, an
error message is issued to indicate a problem in one of the
used programs exploiting IUCV communication.Signed-off-by: Ursula Braun
Signed-off-by: David S. Miller -
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD
Acked-by: John W. Linville
Signed-off-by: David S. Miller -
net/core/netpoll.c::netpoll_send_skb() calls the poll handler when
it is available. As netconsole can be used from almost any context,
IRQ must not be enabled blindly in the NAPI handler of the driver
which supports netpoll.Call trace:
netpoll_send_skb()
{
local_irq_save(flags)
-> netpoll_poll()
-> poll_napi()
-> poll_one_napi()
-> napi->poll()
-> b44_poll()
local_irq_restore(flags)
}Signed-off-by: Dongdong Deng
Signed-off-by: David S. Miller -
RFC4191 says that "If the Reserved (10) value is received, the Route
Information Option MUST be ignored.", so this patch makes us conform
to the RFC. This is different to the usage of the Default Router
Preference, where an invalid value must indeed be treated as
PREF_MEDIUM.Signed-off-by: Jens Rosenboom
Signed-off-by: David S. Miller -
When I was implementing primary_passive option (formely named primary_lazy) I've
run into troubles with ab_arp. This is the only mode which is not using
bond_select_active_slave() function to select active slave and instead it
selects it itself. This seems to be not the right behaviour and it would be
better to do it in bond_select_active_slave() for all cases. This patch makes
this happen. Please review.Signed-off-by: Jiri Pirko
Signed-off-by: Jay Vosburgh
Signed-off-by: David S. Miller -
There's a check saying
/* we're good if we have both BSSID and channel */
if (wdev->conn->params.bssid && wdev->conn->params.channel) {but that isn't true -- we need the BSS struct. This leads
to errors such asTrying to associate with 00:1b:53:11:dc:40 (SSID='TEST' freq=2412 MHz)
ioctl[SIOCSIWFREQ]: No such file or directory
ioctl[SIOCSIWESSID]: No such file or directory
Association request to the driver failed
Associated with 00:1b:53:11:dc:40in wpa_supplicant, as reported by Holger.
Instead, we really need to have the BSS struct, and if we
don't, then we need to initiate a scan for it. But we may
already have the BSS struct here, so hang on to it if we
do and scan if we don't.Signed-off-by: Johannes Berg
Tested-by: Holger Schurig
Signed-off-by: John W. Linville -
The contention window is supposed to be a power of two minus one, i.e.
15, 31, 63, 127... minstrel_rate_init() forgets to subtract 1, so the
sequence becomes 15, 32, 66, 134...Bug reported by Dan Halperin
Signed-off-by: Pavel Roskin
Signed-off-by: John W. Linville -
Fix printk format warnings:
drivers/ssb/sdio.c:336: warning: format '%u' expects type 'unsigned int', but argument 7 has type 'size_t'
drivers/ssb/sdio.c:443: warning: format '%u' expects type 'unsigned int', but argument 7 has type 'size_t'Signed-off-by: Randy Dunlap
Signed-off-by: John W. Linville -
This patch adds a new usbid for Zcomax XG-705A to the device table.
Cc: stable@kernel.org
Reported-by: Jari Jaakola
Signed-off-by: Christian Lamparter
Signed-off-by: John W. Linville
16 Sep, 2009
4 commits
-
Use uX rather than uintX_t types for consistency.
Signed-off-by: David Howells
Signed-off-by: David S. Miller -
catas_reset() uses pointer to mlx4_priv, but mlx4_priv is not valid
after call mlx4_restart_one().Signed-off-by: Vitaliy Gusev
Acked-by: Roland Dreier
Signed-off-by: David S. Miller -
I have recently came across a preemption imbalance detected by:
huh, entered ffffffff80644630 with preempt_count 00000102, exited with 00000101?
------------[ cut here ]------------
kernel BUG at /usr/src/linux/kernel/timer.c:664!
invalid opcode: 0000 [1] PREEMPT SMPwith ffffffff80644630 being inet_twdr_hangman().
This appeared after I enabled CONFIG_TCP_MD5SIG and played with it a
bit, so I looked at what might have caused it.One thing that struck me as strange is tcp_twsk_destructor(), as it
calls tcp_put_md5sig_pool() -- which entails a put_cpu(), causing the
detected imbalance. Found on 2.6.23.9, but 2.6.31 is affected as well,
as far as I can tell.Signed-off-by: Robert Varga
Signed-off-by: David S. Miller -
If qdisc_get_stab returns error in qdisc_create there is skipped qdisc
ops->destroy, which is necessary because it's after ops->init at the
moment, so memory leaks are quite probable.Signed-off-by: Jarek Poplawski
Signed-off-by: David S. Miller
15 Sep, 2009
24 commits
-
Signed-off-by: Dmitry Eremin-Solenikov
-
Remove __user annotation from optlen arg as it's bogus.
Signed-off-by: Dmitry Eremin-Solenikov
-
After the recent mq change there is the new select_queue qdisc class
method used in tc_modify_qdisc, but it works OK only for direct child
qdiscs of mq qdisc. Grandchildren always get the first tx queue, which
would give wrong qdisc_root etc. results (e.g. for sch_htb as child of
sch_prio). This patch fixes it by using parent's dev_queue for such
grandchildren qdiscs. The select_queue method's return type is changed
BTW.With feedback from: Patrick McHardy
Signed-off-by: Jarek Poplawski
Signed-off-by: David S. Miller -
Sorry Mike, I sent you off the wrong way. The following is simpler and the
second port is diffrent enough in setup (because of NAPI), that the
following is simpler.Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Be more accurate about number of transmit list elements required.
Signed-off-by: Stephen Hemminger
Signed-off-by: David S. Miller -
Parse RxRPC security index 5 type keys (Kerberos 5 tokens).
Signed-off-by: David Howells
Signed-off-by: David S. Miller -
Allow RxRPC keys to be read. This is to allow pioctl() to be implemented in
userspace. RxRPC keys are read out in XDR format.Signed-off-by: David Howells
Signed-off-by: David S. Miller -
Allow add_key() and KEYCTL_INSTANTIATE to accept key payloads in XDR form as
described by openafs-1.4.10/src/auth/afs_token.xg. This provides a way of
passing kaserver, Kerberos 4, Kerberos 5 and GSSAPI keys from userspace, and
allows for future expansion.Signed-off-by: David Howells
Signed-off-by: David S. Miller -
Declare the security index constants symbolically rather than just referring
to them numerically.Signed-off-by: David Howells
Signed-off-by: David S. Miller -
pcnet_cs,serial_cs:
add cis of Linksys lan&modem mulitifunction pcmcia card
and some modem card(MT5634ZLX, RS-COM-2P).Signed-off-by: Ken Kawasaki
Signed-off-by: David S. Miller -
struct socket has a 16 bit hole that triggers kmemcheck warnings.
As suggested by Ingo, use kmemcheck annotations
Signed-off-by: Eric Dumazet
Acked-by: Ingo Molnar
Signed-off-by: David S. Miller -
This patch fixes commit e36b9d16c6a6d0f59803b3ef04ff3c22c3844c10. The approach
there is to call dev_close()/dev_open() whenever the device type is changed in
order to remap the device IP multicast addresses to HW multicast addresses.
This approach suffers from 2 drawbacks:*. It assumes tha the device is UP when calling dev_close(), or otherwise
dev_close() has no affect. It is worth to mention that initscripts (Redhat)
and sysconfig (Suse) doesn't act the same in this matter.
*. dev_close() has other side affects, like deleting entries from the routing
table, which might be unnecessary.The fix here is to directly remap the IP multicast addresses to HW multicast
addresses for a bonding device that changes its type, and nothing else.Reported-by: Jason Gunthorpe
Signed-off-by: Moni Shoua
Signed-off-by: David S. Miller -
When using nanosleep() in an userspace application we get a ratelimit warning
NOHZ: local_softirq_pending 08
for 10 times.
The echo of CAN frames is done from process context and softirq context only.
Therefore the usage of netif_rx() was wrong (for years).This patch replaces netif_rx() with netif_rx_ni() which has to be used from
process/softirq context. It also adds a missing comment that can_send() must
no be used from hardirq context.Signed-off-by: Oliver Hartkopp
Signed-off-by: Urs Thuermann
Signed-off-by: David S. Miller -
It was once upon time so that snd_sthresh was a 16-bit quantity.
...That has not been true for long period of time. I run across
some ancient compares which still seem to trust such legacy.
Put all that magic into a single place, I hopefully found all
of them.Compile tested, though linking of allyesconfig is ridiculous
nowadays it seems.Signed-off-by: Ilpo Järvinen
Signed-off-by: David S. Miller -
After the recent mq change using ingress qdisc overwrites dev->qdisc;
there is also a wrong old qdisc pointer passed to notify_and_destroy.Signed-off-by: Jarek Poplawski
Signed-off-by: David S. Miller -
In the case of fiber and serdes adapters we were seeing issues with ethtool
-t causing kernel panics due to null function pointers. To prevent this we
need to exit out of the phy reset code in the event that we do not have a
valid phy.Signed-off-by: Alexander Duyck
Signed-off-by: Don Skidmore
Signed-off-by: David S. Miller -
Our SGMII phy code was incomplete in that it was not actually placing the
phy in SGMII mode and as a result the PHY was not able to establish a link
when connected to a non serdes link partner. This patch updates the code
to combine the SGMII/serdes PCS init and to add the necessary reset.Signed-off-by: Alexander Duyck
Signed-off-by: Don Skidmore
Signed-off-by: David S. Miller -
Currently the media type detection for CX4 adapters lumps them into a
type of fiber. This causes some strange fallout when firmware verification
is done on the NIC, and certain fiber NIC rules get enforced incorrectly.This patch introduces a new media type for CX4, and puts both 82598 and
82599 CX4 adapters into this bucket.Signed-off-by: Peter P Waskiewicz Jr
Signed-off-by: Jeff Kirsher
Signed-off-by: Don Skidmore
Signed-off-by: David S. Miller -
This patch adds support for CX4 adapters based on 82599.
Signed-off-by: Peter P Waskiewicz Jr
Signed-off-by: Jeff Kirsher
Signed-off-by: Don Skidmore
Signed-off-by: David S. Miller -
The packet split feature was recently moved out of the adapter-wide flags
feature field and into a per-Rx ring feature field. In the process, packet
split isn't properly disabled in the Rx ring if the adapter has it globally
disabled, followed by a device reset.This won't impact the driver today, since it's always in packet split mode.
However, this will prevent any pitfalls if someone disables packet split on
the adapter in the future and doesn't disable it in each ring.Signed-off-by: Peter P Waskiewicz Jr
Signed-off-by: Jeff Kirsher
Signed-off-by: Don Skidmore
Signed-off-by: David S. Miller -
From: Rémi Denis-Courmont
Signed-off-by: Rémi Denis-Courmont
Signed-off-by: David S. Miller -
From: Rémi Denis-Courmont
Signed-off-by: Rémi Denis-Courmont
Signed-off-by: David S. Miller -
Signed-off-by: Alexey Dobriyan
Signed-off-by: David S. Miller -
Signed-off-by: Alexey Dobriyan
Signed-off-by: David S. Miller