On 08/05/24 10:17, Bart Van Assche wrote: > On 8/4/24 7:07 PM, Qais Yousef wrote: > > irqbalancers usually move the interrupts, and I'm not sure we can > > make an assumption about the reason an interrupt is triggering on > > different capacity CPU. > User space software can't modify the affinity of managed interrupts. > From include/linux/irq.h: True. But this is special case and was introduced for isolated CPUs. I don't think drivers can request this themselves. > > * IRQD_AFFINITY_MANAGED - Affinity is auto-managed by the kernel > > That flag is tested by the procfs code that implements the smp_affinity > procfs attribute: > > static ssize_t write_irq_affinity(int type, struct file *file, > const char __user *buffer, size_t count, loff_t *pos) > { > [ ... ] > if (!irq_can_set_affinity_usr(irq) || no_irq_affinity) > return -EIO; > [ ... ] > } > > I'm not sure whether or not the interrupts on Manish test setup are > managed. Manish, can you please provide the output of the following > commands? > > adb shell 'grep -i ufshcd /proc/interrupts' > adb shell 'grep -i ufshcd /proc/interrupts | while read a b; do ls -ld > /proc/irq/${a%:}/smp_affinity; done' > adb shell 'grep -i ufshcd /proc/interrupts | while read a b; do grep -aH . > /proc/irq/${a%:}/smp_affinity; done' > > Thanks, > > Bart.