summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* dcbnl: unlock on an error path in dcbnl_cee_fill()Dan Carpenter2011-07-081-1/+1
| | | | | | | We need to release "dcb_lock" which we took on the previous line. Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* skge/sky2: change config references to Marvellstephen hemminger2011-07-081-4/+4
| | | | | | | | Change references to SysKonnect in Kconfig to Marvell since SysKonnect was acquired by Marvell back in 2002. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* sky2: version 1.29stephen hemminger2011-07-081-1/+1
| | | | | | | Since new hardware chip support was added bump version. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* sky2: support for new Optima chipsets (EXPERIMENTAL)stephen hemminger2011-07-082-8/+89
| | | | | | | | | | | | | | | | | This is a backport from the vendor driver of support for the newer Optima (Prime and 2) chipsets. It also includes some setup changes for the current Optima chip as well. The code and comments intentionally mirror the vendor sk98lin driver to allow for easier maintenance. Although this adds support for new chip id's, these chip id's are not used by any of the current PCI device id's listed in the driver. The patch is just to get initial infrastructure in place to handle them when they come. I don't have access to any of this hardware to actually test it yet. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* sky2: use correct Inter Packet Gap at 10/100mbitstephen hemminger2011-07-082-6/+26
| | | | | | | | | This is another fix picked out of the vendor driver. The IPG value in the serial mode register is supposed to be programmed differently at lower speeds. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* sky2: force receive checksum when using RSS on some hardware (v2)stephen hemminger2011-07-082-3/+18
| | | | | | | | | | | Found when reviewing the vendor driver. Apparently some chip versions require receive checksumming to be enabled in order for RSS to work. Also, if fix_features has to change some settings; put in message in log in similar manner to netdev_fix_features. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch 'batman-adv/next' of git://git.open-mesh.org/linux-mergeDavid S. Miller2011-07-086-32/+147
|\
| * batman-adv: request the full table if tt_crc doesn't matchAntonio Quartulli2011-07-071-0/+12
| | | | | | | | | | | | | | | | In case of tt_crc mismatching for a certain orig_node after applying the changes, the node must request the full table immediately. Signed-off-by: Antonio Quartulli <ordex@autistici.org> Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
| * batman-adv: keep global table consistency in case of roamingAntonio Quartulli2011-07-071-2/+8
| | | | | | | | | | | | | | | | | | | | | | To keep consistency of other originator tables, new clients detected as roamed, are kept in the global table but are marked as TT_CLIENT_PENDING They are purged only when the new ttvn is received by the corresponding originator. Moreover they need to be considered as removed in case of global transtable lookup. Signed-off-by: Antonio Quartulli <ordex@autistici.org> Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
| * batman-adv: keep local table consistency for further TT_RESPONSEAntonio Quartulli2011-07-074-30/+125
| | | | | | | | | | | | | | | | | | | | | | | | | | To keep transtable consistency among all the nodes, an originator must not send not yet announced clients within a full table TT_RESPONSE. Instead, deleted client have to be kept in the table in order to be sent within an immediate TT_RESPONSE. In this way all the nodes in the network will always provide the same response for the same request. All the modification are committed at the next ttvn increment event. Signed-off-by: Antonio Quartulli <ordex@autistici.org> Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
| * batman-adv: initialise last_ttvn and tt_crc for the orig_node structureAntonio Quartulli2011-07-071-0/+2
| | | | | | | | | | | | | | | | The last_ttvn and tt_crc fields of the orig_node structure were not initialised causing an immediate TT_REQ/RES dialogue even if not needed. Signed-off-by: Antonio Quartulli <ordex@autistici.org> Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
* | packet: Fix build with INET disabled.David S. Miller2011-07-071-0/+2
| | | | | | | | | | | | | | | | | | af_packet.c:(.text+0x3d130): undefined reference to `ip_defrag' or ERROR: "ip_defrag" [net/packet/af_packet.ko] undefined! Reported-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | af_packet: lock imbalanceEric Dumazet2011-07-071-31/+31
| | | | | | | | | | | | | | | | | | fanout_add() might return with fanout_mutex held. Reduce indentation level while we are at it Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | sky2: use GFP_KERNEL allocations at device setupEric Dumazet2011-07-071-6/+7
| | | | | | | | | | | | | | | | In process and sleep allowed context, favor GFP_KERNEL allocations over GFP_ATOMIC ones. Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | bnx2x: Add dcbnl notificationShmulik Ravid2011-07-071-3/+9
| | | | | | | | | | | | | | | | | | | | This patch adds a dcbnl notification to the bnx2x. The notification is sent to user mode clients following a change in the dcb negotiated parameters as resolved by the embedded DCBX stack. Signed-off-by: Shmulik Ravid <shmulikr@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | lib/checksum.c: optimize do_csum a bitIan Abbott2011-07-071-8/+5
| | | | | | | | | | | | | | | | | | | | Reduce the number of variables modified by the loop in do_csum() by 1, which seems like a good idea. On Nios II (a RISC CPU with 3-operand instruction set) it reduces the loop from 7 to 6 instructions, including the conditional branch. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
* | macvtap: macvtapTX zero-copy supportShirley Ma2011-07-071-11/+121
| | | | | | | | | | | | | | | | Only 128 bytes is copied, the rest of data is DMA mapped directly from userspace. Signed-off-by: Shirley Ma <xma@...ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | skbuff: skb supports zero-copy buffersShirley Ma2011-07-072-1/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds userspace buffers support in skb shared info. A new struct skb_ubuf_info is needed to maintain the userspace buffers argument and index, a callback is used to notify userspace to release the buffers once lower device has done DMA (Last reference to that skb has gone). If there is any userspace apps to reference these userspace buffers, then these userspaces buffers will be copied into kernel. This way we can prevent userspace apps from holding these userspace buffers too long. Use destructor_arg to point to the userspace buffer info; a new tx flags SKBTX_DEV_ZEROCOPY is added for zero-copy buffer check. Signed-off-by: Shirley Ma <xma@...ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | sock.h: Add a new sock zero-copy flagShirley Ma2011-07-071-0/+1
| | | | | | | | | | Signed-off-by: Shirley Ma <xma@us.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | gianfar v2: code cleanupsSebastian Poehn2011-07-072-24/+29
| | | | | | | | | | | | | | | | This patch: # improves readability of some gianfar nfc code Signed-off-by: Sebastian Poehn <sebastian.poehn@belden.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Disable router anycast address for /127 prefixesBjørn Mork2011-07-071-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | RFC 6164 requires that routers MUST disable Subnet-Router anycast for the prefix when /127 prefixes are used. No need for matching code in addrconf_leave_anycast() as it will silently ignore any attempt to leave an unknown anycast address. Signed-off-by: Bjørn Mork <bjorn@mork.no> Signed-off-by: David S. Miller <davem@davemloft.net>
* | rose: Delete commented out references to ancient firewalling code.David S. Miller2011-07-072-12/+0
| | | | | | | | | | | | These intefaces haven't existed since 2.2.x Signed-off-by: David S. Miller <davem@davemloft.net>
* | skge: update versionstephen hemminger2011-07-072-2/+2
| | | | | | | | | | | | | | | | Update version number, and take "New" off the config information since old sk98lin has been gone for a couple years. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | skge: make support for old Genesis chips optionalstephen hemminger2011-07-072-32/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | The GENESIS boards are really old PCI-X boards that are rare. Marvell has dropped support for this hardware and there is no reason for most users to have to have this code. Rather than riddling code with ifdef's make one macro and let the compiler do the dead code elimination. This saves about 15% of the text size. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | add pci-id for DGE-530Tstephen hemminger2011-07-071-0/+1
| | | | | | | | | | | | | | | | See also: https://bugzilla.kernel.org/show_bug.cgi?id=38862 Reported-by: jameshenderson@ruggedcom.com Signed-off-by: David S. Miller <davem@davemloft.net>
* | skge: cleanup pci id tablestephen hemminger2011-07-071-11/+10
| | | | | | | | | | | | | | | | | | | | | | The PCI table was using mix of defines for device id and hard coded hex values. This patch change it to all hex values. It also adds comments based on the names provided in the vendor driver table. There is NO CHANGE to the actual resulting table. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: doc: fix compile warning of no format arguments in ifenslave.cShan Wei2011-07-071-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix following warning in ifenslave.c with gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4). Documentation/networking/ifenslave.c:263:4: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:271:3: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:277:3: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:285:3: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:291:3: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:292:3: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:312:4: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:323:3: warning: format not a string literal and no format arguments Documentation/networking/ifenslave.c:342:4: warning: format not a string literal and no format arguments Signed-off-by: Shan Wei <shanwei@cn.fujitsu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: fix warning of versioncheckShan Wei2011-07-072-2/+0
| | | | | | | | | | | | | | | | net-next-2.6/drivers/net/bnx2x/bnx2x_sp.c: 19 linux/version.h not needed. net-next-2.6/drivers/net/caif/caif_hsi.c: 9 linux/version.h not needed. Signed-off-by: Shan Wei <shanwei@cn.fujitsu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | packet: Fix leak in pre-defrag support.David S. Miller2011-07-061-1/+1
| | | | | | | | | | | | | | | | When we clone the SKB, we forget about the original one. Avoid this problem by using skb_share_check(). Reported-by: Penttilä Mika <mika.penttila@ixonos.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: sched: constify tcf_proto and tc_actionEric Dumazet2011-07-0623-35/+39
| | | | | | | | | | Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | packet: Add 'cpu' fanout policy.David S. Miller2011-07-062-37/+29
| | | | | | | | | | | | | | | | Unfortunately we have to use a real modulus here as the multiply trick won't work as effectively with cpu numbers as it does with rxhash values. Signed-off-by: David S. Miller <davem@davemloft.net>
* | veth: Kill unused tx_droppedEric Dumazet2011-07-061-4/+1
| | | | | | | | | | | | | | | | Followup to commit f82528bc13a (Exclude duplicated checking for iface-up) : We no longer need percpu tx_dropped field. Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | veth: Kill unused code label and code block.David S. Miller2011-07-051-7/+0
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | dcbnl: Add CEE notificationShmulik Ravid2011-07-052-191/+229
| | | | | | | | | | | | | | | | | | | | | | | | This patch add an unsolicited notification of the DCBX negotiated parameters for the CEE flavor of the DCBX protocol. The notification message is identical to the aggregated CEE get operation and holds all the pertinent local and peer information. The notification routine is exported so it can be invoked by drivers supporting an embedded DCBX stack. Signed-off-by: Shmulik Ravid <shmulikr@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | dcbnl: Aggregated CEE GET operationShmulik Ravid2011-07-052-9/+173
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following couple of patches add dcbnl an unsolicited notification of the the DCB configuration for the CEE flavor of the DCBX protocol. This is useful when the user-mode DCB client is not responsible for conducting and resolving the DCBX negotiation (either because the DCBX stack is embedded in the HW or the negotiation is handled by another agent in the host), but still needs to get the negotiated parameters. This functionality already exists for the IEEE flavor of the DCBX protocol and these patches add it to the older CEE flavor. The first patch extends the CEE attribute GET operation to include not only the peer information, but also all the pertinent local configuration (negotiated parameters). The second patch adds and export a CEE specific notification routine. Signed-off-by: Shmulik Ravid <shmulikr@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'master' of ↵David S. Miller2011-07-05305-1685/+2759
|\ \ | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
| * | net: vlan: enable soft features regardless of underlying deviceShan Wei2011-07-051-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If gso/gro feature of underlying device is turned off, then new created vlan device never can turn gso/gro on. Although underlying device don't support TSO, we still should use software segments for vlan device. Signed-off-by: Shan Wei <shanwei@cn.fujitsu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | vmxnet3: fix starving rx ring whenoc_skb kb failsShreyas Bhatewara2011-07-052-43/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the rx ring is completely empty, then the device may never fire an rx interrupt. Unfortunately, the rx interrupt is what triggers populating the rx ring with fresh buffers, so this will cause networking to lock up. This patch replenishes the skb in recv descriptor as soon as it is peeled off while processing rx completions. If the skb/buffer allocation fails, existing one is recycled and the packet in hand is dropped. This way none of the RX desc is ever left empty, thus avoiding starvation Signed-off-by: Scott J. Goldman <scottjg@vmware.com> Signed-off-by: Shreyas N Bhatewara <sbhatewara@vmware.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | bridge: Always flood broadcast packetsHerbert Xu2011-07-052-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As is_multicast_ether_addr returns true on broadcast packets as well, we need to explicitly exclude broadcast packets so that they're always flooded. This wasn't an issue before as broadcast packets were considered to be an unregistered multicast group, which were always flooded. However, as we now only flood such packets to router ports, this is no longer acceptable. Reported-by: Michael Guntsche <mike@it-loops.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | greth: greth_set_mac_add would corrupt the MAC address.Kristoffer Glembo2011-07-041-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | The MAC address was set using the signed char sockaddr->sa_addr field and thus the address could be corrupted through sign extension. Signed-off-by: Kristoffer Glembo <kristoffer@gaisler.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | net: bind() fix error return on wrong address familyMarcus Meissner2011-07-042-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hi, Reinhard Max also pointed out that the error should EAFNOSUPPORT according to POSIX. The Linux manpages have it as EINVAL, some other OSes (Minix, HPUX, perhaps BSD) use EAFNOSUPPORT. Windows uses WSAEFAULT according to MSDN. Other protocols error values in their af bind() methods in current mainline git as far as a brief look shows: EAFNOSUPPORT: atm, appletalk, l2tp, llc, phonet, rxrpc EINVAL: ax25, bluetooth, decnet, econet, ieee802154, iucv, netlink, netrom, packet, rds, rose, unix, x25, No check?: can/raw, ipv6/raw, irda, l2tp/l2tp_ip Ciao, Marcus Signed-off-by: Marcus Meissner <meissner@suse.de> Cc: Reinhard Max <max@suse.de> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | natsemi: silence dma-debug warningsFUJITA Tomonori2011-07-031-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This silences dma-debug warnings: https://lkml.org/lkml/2011/6/30/341 ------------[ cut here ]------------ WARNING: at /home/jimc/projects/lx/linux-2.6/lib/dma-debug.c:820 check_unmap+0x1fe/0x56a() natsemi 0000:00:06.0: DMA-API: device driver frees DMA memory with different size [device address=0x0000000006ef0040] [map size=1538 bytes] [unmap size=1522 bytes] Modules linked in: pc8736x_gpio pc87360 hwmon_vid scx200_gpio nsc_gpio scx200_hrt scx200_acb i2c_core arc4 rtl8180 mac80211 eeprom_93cx6 cfg80211 pcspkr rfkill scx200 ide_gd_mod ide_pci_generic ohci_hcd usbcore sc1200 ide_core Pid: 870, comm: collector Not tainted 3.0.0-rc5-sk-00080-gca56a95 #1 Call Trace: [<c011a556>] warn_slowpath_common+0x4a/0x5f [<c02565cb>] ? check_unmap+0x1fe/0x56a [<c011a5cf>] warn_slowpath_fmt+0x26/0x2a [<c02565cb>] check_unmap+0x1fe/0x56a [<c0256aaa>] debug_dma_unmap_page+0x53/0x5b [<c029d6cd>] pci_unmap_single+0x4d/0x57 [<c029ea0a>] natsemi_poll+0x343/0x5ca [<c0116f41>] ? try_to_wake_up+0xea/0xfc [<c0122416>] ? spin_unlock_irq.clone.28+0x18/0x23 [<c02d4667>] net_rx_action+0x3f/0xe5 [<c011e35e>] __do_softirq+0x5b/0xd1 [<c011e303>] ? local_bh_enable+0xa/0xa <IRQ> [<c011e54b>] ? irq_exit+0x34/0x75 [<c01034b9>] ? do_IRQ+0x66/0x79 [<c034e869>] ? common_interrupt+0x29/0x30 [<c0115ed0>] ? finish_task_switch.clone.118+0x31/0x72 [<c034cb92>] ? schedule+0x3b2/0x3f1 [<c012f4b0>] ? hrtimer_start_range_ns+0x10/0x12 [<c012f4ce>] ? hrtimer_start_expires+0x1c/0x24 [<c034d5aa>] ? schedule_hrtimeout_range_clock+0x8e/0xb4 [<c012ed27>] ? update_rmtp+0x68/0x68 [<c034d5da>] ? schedule_hrtimeout_range+0xa/0xc [<c017a913>] ? poll_schedule_timeout+0x27/0x3e [<c017b051>] ? do_select+0x488/0x4cd [<c0115ee2>] ? finish_task_switch.clone.118+0x43/0x72 [<c01157ad>] ? need_resched+0x14/0x1e [<c017a99e>] ? poll_freewait+0x74/0x74 [<c01157ad>] ? need_resched+0x14/0x1e [<c034cbc1>] ? schedule+0x3e1/0x3f1 [<c011e55e>] ? irq_exit+0x47/0x75 [<c01157ad>] ? need_resched+0x14/0x1e [<c034cf8a>] ? preempt_schedule_irq+0x44/0x4a [<c034dd1e>] ? need_resched+0x17/0x19 [<c024bc12>] ? put_dec_full+0x7b/0xaa [<c0240060>] ? blkdev_ioctl+0x434/0x618 [<c024bc70>] ? put_dec+0x2f/0x6d [<c024c6a5>] ? number.clone.1+0x10b/0x1d0 [<c034cf8a>] ? preempt_schedule_irq+0x44/0x4a [<c034dd1e>] ? need_resched+0x17/0x19 [<c024d046>] ? vsnprintf+0x225/0x264 [<c024cea0>] ? vsnprintf+0x7f/0x264 [<c018346f>] ? seq_printf+0x22/0x40 [<c01a2fcc>] ? do_task_stat+0x582/0x5a3 [<c017a913>] ? poll_schedule_timeout+0x27/0x3e [<c017b1b5>] ? core_sys_select+0x11f/0x1a3 [<c017a913>] ? poll_schedule_timeout+0x27/0x3e [<c01a34a1>] ? proc_tgid_stat+0xd/0xf [<c012357c>] ? recalc_sigpending+0x32/0x35 [<c0123b9c>] ? __set_task_blocked+0x64/0x6a [<c011dfb0>] ? timespec_add_safe+0x24/0x48 [<c0123449>] ? spin_unlock_irq.clone.16+0x18/0x23 [<c017b3a1>] ? sys_pselect6+0xe5/0x13e [<c034dd65>] ? syscall_call+0x7/0xb [<c0340000>] ? rpc_clntdir_depopulate+0x26/0x30 ---[ end trace 180dcac41a50938b ]--- Reported-by: Jim Cromie <jim.cromie@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Tested-by: Jim Cromie <jim.cromie@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | net: 8139too: Initial necessary vlan_features to support vlanShan Wei2011-07-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Offload setting of vlan device requires vlan_features to be initialized. Signed-off-by: Shan Wei <shanwei@cn.fujitsu.com> Acked-by: Francois Romieu <romieu@fr.zoreil.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | Fix call trace when interrupts are disabled while sleeping function kzalloc ↵Shyam Iyer2011-07-011-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | is called request_threaded irq will call kzalloc that can sleep. Initializing the flags variable outside of spin_lock_irqsave/restore in bnad_mbox_irq_alloc will avoid call traces like below. Jun 27 08:15:24 home-t710 kernel: [11735.634550] Brocade 10G Ethernet driver Jun 27 08:15:24 home-t710 kernel: [11735.634590] bnad_pci_probe : (0xffff880427f3d000, 0xffffffffa020f3e0) PCI Func : (2) Jun 27 08:15:24 home-t710 kernel: [11735.637677] bna 0000:82:00.2: PCI INT A -> GSI 66 (level, low) -> IRQ 66 Jun 27 08:15:24 home-t710 kernel: [11735.638290] bar0 mapped to ffffc90014980000, len 262144 Jun 27 08:15:24 home-t710 kernel: [11735.638732] BUG: sleeping function called from invalid context at mm/slub.c:847 Jun 27 08:15:24 home-t710 kernel: [11735.638736] in_atomic(): 0, irqs_disabled(): 1, pid: 11243, name: insmod Jun 27 08:15:24 home-t710 kernel: [11735.638740] Pid: 11243, comm: insmod Not tainted 3.0.0-rc4+ #6 Jun 27 08:15:24 home-t710 kernel: [11735.638743] Call Trace: Jun 27 08:15:24 home-t710 kernel: [11735.638755] [<ffffffff81046427>] __might_sleep+0xeb/0xf0 Jun 27 08:15:24 home-t710 kernel: [11735.638766] [<ffffffffa01fe469>] ? netif_wake_queue+0x3d/0x3d [bna] Jun 27 08:15:24 home-t710 kernel: [11735.638773] [<ffffffff8111201c>] kmem_cache_alloc_trace+0x43/0xd8 Jun 27 08:15:24 home-t710 kernel: [11735.638782] [<ffffffffa01fe469>] ? netif_wake_queue+0x3d/0x3d [bna] Jun 27 08:15:24 home-t710 kernel: [11735.638787] [<ffffffff810ab791>] request_threaded_irq+0xa1/0x113 Jun 27 08:15:24 home-t710 kernel: [11735.638798] [<ffffffffa020f0c0>] bnad_pci_probe+0x612/0x8e5 [bna] Jun 27 08:15:24 home-t710 kernel: [11735.638807] [<ffffffffa01fe469>] ? netif_wake_queue+0x3d/0x3d [bna] Jun 27 08:15:24 home-t710 kernel: [11735.638816] [<ffffffff81482ef4>] ? _raw_spin_unlock_irqrestore+0x17/0x19 Jun 27 08:15:24 home-t710 kernel: [11735.638822] [<ffffffff8124d17a>] local_pci_probe+0x44/0x75 Jun 27 08:15:24 home-t710 kernel: [11735.638826] [<ffffffff8124dc06>] pci_device_probe+0xd0/0xff Jun 27 08:15:24 home-t710 kernel: [11735.638832] [<ffffffff812ef8ab>] driver_probe_device+0x131/0x213 Jun 27 08:15:24 home-t710 kernel: [11735.638836] [<ffffffff812ef9e7>] __driver_attach+0x5a/0x7e Jun 27 08:15:24 home-t710 kernel: [11735.638840] [<ffffffff812ef98d>] ? driver_probe_device+0x213/0x213 Jun 27 08:15:24 home-t710 kernel: [11735.638844] [<ffffffff812ee933>] bus_for_each_dev+0x53/0x89 Jun 27 08:15:24 home-t710 kernel: [11735.638848] [<ffffffff812ef48a>] driver_attach+0x1e/0x20 Jun 27 08:15:24 home-t710 kernel: [11735.638852] [<ffffffff812ef0ae>] bus_add_driver+0xd1/0x224 Jun 27 08:15:24 home-t710 kernel: [11735.638858] [<ffffffffa01b8000>] ? 0xffffffffa01b7fff Jun 27 08:15:24 home-t710 kernel: [11735.638862] [<ffffffff812efe57>] driver_register+0x98/0x105 Jun 27 08:15:24 home-t710 kernel: [11735.638866] [<ffffffffa01b8000>] ? 0xffffffffa01b7fff Jun 27 08:15:24 home-t710 kernel: [11735.638871] [<ffffffff8124e4c9>] __pci_register_driver+0x56/0xc1 Jun 27 08:15:24 home-t710 kernel: [11735.638875] [<ffffffffa01b8000>] ? 0xffffffffa01b7fff Jun 27 08:15:24 home-t710 kernel: [11735.638884] [<ffffffffa01b8040>] bnad_module_init+0x40/0x60 [bna] Jun 27 08:15:24 home-t710 kernel: [11735.638892] [<ffffffff81002099>] do_one_initcall+0x7f/0x136 Jun 27 08:15:24 home-t710 kernel: [11735.638899] [<ffffffff8108608b>] sys_init_module+0x88/0x1d0 Jun 27 08:15:24 home-t710 kernel: [11735.638906] [<ffffffff81489682>] system_call_fastpath+0x16/0x1b Jun 27 08:15:24 home-t710 kernel: [11735.639642] bnad_pci_probe : (0xffff880427f3e000, 0xffffffffa020f3e0) PCI Func : (3) Jun 27 08:15:24 home-t710 kernel: [11735.639665] bna 0000:82:00.3: PCI INT A -> GSI 66 (level, low) -> IRQ 66 Jun 27 08:15:24 home-t710 kernel: [11735.639735] bar0 mapped to ffffc90014400000, len 262144 Signed-off-by: Shyam Iyer <shyam_iyer@dell.com> Acked-by: Rasesh Mody <rmody@brocade.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | qlge:Version change to v1.00.00.29Jitendra Kalsaria2011-07-011-1/+1
| | | | | | | | | | | | | | | | | | Signed-off-by: Jitendra Kalsaria <jitendra.kalsaria@qlogic.com> Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | qlge: Fix printk priority so chip fatal errors are always reported.Jitendra Kalsaria2011-07-011-13/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | Precedence of the printk should be at higher level so chip fatal errors are always reported. Signed-off-by: Jitendra Kalsaria <jitendra.kalsaria@qlogic.com> Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | qlge:Fix crash caused by mailbox execution on wedged chip.Jitendra Kalsaria2011-07-012-4/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we are in a recover process from a chip fatal error, driver should skip over execution of mailbox commands during resetting chip. Signed-off-by: Jitendra Kalsaria <jitendra.kalsaria@qlogic.com> Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | xfrm4: Don't call icmp_send on local errorSteffen Klassert2011-07-011-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Calling icmp_send() on a local message size error leads to an incorrect update of the path mtu. So use ip_local_error() instead to notify the socket about the error. Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | ipv4: Don't use ufo handling on later transformed packetsSteffen Klassert2011-07-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We might call ip_ufo_append_data() for packets that will be IPsec transformed later. This function should be used just for real udp packets. So we check for rt->dst.header_len which is only nonzero on IPsec handling and call ip_ufo_append_data() just if rt->dst.header_len is zero. Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | xfrm: Remove family arg from xfrm_bundle_okSteffen Klassert2011-07-011-3/+3
| | | | | | | | | | | | | | | | | | | | | The family arg is not used any more, so remove it. Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com> Signed-off-by: David S. Miller <davem@davemloft.net>
OpenPOWER on IntegriCloud