static ssize_t rx_queue_attr_show(struct kobject *kobj, struct attribute *attr,
                                  char *buf)
 {
-       struct rx_queue_attribute *attribute = to_rx_queue_attr(attr);
+       const struct rx_queue_attribute *attribute = to_rx_queue_attr(attr);
        struct netdev_rx_queue *queue = to_rx_queue(kobj);
 
        if (!attribute->show)
 static ssize_t rx_queue_attr_store(struct kobject *kobj, struct attribute *attr,
                                   const char *buf, size_t count)
 {
-       struct rx_queue_attribute *attribute = to_rx_queue_attr(attr);
+       const struct rx_queue_attribute *attribute = to_rx_queue_attr(attr);
        struct netdev_rx_queue *queue = to_rx_queue(kobj);
 
        if (!attribute->store)
        return len;
 }
 
-static struct rx_queue_attribute rps_cpus_attribute =
-       __ATTR(rps_cpus, S_IRUGO | S_IWUSR, show_rps_map, store_rps_map);
+static struct rx_queue_attribute rps_cpus_attribute __ro_after_init
+       = __ATTR(rps_cpus, S_IRUGO | S_IWUSR, show_rps_map, store_rps_map);
 
-
-static struct rx_queue_attribute rps_dev_flow_table_cnt_attribute =
-       __ATTR(rps_flow_cnt, S_IRUGO | S_IWUSR,
-           show_rps_dev_flow_table_cnt, store_rps_dev_flow_table_cnt);
+static struct rx_queue_attribute rps_dev_flow_table_cnt_attribute __ro_after_init
+       = __ATTR(rps_flow_cnt, S_IRUGO | S_IWUSR,
+                show_rps_dev_flow_table_cnt, store_rps_dev_flow_table_cnt);
 #endif /* CONFIG_RPS */
 
-static struct attribute *rx_queue_default_attrs[] = {
+static struct attribute *rx_queue_default_attrs[] __ro_after_init = {
 #ifdef CONFIG_RPS
        &rps_cpus_attribute.attr,
        &rps_dev_flow_table_cnt_attribute.attr,
        return ns;
 }
 
-static struct kobj_type rx_queue_ktype = {
+static struct kobj_type rx_queue_ktype __ro_after_init = {
        .sysfs_ops = &rx_queue_sysfs_ops,
        .release = rx_queue_release,
        .default_attrs = rx_queue_default_attrs,
 static ssize_t netdev_queue_attr_show(struct kobject *kobj,
                                      struct attribute *attr, char *buf)
 {
-       struct netdev_queue_attribute *attribute = to_netdev_queue_attr(attr);
+       const struct netdev_queue_attribute *attribute
+               = to_netdev_queue_attr(attr);
        struct netdev_queue *queue = to_netdev_queue(kobj);
 
        if (!attribute->show)
                                       struct attribute *attr,
                                       const char *buf, size_t count)
 {
-       struct netdev_queue_attribute *attribute = to_netdev_queue_attr(attr);
+       const struct netdev_queue_attribute *attribute
+               = to_netdev_queue_attr(attr);
        struct netdev_queue *queue = to_netdev_queue(kobj);
 
        if (!attribute->store)