lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4D9281B8.1090904@sgi.com>
Date:	Tue, 29 Mar 2011 18:04:56 -0700
From:	Mike Travis <travis@....com>
To:	Andrew Morton <akpm@...ux-foundation.org>
Cc:	Thomas Gleixner <tglx@...utronix.de>,
	Jack Steiner <steiner@....com>,
	Lee Schermerhorn <lee.schermerhorn@...com>,
	Andy Shevchenko <andy.shevchenko@...il.com>,
	LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] bitmap, irq: Add smp_affinity_list interface to /proc/irq



Andrew Morton wrote:
> On Tue, 29 Mar 2011 17:51:18 -0700 Mike Travis <travis@....com> wrote:
> 
>>> Also, the patch adds a new interface which duplicates an existing one,
>>> only the formats are different, yes?  This is, of course, bad.
>>>
>>> The only justification we've seen for being bad is "Manually adjusting
>>> the smp_affinity for IRQ's becomes unwieldy when the cpu count is
>>> large".  A more thorough description of how painful this is might help
>>> motivate people to do bad things to the kernel.
>>>
>>> Also, if it's just a matter of an alternative presentation of the data,
>>> why not implement the desired user interface with a little userspace
>>> tool then feed the results down into the existing kernel interface?
>>>
>> Setting smp affinity to cpus 256 to 263 would be:
>>
>> echo 000000ff,00000000,00000000,00000000,00000000,00000000,00000000,00000000 > smp_affinity
>>
>> instead of:
>>
>> echo 256-263 > smp_affinity_list
>>
>> Think about what it looks like for cpus around say, 4088 to 4095.
>>
>> We already have many alternate "list" interfaces:
>>
>> /sys/devices/system/cpu/cpuX/indexY/shared_cpu_list
>> /sys/devices/system/cpu/cpuX/topology/thread_siblings_list
>> /sys/devices/system/cpu/cpuX/topology/core_siblings_list
>> /sys/devices/system/node/nodeX/cpulist
>> /sys/devices/pci***/***/local_cpulist
>>
>> etc.
>>
>> This just expands on that same philosophy.
> 
> You mean that if someone had written a stupid little tool to convert a
> list of tuples into a bitmap, we wouldn't have needed to add all that
> crap to the kernel?
> 

We actually had a problem where the interface would not take enough characters
to set the irq mask.  (It has since been fixed.)

I don't mind if there's an alternate way to do this if you really feel strongly
about it.  Be nice if it was somehow included but that requires yet way more
infrastructure somewhere else.

How about if I #ifdef CONFIG_MAX_SMP around it?  It's really not needed if
you only have a few cpu's enabled.

[If it was up to me, I'd eliminate the bitmask interfaces and just keep the
list interfaces.  That's the stupid interface that's not needed, and far more
shortsighted.]

Thanks,
Mike


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ