Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754539AbbDONTT (ORCPT ); Wed, 15 Apr 2015 09:19:19 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:37842 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751757AbbDONTJ (ORCPT ); Wed, 15 Apr 2015 09:19:09 -0400 Date: Wed, 15 Apr 2015 15:19:06 +0200 From: Greg Kroah-Hartman To: "Kweh, Hock Leong" Cc: Ming Lei , Matt Fleming , "Ong, Boon Leong" , LKML , "linux-efi@vger.kernel.org" , Sam Protsenko , Peter Jones , Andy Lutomirski , Roy Franz , Borislav Petkov Subject: Re: [PATCH v4 2/2] efi: an sysfs interface for user to update efi firmware Message-ID: <20150415131906.GC21491@kroah.com> References: <1429004697-28320-1-git-send-email-hock.leong.kweh@intel.com> <1429004697-28320-3-git-send-email-hock.leong.kweh@intel.com> <20150414140914.GE5989@kroah.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2522 Lines: 67 On Wed, Apr 15, 2015 at 11:32:29AM +0000, Kweh, Hock Leong wrote: > > -----Original Message----- > > From: Greg Kroah-Hartman [mailto:gregkh@linuxfoundation.org] > > Sent: Tuesday, April 14, 2015 10:09 PM > > > > On Tue, Apr 14, 2015 at 05:44:56PM +0800, Kweh, Hock Leong wrote: > > > From: "Kweh, Hock Leong" > > > > > > Introducing a kernel module to expose capsule loader interface > > > for user to upload capsule binaries. This module leverage the > > > request_firmware_direct_full_path() to obtain the binary at a > > > specific path input by user. > > > > > > Example method to load the capsule binary: > > > echo -n "/path/to/capsule/binary" > > > /sys/devices/platform/efi_capsule_loader/capsule_loader > > > > Ick, why not just have the firmware file location present, and copy it > > to the sysfs file directly from userspace, instead of this two-step > > process? > > Err .... I may not catch your meaning correctly. Are you trying to say > that you would prefer the user to perform: > > cat file.bin > /sys/.../capsule_loader > > instead of > > echo -n "/path/to/binary" > /sys/..../capsule_laoder Yes. What's the namespace of your /path/to/binary/ and how do you know the kernel has the same one when it does the firmware load call? By just copying the data with 'cat', you don't have to worry about namespace issues at all. > The reason we stick with the firmware_class is because we don't > want to replicate a code which already mature and has open API > for developer to use. That's fine, but adding a new api to the firmware interface seems odd to me, just because you don't like using /lib/ or any of the other "standard" locations for firmware blobs. And note, that path is configurable. > > > + */ > > > +static void __exit efi_capsule_loader_exit(void) > > > +{ > > > + platform_device_unregister(efi_capsule_pdev); > > > > This is not a platform device, don't abuse that interface please. > > > > greg k-h > > Okay, so you would recommend to use device_register() for this case? > Or you would think that this is more suitable to use class_register()? A class isn't needed, you just want a device right? So just use a device, but not a platform device, as that isn't what you have here. thanks, greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/