aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2009-10-06gigaset: add kerneldoc commentsTilman Schmidt6-44/+166
Add kerneldoc comments to some functions in the Gigaset driver. Impact: documentation Signed-off-by: Tilman Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06gigaset: correct debugging output selectionTilman Schmidt1-3/+6
Dump payload data consistently only when DEBUG_STREAM_DUMP debug bit is set. Impact: debugging aid Signed-off-by: Tilman Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06gigaset: improve error recoveryTilman Schmidt1-24/+45
When the Gigaset base stops responding, try resetting the USB connection to recover. Impact: error handling improvement Signed-off-by: Tilman Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06gigaset: fix device ERROR response handlingTilman Schmidt1-8/+8
Clear out pending command that got rejected with 'ERROR' response. This fixes the bug where unloading the driver module would hang with the message: "gigaset: not searching scheduled commands: busy" after a device communication error. Impact: error handling bugfix Signed-off-by: Tilman Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06gigaset: announce if built with debuggingTilman Schmidt1-1/+7
Mention in the driver load announcement whether the driver was built with debugging messages enabled, to facilitate support. Impact: informational message Signed-off-by: Tilman Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06gigaset: handle isoc frame errors more gracefullyTilman Schmidt1-11/+7
Don't drop the remainder of an URB if an isochronous frame has an error. Impact: error handling improvement Signed-off-by: Tilman Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06gigaset: linearize skbTilman Schmidt1-0/+6
The code of the Gigaset driver assumes that sk_buff-s coming from the ISDN4Linux subsystem are always linear. Explicitly calling skb_linearize() is cheap if they are, but much more robust in case they ever aren't. Impact: robustness improvement Signed-off-by: Tilman Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06gigaset: fix reject/hangup handlingTilman Schmidt1-0/+5
Signal D channel disconnect in a few cases where it was missed, including when an incoming call is disconnected before it was accepted. Impact: error handling improvement Signed-off-by: Tilman Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06isdn: make capidrv module parameter "debugmode" writeableTilman Schmidt1-1/+1
Being able to change the debugmode module parameter of capidrv on the fly is quite useful for debugging and doesn't do any harm. Signed-off-by: Tilman Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06isdn: avoid races in capidrvTilman Schmidt1-12/+13
In several places, capidrv sends a CAPI message to the ISDN device and then updates its internal state accordingly. If the response message from the device arrives before the state is updated, it may be rejected or processed incorrectly. Avoid these races by updating the state before emitting the message. Impact: bugfix Signed-off-by: Tilman Schmidt <[email protected]> Acked-by: Karsten Keil <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06isdn: accept CAPI Informational Info values as successTilman Schmidt1-1/+1
Info values in the 0x00xx range are defined in the CAPI standard as "Informational, message processed successfully". Therefore a CONNECT_B3_CONF message with an Info value in that range should open an NCCI just as with Info==0. Impact: minor bugfix Signed-off-by: Tilman Schmidt <[email protected]> Acked-by: Karsten Keil <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06Documentation: expand isdn/INTERFACE.CAPI documentTilman Schmidt1-16/+67
- Note that send_message() may be called in interrupt context. - Describe the storage of CAPI messages and payload data in SKBs. - Add more details to the description of the _cmsg structure. - Describe kernelcapi debugging output. Impact: documentation Signed-off-by: Tilman Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06be2net: Bug fix to properly update ethtool tx-checksumming after ethtool -K ↵Ajit Khaparde2-3/+3
<ifname> tx off This is a fix for a bug which was a result of wrong use of checksum offload flag. The status of tx-checksumming was not changed from on to off after a 'ethtool -K <ifname> tx off' operation. Use the proper checksum offload flag NETIF_F_HW_CSUM instead of NETIF_F_IP_CSUM and NETIF_F_IPV6_CSUM. Patch is against net-2.6 tree. Signed-off-by: Ajit Khaparde <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06be2net: Fix a typo in be_cmds.hAjit Khaparde1-1/+1
MCC_STATUS_NOT_SUPPORTED should be decimal 66 not hex 66. This patch fixes this typo. Patch against net-2.6 tree. Signed-off-by: Ajit Khaparde <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06be2net: Bug Fix while accounting of multicast frames during netdev stats updateAjit Khaparde1-1/+1
While updating the statistics to be passed via the get_stats, tx multicast frames were being accounted instead of rx multicast frames. This patch fixes the bug. This patch is against the net-2.6 tree. Signed-off-by: Ajit Khaparde <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06qlge: Fix lock/mutex warnings.Ron Mercer4-17/+9
Get rid of spinlock and private mutex usage for exclusive access to the HW semaphore register. rtnl_lock already creates exclusive access to this register in all driver API. Add rtnl to firmware worker threads that also use the HW semaphore register. Signed-off-by: Ron Mercer <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06qlge: Fix queueing of firmware handler in ISR.Ron Mercer1-3/+5
Check that we are not already polling firmware events before we queue the firmware event worker, then disable firmware interrupts. Otherwise we can queue the same event multiple times. Signed-off-by: Ron Mercer <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06qlge: Fix some bit definitions for reset register.Ron Mercer1-3/+3
Signed-off-by: Ron Mercer <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-06connector: Fix incompatible pointer type warningStephen Boyd1-1/+2
Commit 7069331 (connector: Provide the sender's credentials to the callback, 2009-10-02) changed callbacks to take two arguments but missed this one. drivers/connector/cn_proc.c: In function ‘cn_proc_init’: drivers/connector/cn_proc.c:263: warning: passing argument 3 of ‘cn_add_callback’ from incompatible pointer type Signed-off-by: Stephen Boyd <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-05wext: let get_wireless_stats() sleepJohannes Berg1-2/+2
A number of drivers (recently including cfg80211-based ones) assume that all wireless handlers, including statistics, can sleep and they often also implicitly assume that the rtnl is held around their invocation. This is almost always true now except when reading from sysfs: BUG: sleeping function called from invalid context at kernel/mutex.c:280 in_atomic(): 1, irqs_disabled(): 0, pid: 10450, name: head 2 locks held by head/10450: #0: (&buffer->mutex){+.+.+.}, at: [<c10ceb99>] sysfs_read_file+0x24/0xf4 #1: (dev_base_lock){++.?..}, at: [<c12844ee>] wireless_show+0x1a/0x4c Pid: 10450, comm: head Not tainted 2.6.32-rc3 #1 Call Trace: [<c102301c>] __might_sleep+0xf0/0xf7 [<c1324355>] mutex_lock_nested+0x1a/0x33 [<f8cea53b>] wdev_lock+0xd/0xf [cfg80211] [<f8cea58f>] cfg80211_wireless_stats+0x45/0x12d [cfg80211] [<c13118d6>] get_wireless_stats+0x16/0x1c [<c12844fe>] wireless_show+0x2a/0x4c Fix this by using the rtnl instead of dev_base_lock. Reported-by: Miles Lane <[email protected]> Signed-off-by: Johannes Berg <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-05be2net: Fix a bug in preparation of mcc wrb which was causing flash ↵Ajit Khaparde1-1/+0
operation to fail This patch fixes a bug that got introduced in commit 76998bc7. During preparation of mcc wrb, req was being wrongly overwritten and the flash operation was failing. Signed-off-by: Ajit Khaparde <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-05pcnet_cs: add cis of National Semicondoctor's multifunction pcmcia cardKen Kawasaki9-13/+73
pcnet_cs,serial_cs: add cis of National Semicondoctor's lan&modem mulitifunction pcmcia card, NE2K, tamarack ethernet card, and some serial card(COMpad2, COMpad4). Signed-off-by: Ken Kawasaki <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-05net: Support inclusion of <linux/socket.h> before <sys/socket.h>Ben Hutchings1-18/+3
The following user-space program fails to compile: #include <linux/socket.h> #include <sys/socket.h> int main() { return 0; } The reason is that <linux/socket.h> tests __GLIBC__ to decide whether it should define various structures and macros that are now defined for user-space by <sys/socket.h>, but __GLIBC__ is not defined if no libc headers have yet been included. It seems safe to drop support for libc 5 now. Signed-off-by: Ben Hutchings <[email protected]> Signed-off-by: Bastian Blank <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-04pktgen: restore nanosec delaysEric Dumazet1-1/+1
Commit fd29cf72 (pktgen: convert to use ktime_t) inadvertantly converted "delay" parameter from nanosec to microsec. Signed-off-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-04pktgen: Fix multiqueue handlingEric Dumazet2-1/+9
It is not currently possible to instruct pktgen to use one selected tx queue. When Robert added multiqueue support in commit 45b270f8, he added an interval (queue_map_min, queue_map_max), and his code doesnt take into account the case of min = max, to select one tx queue exactly. I suspect a high performance setup on a eight txqueue device wants to use exactly eight cpus, and assign one tx queue to each sender. This patchs makes pktgen select the right tx queue, not the first one. Also updates Documentation to reflect Robert changes. Signed-off-by: Eric Dumazet <[email protected]> Signed-off-by: Robert Olsson <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-04e1000e: swap max hw supported frame size between 82574 and 82583Alexander Duyck1-2/+2
There appears to have been a mixup in the max supported jumbo frame size between 82574 and 82583 which ended up disabling jumbo frames on the 82574 as a result. This patch swaps the two so that this issue is resolved. This patch fixes http://bugzilla.kernel.org/show_bug.cgi?id=14261 Signed-off-by: Alexander Duyck <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-04ixgbe: add support for 82599 based X520 10G Dual KX4 Mezz cardDon Skidmore3-0/+4
This patch adds device support for the 82599 based X520 10GbE Dual Port KX4 Mezzanine card. Signed-off-by: Don Skidmore<[email protected]> Acked-by: Peter P Waskiewicz Jr <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-04ixgbe: add support for 82599 Combined BackplaneDon Skidmore3-0/+4
This patch will add support for the 82599 Dual port Backplane device (0x10f8). This device has the ability to link in serial (KR) and parallel (KX4/KX) modes, depending on what the switch capabilities are in the blade chassis. Signed-off-by: Don Skidmore <[email protected]> Acked-by: Peter P Waskiewicz Jr <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-02cnic: Fix NETDEV_UP event processing.Michael Chan2-3/+4
This fixes the problem of not handling the NETDEV_UP event properly during hot-plug or modprobe of bnx2 after cnic. The handling was skipped by mistakenly using "else if" to check for the event. Also update version to 2.0.1. Signed-off-by: Michael Chan <[email protected]> Signed-off-by: Benjamin Li <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-02uvesafb/connector: Disallow unpliviged users to send netlink packetsPhilipp Reisner1-0/+3
Signed-off-by: Philipp Reisner <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-02pohmelfs/connector: Disallow unpliviged users to configure pohmelfsPhilipp Reisner1-0/+3
Signed-off-by: Philipp Reisner <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-02dst/connector: Disallow unpliviged users to configure dstPhilipp Reisner1-0/+5
Signed-off-by: Philipp Reisner <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-02dm/connector: Only process connector packages from privileged processesPhilipp Reisner1-0/+3
Signed-off-by: Philipp Reisner <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-02connector: Removed the destruct_data callback since it is always kfree_skb()Philipp Reisner3-13/+5
Signed-off-by: Philipp Reisner <[email protected]> Acked-by: Lars Ellenberg <[email protected]> Acked-by: Evgeniy Polyakov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-02connector/dm: Fixed a compilation warningPhilipp Reisner1-2/+1
Signed-off-by: Philipp Reisner <[email protected]> Acked-by: Lars Ellenberg <[email protected]> Acked-by: Evgeniy Polyakov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-02connector: Provide the sender's credentials to the callbackPhilipp Reisner10-18/+19
Signed-off-by: Philipp Reisner <[email protected]> Acked-by: Lars Ellenberg <[email protected]> Acked-by: Evgeniy Polyakov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-02connector: Keep the skb in cn_callback_dataPhilipp Reisner3-9/+9
Signed-off-by: Philipp Reisner <[email protected]> Acked-by: Lars Ellenberg <[email protected]> Acked-by: Evgeniy Polyakov <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-02e1000e/igb/ixgbe: Don't report an error if devices don't support AERFrans Pop3-33/+6
The only error returned by pci_{en,dis}able_pcie_error_reporting() is -EIO which simply means that Advanced Error Reporting is not supported. There is no need to report that, so remove the error check from e1000e, igb and ixgbe. Signed-off-by: Frans Pop <[email protected]> Signed-off-by: Jeff Kirsher <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-02net: Fix wrong sizeofJean Delvare2-2/+2
Which is why I have always preferred sizeof(struct foo) over sizeof(var). Signed-off-by: Jean Delvare <[email protected]> Acked-by: Randy Dunlap <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-02net: splice() from tcp to pipe should take into account O_NONBLOCKEric Dumazet1-1/+1
tcp_splice_read() doesnt take into account socket's O_NONBLOCK flag Before this patch : splice(socket,0,pipe,0,128*1024,SPLICE_F_MOVE); causes a random endless block (if pipe is full) and splice(socket,0,pipe,0,128*1024,SPLICE_F_MOVE | SPLICE_F_NONBLOCK); will return 0 immediately if the TCP buffer is empty. User application has no way to instruct splice() that socket should be in blocking mode but pipe in nonblock more. Many projects cannot use splice(tcp -> pipe) because of this flaw. http://git.samba.org/?p=samba.git;a=history;f=source3/lib/recvfile.c;h=ea0159642137390a0f7e57a123684e6e63e47581;hb=HEAD http://lkml.indiana.edu/hypermail/linux/kernel/0807.2/0687.html Linus introduced SPLICE_F_NONBLOCK in commit 29e350944fdc2dfca102500790d8ad6d6ff4f69d (splice: add SPLICE_F_NONBLOCK flag ) It doesn't make the splice itself necessarily nonblocking (because the actual file descriptors that are spliced from/to may block unless they have the O_NONBLOCK flag set), but it makes the splice pipe operations nonblocking. Linus intention was clear : let SPLICE_F_NONBLOCK control the splice pipe mode only This patch instruct tcp_splice_read() to use the underlying file O_NONBLOCK flag, as other socket operations do. Users will then call : splice(socket,0,pipe,0,128*1024,SPLICE_F_MOVE | SPLICE_F_NONBLOCK ); to block on data coming from socket (if file is in blocking mode), and not block on pipe output (to avoid deadlock) First version of this patch was submitted by Octavian Purdila Reported-by: Volker Lendecke <[email protected]> Reported-by: Jason Gunthorpe <[email protected]> Signed-off-by: Eric Dumazet <[email protected]> Signed-off-by: Octavian Purdila <[email protected]> Acked-by: Linus Torvalds <[email protected]> Acked-by: Jens Axboe <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-01net: Use sk_mark for routing lookup in more placesAtis Elsts3-0/+3
This patch against v2.6.31 adds support for route lookup using sk_mark in some more places. The benefits from this patch are the following. First, SO_MARK option now has effect on UDP sockets too. Second, ip_queue_xmit() and inet_sk_rebuild_header() could fail to do routing lookup correctly if TCP sockets with SO_MARK were used. Signed-off-by: Atis Elsts <[email protected]> Acked-by: Eric Dumazet <[email protected]>
2009-10-01sky2: irqname based on pci addressStephen Hemminger2-2/+7
This is based on Michal Schmidt fix for skge. Most network drivers request their IRQ when the interface is activated. sky2 does it in ->probe() instead, because it can work with two-port cards where the two net_devices use the same IRQ. This works fine most of the time, except in some situations when the interface gets renamed. Consider this example: 1. modprobe sky2 The card is detected as eth0 and requests IRQ 17. Directory /proc/irq/17/eth0 is created. 2. There is an udev rule which says this interface should be called eth1, so udev renames eth0 -> eth1. 3. modprobe 8139too The Realtek card is detected as eth0. It will be using IRQ 17 too. 4. ip link set eth0 up Now 8139too requests IRQ 17. The result is: WARNING: at fs/proc/generic.c:590 proc_register ... proc_dir_entry '17/eth0' already registered The fix is for sky2 to name the irq based on the pci device, as is done by some other devices DRM, infiniband, ... ie. sky2@pci:0000:00:00 Signed-off-by: Stephen Hemminger <[email protected]> Reviewed-by: Michal Schmidt <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-01skge: use unique IRQ nameMichal Schmidt2-2/+7
Most network drivers request their IRQ when the interface is activated. skge does it in ->probe() instead, because it can work with two-port cards where the two net_devices use the same IRQ. This works fine most of the time, except in some situations when the interface gets renamed. Consider this example: 1. modprobe skge The card is detected as eth0 and requests IRQ 17. Directory /proc/irq/17/eth0 is created. 2. There is an udev rule which says this interface should be called eth1, so udev renames eth0 -> eth1. 3. modprobe 8139too The Realtek card is detected as eth0. It will be using IRQ 17 too. 4. ip link set eth0 up Now 8139too requests IRQ 17. The result is: WARNING: at fs/proc/generic.c:590 proc_register ... proc_dir_entry '17/eth0' already registered ... And "ls /proc/irq/17" shows two subdirectories, both called eth0. Fix it by using a unique name for skge's IRQ, based on the PCI address. The naming from the example then looks like this: $ grep skge /proc/interrupts 17: 169 IO-APIC-fasteoi skge@pci:0000:00:0a.0, eth0 irqbalance daemon will have to be taught to recognize "skge@" as an Ethernet interrupt. This will be a one-liner addition in classify.c. I will send a patch to irqbalance if this change is accepted. Signed-off-by: Michal Schmidt <[email protected]> Acked-by: Stephen Hemminger <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-01IPv4 TCP fails to send window scale option when window scale is zeroOri Finkelman1-5/+6
Acknowledge TCP window scale support by inserting the proper option in SYN/ACK and SYN headers even if our window scale is zero. This fixes the following observed behavior: 1. Client sends a SYN with TCP window scaling option and non zero window scale value to a Linux box. 2. Linux box notes large receive window from client. 3. Linux decides on a zero value of window scale for its part. 4. Due to compare against requested window scale size option, Linux does not to send windows scale TCP option header on SYN/ACK at all. With the following result: Client box thinks TCP window scaling is not supported, since SYN/ACK had no TCP window scale option, while Linux thinks that TCP window scaling is supported (and scale might be non zero), since SYN had TCP window scale option and we have a mismatched idea between the client and server regarding window sizes. Probably it also fixes up the following bug (not observed in practice): 1. Linux box opens TCP connection to some server. 2. Linux decides on zero value of window scale. 3. Due to compare against computed window scale size option, Linux does not to set windows scale TCP option header on SYN. With the expected result that the server OS does not use window scale option due to not receiving such an option in the SYN headers, leading to suboptimal performance. Signed-off-by: Gilad Ben-Yossef <[email protected]> Signed-off-by: Ori Finkelman <[email protected]> Acked-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-01net/ipv4/tcp.c: fix min() type mismatch warningAndrew Morton1-1/+1
net/ipv4/tcp.c: In function 'do_tcp_setsockopt': net/ipv4/tcp.c:2050: warning: comparison of distinct pointer types lacks a cast Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-01Kconfig: STRIP: Remove stale bits of STRIP help textRalf Baechle1-7/+6
Remove references to dead web site mosquitonet.Stanford.EDU. Signed-off-by: Ralf Baechle <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-01NET: mkiss: Fix typoRalf Baechle1-2/+2
This typo was introduced by 5793f4be23f0171b4999ca68a39a9157b44139f3 on October 14, 2005 ... Reported-by: Matti Aarnio <[email protected]> Signed-off-by: Ralf Baechle <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-01tg3: Remove prev_vlan_tag from struct tx_ring_infoEric Dumazet1-1/+0
prev_vlan_tag field is not used. Patch saves 512*8 bytes per tx queue ring on 64bit arches. Signed-off-by: Eric Dumazet <[email protected]> Acked-by: Matthew Carlson <[email protected]>
2009-10-01move virtnet_remove to .devexit.textUwe Kleine-König1-1/+1
The function virtnet_remove is used only wrapped by __devexit_p so define it using __devexit. Signed-off-by: Uwe Kleine-König <[email protected]> Acked-by: Sam Ravnborg <[email protected]> Cc: David S. Miller <[email protected]> Cc: Rusty Russell <[email protected]> Cc: Alex Williamson <[email protected]> Cc: Mark McLoughlin <[email protected]> Cc: [email protected] Cc: [email protected] Signed-off-by: David S. Miller <[email protected]>
2009-10-01don't use __devexit_p to wrap sgiseeq_removeUwe Kleine-König1-1/+1
The function sgiseeq_remove is defined using __exit, so don't use __devexit_p but __exit_p to wrap it. Signed-off-by: Uwe Kleine-König <[email protected]> Cc: David S. Miller <[email protected]> Cc: Wang Chen <[email protected]> Cc: Ralf Baechle <[email protected]> Cc: Patrick McHardy <[email protected]> Cc: [email protected] Cc: [email protected] Signed-off-by: David S. Miller <[email protected]>