Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp4038263ybz; Mon, 20 Apr 2020 14:23:46 -0700 (PDT) X-Google-Smtp-Source: APiQypItEuYVwKLBz/i+/Sg2P8p4ly9iTtWDTxIK3h5yBvq7t8UjaXozb16xFO2DneQ6KerMTQiA X-Received: by 2002:a17:906:c839:: with SMTP id dd25mr17656223ejb.164.1587417826021; Mon, 20 Apr 2020 14:23:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587417826; cv=none; d=google.com; s=arc-20160816; b=eqxNar4sIOi8QPr4QA2xHT+FZYpM0amEsuj1EXz6lFOtFpqPZs9M/D2pbgN5aKIZIU SOVTIzlGgf/cPBSohrIbUZ0Xm2xaWEdvSJ/+bDatV7q69Um6YJzzNfkF8nudDnZ5DAU4 cTvdY3kjb+lLH2KkzJrucvb4z7Fo2tvJxex+Wsq/+PRhpMOsUsCTWkA4nHUgRtZs1Jnf Jo1JDjqeOuDeQw3Vy/gMqzvk6BMQphn7TKZ9sCBJPvImKvtqA35Z6YtsQ8rn1l6WBSyV GsFwLtuzo8lWVFdD03saxt4CQUblhC5JDt2V7/SHU9CcAGJjZLJbGnScEoedNJVh4iLc Gmrg== 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; bh=8LZAcVu3JkMTifgi7PJGc8MQmr5SkwXdw64M/0sNaJk=; b=e8GPWqCCJo0hLOddNLMl43bbAUjoMZ+Mi25d3izCiEMhkS5pSzC8MOemHx7nxoWFLK OhiVKRsdfHB9lVWYzW6Cog9SLpjlhYvVVMhog/rjP9UteZxzMH8bs5oLIJ3a2Uiy/Mt3 rEf30PE2P5t1jMlyl65s9AhwOKpRdCDGtwJK/WUb99JmGADXFlIZOMf1xcKQiPycf6ko 4mfTRqP/bqwZ/NF8cqLloIjjqBZYJm1N44ib/YKtFNYTL+8J2FDennRfjU8hmllFJ8Wp kw+xnTSTOjGYceANTwABUWuOmn5knXIRiWYW2kZ9u5ulda06kmQiOfT/Pi6FzHcnr27T TY8w== ARC-Authentication-Results: i=1; mx.google.com; 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 w26si290495ejs.63.2020.04.20.14.23.23; Mon, 20 Apr 2020 14:23:46 -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; 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 S1728150AbgDTVVk (ORCPT + 99 others); Mon, 20 Apr 2020 17:21:40 -0400 Received: from mout.kundenserver.de ([217.72.192.73]:50713 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726532AbgDTVVk (ORCPT ); Mon, 20 Apr 2020 17:21:40 -0400 Received: from mail-qk1-f175.google.com ([209.85.222.175]) by mrelayeu.kundenserver.de (mreue106 [212.227.15.145]) with ESMTPSA (Nemesis) id 1M8QBa-1jME0w0w8u-004WBT; Mon, 20 Apr 2020 23:21:38 +0200 Received: by mail-qk1-f175.google.com with SMTP id s63so12424977qke.4; Mon, 20 Apr 2020 14:21:37 -0700 (PDT) X-Gm-Message-State: AGi0Puapn3pzsSjFq8EOH0000TaDlRf81+g4XIcKDgtDuqTCpi7K4m/K O1u18aqNmoBTklQJR9zSWuKlKkTig7VMIuuL5QA= X-Received: by 2002:a37:9d08:: with SMTP id g8mr18060484qke.138.1587417696998; Mon, 20 Apr 2020 14:21:36 -0700 (PDT) MIME-Version: 1.0 References: <20200416085627.1882-1-clay@daemons.net> <6fef3a00-6c18-b775-d1b4-dfd692261bd3@ti.com> <20200420093610.GA28162@arctic-shiba-lx> <20200420170051.GB11862@localhost> <20200420211819.GA16930@localhost> In-Reply-To: <20200420211819.GA16930@localhost> From: Arnd Bergmann Date: Mon, 20 Apr 2020 23:21:20 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH] net: cpts: Condition WARN_ON on PTP_1588_CLOCK To: Richard Cochran Cc: Clay McClure , Grygorii Strashko , "David S. Miller" , Sekhar Nori , Networking , "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset="UTF-8" X-Provags-ID: V03:K1:VuckYJQW3oH7FVW16mR1NS4ocgKR0A04GbOmCFnjBog9jsI1GHM 1jm5mdU76kGOxyQI8dokpWr0qL++f6aZJt7DXC39XxhreKox9UfzWlCL1Nrr6jphAWSDmH0 +3o7OPQ/TJcfn0Tn9+aTI0EkPnW38ZY6UUOXEYLVoXwJkfy+oTYWFlAX6iyH0dkH7SzPYzu etrVZlimMtoqzhMSshQeg== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:xZlgQyBcYEU=:X4MCE7AFb4Bn46kKMxTKfc Cl7MQlR3Zdxcoun90U7N45+vbS1IikNf6BMmDD0aeqoHUxl31PSbvBdkjPxA0e62DdTH3ysc4 Dh68ouTgFVjC+yDBRqeczax9NGUK8movbgVrR7hGPIkMaOcPrQuyYDjM0L1oATmv5O3sNs9Fl wKXspeZFHE3oiEnmXwQSFXkKnrIWLjTzPW3Ak1MVVVIix8iZtTDuqbq5tvYwKqeEyAdgCr5V0 f31RsE45x1o4ssxU9ciYwkmLpAi/vlcLZPH8a3d+vNoJaHcdQdfS4Ax3jmnGinr/vApxLaYdb h+BE44BpP0HIBgFvl6Voks61quX1acxg9GDs1RbClm0aoQRpCCzp8uEUW6qAvhPsoBDkrnyDj IXGrm3cb8R80Fl4TzwH0ompYko8Nqd1oHU+ByA8ODQRge/tSa2nqQE3aw71QhH+c4SGSLb44L F0CRBt9fD6F76ZrhQAJWjnBwKRY/REjlI4aQZ5Nr3dZuqFVwX38i1s6OnWlVBj8DOrLMpzijf dbKA/ung3nhiVUT9j/2ZrTWRbzwBkE9S96E9n178IJJ+BUiwJOHrcWdOvwag5w4dPynLtbU6/ Y9s/ltogSvrAU6+6pYjdSHS1bgpqqogrjz1XmkcRcpTV1EYV9aVB0TJge0kOXGSJNcKPUn6e7 wH7lc/NSDA7/4gquCqJ4hjdtR3umsQ+OmrDG6iR2D3oeJMIidxzLNlsMJ3SBeNbZAD749bXle EBxijgnWUgJfWA+95k8OWhyyws2QGbsuY5dqaDAw2N4pY2ARKiqAGQpXGk8J6KldStQxuUaJr igRLY7sV5wqZe3nvI/9wpJ6vWSu/Zfx6JHh7dZkZ/XATSuGnNg= Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Apr 20, 2020 at 11:18 PM Richard Cochran wrote: > On Mon, Apr 20, 2020 at 08:57:05PM +0200, Arnd Bergmann wrote: > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 172) #if IS_REACHABLE(CONFIG_PTP_1588_CLOCK) > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 173) > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 174) /** > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 175) * ptp_clock_register() - register a PTP hardware clock driver > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 176) * > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 177) * @info: Structure describing the new clock. > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 178) * @parent: Pointer to the parent device of the new clock. > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 179) * > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 180) * Returns a valid pointer on success or PTR_ERR on failure. If PHC > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 181) * support is missing at the configuration level, this function > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 182) * returns NULL, and drivers are expected to gracefully handle that > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 183) * case separately. > > > d1cbfd771ce82 (Nicolas Pitre 2016-11-11 184) */ > > > > The key here is "gracefully". The second patch from Clay just turns NULL into > > -EOPNOTSUPP and treats the compile-time condition into a runtime error. > > You are talking about the cpts driver, no? > > I'm worried about ptp_clock_register(), because it does return NULL if > IS_REACHABLE(CONFIG_PTP_1588_CLOCK), and this is the "correct" > behavior ever since November 2016. > > If somebody wants to change that stub to return EOPNOTSUPP, then fine, > but please have them audit the callers and submit a patch series. It's not great, but we have other interfaces like this that can return NULL for success when the subsystem is disabled. The problem is when there is a mismatch between the caller treating NULL as failure when it is meant to be "successful lack of object returned". Arnd