Received: by 2002:a25:c593:0:0:0:0:0 with SMTP id v141csp2037510ybe; Tue, 3 Sep 2019 07:09:11 -0700 (PDT) X-Google-Smtp-Source: APXvYqxpRkwvT02lPhrpfnguq11vGQN2AKteTdBJt+Cd3p88pWq2kdylADt0GLS2cuStUsuz6Tod X-Received: by 2002:a65:4507:: with SMTP id n7mr19029871pgq.86.1567519750841; Tue, 03 Sep 2019 07:09:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1567519750; cv=none; d=google.com; s=arc-20160816; b=ZRDSACuybxhIudOKMN17Xdz8rizVRTep8jE25q6iL45mL3AtTlXCbkrdBvDErL4//w BWXpf46HEKhsA1mpyrPJBAuwbvpk4bTBgxRzYsaDS6kWvCjnCF+9NG+dHhjeORLP4W7e KDxzjXxq/mo7oBUbhBzbJbKwXr7ASGuF8H5TCJtV6J5fK4z8kRKwNkui12fJ61mtlu66 85qvxP8CBmcpwovhZYUM75etoSLLsvaD/T11+u3gc2ObkZtg2Eh6q+ZCo23M8xTCwZxE ruwOIt0oqzB9z0vAKhhxxPNWSVd8xPyREW5S6JggRo2XhCjm3Zgm58b1574h2IcpYwIG 6aGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-transfer-encoding:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=omtAoUQDDSrERME8pBcjg74/FNbyNIzEtOG455G2uls=; b=NIO0euSTmXBrCK8uWfm/mVB+Id/Of38p8tdSWaw+MCCwO/Y1kij+kogY+Rv3h7MH+U +Zqh1pzHoTvLeHyPVknUUAt3VfP+wOORWvFkcjHDMkHW78W6Scff/neJ685QdESjfbgp 4dKhU4AzpoyiGWu78cWL93Wifw5YCIAbIgJnrvJ35y/TgboASYjHPSdQvDbbC+5R48XC L3Oowl80f6eReke3uXdBbHjg2BOToqvr1XJtpRoiujwkc3njqPpcVLvlxGt4TMhdQNW5 cMSo3QZdFc2h2M0/hqtxaAGjSN9dmYw/cRhS0lwQ5DcJilNrjQxpQXaBZNsZpLoLauv/ 1Cxw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=xlGj+2ev; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j9si14910156pjs.72.2019.09.03.07.08.54; Tue, 03 Sep 2019 07:09:10 -0700 (PDT) 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=pass header.i=@kernel.org header.s=default header.b=xlGj+2ev; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729493AbfICOHY (ORCPT + 99 others); Tue, 3 Sep 2019 10:07:24 -0400 Received: from mail.kernel.org ([198.145.29.99]:51936 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727107AbfICOHX (ORCPT ); Tue, 3 Sep 2019 10:07:23 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id CF05D23431; Tue, 3 Sep 2019 14:07:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1567519642; bh=ILgzKV/BAHkb2QyjWgpo1XspwECJBh+lYg4WsMle8bQ=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=xlGj+2evrF1h0zvBIa8N3bQL6cxJBZMdk2MG1tQU+CuADY+vDhA0cnkdhPT6IG5PZ hjKLSbJu5eRrQEP/3tk8EYslv0RL85O29WYCu/356Ma9/IL+CoF61epccZ5YNWW/O6 JPf34jGXxQbXOUkFoozfzJUqDgVBbmn4bE4wt4Wc= Date: Tue, 3 Sep 2019 16:07:19 +0200 From: Greg KH To: Akinobu Mita Cc: Jacek Anaszewski , linux-leds@vger.kernel.org, LKML , Pavel Machek , Dan Murphy Subject: Re: [PATCH] leds: remove PAGE_SIZE limit of /sys/class/leds//trigger Message-ID: <20190903140719.GA9506@kroah.com> References: <1567090164-6819-1-git-send-email-akinobu.mita@gmail.com> <6ebeedab-4a7f-14ea-d62e-9184e911047f@gmail.com> <20190902181207.GA18577@kroah.com> <1cd468a3-b6e5-a93b-739a-f30288318356@gmail.com> <20190902190843.GB25019@kroah.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.12.1 (2019-06-15) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Sep 03, 2019 at 10:55:40PM +0900, Akinobu Mita wrote: > 2019年9月3日(火) 4:08 Greg KH : > > > > On Mon, Sep 02, 2019 at 08:47:02PM +0200, Jacek Anaszewski wrote: > > > On 9/2/19 8:12 PM, Greg KH wrote: > > > > On Sun, Sep 01, 2019 at 06:53:34PM +0200, Jacek Anaszewski wrote: > > > >> Hi Akinobu, > > > >> > > > >> Thank you for the patch. > > > >> > > > >> I have one nit below but in general it looks good to me. > > > >> I've tested it with 2000 mtd triggers (~14kB file size) > > > >> and it worked flawlessly. > > > >> > > > >> Still, I would like to have ack from Greg for it. > > > >> > > > >> Adding Greg on Cc. > > > >> > > > >> On 8/29/19 4:49 PM, Akinobu Mita wrote: > > > >>> Reading /sys/class/leds//trigger returns all available LED triggers. > > > >>> However, the size of this file is limited to PAGE_SIZE because of the > > > >>> limitation for sysfs attribute. > > > >>> > > > >>> Enabling LED CPU trigger on systems with thousands of CPUs easily hits > > > >>> PAGE_SIZE limit, and makes it impossible to see all available LED triggers > > > >>> and which trigger is currently activated. > > > >>> > > > >>> This converts /sys/class/leds//trigger to bin attribute and removes > > > >>> the PAGE_SIZE limitation. > > > > > > > > But this is NOT a binary file. A sysfs binary file is used for when the > > > > kernel passes data to or from hardware without any parsing of the data > > > > by the kernel. > > > > > > > > You are not doing that here, you are abusing the "one value per file" > > > > rule of sysfs so much that you are forced to work around the limitation > > > > it put in place on purpose to keep you from doing stuff like this. > > > > > > > > Please fix this "correctly" by creating a new api that works properly > > > > and just live with the fact that this file will never work correctly and > > > > move everyone to use the new api instead. > > > > > > > > Don't keep on abusing the interface by workarounds like this, it is not > > > > ok. > > > > > > In the message [0] you pledged to give us exception for that, provided > > > it will be properly documented in the code. I suppose you now object > > > because the patch does not meet that condition. > > > > Well, I honestly don't remember writing that email, but it was 5 months > > and many thousands of emails ago :) > > > > Also, you all didn't document the heck out of this. So no, I really do > > not want to see this patch accepted as-is. > > > > > Provided that will be fixed, can we count on your ack for the > > > implementation of the solution you proposed? :-) > > > > Let's see the patch that actually implements what I suggested first :) > > I'd propose introducing a new procfs file (/proc/led-triggers) and new > /sys/class/leds//current-trigger api. > > Reading /proc/led-triggers file shows all available triggers. > This violates "one value per file", but it's a procfs file. No, procfs files are ONLY for process-related things. Don't keep the insanity of this file format by just moving it out of sysfs and into procfs :) thanks, greg k-h