Received: by 2002:a05:6a10:1a4d:0:0:0:0 with SMTP id nk13csp1479926pxb; Wed, 2 Feb 2022 06:02:10 -0800 (PST) X-Google-Smtp-Source: ABdhPJxJF36xsdi11nan2gwzo9tUIGTl/rolJKerEgCgm0R4N7orHXlnhbCha58Psp+DDOh7yPT1 X-Received: by 2002:a17:902:f549:: with SMTP id h9mr31536988plf.154.1643810529754; Wed, 02 Feb 2022 06:02:09 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643810529; cv=none; d=google.com; s=arc-20160816; b=jj+B07GDBT4+aiAdHxN9i6f47ZEUk+ETUoiiOhPz186o8WK0g2bX2a6qjC73Z9wDL6 vI+M9LnyGzqO10tb3J3aPuHuCY9sWvbPpmIQzIveKo3RVJpoUxRLsv0DN16R+kDhmFY2 sMKb9GzjjwjnLhEIG/Uhm+ZXLqThgXTiTjXFOWAUAGvLPu9DuX3X+6s/EdfVDGILdM5b Z3v05IoC9Pt3WqsidF6a6AHH6+ZPq/lqGp6VbnBcyWX2kFtMrPdIHiVtFf+rEf9B9ZTv rbrJ4YxM8wRTvJ87W6pBta3yOSKnUAehC9RxK0/NpJpQUt6f3sP5w5xzz/l+12EEQrXH I9hg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=kgthoaOBpcV2t6u9HPTZYJsO7n2oWLRBDWbitx5G3AU=; b=JYLyPvEI55wuD39zOr938mpGE430S+6b+hCdGPfyBcwup+pz1eVbVko3LyTXbQimmo PrOddET+qd9QUzA9Q0qhQzbaByHtgikj+ITzsftn2gve7fExTh0UrQ2ipjO7bH/H3yUX DwXrxXZhL7zxQOdXBY7UfSij81LagyYyJBdtoekfOxwZh2BryzDDe6Hw5fxzt9yMty3g GJ6i7hVOfUWmizGwTmRn4KGNPXd8fQ4jD8mUBGLMs+ahQWoi3al8ROqgoCBghewXpTfl IOtCxloqBl8h+BKiCIhNFlBQaoqHiyPQxZkEk2cKcn5RIPBDDNz+kRBrW+fC6VAUmbO1 jP0w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=O5IsEazr; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id w6si21583524plg.17.2022.02.02.06.01.51; Wed, 02 Feb 2022 06:02:09 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=O5IsEazr; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240389AbiBASd2 (ORCPT + 99 others); Tue, 1 Feb 2022 13:33:28 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54098 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231693AbiBASd1 (ORCPT ); Tue, 1 Feb 2022 13:33:27 -0500 Received: from mail-lj1-x22b.google.com (mail-lj1-x22b.google.com [IPv6:2a00:1450:4864:20::22b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CDCADC06173B for ; Tue, 1 Feb 2022 10:33:26 -0800 (PST) Received: by mail-lj1-x22b.google.com with SMTP id q127so25417206ljq.2 for ; Tue, 01 Feb 2022 10:33:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=kgthoaOBpcV2t6u9HPTZYJsO7n2oWLRBDWbitx5G3AU=; b=O5IsEazrKevTZ+9eZBugHhs7ANQJxEM8AUW6YFDoeE2PNudszA/uxrffxfInnedLwI M0UYfOTaH0oP80QTrzssS+zDXKuxOGwqpLHqlOfTFGU5sjaCvhgXJhqx0uDWKgH2iKrw mn+TRgMOk+XrE9G1CN8kRjwddOmI/NcUrRooFj1gJ2Av8d+FGmYzEomveQinCIp7uPqx 3HOdDc0h10+h1SFIhcQkC4K1jWitUM3/uP2r102mwhnTcILRh12UakJ2MwoSPiuqFFe/ WqpHdBLgTLN0lfGrzF0RNRr6kblhKA46qTZkvBSVV2HBaxk4XoxifoUTJyKLaS/BrlzW w9rg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=kgthoaOBpcV2t6u9HPTZYJsO7n2oWLRBDWbitx5G3AU=; b=Krh3saQju+AnP1/hI2SJuleFnrvz/yIoqnBWLaAWsiMKLbcf1vTsfVNyFDyoWbXv+F /9jg9BqWR5/WzxvLuN4VPfsIHTXC1BPP5VQwh4N4siKwsUY1UEmJnYAEyqr0YZ+cK4Ce mET7L47ot10JK5RNMTaFTyKjUrrhbIvcnWj+aJuXYeE1NHN7+urk2NJgzBfiWbgvpa2O DBubL4J9HsuJSnUst914aeuGwM6dLB9MnZJnfniBpQPg3vbB8bwP7N9xItQG+seruoHJ joeVxVv9u8RQEbUtBYFjc6+UEUbtxoQg0iKtFOkwCkSQ8lG2fRm2hqT3EZr9RvF9RnSl S3LA== X-Gm-Message-State: AOAM5323RiP4swyX4LTl8VTeDxYi06h6FptuH/vsCPctQLfTUwtPHp5L DhM1o92razsz8gCSu9tY9EJpL5I5Ya8YOlptx5XRdg== X-Received: by 2002:a05:651c:19ac:: with SMTP id bx44mr13432207ljb.459.1643740405002; Tue, 01 Feb 2022 10:33:25 -0800 (PST) MIME-Version: 1.0 References: <20220131153740.2396974-1-willy@infradead.org> <871r0nriy4.fsf@email.froward.int.ebiederm.org> <877dafq3bw.fsf@email.froward.int.ebiederm.org> <87bkzroica.fsf_-_@email.froward.int.ebiederm.org> <87zgnbn3pd.fsf_-_@email.froward.int.ebiederm.org> In-Reply-To: <87zgnbn3pd.fsf_-_@email.froward.int.ebiederm.org> From: Jann Horn Date: Tue, 1 Feb 2022 19:32:58 +0100 Message-ID: Subject: Re: [PATCH 2/5] coredump: Snapshot the vmas in do_coredump To: "Eric W. Biederman" Cc: Matthew Wilcox , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, Alexander Viro , Denys Vlasenko , Kees Cook , Vlastimil Babka , "Liam R . Howlett" Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jan 31, 2022 at 7:46 PM Eric W. Biederman wrote: > Move the call of dump_vma_snapshot and kvfree(vma_meta) out of the > individual coredump routines into do_coredump itself. This makes > the code less error prone and easier to maintain. > > Make the vma snapshot available to the coredump routines > in struct coredump_params. This makes it easier to > change and update what is captures in the vma snapshot > and will be needed for fixing fill_file_notes. > > Signed-off-by: "Eric W. Biederman" Reviewed-by: Jann Horn > for (i = 0, vma = first_vma(current, gate_vma); vma != NULL; > vma = next_vma(vma, gate_vma), i++) { > - struct core_vma_metadata *m = (*vma_meta) + i; > + struct core_vma_metadata *m = cprm->vma_meta + i; > > m->start = vma->vm_start; > m->end = vma->vm_end; > m->flags = vma->vm_flags; > m->dump_size = vma_dump_size(vma, cprm->mm_flags); > > - vma_data_size += m->dump_size; > + cprm->vma_data_size += m->dump_size; FYI, this part is probably going to cause a merge conflict with the fix https://www.ozlabs.org/~akpm/mmotm/broken-out/coredump-also-dump-first-pages-of-non-executable-elf-libraries.patch in akpm's tree. I don't know what the right way to handle that is, just thought I'd point it out.