Prev: KVM: SVM: Emulate next_rip svm feature
Next: PCI / PCIe: Ask BIOS for control of all native services simultaneously
From: Balbir Singh on 2 Aug 2010 14:10 * KAMEZAWA Hiroyuki <kamezawa.hiroyu(a)jp.fujitsu.com> [2010-07-29 13:27:03]: > On Thu, 29 Jul 2010 09:32:26 +0900 > KAMEZAWA Hiroyuki <kamezawa.hiroyu(a)jp.fujitsu.com> wrote: > > > On Wed, 28 Jul 2010 12:45:13 -0700 > > Andrew Morton <akpm(a)linux-foundation.org> wrote: > > > > My gut reaction to this sort of thing is "run away in terror". It > > > encourages kernel developers to operate like lackadaisical userspace > > > developers and to assume that underlying code can perform heroic and > > > immortal feats. But it can't. This is the kernel and the kernel is a > > > tough and hostile place and callers should be careful and defensive and > > > take great efforts to minimise the strain they put upon other systems. > > > > > > IOW, can we avoid doing this? > > > > > > > I'll use pre-allocated pointer array in the next version. It's simple even > if a bit slow. > > == > struct mem_cgroup *mem_cgroups[CONFIG_MAX_MEM_CGROUPS] __read_mostly; > #define id_to_memcg(id) mem_cgroups[id]; > == Hmm.. I thought we were going to reuse css_id() and use that to get to the cgroup. May be I am missing something. -- Three Cheers, Balbir -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: KAMEZAWA Hiroyuki on 2 Aug 2010 20:00
On Mon, 2 Aug 2010 23:30:51 +0530 Balbir Singh <balbir(a)linux.vnet.ibm.com> wrote: > * KAMEZAWA Hiroyuki <kamezawa.hiroyu(a)jp.fujitsu.com> [2010-07-29 13:27:03]: > > > On Thu, 29 Jul 2010 09:32:26 +0900 > > KAMEZAWA Hiroyuki <kamezawa.hiroyu(a)jp.fujitsu.com> wrote: > > > > > On Wed, 28 Jul 2010 12:45:13 -0700 > > > Andrew Morton <akpm(a)linux-foundation.org> wrote: > > > > > > My gut reaction to this sort of thing is "run away in terror". It > > > > encourages kernel developers to operate like lackadaisical userspace > > > > developers and to assume that underlying code can perform heroic and > > > > immortal feats. But it can't. This is the kernel and the kernel is a > > > > tough and hostile place and callers should be careful and defensive and > > > > take great efforts to minimise the strain they put upon other systems. > > > > > > > > IOW, can we avoid doing this? > > > > > > > > > > > I'll use pre-allocated pointer array in the next version. It's simple even > > if a bit slow. > > > > == > > struct mem_cgroup *mem_cgroups[CONFIG_MAX_MEM_CGROUPS] __read_mostly; > > #define id_to_memcg(id) mem_cgroups[id]; > > == > > Hmm.. I thought we were going to reuse css_id() and use that to get to > the cgroup. May be I am missing something. > ? lookup_css_id() requires multi-level table lookup because of radix-tree. And compiler can't generate an optimized code. linear table lookup is quick. -Kame -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |