From owner-freebsd-hackers@freebsd.org Sat Nov 9 11:27:40 2019 Return-Path: Delivered-To: freebsd-hackers@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 45CAD1A689E for ; Sat, 9 Nov 2019 11:27:40 +0000 (UTC) (envelope-from damjan.jov@gmail.com) Received: from mail-il1-x12d.google.com (mail-il1-x12d.google.com [IPv6:2607:f8b0:4864:20::12d]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 479FHH0zZ9z4dPC for ; Sat, 9 Nov 2019 11:27:38 +0000 (UTC) (envelope-from damjan.jov@gmail.com) Received: by mail-il1-x12d.google.com with SMTP id m5so7533466ilq.0 for ; Sat, 09 Nov 2019 03:27:38 -0800 (PST) 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:cc; bh=2yC8tEE284MYw6+rkafNyKehVng7pelMFLcgRX1OlrI=; b=ciqxC0sYiYXjQfAjnVoSb9wXWzEXlFPQa2XYx7pOLxpctlb03JS3QB2jMFKHP8PWH1 UinRYcS8KCU4hHmjXY/vsYfmDLeXNUdNvL1HTgfksOiudFVA/pVI0BSmIDchLUFyMre1 81fTzuaN+G53QP/3FDTW4lWMvOHzK6U06fXhlX9B78SrEinovKdvbqVOOOD4vBaYV3AH Aqw89MydX5nTBf/WegROf2Wd1Ioo4YVeKRhnbZj3KaOkhJQKjxQOxcZrYPQKjd/KkKGD Wzwqgjn6VSKL6uwmX12uskKTzRJq9rlhgD99aehpspFXqYxrZrLfbzH0KKpz1t0ti4MU KjtA== 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:cc; bh=2yC8tEE284MYw6+rkafNyKehVng7pelMFLcgRX1OlrI=; b=o4NtG8A9ARdJCEia2EObTpinXrinNtQyPi0Dvcqtreq/ZL2ruTtBWvQG1x0Hko3llr UjjS8WwFrTCjr+aqgMLa1BbJ86WozlAaj7gR/MsFZ469obLxcwz3Kn/Tv8ClaumMBZRP Ghu3OAScVL247Fg7qJSaOVGPzm2NIQ/6uxVBWs3cGVrw5VwDSwsZwirz1pk7B527dWBj 1SZk7DVubnyXUjCKz84ATM/+zdWYoTDeZNpp8PmbFqjS3eKUpctLwx6U0CmkjvFlK7KH ihEaOFWWS0TQMiJ7cj6oLVaNwvk4eoC5m/u8C9wxlrPvC0qWNtrhUQY1621Js6U5eb9M /FBA== X-Gm-Message-State: APjAAAUB+VmULazOpwzuKyhOLFYwX0Bu9MzFEqlN0m0sN6c/dEe8NMjs FkXqhUeuvxK6sfjVUBkRP2DZw/Lh4GLRZMQxGU1Y8ifiAzhCVw== X-Google-Smtp-Source: APXvYqw5hiW0mF4sKjQLwkn99KFHZWZVsnqUszFKm3A1pC6IdaD7yQ1NBeIfvQ2jF4idBIDNfbSogEkyMOUfJ9dc2Nk= X-Received: by 2002:a92:8d19:: with SMTP id s25mr18782362ild.273.1573298857530; Sat, 09 Nov 2019 03:27:37 -0800 (PST) MIME-Version: 1.0 References: <20191109080032.231cd203@rimwks> In-Reply-To: <20191109080032.231cd203@rimwks> From: Damjan Jovanovic Date: Sat, 9 Nov 2019 13:24:20 +0200 Message-ID: Subject: Re: Linux PCI drivers in user space Cc: Hackers freeBSD X-Rspamd-Queue-Id: 479FHH0zZ9z4dPC X-Spamd-Bar: / Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=ciqxC0sY; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of damjanjov@gmail.com designates 2607:f8b0:4864:20::12d as permitted sender) smtp.mailfrom=damjanjov@gmail.com X-Spamd-Result: default: False [-1.00 / 15.00]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; FREEMAIL_FROM(0.00)[gmail.com]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[gmail.com:+]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; MISSING_TO(2.00)[]; FROM_EQ_ENVFROM(0.00)[]; IP_SCORE(0.00)[ip: (-8.84), ipnet: 2607:f8b0::/32(-2.34), asn: 15169(-2.00), country: US(-0.05)]; MIME_TRACE(0.00)[0:+,1:+,2:~]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; TAGGED_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-hackers@freebsd.org]; IP_SCORE_FREEMAIL(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; RCVD_IN_DNSWL_NONE(0.00)[d.2.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org : 127.0.5.0]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 09 Nov 2019 11:27:40 -0000 On Sat, Nov 9, 2019 at 7:00 AM Rozhuk Ivan wrote: > Hi! > > > Im frustrating with amdgpu on 12.1... > Current status DRM with linuxkpi - it hard to use and hard to support. > FreeBSD stable have no fresh drivers, FreeBSD current - unstable. > > But we have webcamd: > + almost all time fresh drivers from linux > + easy to pull drivers from linux > + easy to debug > + on crash - system continue work > + more secure - driver limited to process memory > - probably a bit slower > > > If add some kernel module that will export all pci devices and > allow to mmap() pci device memory to user space and somehow proxy > IRQ (like events to poll()/kqueue()), IO ports and registers then > webcamd will can work with this like it now works with USB devices, > and fbsd users can use latest DRM and some other drivers. > Also adding sysctl settings to webcamd devices will be very useful. > > Porting and updating drivers in user space webcamd easy then do same > in kernel. > Also all latest drivers will work on all actual FreeBSD versions. > > (resent from the right source address...) Hi When last I checked, NVidia's driver interfaced with the BIOS, power management, the x86 global descriptor table, and all kinds of other low level hardware systems. Other graphics cards are probably similar. It will take much more than just user-space PCI, to be able to run their drivers in user space. And if we do somehow get all-user-space graphics card drivers working, then why would we want the Linux drivers? The Windows graphics stack is a lot more actively developed. Wine and NDISulator both work with Windows drivers, to some degree. Mac drivers might also be worth a look.