Received: by 10.223.185.116 with SMTP id b49csp2415027wrg; Thu, 22 Feb 2018 13:23:39 -0800 (PST) X-Google-Smtp-Source: AH8x2249BDcIeGTwTpdXwO4EmvFy9xQjhl70n11LkGWAU6UqykyoAupFbRlT97sZljWbuWwQCXAz X-Received: by 2002:a17:902:5203:: with SMTP id z3-v6mr7988697plh.392.1519334619799; Thu, 22 Feb 2018 13:23:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519334619; cv=none; d=google.com; s=arc-20160816; b=urxJm+Hgd1KVJFtR++EwUQUfX/JEeQe3yFHpb2bUWyyJvCPGhykcrj1JdeWkEbVDud EHJNgdvmRuwePfJReCj7U1rNNBYttatGf85WtY1Gsxc1EbltpfnUWtJR6SxgBO2nrjm2 f80Ts1iO2ksVkOzNtOC9461x8EzotM1Yx7mxSlizTiFka6+o+ctwIlkHdilaK9ELHWdh SEd57VsJBkyRAm+iTNggQg2b82JA6fXyNfoOkXcpBTNiBcr4GZremaEmsUmyqLV91Ikc HJf2+gO6iGaA0zLuUB2OXtl58/j5XKGB3IigNuM9IdC5Vs0rwAM2MpEH3MktvlE5B+lr PEPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature:dkim-signature :arc-authentication-results; bh=T6Vvz8Kw21rJln4lf35sbVRHSnjQzy3y3X7RFyXIlh0=; b=U7efyoquhGhoNjAqyZXTShrrySqv9zLn+DPcljAyDjkPReflAKv53OlaK5OcqhIsry qkJ/9XE4LBLJJvfeUXp5U9FyIlMpiRjIAP9Iv8yTR2gGIv+t1IOwm8YPp70byQxa4PGg KbpWRFLnG+5P3KfBYuYfI0illb/3MF7mnr5Cz9dGBTQBZLVDATVOTq+EmeEV1BIGcJTa 6W54qg7TsUKVx5MqHF10RrEL6G4NPjHs3CNIPKy3y6O9ymSDOvdmu/bYe57EV4TrpEtU KRPPmKG5LiJ1njTYKnDCd70q7qYi7Wpe52N7DrnKX2hLiwabJ0zCb3ULVFWln3bckAmd QmUw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@google.com header.s=20161025 header.b=L34d+/KM; dkim=fail header.i=@chromium.org header.s=google header.b=AIJykobl; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g11si509047pgo.717.2018.02.22.13.23.23; Thu, 22 Feb 2018 13:23:39 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@google.com header.s=20161025 header.b=L34d+/KM; dkim=fail header.i=@chromium.org header.s=google header.b=AIJykobl; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751407AbeBVVWk (ORCPT + 99 others); Thu, 22 Feb 2018 16:22:40 -0500 Received: from mail-ua0-f179.google.com ([209.85.217.179]:36279 "EHLO mail-ua0-f179.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751155AbeBVVWj (ORCPT ); Thu, 22 Feb 2018 16:22:39 -0500 Received: by mail-ua0-f179.google.com with SMTP id i15so4290214uak.3 for ; Thu, 22 Feb 2018 13:22:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=T6Vvz8Kw21rJln4lf35sbVRHSnjQzy3y3X7RFyXIlh0=; b=L34d+/KMpSiYzjL/sa3vpgW0Z691P+b38kn6WZ29SiD++Z5Yw6Qj0DUuQkL6gKGBMn vwWDdIlKGe8Yj3icUG91W8V4N2PjzT6J9eNmkCvYiC/ks86oatoMXOJnqSgFkxyF/NXI OVsDeAx7lOFH3Iz9f0h5ZcWzilmVofxmzor2/fyiEzyJ6+XO8EYzFq1VdlrGhUabehVa jtfsdqp0TKhHLvD+UgE8lVrCDK5Tnjl5xJlmcLzI4FfY1zAvlmmflbyzm/xcS4QyBGyC h7j8sTzz8OnuwAiIebc2xCmwMkS5qJb0mhzc360VtdVKkpi5ePjThnCTyP59m22J9c0p HJmg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=T6Vvz8Kw21rJln4lf35sbVRHSnjQzy3y3X7RFyXIlh0=; b=AIJykoblfzB9qmT2BBcHfeY9WAi1yPzT3ZBfYf/ttOvXPkBkFJHYjBBo0jMd/y0n00 R/DXpcDmw9LxuIxzK8LaGsyXCLjB8B9u6me4pmLpfFKG0CKOVqzvFGmXPiVO1AdAOiT6 hVlLuqj2rY0S7kw3xIZgfLiNUoXX7w1jDu/jI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=T6Vvz8Kw21rJln4lf35sbVRHSnjQzy3y3X7RFyXIlh0=; b=Qhupk6FVUzPjKUPRYOEkIivkAsp8p3j1MxoRFYEEbd0WzBDob9xjcwHZO0xNrrpxUA zh62t7U+1cXH5Ki7Am+PFAahZvd7pPN3g+/Krx3eqN8FopC8BIAt9lduSHLJ3SkNiIL6 AtuKb/8TVdzSn0aOTK5AaxHYx7u9COeRqKwjzWdy3srNSCmX0KhpARRH21YEkm0j/6ZZ Ywo+BwD0H3dQXg3WlhZJnQlEowDXCqg0IFFDwm5kc0XkKily0XqsN+H04EE9s5mb+UNN kYjN7qiX1QAHqPrpWz8l7+boWLlJrIdxolntQTvTkxsCzFdwr+T8KDGaMZYJijzJWmzB 817A== X-Gm-Message-State: APf1xPD/N34m8hxSBODLL0oK8Ti9lB9+sRFzlGWgQAVe/ov2ijgjBmh6 5k8rvTlGh9OTPU+dqvW5G54I4OcjfUcf63gFMZTLcQ== X-Received: by 10.176.48.231 with SMTP id d7mr1690480uam.0.1519334558223; Thu, 22 Feb 2018 13:22:38 -0800 (PST) MIME-Version: 1.0 Received: by 10.31.242.140 with HTTP; Thu, 22 Feb 2018 13:22:37 -0800 (PST) In-Reply-To: <66556bf7-3e67-5793-081e-76a01f598374@prevas.dk> References: <20180222174140.GA3154@beast> <66556bf7-3e67-5793-081e-76a01f598374@prevas.dk> From: Kees Cook Date: Thu, 22 Feb 2018 13:22:37 -0800 X-Google-Sender-Auth: uep_ZaAsEHYbQcA4arY1TxHxTig Message-ID: Subject: Re: [PATCH v3] kconfig.h: Include compiler types to avoid missed struct attributes To: Rasmus Villemoes Cc: Linus Torvalds , Patrick McLean , "Maciej S. Szmigiero" , Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Feb 22, 2018 at 1:07 PM, Rasmus Villemoes wrote: > On 2018-02-22 19:04, Linus Torvalds wrote: >> >> Lookie here (in a fully built tree): >> >> find . -name '*.o.cmd' | >> xargs grep -L linux/compiler_types.h | >> xargs grep -l linux/kconfig.h | >> while read i; do >> j=$(echo $i | sed 's/\.o.cmd$/\.c/' | sed 's:/\.:/:'); >> test -f $j && echo $j; >> done >> >> shows that a number of files don't end up depending on that header >> file, even though it's included (that "grep -l linux/kconfig,h" >> triggers on the command itself having that "-include linux/kconfig.h" >> line). >> >> It looks like "gcc -M" just doesn't list any files that get included >> on the command line with "-include". > > It does, both per the documentation and testing it. But fixdep > explicitly removes include/linux/kconfig.h along with > include/generated/autoconf.h and a few others. So when you rebuilt after > adding the #include to kconfig.h, I think nothing actually got built, > and no new .o.cmd files got generated. > > Doing a clean build does make include/linux/compiler_{types,gcc}.h and > the various fake include/config/.... they "depend" on appear in e.g. > lib/.clz_tab.o.cmd. I'm seeing the same. If I do: $ find . -name '*.o.cmd' | xargs rm $ make allmodconfig $ make -j... ... $ find-command-above... I get no hits. And doing spot-testing shows dep changes are detected: $ ls -l fs/nfsd/nfs4xdr.o -rw-rw-r-- 1 kees kees 276088 Feb 22 13:15 fs/nfsd/nfs4xdr.o $ make fs/nfsd/nfs4xdr.o ...generated-files-only... $ ls -l fs/nfsd/nfs4xdr.o -rw-rw-r-- 1 kees kees 276088 Feb 22 13:15 fs/nfsd/nfs4xdr.o $ touch include/linux/compiler_types.h $ make fs/nfsd/nfs4xdr.o ...various... CC [M] fs/nfsd/nfs4xdr.o $ ls -l fs/nfsd/nfs4xdr.o -rw-rw-r-- 1 kees kees 276088 Feb 22 13:21 fs/nfsd/nfs4xdr.o Am I missing something? > The whole point of fixdep and the include/config hierarchy is to be able > to remove the dependency on autoconf.h, but I'm not sure I understand > why kconfig.h itself is also forcibly removed. Is there a mode where we're now rebuilding too much? -Kees -- Kees Cook Pixel Security