lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 31 Mar 2015 13:04:24 +0200
From:	"Michael S. Tsirkin" <mst@...hat.com>
To:	Ingo Molnar <mingo@...nel.org>
Cc:	linux-kernel@...r.kernel.org, Thomas Gleixner <tglx@...utronix.de>,
	Ingo Molnar <mingo@...hat.com>,
	"H. Peter Anvin" <hpa@...or.com>, x86@...nel.org,
	Bjorn Helgaas <bhelgaas@...gle.com>,
	Borislav Petkov <bp@...en8.de>,
	James Bottomley <James.Bottomley@...senPartnership.com>
Subject: Re: [PATCH 05/86] x86/gart: use uapi/linux/pci_ids.h directly

On Tue, Mar 31, 2015 at 11:51:06AM +0200, Ingo Molnar wrote:
> 
> * Michael S. Tsirkin <mst@...hat.com> wrote:
> 
> > On Tue, Mar 31, 2015 at 10:34:45AM +0200, Ingo Molnar wrote:
> > > 
> > > * Michael S. Tsirkin <mst@...hat.com> wrote:
> > > 
> > > > On Mon, Mar 30, 2015 at 07:29:36AM +0200, Ingo Molnar wrote:
> > > > > 
> > > > > * Michael S. Tsirkin <mst@...hat.com> wrote:
> > > > > 
> > > > > > Header moved from linux/pci_ids.h to uapi/linux/pci_ids.h,
> > > > > > use the new header directly so we can drop
> > > > > > the wrapper in include/linux/pci_ids.h.
> > > > > > 
> > > > > > Signed-off-by: Michael S. Tsirkin <mst@...hat.com>
> > > > > > ---
> > > > > >  arch/x86/kernel/aperture_64.c | 2 +-
> > > > > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > > > > 
> > > > > > diff --git a/arch/x86/kernel/aperture_64.c b/arch/x86/kernel/aperture_64.c
> > > > > > index 76164e1..3b52a56 100644
> > > > > > --- a/arch/x86/kernel/aperture_64.c
> > > > > > +++ b/arch/x86/kernel/aperture_64.c
> > > > > > @@ -17,7 +17,7 @@
> > > > > >  #include <linux/init.h>
> > > > > >  #include <linux/memblock.h>
> > > > > >  #include <linux/mmzone.h>
> > > > > > -#include <linux/pci_ids.h>
> > > > > > +#include <uapi/linux/pci_ids.h>
> > > > > >  #include <linux/pci.h>
> > > > > >  #include <linux/bitops.h>
> > > > > >  #include <linux/suspend.h>
> > > > > > -- 
> > > > > > MST
> > > > > > 
> > > > > 
> > > > > NAK, it's absolutely ridiculous to send a 86 patches series for a 
> > > > > trivial change like this!
> > > > > 
> > > > > Just do the rename in a single patch and avoid the churn. Even if 
> > > > > there are conflicts, they are utmost trivial to fix up.
> > > > > 
> > > > > In fact the usual way to do such renames is to wait until the end of 
> > > > > -rc1, auto-generate it and send Linus the core patch with the trivial 
> > > > > renames straight away.
> > > > > 
> > > > > Thanks,
> > > > > 
> > > > > 	Ingo
> > > > 
> > > > 
> > > > Unfortunately, vger mailing lists reject any email with more than 2k of
> > > > email headers.  This means if I do what you suggest I can't Cc all
> > > > maintainers for all affected files. [...]
> > > 
> > > You can Cc: linux-arch and lkml for tree-wide changes.
> > > 
> > > Also, since it's mostly trivial, there shouldn't be much (if any) 
> > > controversy about it, right?
> > 
> > I thought so, too. However, I was just proven wrong and the patchset 
> > was nacked. [...]
> 
> Well, I only NAK-ed its high-churn presentation, not the essence of it 
> which looks good to me.

Thanks! Another concern voiced was whether it's better to include uapi
files using #include <uapi/linux/foo.h> or #include <linux/foo.h>.  Both
work - I thought #include <uapi/linux/foo.h> makes it easier to figure
out where the file is. James Bottomley (Cc'd) thought it's not worth the code
churn however, since if we ever add a file under linux/foo.h we'd need
to change users back.  He also noted that many headers are referenced
without the uapi/ prefix, if making the change, we'd have to change
them all.

OTOH if not, maybe we want to drop all '#include <uapi/linux/foo.h>'
converting them to '#include <linux/foo.h>' (and same for asm),
except where it's linux/foo.h pulling in uapi/linux/foo.h.
That, at least, would make it all consistent.



> > [...] Would relevant people notice it if it's just linux-arch? IIUC 
> > most people don't read lkml.  I guess Linus would notice and reject 
> > it.
> 
> Just keep it in a clean, separate topic branch and point it out in the 
> pull request - there's no reason to reject good changes, plus with 
> this structure:
> 
> > > > [...]  I could just Cc all mailing lists I guess, but I really 
> > > > wasn't sure about some parts of the change, deferring it until end 
> > > > of -rc1 wouldn't be appropriate in this case, would it?
> > > 
> > > So since 90% of the patches are just a trivial:
> > > 
> > >   -#include <linux/pci_ids.h>
> > >   +#include <uapi/linux/pci_ids.h>
> > > 
> > > you can auto-generate that simple rename and file movement into a 
> > > single commit, at the end of -rc1, without affecting anyone, via 
> > > something like:
> > > 
> > >   sed -i 's/linux\/pci_ids.h/uapi\/linux\/pci_ids.h/g' $(git grep -l linux/pci_ids.h)
> > >   git mv include/linux/pci_ids.h include/uapi/linux/pci_ids.h
> > >   git commit -a
> > > 
> > > (totally untested)
> > > 
> > > This should just work.
> > >
> > > Any other changes, as the removal of inclusions from files that 
> > > apparently don't need it, or cleanups like the changing of the guard 
> > > defines in pci_id.h, can be done on top of that - on a one patch per 
> > > change basis.
> > > 
> > > This should drastically remove the churn.
> 
> it's trivially correct.
> 
> I just tried the untested script above and it generates a commit and a 
> kernel that builds just fine.
> 
> So with that structure my high-churn complaint gets addressed and my 
> NAK turns into:
> 
>   Acked-by: Ingo Molnar <mingo@...nel.org>
> 
> Thanks,
> 
> 	Ingo


If people agree one of the two changes (always, or never, referencing
uapi files directly) is worthwhile, I'll follow the procedure
you have outlined above.
Thanks a lot for the suggestions!

-- 
MST
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ