From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1032007AbdAFAlv (ORCPT ); Thu, 5 Jan 2017 19:41:51 -0500 Received: from mail-cys01nam02on0064.outbound.protection.outlook.com ([104.47.37.64]:62976 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S969765AbdAFAlf (ORCPT ); Thu, 5 Jan 2017 19:41:35 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Serguei.Sagalovitch@amd.com; Subject: Re: Enabling peer to peer device transactions for PCIe devices To: Jason Gunthorpe , Jerome Glisse References: <20170105183927.GA5324@gmail.com> <20170105190113.GA12587@obsidianresearch.com> <20170105195424.GB2166@redhat.com> <20170105200719.GB31047@obsidianresearch.com> <20170105201935.GC2166@redhat.com> <20170105224215.GA3855@obsidianresearch.com> <20170105232352.GB6426@redhat.com> <20170106003034.GB4670@obsidianresearch.com> CC: Jerome Glisse , "Deucher, Alexander" , "'linux-kernel@vger.kernel.org'" , "'linux-rdma@vger.kernel.org'" , "'linux-nvdimm@lists.01.org'" , "'Linux-media@vger.kernel.org'" , "'dri-devel@lists.freedesktop.org'" , "'linux-pci@vger.kernel.org'" , "Kuehling, Felix" , "Blinzer, Paul" , "Koenig, Christian" , "Suthikulpanit, Suravee" , "Sander, Ben" , , , From: Serguei Sagalovitch Message-ID: <26f86650-5302-0df2-9b51-dd967f3e5a7b@amd.com> Date: Thu, 5 Jan 2017 19:41:26 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: <20170106003034.GB4670@obsidianresearch.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [165.204.55.251] X-ClientProxiedBy: SN1PR16CA0070.namprd16.prod.outlook.com (10.163.13.38) To SN1PR12MB0702.namprd12.prod.outlook.com (10.163.209.16) X-MS-Office365-Filtering-Correlation-Id: ac5382d6-28ac-42b9-9d2a-08d435ccc209 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:SN1PR12MB0702; X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0702;3:YNB9QtktQNzakDAtoKPKen1PiONKbumdiS57dshGADJYiV/8jv3bUWG4sFRxHppBu+S2k5rF0teUzjvH7pjPw/681Y0KM0bH3ueCL72LhLK8tVUvA9+uVujb3+lNy7QADPf7p283nIEQ3mKghlY4dCG7mhyP9bGLbkPd6kYB4CQcJxnzm9TOpk/KSFtBcF6cvAQnihTMDWQoUTnIGecOrl0swsud3ZhgXo2QrVE5XrYfOaYAjX3kd2e4gcLtjzZ6q81URplHcDOYF/lhfdn1hw== X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0702;25:Arcv9OK8GZlA+ugNPKr1gQZJDxMGPEWo5k845KLpJqQWmGhaAzQsPDZZBlGlGo6QeZjzLxbSb/04GN60zFfBKVQxvrQN4+/Nr4AkP/eMCncetH15TPI/jmGvE6IRvd7fRrlY4LcumG7Uj1pKjL6NQcnj58DcSWiTFqwpb3JZJqmUXug1UvsUCe7CGsQLLY3HwW16+0hNZWusgqOkJizTsYxFnvrN1dOio3ABi/Kz5FH/Qbk96nS4Nklaur65ievRfEM5QNNZU2rM/3po79c5CT/BNS6QWw7XCKCMeetcWQcrESWY1xwbnVoDlvXr5q/hMVRw70zrVm/50oYA82ArdI914qZ92pwVfHjba4Y9VgwtxFWMIICy0qjDWb2czx31ML9MzErCAJrr6nqphzmlN3uQx+PqueYLyow/Et5a9ZLFOOxbwFQVw/x7EnVsVWewexiS3K4UTj9F94ont7OIFGik30zQ1Z8zbryTBimPnLcuVMDedgMftZr7p51x0xvtJkJbgrWkyXMlhOLvj2b/Fjisc/ZFfYU4hrL7TkBTodNXxEjHwWohTvZWGy7awwB6x98TRq7G1S5CGxKUzZDDa0/zpwUIm5S9cQH3Pp5klGhgHYnpbC1XsQ+L4cEc285nVMqURg6Sa0I9SyREuUSrlXSDoY1n5boTOm2XUmDKaxkAxhIc+p33hJvHEHTFUSc1M7Pk+ddHqfLXG99q0XgR646b5igpl4/duTovmP6L15A2ZVDcE/yPPVHONoP/zXoBe5Zeyf/b0fom6ugFwFJtuw== X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0702;31:UG4/ooxtQ0mQnCJMGGkjbwx6SBlHrCO0mHahO2iJdKsQj6Tcu/oSlkfN+fykPoi/Lj5Rnq1ba0REMaXXSIL/NjNNzRI7+7IHsdOu1OfKYrl+HvfH6jigPwEAsS9ODIWroU6CCmHFlUS7LRLR1GNuHcWyI5YZn6yXALcU8c87zSwr6NQb16qUEeNobDK5AlPJQ0F0q1/ISg7zLGFKred4QRmme+YR1c1Wyf1sEtnk4yUInFCa9CgT9dFdvLwSy9sLPecBz2rvQATq0nJFEGZOrA==;20:xYpyeaSj8T4SmUGUiHHzSqwZQ+++OcXa2mR14E7kK1wgJmYAwDB6JgnwTcrdjXhFOsAz6cuYZS/EdhA5jPsLH1outuC2ic5dXgtV/3ejy7hJ4VuhgpD4mJDIlUrupMxlJWGOVr+YWhalmwRSAKhE104iIaX8yQuQ3+fOlVRDTbQ/Rm+wgpso6G6FFJ/V9piSeovIu6QqdoznK5ae6Z/55uLRQ/ks05GO4aNxPtaoz5awuekAsa9h5oIm37FbJlzVdWcSOLlAo37GnWTQwsewvjUEj2WKOPlBB2gsjVxYNqE8C1rGUZT1T/7d4gd2CbzfRm10Io6GAM0mNWN/i6Ho5Sx41+VY74XIzfsLz6GGZ4UUlQaGrxn7DcTo+zAj3PzD4AzTXG3x3afw3FBh9ERJYqNfHw55G19VWsWEl964iEREjCg1+80yOgDG5HnAoE4vzbmn/HgBitn4OFlfWIa54dM9nYn0rVhvGlJ/nYWDugiapSJqh4+/aZXi9wsyLkht X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6055026)(6041248)(20161123560025)(20161123562025)(20161123555025)(20161123564025)(6072148);SRVR:SN1PR12MB0702;BCL:0;PCL:0;RULEID:;SRVR:SN1PR12MB0702; X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0702;4:Gwm74gls5gSxRddlJI0Wov4TtWyTjZwNLq+GIZUejDdWLeFYTm7/xSOdG5ByF4+Z7FHewhk5VhHM1faEXJQ5aNqnIAggenNni/RghD6UVRcwx4sJwFgyI9IJbRRvl9MI/4IgbErmU8n1wyUmFG3HFTfpVD2z8WiVZ2AaeVeOzREqmxOP8WxsG5IQO4epxjySEtwRsEJ+Buxr52D+gGaMAsCMpTy5bzzjbaWJk+9rRqA0Oa9USWTHvQpAVdbHrGGuuqu4hfLb+DyGfHh+s4KUUvbjUA9cWitrKKm7nydXTO7NhV5odHQmBPXVh7Ko5yoeMXbNKSfoL5v2j7wCtDDQwIH8surdFpuXhb9TkifKOVAjMOCM9ZlETxJz1v6w5nziHeghcDL8tWF/iGcaieSLs0pprPGdSB9mv3TIfILZVhXAsZvlwghfuDviZaqKhC/vxxs3fg95OcFTkPBKlspetna5hCq/c3IbI+uOrFdo4l6BKyzTKw5PKKYn7DJTfOM24o/dl0fAnaswjQ7JFfjjpb9MJDSAKiFOGfHQ8I/3vELkGQP8LfPQJcc+nN+EdXE3sMLYsku2uvN0TfUs35TRHA== X-Forefront-PRVS: 01792087B6 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6049001)(6009001)(7916002)(39850400002)(39450400003)(39410400002)(39860400002)(39840400002)(189002)(377454003)(377424004)(24454002)(199003)(305945005)(64126003)(5660300001)(65826007)(4001350100001)(2950100002)(2906002)(6666003)(101416001)(4326007)(93886004)(36756003)(54906002)(229853002)(8676002)(5001770100001)(7736002)(81166006)(47776003)(33646002)(68736007)(50986999)(54356999)(3846002)(25786008)(6116002)(92566002)(76176999)(66066001)(65956001)(6486002)(105586002)(83506001)(97736004)(86362001)(65806001)(31696002)(81156014)(38730400001)(39060400001)(189998001)(90366009)(50466002)(23746002)(230700001)(42186005)(77096006)(106356001)(7416002)(31686004);DIR:OUT;SFP:1101;SCL:1;SRVR:SN1PR12MB0702;H:[172.27.224.67];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;SN1PR12MB0702;23:n80Y10+HW+9KpD/lDoFcXz1N+GCMXj7IE5UJw?= =?Windows-1252?Q?esGnwpWkalJXujjRwiIP5bIiPOF/LG4DSPdKAWijjksNuuodqpkLmyDq?= =?Windows-1252?Q?qRY0fVgEuvWTpTLVJbC6bqmQpFFosHrzTBCViB59ta6p5ScuKD1I9sgY?= =?Windows-1252?Q?upss5SzZ5q1KJ+ZiP0HStHvYw3xQuzoyJMhiqYku5Otvgc3fpXeJ5Pjp?= =?Windows-1252?Q?Q8KQd/NMS3HtcNP406/fpCn5zUxAt5u/QCeABm4IMtrTzdueDEiR5BMc?= =?Windows-1252?Q?SFqjbKH+F1FCDx3QV2sGIF4GbjYYcvdmEufgyGgWUKJmt4LnNsMK7Oa9?= =?Windows-1252?Q?3efx7y3FDwUD3cytRTDwm26nbwbTGn2wtXBUMmji8PvpUapnpewas0Er?= =?Windows-1252?Q?5AkfJ/GtdSOfFTJfdvplq4hC+MHHx20rvW0cRB7UZGreBRz2TJ1LL1Pi?= =?Windows-1252?Q?wIPYq+gDqVebotoFtLgsvfISxVd1WqA2/yZ6PXXR1JA4qXmdhgXAWR7h?= =?Windows-1252?Q?DxUIKLES3Ir0QU8wEokrQh12ZY5K2HI/rBIohUlwpEQpXIA8DduaipH+?= =?Windows-1252?Q?Wfix0u9EmOz0llHHdmR3tDVzJM+Bso2Gz1TMEaybkUUC9m/HMemNxBwQ?= =?Windows-1252?Q?Rlqv0KKW9UOEnDEbmLvanr+GKOFDRHAc375Y7I4YGeLwQ9eNY2gdWAG1?= =?Windows-1252?Q?y4e8cYSLI20OyWAgKP/z+T+fVtlGy2QCxbo0G4ebzlnRebJwyvNvhEA9?= =?Windows-1252?Q?CQj3rjwiX9djnLmmXq3VbpRxijo2rgCCMiWoJgL3Ufj6e0qYKuZKVqtP?= =?Windows-1252?Q?w0G6BlLJDxnNm90+ouJFSdvbtAIwuFG+VmuDcwUK//IpmUKC90RoxEn0?= =?Windows-1252?Q?dWhoKsrnOKW2DcFkAORymSS/9qvQQPrvO5uCZvHGLvwYw3q3rMjJQfgG?= =?Windows-1252?Q?WpbfgwSFLpHjKJsEXZhvt/qrXpgB+O3+yko2q7wk3tOufxkRPf/ty9Ly?= =?Windows-1252?Q?eoIAhz9/uLT9uJVXKbj3GvT3A196+zCtGQbcP1w/+gQwSUBNXI1OI9mn?= =?Windows-1252?Q?A5kW7q0H+3WtZo1ZqRTrtCIxBkDDCVNQRR1LLiNDVDXyRikmnCn1dM4D?= =?Windows-1252?Q?fKVuvbKnRcaB2PUg8N4QnerTFDl1Q1g7ihbTeFMo47WtKgiNGqomppvM?= =?Windows-1252?Q?eL/UAYlfvf3icJbFnGhLq/fBTko8EmT5C1v3UEHbPnR1+hOeUoUaLqfL?= =?Windows-1252?Q?qQH2DggW5RNiWOwhaeHhhuPjwYYLvx27uBdWQ+4Myeh7S2b4ory9S0FR?= =?Windows-1252?Q?MwTpkjibj0HeZVeRWvai/ycTw8ALeM5ggfXB6KNoFlBP1keC3q/7fNaN?= =?Windows-1252?Q?cMipLs/U8CNucXW99MsJQvXLLSzYbwADM3S3mnG2c3uHBN20Q0MgUAJv?= =?Windows-1252?Q?fBw/mxTPKOkY5RS/atFLkG2gTR0134dTk/GViUaUGFSQ00JgMNGLGyvA?= =?Windows-1252?Q?5KZw3psHEEJFYN6WvA2w8JZWFxzVdo6RZ3yEttmhn4U1ck+lTqvldkUV?= =?Windows-1252?Q?hD0hywkJB5G4fid5wTWxheW6c538+LnAazb1p6UPM4jyhJUqkIP+cq6V?= =?Windows-1252?Q?/e4EgmYnzqU/IWf5XsggfdlioSUwOhgDrzAzvQOY/GUodSJLdNYumMhP?= =?Windows-1252?Q?MEa+cxOfg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0702;6:HR1sDgUPT/JHpClXwC2XTKoihn8sPOfbD8aZ8j0YwByf9k61uuI88sPXYKaW+luLKY3HIrAVT2G0xSY5ypxlw+dKWy8gjAQfYe10gPEqYO040xW8WdqyzLG5c49POq+AhggCMMOUs+9ZgnNWKSyjqv4rsiDZRPmGXtm7YUD0UQaIHKQ6aywFWxvFviaSFPP9BEKqqYaKD8vMafFngHWIV9WygI1v2qbcFU8ePz9N4e5rcfcjVWCXBK5NUzwIXMLO7r3/ilK48YUIcRJdwXBirij8Ihig4be47OaXOXOXfSG7ymc7cxlqD21Lt3HpZFKqNRjpsmjm3tn/rpwRo/WIek54FB8yiPDOm9D08OFCV6TI15p2Li0rglTbdUojKXcGCnswt9W+T+UaZDAr9YAIDpK5xbcQMa/pEnU8H2PJKbNWk+c7zcjMvLZ3Mx/VBMwnNd+Czv0ymyfzBFR+9AJGvw==;5:0Ir8j0rLjlOxR6ZPpQCA7ZC7QbPN5dwpS4JtoflZgwCcP72fiJAUEG6bKY8+EvTxGjBhpsbTRotKZY3hP0h+xHhiZ5W20dpU9zJqVjCReBAnv7AmaLYrFHeSMF0lD6ZjjnfDhEv0rXVJFAHf6c6qPA==;24:t+gzgwl8xk212oA94EaTsuMdA25JhRUxutEVjv7L3YloUMLb0B3nbVM4qknTOMKhHqki472qDRMZGBsWwq09JIkcm7ckSD8+AxzgEFZigKw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0702;7:vgIUlMEFdwdT7Kp5Rt0w/nFBNwZ2JqmkHPG7l5fQ4iPqllOZDJaow7KA7JcBU21r1B4Enjo+4i4ALqkqDGhcJXl5DcNkjgBj1C7Tyj+rY6E9FSZJQyO0Tkajj9YyomriE2giho6NXrazY5uTfESKeGBSmRYg/MKMXYqunaV2qAjWEYXmsZv1itAVMg9NfvyuLvulXa9NGOG4vHsp7WuTWqKRH7vvq0NaqPqNmWt+8LMFLU4FWDXq2xgEYnxTs4k2X4qRlfajsre/oWfXuNnv0/m0LzsKnq8GrRUhlomwEwD+LW0ytTu+rhFMj0KVQ5Yrw1ZfCvWIfvcI98oMShHLN3KsFiuxHzw0h1DRcTgxig1wOwWzzUxTRPmvoXJMjlapYadhoWm93tYPMA0WQL+sUj40npcO9aI38q7pz+EG8L2XnCQv0oqB5r0betqcmwXCBLmsKJyopionuQa3snpXZg==;20:qkVU7thHeJfGeWaEnM06FIA8wg8O5BtbXNzk+125q6beyuCfMEGOFMcLMy4A1oPnuo+lnSkZQuUcFhxjYTaWeaWnH3EZBU2O5Kntg0DkvBoJNe3JBhkQZ+rdT7ZFibEWfhTGAjG0gy/EMHCBwIFdGHk8OJ9Z9cCG5uRfszPfSSlx2CORRKlmxPeQ/zqjWyPfbtIn1xxs4eLpSQSRPVRPriGzPme56bOhaDNsVZew5K9KBdhTFsz1FxKji9j+dQMY X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jan 2017 00:41:30.0164 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB0702 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2017-01-05 07:30 PM, Jason Gunthorpe wrote: > ........ but I am opposed to > the idea we need two API paths that the *driver* has to figure out. > That is fundamentally not what I want as a driver developer. > > Give me a common API to convert '__user *' to a scatter list and pin > the pages. Completely agreed. IMHO there is no sense to duplicate the same logic everywhere as well as trying to find places where it is missing. Sincerely yours, Serguei Sagalovitch