From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757208AbdAIJCl (ORCPT ); Mon, 9 Jan 2017 04:02:41 -0500 Received: from mail-lf0-f67.google.com ([209.85.215.67]:35964 "EHLO mail-lf0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750704AbdAIJCg (ORCPT ); Mon, 9 Jan 2017 04:02:36 -0500 Subject: Re: [PATCH 12/15] hyperv: move VMBus connection ids to uapi To: hpa@zytor.com, Roman Kagan References: <20161221125920.GG15917@rkaganb.sw.ru> <20161221142654.GB8594@infradead.org> <20161221154348.GA31401@infradead.org> <20161221095049.6fdc3145@xeon-e3> <20161221175836.GA8846@infradead.org> <20161221100247.69a4049b@xeon-e3> <20161228170943.GB14702@rkaganb.sw.ru> <64526782-26fb-0012-f467-b6e5a1ab6357@redhat.com> <20170109083222.GB2128@rkaganb.sw.ru> Cc: KY Srinivasan , Stephen Hemminger , Christoph Hellwig , =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , Vitaly Kuznetsov , "kvm@vger.kernel.org" , "Denis V . Lunev" , Haiyang Zhang , "x86@kernel.org" , "linux-kernel@vger.kernel.org" , Ingo Molnar , "devel@linuxdriverproject.org" , Thomas Gleixner From: Paolo Bonzini Message-ID: <6d47ad66-27fb-7927-a92a-6f00dae9e51a@redhat.com> Date: Mon, 9 Jan 2017 10:02:52 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 09/01/2017 09:40, hpa@zytor.com wrote: > On January 9, 2017 12:32:23 AM PST, Roman Kagan wrote: >> On Mon, Jan 02, 2017 at 09:19:57AM +0100, Paolo Bonzini wrote: >>> On 28/12/2016 18:09, Roman Kagan wrote: >>>> Am I correct assuming that QEMU is currently the only user of >>>> arch/x86/include/uapi/asm/hyperv.h? >>>> >>>> Then I think we're fine withdrawing it from uapi as a whole and >> letting >>>> QEMU pull it in through its header-harvesting scripts (as does now >>>> anyway). This would lift all licensing and longterm API stability >>>> expectations. >>> >>> Actually, QEMU's header-harvesting scripts use uapi/ headers >>> exclusively, since they are built on "make headers_install". >>> >>> The extra cleanups that QEMU does on top are to allow compilation of >> the >>> headers on non-Linux machines. They don't really do much more than >>> changing Linux (linux/types.h) integer types to the C99 (stdint.h) >>> equivalents. >> >> Ouch, I stand corrected. >> >> So what should we do with it then? I'm sorta lost... >> >> We certainly can give it up and live with a private copy of the >> definitions in the QEMU tree but that doesn't sound optimal in any >> sense. > > Why do that through header mangling rather than typedef? Because you are not suppose to typedef identifiers that start with "__", and because it does do a few other ad-hoc changes: -e 's/]*\)>/"standard-headers\/linux\/\1"/' \ -e 's/__bitwise__//' \ -e 's/__attribute__((packed))/QEMU_PACKED/' \ -e 's/__inline__/inline/' \ -e '/sys\/ioctl.h/d' \ -e 's/SW_MAX/SW_MAX_/' \ Paolo