Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp3451870imm; Sun, 10 Jun 2018 17:07:15 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKSp3MvTygM6uCRSHgMU1WhNskU9/+FwIW6oHMvxZsUclTgNZc8pxvHSwsNqjIhK6sKULjT X-Received: by 2002:a17:902:8602:: with SMTP id f2-v6mr16157413plo.5.1528675635457; Sun, 10 Jun 2018 17:07:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1528675635; cv=none; d=google.com; s=arc-20160816; b=SGjTpRudEoRjNwDWIBPosANVJsM/xcx4qVnE5HxHGEDxS5rkZRTLwx8vqUNWqXXzoL 7Lyc6nBdPzKZH4WZ3aXbeH81O9JtUvdD+yfdEZ/kbMc53chqxEsn7INhVUUflpbvIHUb VbesNSU1UouJfHWY2fxFizwhww4mlNQasCQaRT/gxXnl+trEkK3JGnH33yEpkFgRKEwR Yg03l2MBAg5nxOJ8TLUmjV37lVCOJDIUUKyKrqkIuR16Gi2YfQ/ijJO3c9k2Zwc3TEu8 F52AWUznqKPFV+1PmESrc2tnvafKVn9gp2OrQUB4GvCwqAoIEIbDDBRaX4JzFhtr6d3z tzXg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:date:cc:to:from:subject:message-id :arc-authentication-results; bh=FiR6t0DcBb2lXOwnScfejPoLV5iUJKIWxSNxFATEsKI=; b=1KYvXyAYxfVHc4yCF487zqKU4so9SxJlEpevrRiu8QHonwSl5Uy17Goyvj5x+gnD6x XTxySCK/+9b03IVN5kU9bXbEPuBwp+i/6dr8vgrU+kZJ0+EV16NzO4y3F45nE3Mz2yB/ Nm65SuOZ3KQR7fJ9zU3xE0dIwohE+81SLFntGRHRlRsKDQhUej1lctxDHeMoZF85x16C 0XQWJf7FI0pPeidSWHlW7U29tb0MGNdeIzfboW7FGAN0mGDc+iR3+QfnDONxgeORO3EV /W1Cex4OJVkmm1HSqQMCXwme31m4loyckREOJK7x+3fH3idA/wFVTx4miqrEi7jjWiwV J8dA== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n22-v6si6034119pff.370.2018.06.10.17.07.01; Sun, 10 Jun 2018 17:07:15 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753771AbeFKAFu (ORCPT + 99 others); Sun, 10 Jun 2018 20:05:50 -0400 Received: from gate.crashing.org ([63.228.1.57]:39366 "EHLO gate.crashing.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753543AbeFKAFs (ORCPT ); Sun, 10 Jun 2018 20:05:48 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by gate.crashing.org (8.14.1/8.14.1) with ESMTP id w5B05NhN007274; Sun, 10 Jun 2018 19:05:25 -0500 Message-ID: <22a505e0f094352b9cb883935fae9f494fb2cb0b.camel@kernel.crashing.org> Subject: Re: [PATCH v2 08/12] macintosh/via-pmu68k: Don't load driver on unsupported hardware From: Benjamin Herrenschmidt To: Michael Schmitz , Geert Uytterhoeven , Finn Thain Cc: Andreas Schwab , linuxppc-dev , linux-m68k , Linux Kernel Mailing List Date: Mon, 11 Jun 2018 10:05:22 +1000 In-Reply-To: <3187b544-e265-dfd9-e0e3-e2a742c190d5@gmail.com> References: <9f015684-4d91-70e4-d2a4-89fe167ff8ab@gmail.com> <3187b544-e265-dfd9-e0e3-e2a742c190d5@gmail.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.28.1 (3.28.1-2.fc28) Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, 2018-06-10 at 21:12 +1200, Michael Schmitz wrote: > Hi Geert, Top posting, sorry ... We are painting that bike shed with way too many coats.. We can keep the existing definitions, stick a comment on them stating "obsolete" and use new number if/when needed. Ben. > Am 10.06.2018 um 20:29 schrieb Geert Uytterhoeven: > > Hi Finn, > > > > On Sat, Jun 9, 2018 at 2:20 PM Finn Thain wrote: > > > > > > Is this enum used by any user space code? If so, perhaps rather > > > > > > leave the PMU_68K_V1 in there to avoid upsetting that? > > > > > > > > > > It also changes the value of PMU_68K_V2, which is an ABI break. > > > > > > > > Yes, that's what I worry about - but do we know of any users of that > > > > particular interface? > > > > > > There is no ABI issue AFAIK. The value of pmu_kind is visible to userland > > > only on powerpc. /dev/pmu and /proc/pmu/* do not exist on m68k. This patch > > > series will make these UAPIs available on m68k, and for that reason I've > > > chosen the value PMU_UNKNOWN for pmu_kind. > > > > While /dev/pmu and /proc/pmu/* may not exist on m68k, definitions in > > include/uapi/linux/pmu.h are part of the ABI, and cannot be changed or removed, > > unless we are 100% sure there are no users. > > > > If I would write a program interfacing with /dev/pmu and /proc/pmu/*, and > > needing to check the PMU type, it would have a switch() statement with > > all existing values defined in . So that would become broken > > by your change. > > > > Hence the enum is append-only. > > The PMU type from pmu.h was never exposed to user space on m68k via > /proc/pmu/*, and /dev/pmu is used for ioctls to the PMU driver on > powerpc only (the 68k PMU driver doesn't have ioctl support). No way > that I can see for user space to make use of the PMU type definition > from pmu.h, so I suppose we can be sure there are no users. > > The m68k PMU types cannot be said to be exposed on powerpc either (which > has ioctl support to interrogate the PMU type), as these only return > values up to PMU_KEYLARGO_BASED. > > Applications like pbbuttonsd or pmud don't use the kernel PMU type at > all, but go straight to the PMU via the ADB bus to interrogate the > hardware type, so won't be affected either. > > Is there any other way besides procfs and ioctl for user space to > interrogate the PMU type that I'm missing here? > > (I understand that breaking the ABI should not be done as a rule, but > this may be a case where we can successfully argue the definitions were > never in use, so the rules may be bent a little).