From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 882F1C10F13 for ; Tue, 16 Apr 2019 13:31:42 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 5F29F20821 for ; Tue, 16 Apr 2019 13:31:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727902AbfDPNbl (ORCPT ); Tue, 16 Apr 2019 09:31:41 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:46430 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1725796AbfDPNbl (ORCPT ); Tue, 16 Apr 2019 09:31:41 -0400 Received: from pps.filterd (m0098421.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x3GDP9Jw117409 for ; Tue, 16 Apr 2019 09:31:39 -0400 Received: from e06smtp01.uk.ibm.com (e06smtp01.uk.ibm.com [195.75.94.97]) by mx0a-001b2d01.pphosted.com with ESMTP id 2rweue3h3u-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 16 Apr 2019 09:31:39 -0400 Received: from localhost by e06smtp01.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 16 Apr 2019 14:31:37 +0100 Received: from b06cxnps4074.portsmouth.uk.ibm.com (9.149.109.196) by e06smtp01.uk.ibm.com (192.168.101.131) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Tue, 16 Apr 2019 14:31:34 +0100 Received: from d06av22.portsmouth.uk.ibm.com (d06av22.portsmouth.uk.ibm.com [9.149.105.58]) by b06cxnps4074.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id x3GDVWkn23855184 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 16 Apr 2019 13:31:32 GMT Received: from d06av22.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 9CAF84C058; Tue, 16 Apr 2019 13:31:32 +0000 (GMT) Received: from d06av22.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 347684C040; Tue, 16 Apr 2019 13:31:32 +0000 (GMT) Received: from oc2783563651 (unknown [9.152.224.66]) by d06av22.portsmouth.uk.ibm.com (Postfix) with ESMTP; Tue, 16 Apr 2019 13:31:32 +0000 (GMT) Date: Tue, 16 Apr 2019 15:31:30 +0200 From: Halil Pasic To: Sebastian Ott Cc: kvm@vger.kernel.org, linux-s390@vger.kernel.org, Cornelia Huck , Martin Schwidefsky , virtualization@lists.linux-foundation.org, Christian Borntraeger , Viktor Mihajlovski , Vasily Gorbik , Janosch Frank , Claudio Imbrenda , Farhan Ali , Eric Farman Subject: Re: [RFC PATCH 04/12] s390/cio: introduce cio DMA pool In-Reply-To: References: <20190404231622.52531-1-pasic@linux.ibm.com> <20190404231622.52531-5-pasic@linux.ibm.com> <20190412132010.3c74cb63@oc2783563651> <20190412173017.04b768bb@oc2783563651> Organization: IBM X-Mailer: Claws Mail 3.11.1 (GTK+ 2.24.31; x86_64-redhat-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-TM-AS-GCONF: 00 x-cbid: 19041613-4275-0000-0000-0000032874DF X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 19041613-4276-0000-0000-00003837A5D8 Message-Id: <20190416153130.2b430744@oc2783563651> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2019-04-16_05:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1904160091 Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org On Tue, 16 Apr 2019 14:50:14 +0200 (CEST) Sebastian Ott wrote: > On Fri, 12 Apr 2019, Halil Pasic wrote: > > On Fri, 12 Apr 2019 14:12:31 +0200 (CEST) > > Sebastian Ott wrote: > > > On Fri, 12 Apr 2019, Halil Pasic wrote: > > > > On Thu, 11 Apr 2019 20:25:01 +0200 (CEST) > > > > Sebastian Ott wrote: > > > > > I don't think we should use this global DMA pool. I guess it's OK for > > > > > stuff like airq (where we don't have a struct device at hand) but for > > > > > CCW we should use the device we have. Yes, this way we waste some memory > > > > > but all dma memory a device uses should fit in a page - so the wastage > > > > > is not too much. > > > > Regarding the wastage. Let us do the math together in search for an > > upper (wastage) limit. > [...] > > Currently we need at least 224 bytes per device that is ~ 6% > > of a PAGE_SIZE. > > Yes, we basically waste the whole page. I'm ok with that if the benefit is > to play nice with the kernel APIs. > > > > For practical > > > matters: DMA debugging will complain about misuse of a specific device or > > > driver. > > > > > > > Do you mean CONFIG_DMA_API_DEBUG and CONFIG_DMA_API_DEBUG_SG? I've been > > running with those and did not see any complaints. Maybe we should > > clarify this one offline... > > I didn't mean to imply that there are bugs already - just that when used > as intended the DMA_DEBUG_API can complain about stuff like "your device > is gone but you have still DMA memory set up for it" which will not work > if you don't use the correct device... > Right. In fact the 'real' allocations happen using gen_pool, and the pool never shrinks. IMHO as so often in software engineering we have a trade-off here. I'm still not convinced I traded badly here, but I will take the request of yours to tie the dma allocations to a more the device requiring the dma as a maintainers request, and accommodate it in v1. Are you fine with having a similar gen_pool backed with dma_pages on a per struct io_subchannel_private basis? Based on our offline chat I think you are, but but better safe than sorry. Regards, Halil