Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 07 Jun 2007 12:19:12 +0200
From:      "Julian H. Stacey" <jhs@berklix.org>
To:        freebsd-current@freebsd.org
Cc:        Abdullah Ibn Hamad Al-Marri <almarrie@gmail.com>
Subject:   Re: Why not remove polling(4) from 7.0? 
Message-ID:  <200706071019.l57AJCBS086357@fire.jhs.private>
In-Reply-To: <499c70c0706070210v39f7016hbd80e9780902e992@mail.gmail.com> 
References:  <499c70c0706070210v39f7016hbd80e9780902e992@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
"Abdullah Ibn Hamad Al-Marri" wrote:
> Hello Guys,
> 
> Almost all cases polling(4) adds additional latency.
> There are some cases that polling(4) helps a little but most cases it wouldn't.
> 
> So why not remove it or switch to adaptive polling as em(4) instead of
> resorting to polling?

I don't know the different polling strategies, but would caution
before potentially making it yet More difficult for old laptops.
	
	/boot/loader.conf hw.pcic.irq="0" is needed on 4.11-RELEASE
	on a laptop here else no pcmcia ethernet.

I know this isn't mobile@, but as topic raised here: I have 6 laptops:
  1 only, new, can run 6.2-RELEASE!
  1 (Digital HiNote Ultra2000) stuck on old 5.1+ -current I recall,  
  4 stuck on 4.11 (pcmcia ether &/or disc access problems)
FreeBSD-5 & 6 wont boot/install for various reasons, mostly pcmcia & disc.
Running current would be overly ambitious till I raised some of
those 4 boxes. Losing polling sounds possibly scarey ?

I append notes in case anyone has additional suggestions/corrections
for me to try (OK, I havent tried all this on all laptops, just most on one):
(by chance a Dell Latitude XPi P133ST - disc now works - pcmcia not seen.)
        beastie_disable="yes"
        boot_verbose="yes"
        verbose_loading="yes"
        debug.bootverbose=1
        hint.acpi.0.disabled="1"        # set to boot with acpi disabled. 
                Above is set by forth/beastie.4th:bootsafekey
        loader.acpi_disabled_by_user=1  # 
                Above is set by forth/beastie.4th:bootsafekey
        hint.apm.0.disabled="1"         # found on host=fire with kenv. 
        hint.apic.0.disabled="1"        # set to boot in safe mode 
                Above set by forth/beastie.4th:bootsafekey
        hw.ata.ata_dma=0                # ATA disk DMA mode control 
                needed by Dell Latitude XPi P133ST says
                Ian Freilich <if @ hetzner.co.za>, 07.10.2004
                Above referenced by forth/beastie.4th:bootsafekey
        hw.ata.atapi_dma=0              # ATAPI device DMA mode control 
                Above referenced by forth/beastie.4th:bootsafekey
        hw.ata.wc=0                     # ATA disk write caching 
                Above referenced by forth/beastie.4th:bootsafekey
        hw.eisa_slots=0                 # 
                Above referenced by forth/beastie.4th:bootsafekey
        hint.kbdmux.0.disabled=1
                Above is referenced by forth/beastie.4th:bootsafekey
        hw.pci.enable_io_modes=0        # use if boot hangs after agp
        hw.pcic.ignore_pci=1            # ignore pci cardbus bridges  
        hw.pcic.intr_path="1"           # Needed by host=lapa 
                Normally interrupts for cardbus bridges are routed over the
                PCI bus (2).  However, some laptops will hang when using
                PCI interrupts due to bugs in this code.  Those bugs can
                be worked around by forcings ISA interrupts (1).  Warner
                wrote: Libretto-50 and Libretto-70 machines have only ISA
                PCMICA bridges
        hw.pcic.irq="0"                 # Needed by host=lapa 
                Override IRQ configured by system for all pcic devices
        hw.pcic.pd6729_intr_path
                Determine interrupt path or method for Cirrus
                Logic PD6729 and similar I/O space based pcmcia
                bridge.  Chips on a PCI expansion card need a value
                of 2, while chips installed in a laptop need a value
                of 1 (which is also the default).  This is similar
                to hw.pcic.intr_path, but separate so that it can
                default to ISA when intr_path defaults to PCI.
        hw.pcic.ti12xx_enable_pci_clock
                Some TI-12xx parts need to have the PCI clock enabled.
                These designs do not provide a clock themselves.  Most of
                the reference boards have the required oscillator parts,
                so the number of machines that needs this to be set is
                vanishingly small.
        machdep.bios.pci=disable        # 
        machdep.bios.pnp=disable        # 
        machdep.pccard.pcic_irq="0"     # PCCARD controller IRQ (0=polled) 
        machdep.pccard.pcic_irq=11
------
Julian
-- 
Julian Stacey. Munich Computer Consultant, BSD Unix C Linux. http://berklix.com



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