Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp2722192yba; Sun, 28 Apr 2019 07:34:55 -0700 (PDT) X-Google-Smtp-Source: APXvYqzOYuD1+kzTJZQO36BsE56WQEzYMJ3pkGrJqp2v639sXgIU2daC2M0OWDDuNcMWKZpyeiL3 X-Received: by 2002:a17:902:70c6:: with SMTP id l6mr55465627plt.95.1556462095115; Sun, 28 Apr 2019 07:34:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1556462095; cv=none; d=google.com; s=arc-20160816; b=C0eoYbRDAnuLEhmDWEL4hpIpCjKzqxKXZijrvxVSfbbjwhFk20FuT9FzvGSzYsheii 7gHpcgCbAVYB+bAG3qQz5D+gEV+L5SEqHfwst9+23lF/GtyM3PjAX/xumDlJLVNKfMMI udonrE1iEHYA/m1WFKowFUegSV1/rjTI62wDi0XfMhK9lg5uWgzlt3qS+2PBzz28MVd+ 6SAxEQx83g2kmnfvbqQpOTIwJo7P3uRJDWq1D3PuaG+509xINlGRh8yoHFbFvI09ytOJ CvySSF0VcWI05g4G+Yx60/z/idkGO2NfvSZt7J6iZm25kFhKD54MZtBbk1Rw99bIMVuq PNpA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=w+QLN0lhWS0TTAMCusecl/8H1fccZ10EVVpd07BbNgc=; b=pBVrY4uzEHyAV348QU1sSFgrropJ+poo2uT7p7OjnI7tq8hrDwdmj31U13AajiZbJn nTa+AIherB13yqhxt3B/tzmOlYjQb1N5FEnbcXWLOWeCyZSnK0MfmxMR5Fi0IE2s+Cxk N6ZtDD3u9hj7Vwp9/1hPHCTtoxFJFRxJaezV9K5cyinxAMk/VIps7ytvk4pqjvDhYebu jMjWl+OvTxL2+hJ0JOJcOX4BABKorsH/GFL+EVpHjIRG0P6MSKbk65+TdPxUGFa542Z+ WyuYetgZwA28qBKemzrlnZ5b45Rc+P2PQDuKoU6kiGLUlq5iX+q0mSSq50sJtNQdwQUv d3vw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=P5Jkzhto; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id bb8si14540113plb.388.2019.04.28.07.34.38; Sun, 28 Apr 2019 07:34:55 -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=@gmail.com header.s=20161025 header.b=P5Jkzhto; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726769AbfD1Ocb (ORCPT + 99 others); Sun, 28 Apr 2019 10:32:31 -0400 Received: from mail-oi1-f193.google.com ([209.85.167.193]:40410 "EHLO mail-oi1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726692AbfD1Ocb (ORCPT ); Sun, 28 Apr 2019 10:32:31 -0400 Received: by mail-oi1-f193.google.com with SMTP id y64so917009oia.7 for ; Sun, 28 Apr 2019 07:32:31 -0700 (PDT) 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:to :cc; bh=w+QLN0lhWS0TTAMCusecl/8H1fccZ10EVVpd07BbNgc=; b=P5JkzhtowAoVzgf4mWexhRA/N0+kMAM2EpslYR/Sy9HgyShJdJEFuFkueoKwLz1rwM fj1FiZaJqAxwqKUFdOs5onU5l/ICPOrRdoonoVU0ipUXJQ/mHi+86S67QZWqCoM63RrU bm+JRV/xaMmSIDTjdp4bEDBcGN1lAmstSPfcwCbkK+UNwxAHK3ZFRHpv+bKmBqUEp5hL au6WraHET8uU89ZzNXbmzmZ/U65oQbA6DiBmNTAHQZN85fwNNF1yQvyK9tHcxtYPzX5M kL1pdaAuJYJ2LjbfeEedv7ppykTPJ2fhJL0VvyRrfj7NQi4ADGjcvEDqjY0eM4bi16Mw 3Vew== 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:to:cc; bh=w+QLN0lhWS0TTAMCusecl/8H1fccZ10EVVpd07BbNgc=; b=uEEdP6j4zdeUomFe5Qf1tXrGhveJqzVSRnhqINsZ9OSeVz5mFSsYSRLgnw29WTHYt1 +zasZ9DnE22A1Z1Fex3AaCcNxeEX/JcvSnxLdfGfJ9pTB8+N9mxY5If7CH6n9AyY1JTX VGZec+00Ld3hEMXAGxVXBS0Rcw6MM37/N5frExwXFtMahQEJRVzvPws7Q1YtezfWXKhc q0xKir2xgtsASApzPeqZ23hfcqm2WlQd1JRxckfJolD2voePKZiPmiUfE998aKr9IE+t k9osiXPMB7ysy47F/7RV8C2NCnxJufyoFjnUdJVXc8R6Mc1QyWNWY6SF2PURAJ8hOTnk Pfqw== X-Gm-Message-State: APjAAAUyKAESfauzomU6avR9MzhVFWtcvch6EgHYddI5N+/HiA0hC4mA KQBP1Pa0On6oy6QmWVdbYuG2deTX42AVOjhPzz8= X-Received: by 2002:aca:ecc8:: with SMTP id k191mr12544298oih.103.1556461950564; Sun, 28 Apr 2019 07:32:30 -0700 (PDT) MIME-Version: 1.0 References: <1556418804-10266-1-git-send-email-hofrat@osadl.org> <1556418804-10266-2-git-send-email-hofrat@osadl.org> In-Reply-To: <1556418804-10266-2-git-send-email-hofrat@osadl.org> From: Sven Van Asbroeck Date: Sun, 28 Apr 2019 10:32:19 -0400 Message-ID: Subject: Re: [PATCH] staging: fieldbus: anybus-s: force endiannes annotation To: Nicholas Mc Guire Cc: Greg Kroah-Hartman , devel@driverdev.osuosl.org, Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Thanks for the contibution! See inline. On Sat, Apr 27, 2019 at 10:39 PM Nicholas Mc Guire wrote: > > While the endiannes is being handled correctly sparse was unhappy with > the missing annotation as be16_to_cpu() expects a __be16. Your commit message has room for improvement here. See my remarks on your other patch: https://lkml.org/lkml/2019/4/28/95 > > Signed-off-by: Nicholas Mc Guire > --- > > Problem reported by sparse > > As far as I understand sparse here the __force is actually the only > solution possible to inform sparse that the endiannes handling is ok > > Patch was compile-tested with. x86_64_defconfig + FIELDBUS_DEV=m, > HMS_ANYBUSS_BUS=m > > Patch is against 5.1-rc6 (localversion-next is next-20190426) > > drivers/staging/fieldbus/anybuss/host.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/staging/fieldbus/anybuss/host.c b/drivers/staging/fieldbus/anybuss/host.c > index 6227daf..278acac 100644 > --- a/drivers/staging/fieldbus/anybuss/host.c > +++ b/drivers/staging/fieldbus/anybuss/host.c > @@ -1348,7 +1348,7 @@ anybuss_host_common_probe(struct device *dev, > add_device_randomness(&val, 4); > regmap_bulk_read(cd->regmap, REG_FIELDBUS_TYPE, &fieldbus_type, > sizeof(fieldbus_type)); > - fieldbus_type = be16_to_cpu(fieldbus_type); > + fieldbus_type = be16_to_cpu((__force __be16)fieldbus_type); Hmm... that would be cheating :) what if you create a new local variable of type __be16? Like so: __be16 fieldbus_type_be; <...> regmap_bulk_read(cd->regmap, REG_FIELDBUS_TYPE, &fieldbus_type_be, sizeof(fieldbus_type_be)); fieldbus_type = be16_to_cpu(fieldbus_type_be); would that get sparse to shut up? > dev_info(dev, "Fieldbus type: %04X", fieldbus_type); > regmap_bulk_read(cd->regmap, REG_MODULE_SW_V, val, 2); > dev_info(dev, "Module SW version: %02X%02X", > -- > 2.1.4 >