public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
* [Question mpam mpam/snapshot+extras/v6.18-rc1] Question with Configuring iommu_group in 'task'
@ 2026-03-27 10:21 Qinxin Xia
  2026-03-27 10:47 ` Ben Horgan
  0 siblings, 1 reply; 2+ messages in thread
From: Qinxin Xia @ 2026-03-27 10:21 UTC (permalink / raw)
  To: ben.horgan
  Cc: amitsinght, baisheng.gao, baolin.wang, carl, dave.martin, david,
	dfustini, fenghuay, gshan, james.morse, jonathan.cameron, kobak,
	lcherian, linux-arm-kernel, linux-kernel, peternewman,
	punit.agrawal, quic_jiles, reinette.chatre, rohit.mathew, scott,
	sdonthineni, xhao, zengheng4, Linuxarm


Hello everyone!

In earlier versions, mpam supports the configuration of iommu_groups.

  823 static ssize_t rdtgroup_tasks_write(struct kernfs_open_file *of,
  824                                     char *buf, size_t nbytes,
loff_t off)
  825 {
  826         struct rdtgroup *rdtgrp;
  827         int iommu_group_id;
  828         bool is_iommu;
  829         char *pid_str;
  830         int ret = 0;
  831         pid_t pid;
  832
  833         rdtgrp = rdtgroup_kn_lock_live(of->kn);
  834         if (!rdtgrp) {
  835                 rdtgroup_kn_unlock(of->kn);
  836                 return -ENOENT;
  837         }
  838         rdt_last_cmd_clear();
  839
  840         if (rdtgrp->mode == RDT_MODE_PSEUDO_LOCKED ||
  841             rdtgrp->mode == RDT_MODE_PSEUDO_LOCKSETUP) {
  842                 ret = -EINVAL;
  843                 rdt_last_cmd_puts("Pseudo-locking in progress\n");
  844                 goto unlock;
  845         }
  846
  847         while (buf && buf[0] != '\0' && buf[0] != '\n') {
  848                 pid_str = strim(strsep(&buf, ","));
  849
  850                 is_iommu = string_is_iommu_group(pid_str, 
&iommu_group_id);

What puzzles me is why we would put it under 'task'—this seems a little
  strange to users.It seems they are not related.Why don't we add a new
interface like 'iommu'?

  851                 if (is_iommu)
  852                         ret = rdtgroup_move_iommu(iommu_group_id, 
rdtgrp, of);
  853                 else if (kstrtoint(pid_str, 0, &pid)) {
  854                         rdt_last_cmd_printf("Task list parsing 
error pid %s\n", pid_str);
  855                         ret = -EINVAL;
  856                         break;
  857                 }
  858
  859                 if (pid < 0) {
  860                         rdt_last_cmd_printf("Invalid pid %d\n", pid);
  861                         ret = -EINVAL;
  862                         break;
  863                 }
  864

In future glue versions, will you re-enable support for iommu_group, and
if so, will the configuration scheme be changed?

-- 
Thanks,
Qinxin



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [Question mpam mpam/snapshot+extras/v6.18-rc1] Question with Configuring iommu_group in 'task'
  2026-03-27 10:21 [Question mpam mpam/snapshot+extras/v6.18-rc1] Question with Configuring iommu_group in 'task' Qinxin Xia
@ 2026-03-27 10:47 ` Ben Horgan
  0 siblings, 0 replies; 2+ messages in thread
From: Ben Horgan @ 2026-03-27 10:47 UTC (permalink / raw)
  To: Qinxin Xia
  Cc: amitsinght, baisheng.gao, baolin.wang, carl, dave.martin, david,
	dfustini, fenghuay, gshan, james.morse, jonathan.cameron, kobak,
	lcherian, linux-arm-kernel, linux-kernel, peternewman,
	punit.agrawal, quic_jiles, reinette.chatre, rohit.mathew, scott,
	sdonthineni, xhao, zengheng4, Linuxarm

Hi Qinxin,

On 3/27/26 10:21, Qinxin Xia wrote:
> 
> Hello everyone!
> 
> In earlier versions, mpam supports the configuration of iommu_groups.
> 
>  823 static ssize_t rdtgroup_tasks_write(struct kernfs_open_file *of,
>  824                                     char *buf, size_t nbytes,
> loff_t off)
>  825 {
>  826         struct rdtgroup *rdtgrp;
>  827         int iommu_group_id;
>  828         bool is_iommu;
>  829         char *pid_str;
>  830         int ret = 0;
>  831         pid_t pid;
>  832
>  833         rdtgrp = rdtgroup_kn_lock_live(of->kn);
>  834         if (!rdtgrp) {
>  835                 rdtgroup_kn_unlock(of->kn);
>  836                 return -ENOENT;
>  837         }
>  838         rdt_last_cmd_clear();
>  839
>  840         if (rdtgrp->mode == RDT_MODE_PSEUDO_LOCKED ||
>  841             rdtgrp->mode == RDT_MODE_PSEUDO_LOCKSETUP) {
>  842                 ret = -EINVAL;
>  843                 rdt_last_cmd_puts("Pseudo-locking in progress\n");
>  844                 goto unlock;
>  845         }
>  846
>  847         while (buf && buf[0] != '\0' && buf[0] != '\n') {
>  848                 pid_str = strim(strsep(&buf, ","));
>  849
>  850                 is_iommu = string_is_iommu_group(pid_str, &iommu_group_id);
> 
> What puzzles me is why we would put it under 'task'—this seems a little
>  strange to users.It seems they are not related.Why don't we add a new
> interface like 'iommu'?

I think it is likely that this interface would change if upstream support is added.

> 
>  851                 if (is_iommu)
>  852                         ret = rdtgroup_move_iommu(iommu_group_id, rdtgrp, of);
>  853                 else if (kstrtoint(pid_str, 0, &pid)) {
>  854                         rdt_last_cmd_printf("Task list parsing error pid %s\n", pid_str);
>  855                         ret = -EINVAL;
>  856                         break;
>  857                 }
>  858
>  859                 if (pid < 0) {
>  860                         rdt_last_cmd_printf("Invalid pid %d\n", pid);
>  861                         ret = -EINVAL;
>  862                         break;
>  863                 }
>  864
> 
> In future glue versions, will you re-enable support for iommu_group, and
> if so, will the configuration scheme be changed?

Please can you let us know about your usecase so that we can get more information to decide
what the best interface would be?

Thanks,

Ben




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-03-27 10:48 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-27 10:21 [Question mpam mpam/snapshot+extras/v6.18-rc1] Question with Configuring iommu_group in 'task' Qinxin Xia
2026-03-27 10:47 ` Ben Horgan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox