Home
last modified time | relevance | path

Searched refs:psi (Results 1 – 25 of 30) sorted by relevance

12

/linux/drivers/md/
H A Ddm-path-selector.c32 struct ps_internal *psi; in __find_path_selector_type() local
34 list_for_each_entry(psi, &_path_selectors, list) { in __find_path_selector_type()
35 if (!strcmp(name, psi->pst.name)) in __find_path_selector_type()
36 return psi; in __find_path_selector_type()
44 struct ps_internal *psi; in get_path_selector() local
47 psi = __find_path_selector_type(name); in get_path_selector()
48 if (psi && !try_module_get(psi->pst.module)) in get_path_selector()
49 psi = NULL; in get_path_selector()
52 return psi; in get_path_selector()
57 struct ps_internal *psi; in dm_get_path_selector() local
[all …]
/linux/fs/pstore/
H A Dplatform.c267 record->psi = psinfo; in pstore_record_init()
450 ret = record->psi->write(record); in pstore_write_user_compat()
466 int pstore_register(struct pstore_info *psi) in pstore_register() argument
470 if (backend && strcmp(backend, psi->name)) { in pstore_register()
472 backend, psi->name); in pstore_register()
477 if (!psi->flags) { in pstore_register()
479 psi->name); in pstore_register()
484 if (!psi->read || !psi->write) { in pstore_register()
486 psi->name); in pstore_register()
490 new_backend = kstrdup(psi->name, GFP_KERNEL); in pstore_register()
[all …]
H A Dinode.c187 if (!record->psi->erase) in pstore_unlink()
199 scoped_guard(mutex, &record->psi->read_mutex) in pstore_unlink()
200 record->psi->erase(record); in pstore_unlink()
308 int pstore_put_backend_records(struct pstore_info *psi) in pstore_put_backend_records() argument
319 if (pos->record->psi == psi) { in pstore_put_backend_records()
354 pos->record->psi == record->psi) in pstore_mkfile()
365 record->psi->name, record->id, in pstore_mkfile()
H A Dram.c111 static int ramoops_pstore_open(struct pstore_info *psi) in ramoops_pstore_open() argument
113 struct ramoops_context *cxt = psi->data; in ramoops_pstore_open()
185 struct ramoops_context *cxt = record->psi->data; in ramoops_pstore_read()
315 struct ramoops_context *cxt = record->psi->data; in ramoops_pstore_write()
402 struct ramoops_context *cxt = record->psi->data; in ramoops_pstore_write_user()
414 struct ramoops_context *cxt = record->psi->data; in ramoops_pstore_erase()
H A Dzone.c632 static int psz_pstore_open(struct pstore_info *psi) in psz_pstore_open() argument
634 struct psz_context *cxt = psi->data; in psz_pstore_open()
701 struct psz_context *cxt = record->psi->data; in psz_pstore_erase()
723 struct psz_context *cxt = record->psi->data; in psz_write_kmsg_hdr()
874 struct psz_context *cxt = record->psi->data; in psz_pstore_write()
1025 cxt = record->psi->data; in psz_ftrace_read()
1061 struct psz_context *cxt = record->psi->data; in psz_pstore_read()
H A Dftrace.c38 .psi = psinfo, in pstore_ftrace_call()
/linux/tools/accounting/
H A Ddelaytop.c161 static struct psi_stats psi; variable
515 memset(&psi, 0, sizeof(psi)); in read_psi_stats()
523 &psi.cpu_some_avg10, &psi.cpu_some_avg60, in read_psi_stats()
524 &psi.cpu_some_avg300, &psi.cpu_some_total); in read_psi_stats()
531 &psi.cpu_full_avg10, &psi.cpu_full_avg60, in read_psi_stats()
532 &psi.cpu_full_avg300, &psi.cpu_full_total); in read_psi_stats()
551 &psi.memory_some_avg10, &psi.memory_some_avg60, in read_psi_stats()
552 &psi.memory_some_avg300, &psi.memory_some_total); in read_psi_stats()
559 &psi.memory_full_avg10, &psi.memory_full_avg60, in read_psi_stats()
560 &psi.memory_full_avg300, &psi.memory_full_total); in read_psi_stats()
[all …]
/linux/Documentation/translations/zh_CN/accounting/
H A Dpsi.rst3 :Original: Documentation/accounting/psi.rst
22 psi特性能够识别和量化资源竞争导致的业务中断,及其对复杂负载乃至整个系统在
28 psi能够实时的提供相关信息,因此系统可基于psi实现动态的负载管理。如实施
31 psi帮助用户实现硬件资源利用率的最大化。同时无需牺牲业务负载健康度,也无需
68 触发器注册方法:用户打开代表特定资源的psi接口文件,写入门限、时间窗口的值。
78 触发器可针对多个psi度量值设置,同一个psi度量值可设置多个触发器。每个触发器需要
79 单独的文件描述符用于轮询,以区分于其他触发器。所以即使对于同一个psi接口文件,
83 状态后,监控psi增长的频率为每监控窗口刷新10次。
87 psi接口提供的均值即可。
151 对于CONFIG_CGROUP=y及挂载了cgroup2文件系统的系统,能够获取cgroups内任务的psi
[all …]
H A Dindex.rst19 psi
/linux/drivers/firmware/efi/
H A Defi-pstore.c54 static int efi_pstore_open(struct pstore_info *psi) in efi_pstore_open() argument
62 psi->data = kzalloc(record_size, GFP_KERNEL); in efi_pstore_open()
63 if (!psi->data) in efi_pstore_open()
69 static int efi_pstore_close(struct pstore_info *psi) in efi_pstore_close() argument
72 kfree(psi->data); in efi_pstore_close()
159 efi_char16_t *varname = record->psi->data; in efi_pstore_read()
227 record->size, record->psi->buf, in efi_pstore_write()
/linux/Documentation/accounting/
H A Dpsi.rst18 The psi feature identifies and quantifies the disruptions caused by
26 As psi aggregates this information in realtime, systems can be managed
77 To register a trigger user has to open psi interface file under
90 Triggers can be set on more than one psi metric and more than one trigger
91 for the same psi metric can be specified. However for each trigger a separate
94 when opening the same psi interface file. Write operations to a file descriptor
95 with an already existing psi trigger will fail with EBUSY.
98 psi metric and deactivates upon exit from the stall state. While system is
99 in the stall state psi signal growth is monitored at a rate of 10 times per
105 after which monitors are most likely not needed and psi averages can be used
[all …]
H A Dindex.rst12 psi
H A Ddelay-accounting.rst137 Note: PSI support requires `CONFIG_PSI=y` and `psi=1` for full functionality.
/linux/include/linux/
H A Dpstore.h73 struct pstore_info *psi; member
195 int (*open)(struct pstore_info *psi);
196 int (*close)(struct pstore_info *psi);
H A Dpsi.h37 return cgroup_ino(cgrp) == 1 ? &psi_system : cgrp->psi; in cgroup_psi()
H A Dcgroup-defs.h616 struct psi_group *psi; member
/linux/kernel/sched/
H A Dpsi.c1117 cgroup->psi = kzalloc(sizeof(struct psi_group), GFP_KERNEL); in psi_cgroup_alloc()
1118 if (!cgroup->psi) in psi_cgroup_alloc()
1121 cgroup->psi->pcpu = alloc_percpu(struct psi_group_cpu); in psi_cgroup_alloc()
1122 if (!cgroup->psi->pcpu) { in psi_cgroup_alloc()
1123 kfree(cgroup->psi); in psi_cgroup_alloc()
1126 group_init(cgroup->psi); in psi_cgroup_alloc()
1127 cgroup->psi->parent = cgroup_psi(cgroup_parent(cgroup)); in psi_cgroup_alloc()
1136 cancel_delayed_work_sync(&cgroup->psi->avgs_work); in psi_cgroup_free()
1137 free_percpu(cgroup->psi->pcpu); in psi_cgroup_free()
1139 WARN_ONCE(cgroup->psi->rtpoll_states, "psi: trigger leak\n"); in psi_cgroup_free()
[all …]
/linux/drivers/usb/host/
H A Dxhci-hub.c77 if ((port_cap->psi[i] & PLT_MASK) == PLT_SYM) in xhci_create_usb3x_bos_desc()
150 u32 psi; in xhci_create_usb3x_bos_desc() local
160 psi = port_cap->psi[i]; in xhci_create_usb3x_bos_desc()
161 ssid = XHCI_EXT_PORT_PSIV(psi); in xhci_create_usb3x_bos_desc()
162 lp = XHCI_EXT_PORT_LP(psi); in xhci_create_usb3x_bos_desc()
163 psie = XHCI_EXT_PORT_PSIE(psi); in xhci_create_usb3x_bos_desc()
164 psim = XHCI_EXT_PORT_PSIM(psi); in xhci_create_usb3x_bos_desc()
165 plt = psi & PLT_MASK; in xhci_create_usb3x_bos_desc()
201 u32 prev = port_cap->psi[i - 1]; in xhci_create_usb3x_bos_desc()
H A Dxhci-mem.c1983 kfree(xhci->port_caps[i].psi); in xhci_mem_cleanup()
2079 port_cap->psi = kcalloc_node(port_cap->psi_count, in xhci_add_in_port()
2080 sizeof(*port_cap->psi), in xhci_add_in_port()
2082 if (!port_cap->psi) in xhci_add_in_port()
2087 port_cap->psi[i] = readl(addr + 4 + i); in xhci_add_in_port()
2092 if (i && (XHCI_EXT_PORT_PSIV(port_cap->psi[i]) != in xhci_add_in_port()
2093 XHCI_EXT_PORT_PSIV(port_cap->psi[i - 1]))) in xhci_add_in_port()
2098 XHCI_EXT_PORT_PSIV(port_cap->psi[i]) >= 5) in xhci_add_in_port()
2102 XHCI_EXT_PORT_PSIV(port_cap->psi[i]), in xhci_add_in_port()
2103 XHCI_EXT_PORT_PSIE(port_cap->psi[i]), in xhci_add_in_port()
[all …]
/linux/kernel/cgroup/
H A Dcgroup.c3977 struct psi_group *psi = cgroup_psi(cgrp); in cgroup_io_pressure_show() local
3979 return psi_show(seq, psi, PSI_IO); in cgroup_io_pressure_show()
3984 struct psi_group *psi = cgroup_psi(cgrp); in cgroup_memory_pressure_show() local
3986 return psi_show(seq, psi, PSI_MEM); in cgroup_memory_pressure_show()
3991 struct psi_group *psi = cgroup_psi(cgrp); in cgroup_cpu_pressure_show() local
3993 return psi_show(seq, psi, PSI_CPU); in cgroup_cpu_pressure_show()
4002 struct psi_group *psi; in pressure_write() local
4012 if (ctx->psi.trigger) { in pressure_write()
4017 psi = cgroup_psi(cgrp); in pressure_write()
4018 new = psi_trigger_create(psi, buf, res, of->file, of); in pressure_write()
[all …]
H A Dcgroup-internal.h74 } psi; member
/linux/drivers/acpi/apei/
H A Derst.c1016 static int erst_open_pstore(struct pstore_info *psi);
1017 static int erst_close_pstore(struct pstore_info *psi);
1054 static int erst_open_pstore(struct pstore_info *psi) in erst_open_pstore() argument
1062 static int erst_close_pstore(struct pstore_info *psi) in erst_close_pstore() argument
/linux/drivers/infiniband/hw/hfi1/
H A Dmad.c2011 struct opa_port_state_info *psi = (struct opa_port_state_info *)data; in __subn_get_opa_psi() local
2013 if (nports != 1 || smp_length_check(sizeof(*psi), max_len)) { in __subn_get_opa_psi()
2026 psi->port_states.ledenable_offlinereason = ppd->neighbor_normal << 4; in __subn_get_opa_psi()
2027 psi->port_states.ledenable_offlinereason |= in __subn_get_opa_psi()
2029 psi->port_states.ledenable_offlinereason |= in __subn_get_opa_psi()
2032 psi->port_states.portphysstate_portstate = in __subn_get_opa_psi()
2034 psi->link_width_downgrade_tx_active = in __subn_get_opa_psi()
2036 psi->link_width_downgrade_rx_active = in __subn_get_opa_psi()
2054 struct opa_port_state_info *psi = (struct opa_port_state_info *)data; in __subn_set_opa_psi() local
2057 if (nports != 1 || smp_length_check(sizeof(*psi), max_len)) { in __subn_set_opa_psi()
[all …]
/linux/arch/powerpc/kernel/
H A Dnvram_64.c370 static int nvram_pstore_open(struct pstore_info *psi) in nvram_pstore_open() argument
/linux/Documentation/driver-api/usb/
H A Dwriting_usb_driver.rst326 https://lmu.web.psi.ch/docu/manuals/software_manuals/linux_sl/usb_linux_programming_guide.pdf

12