Lines Matching +full:attr +full:- +full:cnt +full:- +full:name

1 // SPDX-License-Identifier: GPL-2.0
42 int cpuid = cpu->dev.id; in change_cpu_under_node()
45 cpu->node_id = to_nid; in change_cpu_under_node()
51 int cpuid = dev->id; in cpu_subsys_online()
58 return -ENODEV; in cpu_subsys_online()
64 * If -EBUSY is returned, it is likely that hotplug is temporarily in cpu_subsys_online()
70 if (ret == -EBUSY) { in cpu_subsys_online()
96 int logical_cpu = cpu->dev.id; in unregister_cpu()
100 device_unregister(&cpu->dev); in unregister_cpu()
107 struct device_attribute *attr, in cpu_probe_store() argument
111 ssize_t cnt; in cpu_probe_store() local
118 cnt = arch_cpu_probe(buf, count); in cpu_probe_store()
121 return cnt; in cpu_probe_store()
125 struct device_attribute *attr, in cpu_release_store() argument
129 ssize_t cnt; in cpu_release_store() local
136 cnt = arch_cpu_release(buf, count); in cpu_release_store()
139 return cnt; in cpu_release_store()
151 struct device_attribute *attr, in crash_notes_show() argument
158 cpunum = cpu->dev.id; in crash_notes_show()
173 struct device_attribute *attr, in crash_notes_size_show() argument
181 &dev_attr_crash_notes.attr,
182 &dev_attr_crash_notes_size.attr,
210 struct device_attribute attr; member
215 struct device_attribute *attr, in show_cpus_attr() argument
218 struct cpu_attr *ca = container_of(attr, struct cpu_attr, attr); in show_cpus_attr()
220 return cpumap_print_to_pagebuf(true, buf, ca->map); in show_cpus_attr()
223 #define _CPU_ATTR(name, map) \ argument
224 { __ATTR(name, 0444, show_cpus_attr, NULL), map }
237 struct device_attribute *attr, char *buf) in print_cpus_kernel_max() argument
239 return sysfs_emit(buf, "%d\n", NR_CPUS - 1); in print_cpus_kernel_max()
243 /* arch-optional setting to enable display of offline cpus >= nr_cpu_ids */
247 struct device_attribute *attr, char *buf) in print_cpus_offline() argument
254 return -ENOMEM; in print_cpus_offline()
263 if (nr_cpu_ids == total_cpus-1) in print_cpus_offline()
266 len += sysfs_emit_at(buf, len, "%u-%d", in print_cpus_offline()
267 nr_cpu_ids, total_cpus - 1); in print_cpus_offline()
277 struct device_attribute *attr, char *buf) in print_cpus_isolated() argument
283 return -ENOMEM; in print_cpus_isolated()
297 struct device_attribute *attr, char *buf) in print_cpus_nohz_full() argument
306 struct device_attribute *attr, in crash_hotplug_show() argument
329 * on the linux-kernel list, you have been warned. in cpu_device_release()
335 struct device_attribute *attr, in print_cpu_modalias() argument
370 .name = "cpu",
384 * register_cpu - Setup a sysfs device for a CPU.
385 * @cpu - cpu->hotpluggable field set to 1 will generate a control file in
387 * @num - CPU number to use when creating the device.
395 cpu->node_id = cpu_to_node(num); in register_cpu()
396 memset(&cpu->dev, 0x00, sizeof(struct device)); in register_cpu()
397 cpu->dev.id = num; in register_cpu()
398 cpu->dev.bus = &cpu_subsys; in register_cpu()
399 cpu->dev.release = cpu_device_release; in register_cpu()
400 cpu->dev.offline_disabled = !cpu->hotpluggable; in register_cpu()
401 cpu->dev.offline = !cpu_online(num); in register_cpu()
402 cpu->dev.of_node = of_get_cpu_node(num, NULL); in register_cpu()
403 cpu->dev.groups = common_cpu_attr_groups; in register_cpu()
404 if (cpu->hotpluggable) in register_cpu()
405 cpu->dev.groups = hotplugable_cpu_attr_groups; in register_cpu()
406 error = device_register(&cpu->dev); in register_cpu()
408 put_device(&cpu->dev); in register_cpu()
412 per_cpu(cpu_sys_devices, num) = &cpu->dev; in register_cpu()
414 dev_pm_qos_expose_latency_limit(&cpu->dev, in register_cpu()
441 int retval = -ENOMEM; in __cpu_device_create()
448 dev->parent = parent; in __cpu_device_create()
449 dev->groups = groups; in __cpu_device_create()
450 dev->release = device_create_release; in __cpu_device_create()
454 retval = kobject_set_name_vargs(&dev->kobj, fmt, args); in __cpu_device_create()
489 &dev_attr_probe.attr,
490 &dev_attr_release.attr,
492 &cpu_attrs[0].attr.attr,
493 &cpu_attrs[1].attr.attr,
494 &cpu_attrs[2].attr.attr,
495 &dev_attr_kernel_max.attr,
496 &dev_attr_offline.attr,
497 &dev_attr_isolated.attr,
499 &dev_attr_nohz_full.attr,
502 &dev_attr_crash_hotplug.attr,
505 &dev_attr_modalias.attr,
522 return dev && container_of(dev, struct cpu, dev)->hotpluggable in cpu_is_hotpluggable()
545 struct device_attribute *attr, char *buf) in cpu_show_not_affected() argument
586 &dev_attr_meltdown.attr,
587 &dev_attr_spectre_v1.attr,
588 &dev_attr_spectre_v2.attr,
589 &dev_attr_spec_store_bypass.attr,
590 &dev_attr_l1tf.attr,
591 &dev_attr_mds.attr,
592 &dev_attr_tsx_async_abort.attr,
593 &dev_attr_itlb_multihit.attr,
594 &dev_attr_srbds.attr,
595 &dev_attr_mmio_stale_data.attr,
596 &dev_attr_retbleed.attr,
597 &dev_attr_spec_rstack_overflow.attr,
598 &dev_attr_gather_data_sampling.attr,
599 &dev_attr_reg_file_data_sampling.attr,
604 .name = "vulnerabilities",
613 if (sysfs_create_group(&dev->kobj, &cpu_root_vulnerabilities_group)) in cpu_register_vulnerabilities()