ledtrig-netdev: update base driver instead of patching it for every kernel

All supported kernels require patching ledtrig-netdev in the same way,
so it's safe to just move these changes to the base version of this
driver. We needed these patches for some old kernels 2.6.36 and 3.11.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 47962
This commit is contained in:
Rafał Miłecki 2015-12-23 10:17:09 +00:00
parent 2be144fa3c
commit 8996164e56
5 changed files with 4 additions and 160 deletions

View File

@ -22,7 +22,6 @@
#include <linux/list.h>
#include <linux/spinlock.h>
#include <linux/device.h>
#include <linux/sysdev.h>
#include <linux/netdevice.h>
#include <linux/timer.h>
#include <linux/ctype.h>
@ -254,7 +253,7 @@ static int netdev_trig_notify(struct notifier_block *nb,
unsigned long evt,
void *dv)
{
struct net_device *dev = dv;
struct net_device *dev = netdev_notifier_info_to_dev((struct netdev_notifier_info *) dv);
struct led_netdev_data *trigger_data = container_of(nb, struct led_netdev_data, notifier);
if (evt != NETDEV_UP && evt != NETDEV_DOWN && evt != NETDEV_CHANGE && evt != NETDEV_REGISTER && evt != NETDEV_UNREGISTER)
@ -294,8 +293,9 @@ done:
static void netdev_trig_timer(unsigned long arg)
{
struct led_netdev_data *trigger_data = (struct led_netdev_data *)arg;
const struct net_device_stats *dev_stats;
struct rtnl_link_stats64 *dev_stats;
unsigned new_activity;
struct rtnl_link_stats64 temp;
write_lock(&trigger_data->lock);
@ -305,7 +305,7 @@ static void netdev_trig_timer(unsigned long arg)
goto no_restart;
}
dev_stats = dev_get_stats(trigger_data->net_dev);
dev_stats = dev_get_stats(trigger_data->net_dev, &temp);
new_activity =
((trigger_data->mode & MODE_TX) ? dev_stats->tx_packets : 0) +
((trigger_data->mode & MODE_RX) ? dev_stats->rx_packets : 0);

View File

@ -19,42 +19,3 @@
obj-$(CONFIG_LEDS_TRIGGERS) += trigger/
obj-$(CONFIG_LEDS_TRIGGER_MORSE) += ledtrig-morse.o
+obj-$(CONFIG_LEDS_TRIGGER_NETDEV) += ledtrig-netdev.o
--- a/drivers/leds/ledtrig-netdev.c
+++ b/drivers/leds/ledtrig-netdev.c
@@ -22,7 +22,6 @@
#include <linux/list.h>
#include <linux/spinlock.h>
#include <linux/device.h>
-#include <linux/sysdev.h>
#include <linux/netdevice.h>
#include <linux/timer.h>
#include <linux/ctype.h>
@@ -254,7 +253,7 @@ static int netdev_trig_notify(struct not
unsigned long evt,
void *dv)
{
- struct net_device *dev = dv;
+ struct net_device *dev = netdev_notifier_info_to_dev((struct netdev_notifier_info *) dv);
struct led_netdev_data *trigger_data = container_of(nb, struct led_netdev_data, notifier);
if (evt != NETDEV_UP && evt != NETDEV_DOWN && evt != NETDEV_CHANGE && evt != NETDEV_REGISTER && evt != NETDEV_UNREGISTER)
@@ -294,8 +293,9 @@ done:
static void netdev_trig_timer(unsigned long arg)
{
struct led_netdev_data *trigger_data = (struct led_netdev_data *)arg;
- const struct net_device_stats *dev_stats;
+ struct rtnl_link_stats64 *dev_stats;
unsigned new_activity;
+ struct rtnl_link_stats64 temp;
write_lock(&trigger_data->lock);
@@ -305,7 +305,7 @@ static void netdev_trig_timer(unsigned l
goto no_restart;
}
- dev_stats = dev_get_stats(trigger_data->net_dev);
+ dev_stats = dev_get_stats(trigger_data->net_dev, &temp);
new_activity =
((trigger_data->mode & MODE_TX) ? dev_stats->tx_packets : 0) +
((trigger_data->mode & MODE_RX) ? dev_stats->rx_packets : 0);

View File

@ -19,42 +19,3 @@
obj-$(CONFIG_LEDS_TRIGGERS) += trigger/
obj-$(CONFIG_LEDS_TRIGGER_MORSE) += ledtrig-morse.o
+obj-$(CONFIG_LEDS_TRIGGER_NETDEV) += ledtrig-netdev.o
--- a/drivers/leds/ledtrig-netdev.c
+++ b/drivers/leds/ledtrig-netdev.c
@@ -22,7 +22,6 @@
#include <linux/list.h>
#include <linux/spinlock.h>
#include <linux/device.h>
-#include <linux/sysdev.h>
#include <linux/netdevice.h>
#include <linux/timer.h>
#include <linux/ctype.h>
@@ -254,7 +253,7 @@ static int netdev_trig_notify(struct not
unsigned long evt,
void *dv)
{
- struct net_device *dev = dv;
+ struct net_device *dev = netdev_notifier_info_to_dev((struct netdev_notifier_info *) dv);
struct led_netdev_data *trigger_data = container_of(nb, struct led_netdev_data, notifier);
if (evt != NETDEV_UP && evt != NETDEV_DOWN && evt != NETDEV_CHANGE && evt != NETDEV_REGISTER && evt != NETDEV_UNREGISTER)
@@ -294,8 +293,9 @@ done:
static void netdev_trig_timer(unsigned long arg)
{
struct led_netdev_data *trigger_data = (struct led_netdev_data *)arg;
- const struct net_device_stats *dev_stats;
+ struct rtnl_link_stats64 *dev_stats;
unsigned new_activity;
+ struct rtnl_link_stats64 temp;
write_lock(&trigger_data->lock);
@@ -305,7 +305,7 @@ static void netdev_trig_timer(unsigned l
goto no_restart;
}
- dev_stats = dev_get_stats(trigger_data->net_dev);
+ dev_stats = dev_get_stats(trigger_data->net_dev, &temp);
new_activity =
((trigger_data->mode & MODE_TX) ? dev_stats->tx_packets : 0) +
((trigger_data->mode & MODE_RX) ? dev_stats->rx_packets : 0);

View File

@ -19,42 +19,3 @@
obj-$(CONFIG_LEDS_TRIGGERS) += trigger/
obj-$(CONFIG_LEDS_TRIGGER_MORSE) += ledtrig-morse.o
+obj-$(CONFIG_LEDS_TRIGGER_NETDEV) += ledtrig-netdev.o
--- a/drivers/leds/ledtrig-netdev.c
+++ b/drivers/leds/ledtrig-netdev.c
@@ -22,7 +22,6 @@
#include <linux/list.h>
#include <linux/spinlock.h>
#include <linux/device.h>
-#include <linux/sysdev.h>
#include <linux/netdevice.h>
#include <linux/timer.h>
#include <linux/ctype.h>
@@ -254,7 +253,7 @@ static int netdev_trig_notify(struct not
unsigned long evt,
void *dv)
{
- struct net_device *dev = dv;
+ struct net_device *dev = netdev_notifier_info_to_dev((struct netdev_notifier_info *) dv);
struct led_netdev_data *trigger_data = container_of(nb, struct led_netdev_data, notifier);
if (evt != NETDEV_UP && evt != NETDEV_DOWN && evt != NETDEV_CHANGE && evt != NETDEV_REGISTER && evt != NETDEV_UNREGISTER)
@@ -294,8 +293,9 @@ done:
static void netdev_trig_timer(unsigned long arg)
{
struct led_netdev_data *trigger_data = (struct led_netdev_data *)arg;
- const struct net_device_stats *dev_stats;
+ struct rtnl_link_stats64 *dev_stats;
unsigned new_activity;
+ struct rtnl_link_stats64 temp;
write_lock(&trigger_data->lock);
@@ -305,7 +305,7 @@ static void netdev_trig_timer(unsigned l
goto no_restart;
}
- dev_stats = dev_get_stats(trigger_data->net_dev);
+ dev_stats = dev_get_stats(trigger_data->net_dev, &temp);
new_activity =
((trigger_data->mode & MODE_TX) ? dev_stats->tx_packets : 0) +
((trigger_data->mode & MODE_RX) ? dev_stats->rx_packets : 0);

View File

@ -19,42 +19,3 @@
obj-$(CONFIG_LEDS_TRIGGERS) += trigger/
obj-$(CONFIG_LEDS_TRIGGER_MORSE) += ledtrig-morse.o
+obj-$(CONFIG_LEDS_TRIGGER_NETDEV) += ledtrig-netdev.o
--- a/drivers/leds/ledtrig-netdev.c
+++ b/drivers/leds/ledtrig-netdev.c
@@ -22,7 +22,6 @@
#include <linux/list.h>
#include <linux/spinlock.h>
#include <linux/device.h>
-#include <linux/sysdev.h>
#include <linux/netdevice.h>
#include <linux/timer.h>
#include <linux/ctype.h>
@@ -254,7 +253,7 @@ static int netdev_trig_notify(struct not
unsigned long evt,
void *dv)
{
- struct net_device *dev = dv;
+ struct net_device *dev = netdev_notifier_info_to_dev((struct netdev_notifier_info *) dv);
struct led_netdev_data *trigger_data = container_of(nb, struct led_netdev_data, notifier);
if (evt != NETDEV_UP && evt != NETDEV_DOWN && evt != NETDEV_CHANGE && evt != NETDEV_REGISTER && evt != NETDEV_UNREGISTER)
@@ -294,8 +293,9 @@ done:
static void netdev_trig_timer(unsigned long arg)
{
struct led_netdev_data *trigger_data = (struct led_netdev_data *)arg;
- const struct net_device_stats *dev_stats;
+ struct rtnl_link_stats64 *dev_stats;
unsigned new_activity;
+ struct rtnl_link_stats64 temp;
write_lock(&trigger_data->lock);
@@ -305,7 +305,7 @@ static void netdev_trig_timer(unsigned l
goto no_restart;
}
- dev_stats = dev_get_stats(trigger_data->net_dev);
+ dev_stats = dev_get_stats(trigger_data->net_dev, &temp);
new_activity =
((trigger_data->mode & MODE_TX) ? dev_stats->tx_packets : 0) +
((trigger_data->mode & MODE_RX) ? dev_stats->rx_packets : 0);