Received: by 2002:a25:d7c1:0:0:0:0:0 with SMTP id o184csp3517765ybg; Mon, 28 Oct 2019 14:12:51 -0700 (PDT) X-Google-Smtp-Source: APXvYqy5om74FWcmItU9pltrco7XZqO/wg/f6J3qukv9as5jd96A5KDZXRpMNQ6N4PRsUs10NVU9 X-Received: by 2002:a50:98c6:: with SMTP id j64mr21964958edb.295.1572297171436; Mon, 28 Oct 2019 14:12:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1572297171; cv=none; d=google.com; s=arc-20160816; b=sZ6pecKFSEg5OCEIcbXI8le8deItpPdE3psBRhAIPesgSswFs8utk5hhdGCzJkuqWM DIbJcm5LJJYu9kN868PKmkoKtlClE1FcwpExCg4+w5zZDoeDOcadP7bhHdLH5bog4UfN 9rcgFA1gvviGDvuQAJ50aOKG0OCKyf+bwnDdIzGGgJABChRnNHS5yjDAqOekaAFvrHjc k1H2KF0wGXnl9Z65iqI2U12YcWUQ3jmoW2Iom35iB4FI8JVJfZPfN/lGDKVnu/z8Ovu9 opbYWUMOzTI9EmwVgAm16TzqsyNGZrJNTryxiHQ4khMSPDBLvprLwHKCx6a2gh+Szcdn P19g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-disposition :content-transfer-encoding:user-agent:in-reply-to:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=mJ9KzaFwM1RWaOAJlcioiXkMO8pxcCUgcIBsHAiwcZc=; b=D/u/Iw1ZlvC9EMEmYYdj3ief7MuBHLJLdBIF9SV1+BNPQfsBrwO/KPoRNfGAyY9HdC jgupF/7FhPvJEEcucZXO6i7dcyEaBrHXgpzalnvcN7dqJvobAzRkbOxh2oNe64PxXTNm TQ6Y12aLjHiuvkbeo35bhwJkK0CargeLlFYheE3qR10gt4ObiEkJ1dUtGzZYzPi3X57I ImlCBPxI6Do55slEWZ6TIGGpAat6SckoQRWfM6Q2NpQoz9m7UGLRe0n0c+wCgGeBXo4p EBzG3rg4b6+jFjrmCMrwECIRiHOoj9jvitaGjwbvCIY5j5gjNkqkcGZ2O5OA3NxcDRJ+ XKpw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=jFXreMRs; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j52si7488220eda.438.2019.10.28.14.12.28; Mon, 28 Oct 2019 14:12:51 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=jFXreMRs; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389149AbfJ1Pjk (ORCPT + 99 others); Mon, 28 Oct 2019 11:39:40 -0400 Received: from us-smtp-2.mimecast.com ([207.211.31.81]:42287 "EHLO us-smtp-delivery-1.mimecast.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726025AbfJ1Pjk (ORCPT ); Mon, 28 Oct 2019 11:39:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1572277179; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=mJ9KzaFwM1RWaOAJlcioiXkMO8pxcCUgcIBsHAiwcZc=; b=jFXreMRsQUhQSBBWSASM8M9RfrBdx6CatOV9H+Dfk+c668S5auqaYO2GGI4vshH03YOjU2 ltxQFQoJdOqcnv08SdDVEQvBa2phsvMR+f/rqHVt6HGowkFcT/tkVDJlN7yMqTRf/czP5b Le4AltD1nM1NEMsLW5dKbHiRKSHvn0o= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-241-GZsLWB73O7-6f6W8FffYNw-1; Mon, 28 Oct 2019 11:39:35 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id A1C231005509; Mon, 28 Oct 2019 15:39:33 +0000 (UTC) Received: from krava (unknown [10.43.17.61]) by smtp.corp.redhat.com (Postfix) with SMTP id 3C721600C9; Mon, 28 Oct 2019 15:39:31 +0000 (UTC) Date: Mon, 28 Oct 2019 16:39:30 +0100 From: Jiri Olsa To: Adrian Hunter Cc: Peter Zijlstra , Ingo Molnar , Borislav Petkov , "H . Peter Anvin" , x86@kernel.org, Mark Rutland , Alexander Shishkin , Mathieu Poirier , Leo Yan , Arnaldo Carvalho de Melo , linux-kernel@vger.kernel.org Subject: Re: [PATCH RFC 2/6] perf dso: Refactor dso_cache__read() Message-ID: <20191028153930.GA15449@krava> References: <20191025130000.13032-1-adrian.hunter@intel.com> <20191025130000.13032-3-adrian.hunter@intel.com> MIME-Version: 1.0 In-Reply-To: <20191025130000.13032-3-adrian.hunter@intel.com> User-Agent: Mutt/1.12.1 (2019-06-15) X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-MC-Unique: GZsLWB73O7-6f6W8FffYNw-1 X-Mimecast-Spam-Score: 0 Content-Type: text/plain; charset=WINDOWS-1252 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Oct 25, 2019 at 03:59:56PM +0300, Adrian Hunter wrote: SNIP > +} > =20 > -=09return ret; > +static struct dso_cache *dso_cache__find(struct dso *dso, > +=09=09=09=09=09 struct machine *machine, > +=09=09=09=09=09 u64 offset, > +=09=09=09=09=09 ssize_t *ret) > +{ > +=09struct dso_cache *cache =3D __dso_cache__find(dso, offset); > + > +=09return cache ? cache : dso_cache__populate(dso, machine, offset, ret)= ; > } > =20 > static ssize_t dso_cache_read(struct dso *dso, struct machine *machine, > =09=09=09 u64 offset, u8 *data, ssize_t size) > { > =09struct dso_cache *cache; > +=09ssize_t ret =3D 0; > =20 > -=09cache =3D dso_cache__find(dso, offset); > -=09if (cache) > -=09=09return dso_cache__memcpy(cache, offset, data, size); > -=09else > -=09=09return dso_cache__read(dso, machine, offset, data, size); > +=09cache =3D dso_cache__find(dso, machine, offset, &ret); > +=09if (!cache) > +=09=09return ret; why not use the ERR_* macros to get error through the pointer instead of adding extra argument? jirka > + > +=09return dso_cache__memcpy(cache, offset, data, size); > } > =20 > /* > --=20 > 2.17.1 >=20