Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp1887237imm; Mon, 3 Sep 2018 12:03:49 -0700 (PDT) X-Google-Smtp-Source: ANB0VdZ8OAuvUL9TauQS+8U00GBSQS9YvP5YJi3er7F0lOD01QeDcAr1EYSP0N4qIiWi0020hlBA X-Received: by 2002:a63:d20e:: with SMTP id a14-v6mr25175018pgg.226.1536001429692; Mon, 03 Sep 2018 12:03:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1536001429; cv=none; d=google.com; s=arc-20160816; b=ocKrj37y7OVIlZjITjM6pYtjXawDEHKNG0Uu9Jk0p+owc3oE274Ku+Vu39IHBObjZN FwocrJyoeamGnKyb8f43FUqfl4MvT3cgX8hCMBDMhNTty7xnoNoX80Jft/NmFSSiW99E 0FLM7VVTC2oo9QCASnL5dHx4Cj9jWoB4g61Xh6x7LNfWe06j0eC0lRSZ5BUY5SmwluKz JLRU91Bg7+0yjeJYtYywarHnAGemTzYfxgFwhGA8FjHt752vn7aSYHjPxRyvxKJEgEZO c5xyAuRSQtAIa0mO2quGr0rhTEiRlfAMd35mff126hf7xpP8eFkrGXoIqOkWbgnMgENH eLQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature :arc-authentication-results; bh=hlS8XGh3x013zvCvg60lUUWQcmYOelts13vbCnWoyyI=; b=n6Oj+cqRIxakZy15PRTBCkOPAHvPlU4gf+He/aaAdLIxOQuAUgz8XhsxlkR4Z8yTXW wzbjVs7SdIyDL+PY/d+GHxTFK7cHt8n0HKr8Zsge5sMoFiv10p06ZroItGL9xINiv2rF 2QdrSyNU646jv2onu857UWZ9P/iZmd1+Bq6m2RAF5/jXvMhXolZfq19/RWDPWWAHvhjR /P/RXfgKqb7ztbNXH6KLj6pi74y0JLWIPS/vVRmjR4X21A5qV7ecVvRk0vJRcdqoQ5EN 41qKXjfP5IQMIzuxKFOnQoi6P6t1qjum5kG1uMFAD7fiVR7DrnyYzWojlk1pIuptcUN5 z6qQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=OAyStXIt; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s11-v6si19749445pfd.231.2018.09.03.12.03.33; Mon, 03 Sep 2018 12:03:49 -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=@gmail.com header.s=20161025 header.b=OAyStXIt; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728111AbeICXX7 (ORCPT + 99 others); Mon, 3 Sep 2018 19:23:59 -0400 Received: from mail-qk1-f195.google.com ([209.85.222.195]:34135 "EHLO mail-qk1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727597AbeICXX6 (ORCPT ); Mon, 3 Sep 2018 19:23:58 -0400 Received: by mail-qk1-f195.google.com with SMTP id d15-v6so924235qkc.1; Mon, 03 Sep 2018 12:02:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=hlS8XGh3x013zvCvg60lUUWQcmYOelts13vbCnWoyyI=; b=OAyStXItgn5jQWxFn/tIGyNepkxL4uMpIqL2AR6N4lSjANM0YaTVoKkFXoKhzwfoXP Wg1CcwNxvkQ2ZVzA7Ogs2B7ISKguOyNT9GnSsC1fWGta8CsgOpx5xKeACaA//hzgHlIx xMgRHQpsEh8VXBKFxPKuqY3Tx++CXbuwp9pnhhMS43AyPPUJ7zxwxg2NnlXVG5PIfWLB WQIDeA/ElzGJXKtNTnMLZlG8IR9KAlhPcW3OlDpoNCdCQGBJtr7LAPFvDgmo6cZ2/rbp hMcLQEdNo/BdP3snHMszshrAJjxFsAaF/Ory1/3FiMYbQRSEn0sSoUOiZv4qUsUWygPT ns7A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=hlS8XGh3x013zvCvg60lUUWQcmYOelts13vbCnWoyyI=; b=WjeQLkGBieZ0d5GcrnHAIlL4szG/sB6u8PF1K9v7U6YhetsHfFc1UfUISBGnaRX54e R/aw1gezLJGMTv0pYId2RzQTIoSJkERwxkqXX4i9rJRFywLjWmbbfe0nSAI8uim1+5Xg kMYwoIpBRSleYD9kG9hGmgoHncmZj1fUAfrcaXaq0kFh30JPPdU+SbqOU7yzOnMCCk5A IeNt238gFewLvCeYWStC6EvKwLt1520CmV+Wssg0ouAOpatlTKlEc+Hoorb1JkL67QNJ V/mp3efxrvW+ZEgVHXw0sAc+ePvCVRQ4F1UVmglExTS5CPoVdzuKooaFFoFyMrT98GvJ AF+Q== X-Gm-Message-State: APzg51D2x7VlVXZWgzSYcglwmvBKaWLU0U48v0d5UkkqnzKxdCxNhem8 3UgXxA3f/+22hF1dk9uvnbjCtBt8V/NkAYEfHqM= X-Received: by 2002:a37:58c3:: with SMTP id m186-v6mr12392038qkb.119.1536001347423; Mon, 03 Sep 2018 12:02:27 -0700 (PDT) MIME-Version: 1.0 References: <20180827185507.17087-1-jarkko.sakkinen@linux.intel.com> <20180827185507.17087-10-jarkko.sakkinen@linux.intel.com> In-Reply-To: <20180827185507.17087-10-jarkko.sakkinen@linux.intel.com> From: Andy Shevchenko Date: Mon, 3 Sep 2018 22:02:16 +0300 Message-ID: Subject: Re: [PATCH v13 09/13] x86/sgx: Enclave Page Cache (EPC) memory manager To: Jarkko Sakkinen Cc: "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , Platform Driver , Dave Hansen , sean.j.christopherson@intel.com, nhorman@redhat.com, npmccallum@redhat.com, linux-sgx@vger.kernel.org, Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , suresh.b.siddha@intel.com, serge.ayoun@intel.com, Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Aug 27, 2018 at 9:58 PM Jarkko Sakkinen wrote: > > Add a Enclave Page Cache (EPC) memory manager that can be used to > allocate and free EPC pages. The swapper thread ksgxswapd reclaims pages > on the event when the number of free EPC pages goes below > %SGX_NR_LOW_PAGES up until it reaches %SGX_NR_HIGH_PAGES. > > Pages are reclaimed in LRU fashion from a global list. The consumers > take care of calling EBLOCK (block page from new accesses), ETRACK > (restart counting the entering hardware threads) and EWB (write page to > the regular memory) because executing these operations usually (if not > always) requires to do some subsystem-internal locking operations. > + list_del(&page->list); Is this page will be completely gone? Otherwise it might be needed to reinit list head here as well. > + WARN(ret < 0, "sgx: cannot free page, reclaim in-progress"); > + WARN(ret > 0, "sgx: EREMOVE returned %d (0x%x)", ret, ret); I'm not sure (though it's easy to check) that you need sgx: prefix here. WARN() might take pr_fmt() if defined. -- With Best Regards, Andy Shevchenko