From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pa0-f54.google.com (mail-pa0-f54.google.com [209.85.220.54]) by kanga.kvack.org (Postfix) with ESMTP id 860036B0038 for ; Tue, 8 Dec 2015 06:19:32 -0500 (EST) Received: by pacwq6 with SMTP id wq6so10751194pac.1 for ; Tue, 08 Dec 2015 03:19:32 -0800 (PST) Received: from mga03.intel.com (mga03.intel.com. [134.134.136.65]) by mx.google.com with ESMTP id xp4si4622476pac.213.2015.12.08.03.19.31 for ; Tue, 08 Dec 2015 03:19:31 -0800 (PST) Subject: Re: [Intel-gfx] [PATCH v2 1/2] mm: Export nr_swap_pages References: <1449244734-25733-1-git-send-email-chris@chris-wilson.co.uk> <20151207134812.GA20782@dhcp22.suse.cz> <20151207164831.GA7256@cmpxchg.org> <5665CB78.7000106@intel.com> <20151207191346.GA3872@cmpxchg.org> From: Dave Gordon Message-ID: <5666BCC0.50507@intel.com> Date: Tue, 8 Dec 2015 11:19:28 +0000 MIME-Version: 1.0 In-Reply-To: <20151207191346.GA3872@cmpxchg.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-linux-mm@kvack.org List-ID: To: Johannes Weiner Cc: Michal Hocko , linux-mm@kvack.org, intel-gfx@lists.freedesktop.org, "Goel, Akash" On 07/12/15 19:13, Johannes Weiner wrote: > On Mon, Dec 07, 2015 at 06:10:00PM +0000, Dave Gordon wrote: >> Exporting random uncontrolled variables from the kernel to loaded modules is >> not really considered best practice. It would be preferable to provide an >> accessor function - which is just what the declaration says we have; the >> implementation as a static inline (and/or macro) is what causes the problem >> here. > > No, what causes the problem is thinking we can't trust in-kernel code. We 'trust' kernel code not to be malicious, but not to be designed or implemented without mistakes. Keeping the impact of the mistakes as small and local as possible increases overall system reliability and makes debugging easier, which leads to the general principle of only exporting the minimum necessary interfaces. If no other module should write this data, then let's not export it as a read-write variable. > If somebody screws up, we can fix it easily enough. Sure, we shouldn't > be laying traps and create easy-to-misuse interfaces, but that's not > what's happening here. There is no reason to add function overhead to > what should be a single 'mov' instruction. It could still be a macro or local inline within the mm code, but provide a read-only function-call interface for external use. That gives you maximum efficiency within the owning module, and makes it clear just what sort of access is allowed outside that code. .Dave. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: Re: [PATCH v2 1/2] mm: Export nr_swap_pages Date: Tue, 8 Dec 2015 11:19:28 +0000 Message-ID: <5666BCC0.50507@intel.com> References: <1449244734-25733-1-git-send-email-chris@chris-wilson.co.uk> <20151207134812.GA20782@dhcp22.suse.cz> <20151207164831.GA7256@cmpxchg.org> <5665CB78.7000106@intel.com> <20151207191346.GA3872@cmpxchg.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id DD8776E1E9 for ; Tue, 8 Dec 2015 03:19:31 -0800 (PST) In-Reply-To: <20151207191346.GA3872@cmpxchg.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Johannes Weiner Cc: linux-mm@kvack.org, intel-gfx@lists.freedesktop.org, "Goel, Akash" , Michal Hocko List-Id: intel-gfx@lists.freedesktop.org T24gMDcvMTIvMTUgMTk6MTMsIEpvaGFubmVzIFdlaW5lciB3cm90ZToKPiBPbiBNb24sIERlYyAw NywgMjAxNSBhdCAwNjoxMDowMFBNICswMDAwLCBEYXZlIEdvcmRvbiB3cm90ZToKPj4gRXhwb3J0 aW5nIHJhbmRvbSB1bmNvbnRyb2xsZWQgdmFyaWFibGVzIGZyb20gdGhlIGtlcm5lbCB0byBsb2Fk ZWQgbW9kdWxlcyBpcwo+PiBub3QgcmVhbGx5IGNvbnNpZGVyZWQgYmVzdCBwcmFjdGljZS4gSXQg d291bGQgYmUgcHJlZmVyYWJsZSB0byBwcm92aWRlIGFuCj4+IGFjY2Vzc29yIGZ1bmN0aW9uIC0g d2hpY2ggaXMganVzdCB3aGF0IHRoZSBkZWNsYXJhdGlvbiBzYXlzIHdlIGhhdmU7IHRoZQo+PiBp bXBsZW1lbnRhdGlvbiBhcyBhIHN0YXRpYyBpbmxpbmUgKGFuZC9vciBtYWNybykgaXMgd2hhdCBj YXVzZXMgdGhlIHByb2JsZW0KPj4gaGVyZS4KPgo+IE5vLCB3aGF0IGNhdXNlcyB0aGUgcHJvYmxl bSBpcyB0aGlua2luZyB3ZSBjYW4ndCB0cnVzdCBpbi1rZXJuZWwgY29kZS4KCldlICd0cnVzdCcg a2VybmVsIGNvZGUgbm90IHRvIGJlIG1hbGljaW91cywgYnV0IG5vdCB0byBiZSBkZXNpZ25lZCBv ciAKaW1wbGVtZW50ZWQgd2l0aG91dCBtaXN0YWtlcy4gS2VlcGluZyB0aGUgaW1wYWN0IG9mIHRo ZSBtaXN0YWtlcyBhcyAKc21hbGwgYW5kIGxvY2FsIGFzIHBvc3NpYmxlIGluY3JlYXNlcyBvdmVy YWxsIHN5c3RlbSByZWxpYWJpbGl0eSBhbmQgCm1ha2VzIGRlYnVnZ2luZyBlYXNpZXIsIHdoaWNo IGxlYWRzIHRvIHRoZSBnZW5lcmFsIHByaW5jaXBsZSBvZiBvbmx5IApleHBvcnRpbmcgdGhlIG1p bmltdW0gbmVjZXNzYXJ5IGludGVyZmFjZXMuIElmIG5vIG90aGVyIG1vZHVsZSBzaG91bGQgCndy aXRlIHRoaXMgZGF0YSwgdGhlbiBsZXQncyBub3QgZXhwb3J0IGl0IGFzIGEgcmVhZC13cml0ZSB2 YXJpYWJsZS4KCj4gSWYgc29tZWJvZHkgc2NyZXdzIHVwLCB3ZSBjYW4gZml4IGl0IGVhc2lseSBl bm91Z2guIFN1cmUsIHdlIHNob3VsZG4ndAo+IGJlIGxheWluZyB0cmFwcyBhbmQgY3JlYXRlIGVh c3ktdG8tbWlzdXNlIGludGVyZmFjZXMsIGJ1dCB0aGF0J3Mgbm90Cj4gd2hhdCdzIGhhcHBlbmlu ZyBoZXJlLiBUaGVyZSBpcyBubyByZWFzb24gdG8gYWRkIGZ1bmN0aW9uIG92ZXJoZWFkIHRvCj4g d2hhdCBzaG91bGQgYmUgYSBzaW5nbGUgJ21vdicgaW5zdHJ1Y3Rpb24uCgpJdCBjb3VsZCBzdGls bCBiZSBhIG1hY3JvIG9yIGxvY2FsIGlubGluZSB3aXRoaW4gdGhlIG1tIGNvZGUsIGJ1dCAKcHJv dmlkZSBhIHJlYWQtb25seSBmdW5jdGlvbi1jYWxsIGludGVyZmFjZSBmb3IgZXh0ZXJuYWwgdXNl LiBUaGF0IGdpdmVzIAp5b3UgbWF4aW11bSBlZmZpY2llbmN5IHdpdGhpbiB0aGUgb3duaW5nIG1v ZHVsZSwgYW5kIG1ha2VzIGl0IGNsZWFyIGp1c3QgCndoYXQgc29ydCBvZiBhY2Nlc3MgaXMgYWxs b3dlZCBvdXRzaWRlIHRoYXQgY29kZS4KCi5EYXZlLgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2ludGVsLWdmeAo=