Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Feb 2017 11:49:24 -0800
From:      John Baldwin <jhb@freebsd.org>
To:        Sean Bruno <sbruno@freebsd.org>
Cc:        freebsd-arch@freebsd.org, Warner Losh <imp@bsdimp.com>
Subject:   Re: Thinning out GENERIC
Message-ID:  <1907688.dXvDEfTesD@ralph.baldwin.cx>
In-Reply-To: <bf4931ec-2c05-2b90-8bc6-affac684bd23@freebsd.org>
References:  <34e4e9bd-c7a8-e3e2-4cef-98a691ea7944@freebsd.org> <2553875.ilSvFZYQZ6@ralph.baldwin.cx> <bf4931ec-2c05-2b90-8bc6-affac684bd23@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, February 17, 2017 11:43:45 AM Sean Bruno wrote:
> 
> On 02/13/17 11:33, John Baldwin wrote:
> > On Monday, February 13, 2017 10:51:36 AM Warner Losh wrote:
> >> [[ It isn't just GENERIC, it's in every single kernel ]]
> >>
> >> On Sun, Feb 12, 2017 at 7:59 AM, Sean Bruno <sbruno@freebsd.org> wrote:
> >>> Index: sys/conf/files
> >>> ===================================================================
> >>> --- sys/conf/files      (revision 313683)
> >>> +++ sys/conf/files      (working copy)
> >>> @@ -2419,7 +2419,7 @@
> >>>  dev/pci/pci_user.c             optional pci
> >>>  dev/pci/pcib_if.m              standard
> >>>  dev/pci/pcib_support.c         standard
> >>> -dev/pci/vga_pci.c              optional pci
> >>> +#dev/pci/vga_pci.c             optional pci
> >>>  dev/pcn/if_pcn.c               optional pcn pci
> >>>  dev/pdq/if_fea.c               optional fea eisa
> >>>  dev/pdq/if_fpa.c               optional fpa pci
> >>>
> >>> I'm playing around with small x86 builds and wanted to come up with a
> >>> knob that disables the vga_pci driver.  Obviously I still want pci(4) to
> >>> be enabled, but I definitely do not need the vga interfaces for
> >>> anything.  Any suggestions?
> >>
> >> You could make it dependent on vt or sc as well as pci, no?
> > 
> > This is a fairly small driver:
> > 
> >      6139      340         8      6487     0x1957   /usr/obj/usr/src/sys/GENERIC
> > /vga_pci.o
> > 
> > (From an 11.0-stable build)
> > 
> > device ppc and friends is a lot more for example:
> > 
> >   text   data   bss    dec      hex   filename
> >   6238      0     0   6238   0x185e   /usr/obj/usr/src/sys/GENERIC/ppb_1284.o
> >   1675     28     0   1703    0x6a7   /usr/obj/usr/src/sys/GENERIC/ppb_base.o
> >   2042      0     0   2042    0x7fa   /usr/obj/usr/src/sys/GENERIC/ppb_msq.o
> >   6025    296     8   6329   0x18b9   /usr/obj/usr/src/sys/GENERIC/ppbconf.o
> >      0    168     0    168     0xa8   /usr/obj/usr/src/sys/GENERIC/ppbus_if.o
> >   9099     36     0   9135   0x23af   /usr/obj/usr/src/sys/GENERIC/ppc.o
> >    495    256     0    751    0x2ef   /usr/obj/usr/src/sys/GENERIC/ppc_acpi.o
> >   1671    256     0   1927    0x787   /usr/obj/usr/src/sys/GENERIC/ppc_isa.o
> >   1124    208     0   1332    0x534   /usr/obj/usr/src/sys/GENERIC/ppc_pci.o
> >    451    208     0    659    0x293   /usr/obj/usr/src/sys/GENERIC/ppc_puc.o
> >   2751    428     8   3187    0xc73   /usr/obj/usr/src/sys/GENERIC/ppi.o
> > 
> > It is needed for drm.
> > 
> 
> Ok, so ... make it dependant on drm, vt, sc and pci?

You can kldload drm at runtime, so a static dependency isn't sufficient.
It's not clear why removing this from GENERIC is that important.  ppc is on far
fewer machines than vga_pci and takes up 10x more space.

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1907688.dXvDEfTesD>