Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753504AbbGXG55 (ORCPT ); Fri, 24 Jul 2015 02:57:57 -0400 Received: from mail-lb0-f178.google.com ([209.85.217.178]:35782 "EHLO mail-lb0-f178.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751905AbbGXG5z (ORCPT ); Fri, 24 Jul 2015 02:57:55 -0400 MIME-Version: 1.0 Reply-To: mtk.manpages@gmail.com In-Reply-To: References: <55B027D3.4020608@oracle.com> <55B0E900.8090207@gmail.com> From: "Michael Kerrisk (man-pages)" Date: Fri, 24 Jul 2015 08:57:34 +0200 Message-ID: Subject: Re: [patch] mmap.2: document the munmap exception for underlying page size To: David Rientjes Cc: Mike Kravetz , Hugh Dickins , Davide Libenzi , Eric B Munson , lkml , "linux-mm@kvack.org" , linux-man Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2369 Lines: 69 Hello David, On 23 July 2015 at 22:52, David Rientjes wrote: > On Thu, 23 Jul 2015, Michael Kerrisk (man-pages) wrote: > >> >> Should we also add a similar comment for the mmap offset? Currently >> >> the man page says: >> >> >> >> "offset must be a multiple of the page size as returned by >> >> sysconf(_SC_PAGE_SIZE)." >> >> >> >> For hugetlbfs, I beieve the offset must be a multiple of the >> >> hugetlb page size. A similar comment/exception about using >> >> the "underlying page size" would apply here as well. >> >> >> > >> > Yes, that makes sense, thanks. We should also explicitly say that mmap(2) >> > automatically aligns length to be hugepage aligned if backed by hugetlbfs. >> >> And, surely, it also does something similar for mmap()'s 'addr' >> argument? >> >> I suggest we add a subsection to describe the HugeTLB differences. How >> about something like: >> >> Huge page (Huge TLB) mappings >> For mappings that employ huge pages, the requirements for the >> arguments of mmap() and munmap() differ somewhat from the >> requirements for mappings that use the native system page size. >> >> For mmap(), offset must be a multiple of the underlying huge page >> size. The system automatically aligns length to be a multiple of >> the underlying huge page size. >> >> For munmap(), addr and length must both be a multiple of the >> underlying huge page size. >> ? >> > > Looks good, please add my acked-by. Done. Thanks for checking the text. > The commit that expanded on the > documentation of this behavior was > 80d6b94bd69a7a49b52bf503ef6a841f43cf5bbb. > > Answering from your other email, no, this behavior in the kernel has not > changed recently but we found it wasn't properly documented so we wanted > to fix that both in the kernel tree and in the man-pages to make it > explicit. Okay -- thanks for the clarification. Cheers, Michael -- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Linux/UNIX System Programming Training: http://man7.org/training/ -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/