Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp670831ybk; Wed, 20 May 2020 09:04:27 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwkLBQmce3OyJ1Qmla8TRRuaOjlO6L5CUE8oMa4EddcGqPiZT6hPi2Iae9xTBoRuKxPUR9B X-Received: by 2002:a17:906:34c7:: with SMTP id h7mr4232044ejb.300.1589990667285; Wed, 20 May 2020 09:04:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589990667; cv=none; d=google.com; s=arc-20160816; b=Yh47crZ8uo8jQ2snBp/5Ol5MiLjmjV+/NLUcCwZ4qytoVecGKkklh0rrMQJwMfTIQ3 yl6oSWONtG41FyQWejx+AYV53JyFT7qy7j54KoJaeeqXyWcg+lodMkuShwnjHljey2V7 +SaccOAZI74asbPbNDMDXS/tipFy5yatWv28o23+8hcyLziyDorrSd9l025XfmptjTcx gdoZUqIxpAWO2uDhkXVzK/hSaKATwxJvUVYnIszYWLQhDGIU2QsirY+yI9OmkqQImQAU F9TaRn5lOn9VyAWHZ0bmYh+7JvgzwF7FNa8lJbVl9vYM4DV0O61dFBvPp5MKrdey8D1q mJfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature; bh=DAZPpfLa/Mz+8WD8aQIG+C0PYia50PfmPiPKmTkUSVs=; b=eDUU8jMaDX5Qdergo9cJTxUVfRq4CvlKwSuQM++86HE6YWmBU4WMpjA7ZebbfQuxMZ FjLEXPX7yUWW6PYdrh3gt662kPSYvNmOJHWLwRuPFuCA/MEv5+R0fyNdeNhnFoViw6ci 6zApze+tNNY3qABf84UvjYA7SNuPSRiZnintGhNJiDZU1IuU2H4h8+pb+bqUupgpKhk4 DG9fNdOYpKcDkaRQJjQ7Czfz+EkBDkNXp1DRGbOusmw+riDdiz09kzojsNU1Oo+3FBzF N2GoYxlcsmugbcQRDWe+CZha9atvHdp57dxYhVcMkGBAjU5vjVuwzOJ0Ekd8W9Cdfgbq RVqw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="1vfFff/p"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e21si1942049ejh.710.2020.05.20.09.03.46; Wed, 20 May 2020 09:04:27 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="1vfFff/p"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726899AbgETP7s (ORCPT + 99 others); Wed, 20 May 2020 11:59:48 -0400 Received: from mail.kernel.org ([198.145.29.99]:43760 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726560AbgETP7r (ORCPT ); Wed, 20 May 2020 11:59:47 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id A856220671; Wed, 20 May 2020 15:59:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1589990385; bh=KQlZWM4EgGUJxks+dgScQlJpcc0Bs+aRHvmSSBZvdrY=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=1vfFff/pXGLpXhQkukVAcB48aUGthYHL2F9aeu0iQI6ykEgTHfLuVnDHXivhoNOdk w1K1lnDOHSsXweq7ZC+zbwh0jQN0T94hLA+0dNQly/CX9pOcEp2Y6vhtevV69jSSu4 r5ZNrsj3OAZqxPcoevtKXDP7kTwtuLFB3Vnp2yww= Date: Wed, 20 May 2020 17:59:43 +0200 From: Greg Kroah-Hartman To: Jeffrey Hugo Cc: Daniel Vetter , dri-devel , Olof Johansson , Jason Gunthorpe , Dave Airlie , Arnd Bergmann , Manivannan Sadhasivam , Bjorn Andersson , wufan@codeaurora.org, pratanan@codeaurora.org, linux-arm-msm , LKML Subject: Re: [RFC PATCH 0/8] Qualcomm Cloud AI 100 driver Message-ID: <20200520155943.GB3916378@kroah.com> References: <20200520051536.GA2141566@kroah.com> <5701b299-7800-1584-4b3a-6147e7ad3fca@codeaurora.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5701b299-7800-1584-4b3a-6147e7ad3fca@codeaurora.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, May 20, 2020 at 08:48:13AM -0600, Jeffrey Hugo wrote: > On 5/20/2020 2:34 AM, Daniel Vetter wrote: > > On Wed, May 20, 2020 at 7:15 AM Greg Kroah-Hartman > > wrote: > > > > > > On Tue, May 19, 2020 at 10:41:15PM +0200, Daniel Vetter wrote: > > > > On Tue, May 19, 2020 at 07:41:20PM +0200, Greg Kroah-Hartman wrote: > > > > > On Tue, May 19, 2020 at 08:57:38AM -0600, Jeffrey Hugo wrote: > > > > > > On 5/18/2020 11:08 PM, Dave Airlie wrote: > > > > > > > On Fri, 15 May 2020 at 00:12, Jeffrey Hugo wrote: > > > > > > > > > > > > > > > > Introduction: > > > > > > > > Qualcomm Cloud AI 100 is a PCIe adapter card which contains a dedicated > > > > > > > > SoC ASIC for the purpose of efficently running Deep Learning inference > > > > > > > > workloads in a data center environment. > > > > > > > > > > > > > > > > The offical press release can be found at - > > > > > > > > https://www.qualcomm.com/news/releases/2019/04/09/qualcomm-brings-power-efficient-artificial-intelligence-inference > > > > > > > > > > > > > > > > The offical product website is - > > > > > > > > https://www.qualcomm.com/products/datacenter-artificial-intelligence > > > > > > > > > > > > > > > > At the time of the offical press release, numerious technology news sites > > > > > > > > also covered the product. Doing a search of your favorite site is likely > > > > > > > > to find their coverage of it. > > > > > > > > > > > > > > > > It is our goal to have the kernel driver for the product fully upstream. > > > > > > > > The purpose of this RFC is to start that process. We are still doing > > > > > > > > development (see below), and thus not quite looking to gain acceptance quite > > > > > > > > yet, but now that we have a working driver we beleive we are at the stage > > > > > > > > where meaningful conversation with the community can occur. > > > > > > > > > > > > > > > > > > > > > Hi Jeffery, > > > > > > > > > > > > > > Just wondering what the userspace/testing plans for this driver. > > > > > > > > > > > > > > This introduces a new user facing API for a device without pointers to > > > > > > > users or tests for that API. > > > > > > > > > > > > We have daily internal testing, although I don't expect you to take my word > > > > > > for that. > > > > > > > > > > > > I would like to get one of these devices into the hands of Linaro, so that > > > > > > it can be put into KernelCI. Similar to other Qualcomm products. I'm trying > > > > > > to convince the powers that be to make this happen. > > > > > > > > > > > > Regarding what the community could do on its own, everything but the Linux > > > > > > driver is considered proprietary - that includes the on device firmware and > > > > > > the entire userspace stack. This is a decision above my pay grade. > > > > > > > > > > Ok, that's a decision you are going to have to push upward on, as we > > > > > really can't take this without a working, open, userspace. > > > > > > > > Uh wut. > > > > > > > > So the merge criteria for drivers/accel (atm still drivers/misc but I > > > > thought that was interim until more drivers showed up) isn't actually > > > > "totally-not-a-gpu accel driver without open source userspace". > > > > > > > > Instead it's "totally-not-a-gpu accel driver without open source > > > > userspace" _and_ you have to be best buddies with Greg. Or at least > > > > not be on the naughty company list. Since for habanalabs all you > > > > wanted is a few test cases to exercise the ioctls. Not the entire > > > > userspace. > > > > > > Also, to be fair, I have changed my mind after seeing the mess of > > > complexity that these "ioctls for everyone!" type of pass-through > > > these kinds of drivers are creating. You were right, we need open > > > userspace code in order to be able to properly evaluate and figure out > > > what they are doing is right or not and be able to maintain things over > > > time correctly. > > > > > > So I was wrong, and you were right, my apologies for my previous > > > stubbornness. > > > > Awesome and don't worry, I'm pretty sure we've all been stubborn > > occasionally :-) > > > > From a drivers/gpu pov I think still not quite there since we also > > want to see the compiler for these programmable accelerator thingies. > > But just having a fairly good consensus that "userspace library with > > all the runtime stuff excluding compiler must be open" is a huge step > > forward. Next step may be that we (kernel overall, drivers/gpu will > > still ask for the full thing) have ISA docs for these programmable > > things, so that we can also evaluate that aspect and gauge how many > > security issues there might be. Plus have a fighting chance to fix up > > the security leaks when (post smeltdown I don't really want to > > consider this an if) someone finds a hole in the hw security wall. At > > least in drivers/gpu we historically have a ton of drivers with > > command checkers to validate what userspace wants to run on the > > accelerator thingie. Both in cases where the hw was accidentally too > > strict, and not strict enough. > > I think this provides a pretty clear guidance on what you/the community are > looking for, both now and possibly in the future. > > Thank you. > > From my perspective, it would be really nice if there was something like > Mesa that was a/the standard for these sorts of accelerators. Its somewhat > the wild west, and we've struggled with it. Put a first cut at such a thing out there and see how it goes! Nothing is preventing you from starting such a project, and it would be most welcome as you have seen. good luck, greg k-h