unsigned int last_activity;
 
        unsigned long mode;
+       bool carrier_link_up;
 #define NETDEV_LED_LINK        0
 #define NETDEV_LED_TX  1
 #define NETDEV_LED_RX  2
-#define NETDEV_LED_MODE_LINKUP 3
 };
 
 enum netdev_led_attr {
        if (!led_cdev->blink_brightness)
                led_cdev->blink_brightness = led_cdev->max_brightness;
 
-       if (!test_bit(NETDEV_LED_MODE_LINKUP, &trigger_data->mode))
+       if (!trigger_data->carrier_link_up) {
                led_set_brightness(led_cdev, LED_OFF);
-       else {
+       } else {
                if (test_bit(NETDEV_LED_LINK, &trigger_data->mode))
                        led_set_brightness(led_cdev,
                                           led_cdev->blink_brightness);
                trigger_data->net_dev =
                    dev_get_by_name(&init_net, trigger_data->device_name);
 
-       clear_bit(NETDEV_LED_MODE_LINKUP, &trigger_data->mode);
+       trigger_data->carrier_link_up = false;
        if (trigger_data->net_dev != NULL)
-               if (netif_carrier_ok(trigger_data->net_dev))
-                       set_bit(NETDEV_LED_MODE_LINKUP, &trigger_data->mode);
+               trigger_data->carrier_link_up = netif_carrier_ok(trigger_data->net_dev);
 
        trigger_data->last_activity = 0;
 
 
        spin_lock_bh(&trigger_data->lock);
 
-       clear_bit(NETDEV_LED_MODE_LINKUP, &trigger_data->mode);
+       trigger_data->carrier_link_up = false;
        switch (evt) {
        case NETDEV_CHANGENAME:
-               if (netif_carrier_ok(dev))
-                       set_bit(NETDEV_LED_MODE_LINKUP, &trigger_data->mode);
+               trigger_data->carrier_link_up = netif_carrier_ok(dev);
                fallthrough;
        case NETDEV_REGISTER:
                if (trigger_data->net_dev)
                break;
        case NETDEV_UP:
        case NETDEV_CHANGE:
-               if (netif_carrier_ok(dev))
-                       set_bit(NETDEV_LED_MODE_LINKUP, &trigger_data->mode);
+               trigger_data->carrier_link_up = netif_carrier_ok(dev);
                break;
        }