Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp602540rdb; Tue, 5 Dec 2023 14:27:06 -0800 (PST) X-Google-Smtp-Source: AGHT+IG23frU7uhN84xa6fIExC7DSrYeeeubLiMRxIDxlFy+R4LOiRkroJ/67LWwu7uJgPt1i9Z/ X-Received: by 2002:a92:c94a:0:b0:35d:59a2:332d with SMTP id i10-20020a92c94a000000b0035d59a2332dmr50741ilq.49.1701815226380; Tue, 05 Dec 2023 14:27:06 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701815226; cv=none; d=google.com; s=arc-20160816; b=AL5u4oPypfml5i4eMdTSAyVKPYohVs0XhrNL/k9Lm9QjeXuiIxzfcMQARfYQKA4JRL GP7ggIcvfcMEnX16D2uoEkRA4MHqQbx64Vf1fUCLqSX3yjPm8gx0FqnNk4vykRJhd0Kf za8JDKlyJNUJryqsG65/c/+lB6gWKsNWfjE0tNqE4hDqYuB0xDiesFxxrgJqUVl1SKxW R1eqdquvOKkY+VIPivYrTkXnsjVgNi3Hyb8mASbWOmM/vhbjKSvHuxs/MMGVZ4UdK1iN 0oaOpnWsHKIFRUiILitSvwDfbOz3cUNWj/tGNou/uM8WNGydP222Nydlx6sn6GDjMC84 H8CQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=tlRvcm7L+cBAIszdYTxuMdD16SmRomd1bg4ss68VhyI=; fh=h8qlC4Y+Q6j06pMjr5AduHLgh6qoetLrtkLiWQxdFQg=; b=KO2zJuP1Bh2YJ9EQWe73nYSUpdl+cgtfCG4zF7Tn/qxhrL14ozehsZYkj0d2m4Wf7J iJIphzz1cJNMtGa2wiBJ8HoKDR88mGLaS5fV8984whGIUgg3dSoLx8Z2WvyIgUJDqLeQ nUk8WXF26V8BmSWWFElaKEmg74H+Igj5063Lb8e93asDce9+MiAu32ZsYzVg5rDU34/3 8eu8zhP6uiv2CULwSv1DMXzKwgIpo9gn/U+WZoRvXYgwByWeS2yFs5YfBgXhuyGKZKB3 +tDEtg5A+GlUTsFzK+SPztQEV4jXaNil1Z1UxEUpGk+1u4pQSw4q2/I7yJ9DFRL+xOKR iApQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=hWbA1Hj0; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 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 groat.vger.email (groat.vger.email. [2620:137:e000::3:5]) by mx.google.com with ESMTPS id 1-20020a631041000000b005bdbcdc9e3dsi10400898pgq.142.2023.12.05.14.27.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 05 Dec 2023 14:27:06 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) client-ip=2620:137:e000::3:5; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=hWbA1Hj0; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id B0C93804EE5F; Tue, 5 Dec 2023 14:27:03 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346271AbjLEW0r (ORCPT + 99 others); Tue, 5 Dec 2023 17:26:47 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56452 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1346638AbjLEWZt (ORCPT ); Tue, 5 Dec 2023 17:25:49 -0500 Received: from mail-wr1-x431.google.com (mail-wr1-x431.google.com [IPv6:2a00:1450:4864:20::431]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C8CCD181 for ; Tue, 5 Dec 2023 14:25:55 -0800 (PST) Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-33350fcb2c7so109649f8f.2 for ; Tue, 05 Dec 2023 14:25:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1701815154; x=1702419954; darn=vger.kernel.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=tlRvcm7L+cBAIszdYTxuMdD16SmRomd1bg4ss68VhyI=; b=hWbA1Hj0zQde/j+2EwawUBS0XHnLSu/c82WtM7myLO+MXlqhjJHhTSNFyKTEqgvgDR aZPAa4Dgd9Gys0QrX/SYaXHHndDSEYUfHp9gl3hBYWKr1SOtcu9hL5pdAAf3N8x8f4oV Gr5x+pMoW6F/nNJ6EhSgHliJY1OoISW3LHsK8Z1/7wxPFe9dscWJfB4LTYz2/RF6elTp Qk8DpnxlYtsOsTSEt07QZCHkR3VOrLeLPPpTGvxayqCrh3EitqO//zuambyQTrl3Lk4T 6RIa6AGNzWHws4pIdszu6NvX8fLiXTtDmDG2KcQ88GRvXk2kPB90PwxQFsN80cr8YZIO NlYg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701815154; x=1702419954; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tlRvcm7L+cBAIszdYTxuMdD16SmRomd1bg4ss68VhyI=; b=XdsSYiNUj8HSlOau50KD1jjn9XX/RXF90x6sqbRIk8NmL2d2nzEg5pzaIRoPWL0nKc X4GTOaznujwpHENEkcgKYXt9ETlbGartyalrOA51tgDG407q0r9gsf2grKkOlWJNWRfB /j0IVqspFirZkwqVAM857SgWF9StcZsfC5y6Lw4bvAFOaSgTsdsQaMFPuKTONYnMDs5W 6LQTF2ZsbQ8JixJGw/8n3llh6YZEw1UFBesGtdeFSAfOCGbxJfCGKbLqrJxtGkHrpx4x l8vRZLQPYj6vu6ZyA8o2S11eeGjrVFsMJzUJHS8YtNU1WcD9VRDcZjWcO7W1yC4afOIy Kkfg== X-Gm-Message-State: AOJu0Yx0btV54qoTTAD6d3d+kwT8u8R6VTM7Xb37io3Lwl+Vb97YPUfV kCYQm/DgmyvQZnExFyF1yUOUbhkfS4qCHYAV+JPuP6ZtpwVgpnXEcFnWZA== X-Received: by 2002:adf:ed12:0:b0:333:2fd2:813d with SMTP id a18-20020adfed12000000b003332fd2813dmr4815585wro.90.1701815154097; Tue, 05 Dec 2023 14:25:54 -0800 (PST) MIME-Version: 1.0 References: <20231205-libstringheader-v1-1-7f9c573053a7@gmail.com> <20231205213807.GE1674809@ZenIV> <34e27c57-fc18-4918-bf44-4f8a53825361@infradead.org> In-Reply-To: <34e27c57-fc18-4918-bf44-4f8a53825361@infradead.org> From: Nick Desaulniers Date: Tue, 5 Dec 2023 14:25:43 -0800 Message-ID: Subject: Re: [PATCH] lib/string: shrink lib/string.i via IWYU To: Randy Dunlap Cc: Andy Shevchenko , Al Viro , tanzirh@google.com, Kees Cook , linux-hardening@vger.kernel.org, linux-kernel@vger.kernel.org, Nick DeSaulniers , Andrew Morton , llvm@lists.linux.dev Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-8.4 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE, USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Tue, 05 Dec 2023 14:27:03 -0800 (PST) On Tue, Dec 5, 2023 at 2:10=E2=80=AFPM Randy Dunlap = wrote: > > I have an unpublished Linux Best Known Practices txt file with > this "rule" and some other info that I have collected over a few > years. I wouldn't say that it's up to date. Anyway, it's copied below > FWIW. > Generic drivers should not (do not) #include header files from > . Only arch code and arch-specific drivers do that. Ok, that confirms my understanding. We had picked up on that convention, but had missed the one below. > > Don't use in generic driver code. Instead use > some that then #includes . > asm/ headers are implementation; linux/ headers are API. Ah, yeah, that's what we missed. --- You should publish you doc somewhere, it can be helpful to refer back to them when you're on a different machine or to point someone else to. I keep notes like this myself for debugging LLVM: https://github.com/ClangBuiltLinux/llvm-dev-conf-2020/issues/3 (and recently gcc: https://github.com/ClangBuiltLinux/llvm-dev-conf-2020/issues/= 4) --=20 Thanks, ~Nick Desaulniers