Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752036AbdI1SFH (ORCPT ); Thu, 28 Sep 2017 14:05:07 -0400 Received: from mail-eopbgr10072.outbound.protection.outlook.com ([40.107.1.72]:13376 "EHLO EUR02-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750902AbdI1SFE (ORCPT ); Thu, 28 Sep 2017 14:05:04 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Volodymyr_Babchuk@epam.com; From: Volodymyr Babchuk To: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, tee-dev@lists.linaro.org, Jens Wiklander Cc: Volodymyr Babchuk Subject: [PATCH v1 04/14] tee: shm: add page accessor functions Date: Thu, 28 Sep 2017 21:04:01 +0300 Message-Id: <1506621851-6929-5-git-send-email-volodymyr_babchuk@epam.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1506621851-6929-1-git-send-email-volodymyr_babchuk@epam.com> References: <1506621851-6929-1-git-send-email-volodymyr_babchuk@epam.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [85.223.209.59] X-ClientProxiedBy: HE1PR0102CA0046.eurprd01.prod.exchangelabs.com (2603:10a6:7:7d::23) To AM4PR0301MB2129.eurprd03.prod.outlook.com (2603:10a6:200:4d::14) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 5c1b54d5-7db8-4f9c-c9ca-08d5069b6fdc X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(2017030254152)(2017052603199)(201703131423075)(201703031133081)(201702281549075);SRVR:AM4PR0301MB2129; X-Microsoft-Exchange-Diagnostics: 1;AM4PR0301MB2129;3:Bllc0cpnOY6C7ByBbe7TjNsKdgKrnbVaktIbyCvkszk5wZbPqcvnUfWYlMkuNsjC0i4cBPM3QggJ4mFZR0NR5Cdfn239PSVXzecJxSU8XjL9hh54Jr77NFKven74yV+bkuOBXuAHJD13J/rqv+9EYXkG1oXeXeb0s+hQFdJfrOa5TPOkkNidbwIEkLcJsO3aLDyclhubQo8t+7tNFOsybCy+yCB0e1TLtbgAqgxgKGS5aye8QJx7IQBDeNroDQEG;25:YEuJyttPFf+HmAHbZjJAunLq3xj+CKPznP2csBq/msyAvAxK3WmnFDlwK3Zb8dlYbOvLQngqvCJTP0lyXm+C1rnyhJhHs5lV+hChyzfAG3nEH9pGX1mryaK/OyAcl70oAY4jcpGdMor6sexXgjDNSB8mZkup4JGy1Q7nI1yDa/z3D+LdoHBU9wIM5MJLYmIgF5GdYioGcj6wcta6TbY28uaIukfCae6H8jDGsM3wlW9ml7qYrZXBvSUOGshLyM8mX7/7iE3Y2lE5mGo3aIMr5YvoTsqns4zvVGer8zTnK88PoI/d186epvR48ALBx25Qo8cr11NVxEe1U/Rm4Rdr0Q==;31:TNMHdfgCF+Tn31Qgf0xXHVtSU8WCb1nUvvbqfxBqgpbTEtTqdO9Reppf5T7a6bPI+Aciwc8c8IfmpT/eiPFoYl/hDtGjLFruRLQB9yjiFq+LHeU4BfEG4b0baKHQc/x9QE+RBtT25GKA6XEmEI1e1EVYxA+0C9rPAj+h9OgDhsnFMO52VApp06cq+l+JpXFT5D+A+e6B0sqYljE8RUgN9675AyVGFt/+w9D8o0ZYVXk= X-MS-TrafficTypeDiagnostic: AM4PR0301MB2129: X-Microsoft-Exchange-Diagnostics: 1;AM4PR0301MB2129;20:ZQZug+AMGSVPiDoGMG6O4z34CLEFcrCrH5vPmMInHfWw8NIIHXAXjwQFtOShruVpOmlrkbOdc0HKFCGBi0x6FPMmJm3XfQ16UFrGGc3SFGe8ciKY83pAtB+mcuBrONXbT1erduDLPabblAYIpl8+j+wq4Lr4eiLR1Z1E2rExlMT8ShGTRxHVO8Ok+Npdx3S6CtCbHKV0Pqfk/6rlIyyPpI3WxMEb6koyzyd8fFEoxNUNfxyfrL8HyNLqtey32mC0rx5KyTz0BRsOmd6mKSwqb18AHVqsS3t5yJsGO/7ur8LKClE43jyirGnrVKvNJ1QGZNCBBFhpCnNyWUWD4yVXY6hbvFfMMHT3+DvfilOwbauzWAQdvnhpTqwbNR+hKi+gpOZNRn1oxcoisxONK7vd404ff5Oh81kCCp3XTwKdq79x2nRL6mTMH7qarFNwYfjRGFOhKGlll93oX52P22Ko4kx1TRr4YBJiKYD6o3gFeubnXk6KgNck6263AHC4HL+u;4:miIcTurk6sHCsEiEpabNcbCV3QaCU+p/DjWsB+VzdlpJ3Q4MQV75AU+neIZ0O2JQo0mn30m9vuEO4eMkGKvW+0Aqoj6lXoMFOJYQdFgxobohAxrbyCJXIpFc3EXz12Jk3qJeRF4T6DbYNrusmngaEq82jhmeQno58Nz+zOaBa95WJsMjtQIDOfg2mGQAXvVtWe0+QeZczcdzaqfCzf88ttT/2pu/niJdZtINf9u80SrUIYYJLzYZwpv/2mrDYPs3 X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(100000703101)(100105400095)(93006095)(93001095)(3002001)(10201501046)(6041248)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123560025)(20161123558100)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:AM4PR0301MB2129;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:AM4PR0301MB2129; X-Forefront-PRVS: 0444EB1997 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(979002)(6009001)(376002)(346002)(189002)(199003)(81156014)(53936002)(5660300001)(81166006)(97736004)(8676002)(8936002)(7736002)(4326008)(305945005)(72206003)(316002)(50986999)(76176999)(42186006)(80792005)(86362001)(16586007)(50466002)(101416001)(48376002)(2906002)(66066001)(478600001)(50226002)(2950100002)(6666003)(6916009)(36756003)(68736007)(6116002)(122856001)(47776003)(189998001)(106356001)(3846002)(105586002)(33646002)(39060400002)(5003940100001)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1101;SCL:1;SRVR:AM4PR0301MB2129;H:EPUAKYIW2556.kyiv.epam.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;AM4PR0301MB2129;23:hZ2/em0N7ZYKbiwvyk8TYaYue0PFf6n6JIC8aJn?= =?us-ascii?Q?SBeA6uDdmwmzYgIAIIU2rqNfEe2B7Os9ebDhfmNusKiogBu3PzK1nWNQ7SAz?= =?us-ascii?Q?lPwjw0c7QaLS4DAkxNiD0ao+9udJpUhN6rBhFTWktO0HxT8Q5nacFdXsiZdS?= =?us-ascii?Q?SPLvKEa+wa58i7cqizbeadWoPB0fZ7BdRoaQ2BHYeB0pWFicU4wLQEpYQuXM?= =?us-ascii?Q?L60+IC1kKTCUo3x5B3xZ+8tGROJ7M/jlAVoxiO7BR+8LkZHUam25v+IK/mMK?= =?us-ascii?Q?Q5D3pmQPbEZVaAS4OPlP9TnDKSdk4AGzAG/tz3IU1ss8XO0YQ198G19NnM4n?= =?us-ascii?Q?oCvSrenA4Ch7879vicMys5u6fkC+9QxHV5H1m61PElRYWQjxa6Ch4gzGKPWI?= =?us-ascii?Q?8K2JXQjuYjjynxCpy+g0Q7edG2tR2TqUD0WNtc9r2y1IfvN8a4h+0xz81ilD?= =?us-ascii?Q?DwxWbAvfysIrn88726IX+23DiW+R9Qjww+tjlr8Dmte83tCSh+QeUVTSNEcu?= =?us-ascii?Q?8AotwFfPRTc4b2cM8aMpF9WLP5+h2w+S4JnZy0kLnxQO9i9M//jaYdTh1JfD?= =?us-ascii?Q?YdOK1qVmd1/+7n6hJVhwoql7NoG3DS86Q56K/CQsOnOBGwUvMXji6FaBh0oT?= =?us-ascii?Q?AvEH9s5Ku4a7YizbXnesZtqyqQyj4JJ51tnQHF+9mAdYIIkdBcj50a3vABTB?= =?us-ascii?Q?F0lHrD6gflOMS7j9kBRC/X19e/lR+4b7kgB/72H4nFjkud+iPm58iHfNJou7?= =?us-ascii?Q?wN0xPXAuWH5TLc5rhKV0S7EJcvVnoRL+CTJF1gZrlGRZ4JAFdTvrYwxqrzQc?= =?us-ascii?Q?M4JbXrDUZOfF6YNPfDF1hcx007YqI5VbdlqGfH3KdIVUHt/6iWBUcYqO+6dW?= =?us-ascii?Q?08NnA40HOcBWxQc3DYDgVWcfkFMElhoQ1xyCxReenXdmSlY5gFeGlx1+cCDa?= =?us-ascii?Q?KqFXnysOT5i51nqii5dMD5J5ki4ImhNlA5swsWJOY4u8vDMrCbZz0in9ed6v?= =?us-ascii?Q?PfsNbZdN1GIFMjGKjMGd1zJpIYeyQEXi85o/wpMJkDIH0cYcQwg6X5gFKlBX?= =?us-ascii?Q?9p8kzNfoTMgkcQ6bkx4Dtwxb25DlZbFy+JU6lgEFEPLtl4VcCPlW4DfCANpb?= =?us-ascii?Q?xSl1OyF3yEx8IegSng3elZReEoVv5Qj1aUp1NKxW9PnB69mwo+INbeAnMRjU?= =?us-ascii?Q?mP6yChVVYRzwAFW4=3D?= X-Microsoft-Exchange-Diagnostics: 1;AM4PR0301MB2129;6:ZUHmNs1+VLVOde9YpdYQf7Hnq69TbeIsaW7oeJYWeMt29lDzIXVGCCLrBowj3o7FCMdS/fHHEBoHGtDSgs6FX+j+lToNC/Pdn/+nIct4WcmbOEjjTadIzjs8lV4gEPNKp0FPqbJ+XvoEhRHr3RuHz+LxExUY7ZS1Wb/VqyEcfNlh1Qrsuvo7t2r8aGtPSNremoUNe/zcYNTjmD24xHj0mvPd0RO1KUOsaVZ5S4KFUPTLSRB6ISnPD122ft5sUeiheWYkQxgQ5RP5MR9Enr81FYGHdI4cV8fWzJ2ET8KJizqwlqtsyWKE+PDODSfPry7DlU86Bfwh2Lp4HQeHttWKHw==;5:7WmLAPqMTV87SdsIYFrBSISD4QBk3FjPCbnaO4FbrD3zEL+OnWitLofWRzo0ZIL0a0qy4HJ86FQWPmekYY4Ue7n28BHf27UkiGpQm4oI+smBwT5cwHSBmFb7gQYgN8+RlDHZRu9xS57ygcHaRdYNOQ==;24:G2lh6jYJoo9H9YvAD9q974cB6kw8/GTPmRVKjPELGYwNa+CbsbbJm7gWB7T0tGcEpltVKBKwrsF+P1waKDDgPDabAEcfslZUHWWvNq1I4kw=;7:ovEMRCB6rrrxNZQltTDmMBNJQeLb/bk4jJho0QDqQz2XsALhkewLRolpfmvxUsW/pkwDj6SILVd1ora/5kNMOIVTef4NbLab4tmdVUbbfLGla22Xj9+inRoCleZhecAc0Tskq6Yzs8maKbfuw3OiNOg2Nmdzq49MIiOmSX/gp2H8312YeFSy+btj1fonwSUBfqixd0m/QMQ8rI59HomTUWtGHQARiXyti8XfPvKHblU= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Sep 2017 18:05:00.2512 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR0301MB2129 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1081 Lines: 37 From: Volodymyr Babchuk In order to register a shared buffer in TEE, we need accessor function that return list of pages for that buffer. Signed-off-by: Volodymyr Babchuk --- include/linux/tee_drv.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/include/linux/tee_drv.h b/include/linux/tee_drv.h index 6ba8b76..d773827 100644 --- a/include/linux/tee_drv.h +++ b/include/linux/tee_drv.h @@ -394,6 +394,20 @@ static inline size_t tee_shm_get_size(struct tee_shm *shm) } /** + * tee_shm_get_pages() - Get list of pages that hold shared buffer + * @shm: Shared memory handle + * @num_pages: Number of pages will be stored there + * @returns pointer to pages array + */ +static inline struct page **tee_shm_get_pages(struct tee_shm *shm, + size_t *num_pages) +{ + if (num_pages) + *num_pages = shm->num_pages; + return shm->pages; +} + +/** * tee_shm_get_page_offset() - Get shared buffer offset from page start * @shm: Shared memory handle * @returns page offset of shared buffer -- 2.7.4