Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753621AbbDXCSQ (ORCPT ); Thu, 23 Apr 2015 22:18:16 -0400 Received: from mga11.intel.com ([192.55.52.93]:39940 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753570AbbDXCSN (ORCPT ); Thu, 23 Apr 2015 22:18:13 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.11,636,1422950400"; d="scan'208";a="561002857" From: "Kweh, Hock Leong" To: James Bottomley CC: Peter Jones , Andy Lutomirski , Greg Kroah-Hartman , Matt Fleming , Ming Lei , "Ong, Boon Leong" , LKML , "linux-efi@vger.kernel.org" , Sam Protsenko , Roy Franz , "Borislav Petkov" Subject: RE: [PATCH v4 2/2] efi: an sysfs interface for user to update efi firmware Thread-Topic: [PATCH v4 2/2] efi: an sysfs interface for user to update efi firmware Thread-Index: AQHQdrzO9Y2+ZGg6U0KLDsR6juvZY51N4NhA//+pEQCAAVzbQIAB0EYAgAANNQCAA67xIIABCe6AgAE5nKCAAlwLZf//mNaAgAGjweD//9tdgAApwlLA Date: Fri, 24 Apr 2015 02:14:47 +0000 Message-ID: References: <20150415131906.GC21491@kroah.com> <20150417134924.GB19794@kroah.com> <20150417143640.GB3671@codeblueprint.co.uk> <20150420144323.GA7261@kroah.com> <20150421075620.GA11000@kroah.com> <1429665679.2207.44.camel@HansenPartnership.com> <20150422132734.GB12062@redhat.com> <1429715913.2195.22.camel@HansenPartnership.com> <1429798187.2170.3.camel@HansenPartnership.com> In-Reply-To: <1429798187.2170.3.camel@HansenPartnership.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [172.30.20.205] Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by nfs id t3O2IMLh030761 Content-Length: 1630 Lines: 43 > -----Original Message----- > From: James Bottomley [mailto:James.Bottomley@HansenPartnership.com] > Sent: Thursday, April 23, 2015 10:10 PM > > On Thu, 2015-04-23 at 08:30 +0000, Kweh, Hock Leong wrote: > > > -----Original Message----- > > > From: James Bottomley > [mailto:James.Bottomley@HansenPartnership.com] > > > Sent: Wednesday, April 22, 2015 11:19 PM > > > > > > > > > Yes, I think we've all agreed we can do it ... it's now a question of whether > we > > > can stomach the ick factor of actually initiating a transaction in close ... I'm > still > > > feeling queasy. > > > > The file "close" here can I understand that the file system will call the > "release" > > function at the file_operations struct? > > http://lxr.free-electrons.com/source/include/linux/fs.h#L1538 > > > > So, James you are meaning that we could initiating the update transaction > > inside the f_ops->release() and return the error code if update failed in this > > function? > > Well, that's what I was thinking. However the return value of ->release > doesn't get propagated in sys_close (or indeed anywhere ... no idea why > it returns an int) thanks to the task work additions, so we'd actually > have to use the operation whose value is propagated in sys_close() which > turns out to be flush. > > James > Okay, I think I got you. Just to double check for in case: you are meaning to implement it at f_ops->flush() instead of f_ops->release(). Thanks & Regards, Wilson ????{.n?+???????+%?????ݶ??w??{.n?+????{??G?????{ay?ʇڙ?,j??f???h?????????z_??(?階?ݢj"???m??????G????????????&???~???iO???z??v?^?m???? ????????I?