summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2015-11-30net: remove unnecessary mroute.h includesNikolay Aleksandrov7-7/+0
It looks like many files are including mroute.h unnecessarily, so remove the include. Most importantly remove it from ipv6. CC: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> CC: Steffen Klassert <steffen.klassert@secunet.com> CC: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-30Merge branch 'mlxsw-hwmon'David S. Miller7-0/+697
Jiri Pirko says: ==================== mlxsw: driver update This patchset carries support for port identification, monitoring of ASIC temperature and board fans. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-30mlxsw: core: Implement fan control using hwmonJiri Pirko1-1/+120
ASIC provides access to fans. Implement their exposure to userspace using hwmon. Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-30mlxsw: reg: Add definition of fan management registersJiri Pirko1-0/+133
Add definition of MFCR, MFSC and MFSM which provide possibility to control and monitor fans. Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-30mlxsw: core: Implement temperature hwmon interfaceJiri Pirko5-0/+264
ASIC provides access to temperature sensors. Implement their exposure to userspace using hwmon. Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-30mlxsw: reg: Add definition of temperature management registersJiri Pirko1-0/+111
Add definition of MTCAP and MTMP registers which provide access to temperature sensors. Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-30mlxsw: spectrum: Add support for port identificationIdo Schimmel1-0/+24
Allow a user to flash the port's LED in order to identify it. This is achieved by setting the Management LED Control Register (MLCR). Signed-off-by: Ido Schimmel <idosch@mellanox.com> Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-30mlxsw: reg: Add Management LED Control register definitionIdo Schimmel1-0/+46
Add the MLCR register, which controls physical port identification LEDs. Signed-off-by: Ido Schimmel <idosch@mellanox.com> Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-30net: Generalise wq_has_sleeper helperHerbert Xu13-28/+44
The memory barrier in the helper wq_has_sleeper is needed by just about every user of waitqueue_active. This patch generalises it by making it take a wait_queue_head_t directly. The existing helper is renamed to skwq_has_sleeper. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-29Merge tag 'wireless-drivers-next-for-davem-2015-11-25' of ↵David S. Miller660-314/+511
git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next Kalle Valo says: ==================== Add vendor directories (for example intel, marvell and so on) to drivers/net/wireless and change the menuconfig to follow the same categorisation. This unifies the directory layout as we already had few drivers already using vendor directories (especially ath and ti). ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-25Merge branch 'master' of ↵David S. Miller13-140/+311
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue Jeff Kirsher says: ==================== Intel Wired LAN Driver Updates 2015-11-25 This series contains updates to fm10k, i40e and i40evf. Alex Duyck fixes up fm10k to use napi_schedule_irqoff() instead of napi_schedule() since the function it is called from runs from hard interrupt context or with interrupts already disabled in netpoll. Shannon cleans up i40e and i40evf unused cd_tunneling parameter and any code comments that refer to it. Then clean up a few instances of BUG_ON, based on a Linux diatribe, especially when WARN_ON can be used. Helin fixed a issue where using ethtool RXNFC command could let receive flow hash could be set on disabled queues, so resolve by returning the number of enabled queues before setting RXNFC. Anjali fixes a MSS issue where the hardware/NVM sets a limit of no less than 256 bytes for MSS, yet the stack can send as low as 76 byte MSS. Fixed the issue by lowering the hardware limit to 64 bytes to avoid MDDs from firing and causing a reset when the MSS is lower than 256. Added a statistic to track how many times we forced to do a write back on transmit if the number of descriptors pending are less than a cache line. Catherine fixes link status changes, where polling would only change link status changes in one direction depending on what the last old data saved off was. This was due to the watchdog only calling link_event and not handle_link_event. Mitch cleans up and enhances error messages related to VF MAC/VLAN filters. v2: Dropped patch "i40e: Properly cast type for arithmetic" patch based on feedback from the community ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-25i40e: Bump version to 1.4.2Catherine Sullivan1-2/+2
Bump. Change-ID: I2d1ce93b2ce74e4eef2394c932aef52cba99713f Signed-off-by: Catherine Sullivan <catherine.sullivan@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40e: create a generic configure rss functionHelin Zhang3-52/+107
This patch renames the old pf-specific function in order to clarify its scope. This patch also creates a more generic configure RSS function with the old name. This patch also creates a new more generic function to get RSS configuration, using the appropriate method. Change-ID: Ieddca2707b708ef19f1ebccdfd03a0a0cd63d3af Signed-off-by: Helin Zhang <helin.zhang@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40e: rework the functions to configure RSS with similar parametersHelin Zhang3-26/+71
Adjust the RSS configure functions so that there is a generic way to hook to ethtool hooks. Change-ID: If446e34fcfaf1bc3320d9d319829a095b5976e67 Signed-off-by: Helin Zhang <helin.zhang@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40e: return the number of enabled queues for ETHTOOL_GRXRINGSHelin Zhang1-1/+1
This patch fixes a problem where using ethtool rxnfc command could let RX flow hash be set on disabled queues. This patch fixes the problem by returning the number of enabled queues before setting rxnfc. Change-ID: Idbac86b0b47ddacc8deee7cd257e41de01cbe5c0 Signed-off-by: Helin Zhang <helin.zhang@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40evf: handle many MAC filters correctlyMitch Williams1-8/+24
When a lot (many hundreds) of MAC or VLAN filters are added at one time, we can overflow the Admin Queue buffer size with all the requests. Unfortunately, the driver would then calculate the message size incorrectly, causing it to be rejected by the PF. Furthermore, there was no mechanism to trigger another request to allow for configuring the rest of the filters that didn't fit into the first request. To fix this, recalculate the correct buffer size when we detect the overflow condition instead of just assuming the max buffer size. Also, don't clear the request bit in adapter->aq_required when we have an overflow, so that the rest of the filters can be processed later. Change-ID: Idd7cbbc5af31315e0dcb1b10e6a02ad9817ce65c Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40e/i40evf: clean up error messagesMitch Williams2-12/+35
Clean up and enhance error messages related to VF MAC/VLAN filters. Indicate which VF is having issues, and if possible indicate the MAC address or VLAN involved. Also, when an error is returned from the PF driver, print useful information about what went wrong, for the most likely cases. Change-ID: Ib3d15eef9e3369a78fd142948671e5fa26d921b8 Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40e/i40evf: Add comment to #endifHelin Zhang2-2/+2
Add a comment to the #endif to more easily match it with its #if. Change-ID: I47eb0a60a17dc6d2f01a930e45006d2dc82e044f Signed-off-by: Helin Zhang <helin.zhang@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40e: Move the saving of old link info from handle_link_event to link_eventCatherine Sullivan1-4/+3
The watchdog only calls link_event not handle_link_event which means that we need to save the old information in link_event. Previously when polling we were comparing current data to the old data saved the last time we actually received a link event. This means that the polling would only fix link status changes in one direction depending on what the last old data saved off was. Change-ID: Ie590f30fdbcb133d0ddad4e07e3eb1aad58255b3 Signed-off-by: Catherine Sullivan <catherine.sullivan@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40e/i40evf: Add a stat to track how many times we have to do a force WBAnjali Singhai Jain7-3/+14
When in NAPI with interrupts disabled, the HW needs to be forced to do a write back on TX if the number of descriptors pending are less than a cache line. This stat helps keep track of how many times we get into this situation. Change-ID: I76c1bcc7ebccd6bffcc5aa33bfe05f2fa1c9a984 Signed-off-by: Anjali Singhai Jain <anjali.singhai@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40e: Workaround fix for mss < 256 issueAnjali Singhai Jain1-0/+27
HW/NVM sets a limit of no less than 256 bytes for MSS. Stack can send as low as 76 bytes MSS. This patch lowers the HW limit to 64 bytes to avoid MDDs from firing and causing a reset when the MSS is lower than 256. Change-ID: I36b500a6bb227d283c3e321a7718e0672b11fab0 Signed-off-by: Anjali Singhai Jain <anjali.singhai@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40e: remove BUG_ON from FCoE setupShannon Nelson1-2/+0
There's no need to kill the kernel thread here. If this condition was true, the probe() would have died long before we got here. In any case, we'll get the same result when this code tries to use the VSI pointer being checked. Prompted by a recent Linus diatribe. Change-ID: I62f531cac34d4fc28ff9657d5b2d9523ae5e33a4 Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40e: remove BUG_ON from feature string buildingShannon Nelson1-16/+18
There's really no reason to kill the kernel thread just because of a little info string. This reworks the code to use snprintf's limiting to assure that the string is never too long, and WARN_ON to still put out a warning that we might want to look at the feature list length. Prompted by a recent Linus diatribe. Change-ID: If52ba5ca1c2344d8bf454a31bbb805eb5d2c5802 Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40e: Change BUG_ON to WARN_ON in service event completeShannon Nelson1-1/+1
There's no need to kill the thread and eventually the kernel in this case. In fact, the remainder of the code won't hurt anything anyway, so just complain that we're here and move along. Prompted by a recent Linus diatribe. Change-ID: Iec020d8bcfedffc1cd2553cc6905fd915bb3e670 Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25i40e/i40evf: remove unused tunnel parameterShannon Nelson2-12/+7
Code was moved into a separate function some time ago. Change-ID: Icabbe71ce05cf5d716d3e1152cdd9cd41d11bcb5 Signed-off-by: Shannon Nelson <shannon.nelson@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25fm10k: use napi_schedule_irqoff()Alexander Duyck1-1/+1
The fm10k_msix_clean_rings function runs from hard interrupt context or with interrupts already disabled in netpoll. It can use napi_schedule_irqoff() instead of napi_schedule() Signed-off-by: Alexander Duyck <aduyck@mirantis.com> Tested-by: Krishneil Singh <Krishneil.k.singh@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-11-25net: phy: bcm7xxx: Add entry for Broadcom BCM7435Florian Fainelli2-0/+15
Add a PHY entry for the Broadcom BCM7435 chips, this is a 40nm generation Ethernet PHY which is analogous to its 7425 and 7429 counter parts. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24Merge branch 'sh_eth-remove-obsolete-platform_ids'David S. Miller1-109/+104
Geert Uytterhoeven says: ==================== sh_eth: Remove obsolete platform_device_id entries Since commit 3d7608e4c169af03 ("ARM: shmobile: bockw: remove legacy board file and config"), which is in v4.4-rc1, shmobile SoCs are only supported in generic DT-only ARM multi-platform builds. The sh_eth driver doesn't need to match platform devices by name anymore, hence this series removes the corresponding platform_device_id entries. Changes since v2: - More Acks, - Platform dependency has entered mainline, Changes since v1: - Protect some data and functions by #ifdef CONFIG_OF to silence unused compiler warnings on SH, - New patches 3 and 4. Thanks for applying! ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24sh_eth: Remove obsolete r8a777x-ether platform_device_id entryGeert Uytterhoeven1-3/+0
Since commit 3d7608e4c169af03 ("ARM: shmobile: bockw: remove legacy board file and config"), R-Car Gen1 SoCs are only supported in generic DT-only ARM multi-platform builds. The driver doesn't need to match platform devices by name anymore, hence remove the corresponding platform_device_id entry. Protect sh_eth_set_rate_r8a777x() and r8a777x_data by #ifdef CONFIG_OF, as they're now referenced on DT platforms only. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24sh_eth: Remove obsolete r8a7740-gether platform_device_id entryGeert Uytterhoeven1-63/+62
Since commit 1fa59bda21c7fa36 ("ARM: shmobile: Remove legacy board code for Armadillo-800 EVA"), r8a7740 is only supported in generic DT-only ARM multi-platform builds. The driver doesn't need to match platform devices by name anymore, hence remove the corresponding platform_device_id entry. Protect r8a7740_data by #ifdef CONFIG_OF as it's now referenced on DT platforms only. Move it to a more logical position, in front of the r8a777x support, so we can have a single #ifdef covering all r7s* and r8a* support soon. This requires moving a few helper functions, too. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24sh_eth: Remove obsolete r8a779x-ether platform_device_id entriesGeert Uytterhoeven1-4/+2
Since commit a483dcbfa21f919c ("ARM: shmobile: lager: Remove legacy board support"), R-Car Gen2 SoCs are only supported in generic DT-only ARM multi-platform builds. The driver doesn't need to match platform devices by name anymore, hence remove the corresponding platform_device_id entry. Protect r8a779x_data by #ifdef CONFIG_OF as it's now referenced on DT platforms only. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24sh_eth: Remove obsolete r7s72100-ether platform_device_id entryGeert Uytterhoeven1-41/+42
Since commit 05104c266ae9a167 ("ARM: shmobile: r7s72100: genmai: Remove legacy board file"), r7s72100 is only supported in generic DT-only ARM multi-platform builds. The driver doesn't need to match platform devices by name anymore, hence remove the corresponding platform_device_id entry. Protect r7s72100_data by #ifdef CONFIG_OF as it's now referenced on DT platforms only. Move it to a more logical position, in front of the r8a777x support, so we can have a single #ifdef covering all r7s* and r8a* support soon. This requires moving a helper function, too. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24vrf: remove slave queue and private slave structNikolay Aleksandrov1-63/+5
The private slave queue and slave struct haven't been used for anything and aren't needed, this allows to reduce memory usage and simplify enslave/release. We can use netdev_for_each_lower_dev() to free the vrf ports when deleting a vrf device. Also if in the future a private struct is needed for each slave, it can be implemented via lower devices' private member (similar to how bonding does it). Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24Merge branch 'for-upstream' of ↵David S. Miller37-1165/+1378
git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next Johan Hedberg says: ==================== pull request: bluetooth-next 2015-11-23 Here's the first bluetooth-next pull request for the 4.5 kernel. - Add new Get Advertising Size Information management command - Add support for new system note message type on monitor channel - Refactor LE scan changes behind separate workqueue to avoid races - Fix issue with privacy feature when powering on adapter - Various minor fixes & cleanups here and there Please let me know if there are any issues pulling. Thanks. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24net: fec: no need to test for the return type of of_property_read_u32Saurabh Sengar1-7/+2
in case of error no need to set num_tx and num_rx = 1, because in case of error these variables will remain unchanged by of_property_read_u32 ie 1 only Signed-off-by: Saurabh Sengar <saurabh.truth@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24drivers: net: xgene: optimizing the codeSaurabh Sengar1-16/+9
this patch does the following: 1 . remove unnecessary if, else condition 2 . reduce one variable 3 . change the return type of 2 functions to void as there return values turn out to be 0 always after above changes Signed-off-by: Saurabh Sengar <saurabh.truth@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24Merge tag 'linux-can-next-for-4.5-20151123' of ↵David S. Miller1-75/+101
git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can-next Marc Kleine-Budde says: ==================== pull-request: can-next 2015-11-23 this is a pull request of a single patch for net-next/master. The patch by Kedareswara rao Appana converts the xilinx CAN driver to runtime_pm. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24net/ipv4/ipconfig: Rejoin broken lines in console outputGeert Uytterhoeven1-10/+9
Commit 09605cc12c078306 ("net ipv4: use preferred log methods") replaced a few calls of pr_cont() after a console print without a trailing newline by pr_info(), causing lines to be split during IP autoconfiguration, like: . , OK IP-Config: Got DHCP answer from 192.168.97.254, my address is 192.168.97.44 Convert these back to using pr_cont(), so it prints again: ., OK IP-Config: Got DHCP answer from 192.168.97.254, my address is 192.168.97.44 Absorb the printing of "my address ..." into the previous call to pr_info(), as there's no reason to use a continuation there. Convert one more pr_info() to print nameservers while we're at it. Fixes: 09605cc12c078306 ("net ipv4: use preferred log methods") Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24net: dsa: include gpio consumer header fileArnd Bergmann1-0/+1
After the introduction of the switch gpio reset API, I'm getting build errors in configurations that disable CONFIG_GPIOLIB: net/dsa/dsa.c:783:16: error: implicit declaration of function 'gpio_to_desc' [-Werror=implicit-function-declaration] The reason is that linux/gpio/consumer.h is not automatically included without gpiolib support. This adds an explicit #include statement to make it compile in all configurations. The reset functionality will not work without gpiolib, which is what you get when disabling the feature. As far as I can tell, gpiolib is supported on all architectures on which you can have DSA at the moment. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Fixes: cc30c16344fc ("net: dsa: Add support for a switch reset gpio") Acked-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-24Merge branch 'master' of ↵David S. Miller13-153/+111
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue Jeff Kirsher says: ==================== Intel Wired LAN Driver Updates 2015-11-23 This series contains updates to ixgbe, ixgbevf, fm10k, i40e and i40evf. Jacob fixes an issue where VF could attempt to read queues it does not own, so prevent this we check queue 0 before we continue. Matthew fixes the MTU for jumbo frames for fm10k. Julia Lawall cleans up a unneeded NULL test in ixgbe. Mark cleans up a redundant header inclusion. Adds KR mode support for CS4227 chip. Cleaned up diagnostic code, which is no longer needed, for the CS4227 chip. Jean Sacren fixes kernel documentation for ixgbe. Alex Duyck fixes an fm10k and ixgbe issue in which the polling routine would increase the budget for receive to at least 1 per queue if multiple queues were present. This would result in receive packets being processed when the budget was 0 which is meant to indicate that no receive can be handled. Also fixes an ixgbevf performance issue where netperf test will starve for memory in the time form one transmit interrupt to the next, so limit lowest interrupt rate for adaptive interrupt moderation to 12K. Fixed up ixgbe and ixgbevf to use napi_schedule_irqoff() where the drivers were run from hard interrupt context or with interrupts already disabled in netpoll. Jesse fixes a compiler warning about an unused variable for i40evf. John Greene fixes an issue with ixgbevf, where if the VF driver is loaded while the corresponding PH interface is down, the driver assigns a random MAC address, can be overwritten with the value of hw->mac.perm_addr which is 0 at that point. So avoid this case by initializing hw->mac.perm_addr to the randomly generated address and do not set it unless we receive an ACK from ixgbe. Rasmus Villemoes cleans up some confusing code in i40e debugfs code. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-23VSOCK: constify vmci_transport_notify_ops structuresJulia Lawall4-5/+6
The vmci_transport_notify_ops structures are never modified, so declare them as const. Done with the help of Coccinelle. Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-23net: atm: constify in_cache_ops and eg_cache_ops structuresJulia Lawall2-4/+4
The in_cache_ops and eg_cache_ops structures are never modified, so declare them as const. Done with the help of Coccinelle. Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-23Merge branch 'ipmr-cleanups'David S. Miller2-372/+284
Nikolay Aleksandrov says: ==================== net: ipmr: cleanups and minor improvements Since I'll have to work with ipmr, I decided to clean it up and do some minor improvements. Functionally there're almost no changes except the SLAB_PANIC removal. Most of the patches just re-design some functions to be clearer and more concise and try to remove the ifdef web that was inside. There's more information in each commit. This is the first set, the end goal is to introduce complete netlink support and control over the mfc and vif devices. I've tried to test all of the setsockopt/getsockopt options, and also made builds with various ipmr kconfig options turned on and off. v2: change patch 7 to keep SLAB_PANIC and just drop the unnecessary null check ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-23net: ipmr: factor out common vif init codeNikolay Aleksandrov1-21/+19
Factor out common vif init code used in both tunnel and pimreg initialization and create ipmr_init_vif_indev() function. Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-23net: ipmr: rearrange and cleanup setsockoptNikolay Aleksandrov1-84/+107
Take rtnl in the beginning unconditionally as most options already need it (one exception - MRT_DONE, see the comment inside), make the lock/unlock places central and move out the switch() local variables. Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-23net: ipmr: drop ip_mr_init() mrt_cachep null check as we'll panic if it failsNikolay Aleksandrov1-2/+0
It's not necessary to check for null as SLAB_PANIC is used and we'll panic if the alloc fails, so just drop it. Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-23net: ipmr: drop an instance of CONFIG_IP_MROUTE_MULTIPLE_TABLESNikolay Aleksandrov1-2/+2
Trivial replace of ifdef with IS_BUILTIN(). Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-23net: ipmr: make ip_mroute_getsockopt more understandableNikolay Aleksandrov1-14/+14
Use a switch to determine if optname is correct and set val accordingly. This produces a much more straight-forward and readable code. Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-23net: ipmr: fix code and comment styleNikolay Aleksandrov2-147/+54
Trivial code and comment style fixes, also removed some extra newlines, spaces and tabs. Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2015-11-23net: ipmr: remove some pimsm ifdefs and simplifyNikolay Aleksandrov1-96/+84
Add the helper pimsm_enabled() which replaces the old CONFIG_IP_PIMSM define and is used to check if any version of PIM-SM has been enabled. Use a single if defined(CONFIG_IP_PIMSM_V1) || defined(CONFIG_IP_PIMSM_V2) for the pim-sm shared code. This is okay w.r.t IGMPMSG_WHOLEPKT because only a VIFF_REGISTER device can send such packet, and it can't be created if pimsm_enabled() is false. Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>