Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp4425321pxf; Tue, 16 Mar 2021 13:10:07 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw+cVM/OdwjBrg4m+Oynhkxp8yXgSCdEgakm2fUM3io32z7Csaqr00Rb2yDvZ0KA3tvPR6U X-Received: by 2002:a17:906:260a:: with SMTP id h10mr32088129ejc.392.1615925407190; Tue, 16 Mar 2021 13:10:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1615925407; cv=none; d=google.com; s=arc-20160816; b=siu3XL/9A0IujJN9Ui1mVxzo7Oue/yC0rM0ZpYQTVO38wp0JDenTdBdoBgz10zKQtb yWgcxgg2QwkJMXIWxon41HxDBElMawYmvKnxM0y8KSTVZPqnZq4WJpO0wK+eu9WKw6+m CcKXGmuIkF10je75K9fZBA0oSOfe84Oh532W5zGUNZFWiWmK6MbCVQCCHDhKc3vttYM7 KlEpiUpDYDWqrWqbcBRpvUED9i/7id4oferPDbd39TRjBtT4jXkbclnNi6RJOqnYbLn6 /Fi1wnod7AUsncZEKtdXnn1X4Ovs3iCP8/ysb8d21+XyNbx9m2Q6Zzz34QDG6WjFwGXY lIGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=qPzP9kqP9nBPG6PzLX98J9Ewe8RDPN34TTXL+isSE2o=; b=sRxBTcpKhnQexqYXakgYHh7ygWlaVPWKB8oLEuEAm1f+Hki/21kaMLANh4E2FzEHPW fRK5Ftm2Tjm1IdQ7avIN690astQfUK4jeMtP4dT/NbD6IXs5yyslnKYyQ0uMNWp7oW+u lk9RvP1c3StbLJ1seW2zkWH2S+Phg73yGzOiuPtM8xKOmMMxT4UTokbKYu9eavRpxpbP Is7xS4kegJgf7flZSx9VlKcXsQni6q8o0/v1L0Re11Zq0llebcv9Q+iVisW7WSSq/GXT OWtuNW90t4BzaekLIYWe/rUPebGLSTwicTqBnUoFDCIFZ8YN1c7y9EizfkZAuU963Ns9 Yw4Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=fXLxYIFH; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e9si13714691ejt.385.2021.03.16.13.09.42; Tue, 16 Mar 2021 13:10:07 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=fXLxYIFH; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233840AbhCPM5A (ORCPT + 99 others); Tue, 16 Mar 2021 08:57:00 -0400 Received: from mail.kernel.org ([198.145.29.99]:37472 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233443AbhCPM4M (ORCPT ); Tue, 16 Mar 2021 08:56:12 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 9DF036504F; Tue, 16 Mar 2021 12:56:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1615899371; bh=NUrWK1ohdGJAi0VWxxv0wY1aIMFLzvvTPrxsPTaMPN8=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=fXLxYIFHbmMoGLWMNSZ/WgJY84MJ9Y3/BU63digCWppmet+iBQw0iS2baMk2GcoML W6xAwjqX3x0lhTQyDj3w+8og9DgswCH/O295wE+DGPUejiPmixCJy5XP+72MDg6NPK oKQyORJVSFAMwxq4vIBbQ/pJZD4d/EJuu8X+RdTo= Date: Tue, 16 Mar 2021 13:55:53 +0100 From: Greg Kroah-Hartman To: Al Viro Cc: Kees Cook , Andrew Morton , Michal Hocko , Alexey Dobriyan , Lee Duncan , Chris Leech , Adam Nichols , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-hardening@vger.kernel.org Subject: Re: [PATCH v2] seq_file: Unconditionally use vmalloc for buffer Message-ID: References: <20210315174851.622228-1-keescook@chromium.org> <202103151336.78360DB34D@keescook> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Mar 16, 2021 at 12:43:12PM +0000, Al Viro wrote: > On Tue, Mar 16, 2021 at 08:24:50AM +0100, Greg Kroah-Hartman wrote: > > > > Completely agreed. seq_get_buf() should be totally ripped out. > > > Unfortunately, this is going to be a long road because of sysfs's ATTR > > > stuff, there are something like 5000 callers, and the entire API was > > > designed to avoid refactoring all those callers from > > > sysfs_kf_seq_show(). > > > > What is wrong with the sysfs ATTR stuff? That should make it so that we > > do not have to change any caller for any specific change like this, why > > can't sysfs or kernfs handle it automatically? > > Hard to tell, since that would require _finding_ the sodding ->show() > instances first. Good luck with that, seeing that most of those appear > to come from templates-done-with-cpp... Sure, auditing all of this is a pain, but the numbers that take a string are low if someone wants to do that and convert them all to sysfs_emit() today. > AFAICS, Kees wants to protect against ->show() instances stomping beyond > the page size. What I don't get is what do you get from using seq_file > if you insist on doing raw access to the buffer rather than using > seq_printf() and friends. What's the point? I don't understand as I didn't switch kernfs to this api at all anyway, as it seems to have come from the original sysfs code moving to kernfs way back in 2013 with the work that Tejun did. So I can't remember any of that... thanks, greg k-h