[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAAmzW4PsEfGR8TMDiP4LTX7Oj3nr+F4Pxo2DyOEV4ab1pPmwkw@mail.gmail.com>
Date: Sat, 19 Oct 2013 00:05:12 +0900
From: JoonSoo Kim <js1304@...il.com>
To: Christoph Lameter <cl@...ux.com>
Cc: Joonsoo Kim <iamjoonsoo.kim@....com>,
Pekka Enberg <penberg@...nel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
David Rientjes <rientjes@...gle.com>,
Linux Memory Management List <linux-mm@...ck.org>,
LKML <linux-kernel@...r.kernel.org>,
Wanpeng Li <liwanp@...ux.vnet.ibm.com>
Subject: Re: [PATCH v2 13/15] slab: use struct page for slab management
2013/10/18 Christoph Lameter <cl@...ux.com>:
> On Wed, 16 Oct 2013, Joonsoo Kim wrote:
>
>> - * see PAGE_MAPPING_ANON below.
>> - */
>> + union {
>> + struct address_space *mapping; /* If low bit clear, points to
>> + * inode address_space, or NULL.
>> + * If page mapped as anonymous
>> + * memory, low bit is set, and
>> + * it points to anon_vma object:
>> + * see PAGE_MAPPING_ANON below.
>> + */
>> + void *s_mem; /* slab first object */
>> + };
>
> The overloading of mapping has caused problems in the past since slab
> pages are (or are they no longer?) used for DMA to disk. At that point the
> I/O subsystem may be expecting a mapping in the page struct if this field
> is not NULL.
I search the history of struct page and find that the SLUB use mapping field
in past (2007 year). At that time, you inserted VM_BUG_ON(PageSlab(page))
('b5fab14') into page_mapping() function to find remaining use. Recently,
I never hear that this is triggered and 6 years have passed since inserting
VM_BUG_ON(), so I guess there is no problem to use it.
If this argument is reasonable, please give me an ACK :)
Thanks.
--
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