Thinning out GENERIC

Sean Bruno sbruno at freebsd.org
Fri Feb 17 19:54:35 UTC 2017



On 02/17/17 12:49, John Baldwin wrote:
> 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 at 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.
> 

I don't want to remove it from GENERIC.  I want to add the capability to
remove it.  Sorry if that wasn't clear from my subject line, because it
doesn't look clear now that I re-read it.

sean

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 618 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/freebsd-arch/attachments/20170217/5503753c/attachment.sig>


More information about the freebsd-arch mailing list