Prev: usb gadget: don't save bind callback in struct usb_configuration
Next: [PATCH 2/2 v2] usb gadget: don't save bind callback in struct usb_configuration
From: KAMEZAWA Hiroyuki on 5 Aug 2010 05:50 This is v4. Major changes from v3 is - dropped spinlock per page_cgroup (then, 4byte free space.) - added more comments - clean up. This set has 2 purposes. 1. re-desgin struct page_cgroup and makes room for blocckio-cgroup ID. 2. implement quick updating method for memcg's file stat. 1. check influence of Mel's new writeback method. I think we'll see OOM easier. IIUC, memory cgroup needs a thread like kswapd to do background writeback or low-high watermark. (By this, we can control priority of background writeout thread priority by CFS. This is very good.) 2. implementing dirty_ratio. Now, Greg Thelen is working on. One of biggest problems of previous trial was update cost of status. I think this patch set can reduce it. About reducing size of struct page_cgroup: We have several choices. So, plz wait. I don't think packing memcgid, blockio-id to pc->flags is a good choice. (I'm afraid of races and new limitations added by that.) One idea: free spaces in pc->flags can be used...but it's better to store some very stable/staic value. One idea is store pfn or section-ID or node-id there. Then, we can remove pc->page pointer. Considering page_cgroup's usage, page->page_cgroup is a usual operation but page_cgroup->page is not. (only used at memory recalim) Then, we can implement a function page_cgroup_to_page() and remove page_cgroup->page pointer. For this, free space in pc->flags can be used. After MM-Summit, I have another event until Aug16, and will be busy for a while. (And cannot read e-mail box on my office) If you want to contact me, please e-mail kahi at mte biglobe ne jp. Thanks, -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/ |