Date: Sat, 06 Sep 2014 19:42:51 +0200 From: Piotr Kubaj <pkubaj@riseup.net> To: hiren panchasara <hiren@freebsd.org> Cc: freebsd-mips@freebsd.org Subject: Re: WR1043ND - too big kernel Message-ID: <540B479B.10809@riseup.net> In-Reply-To: <CALCpEUGDVQ=frz9YorkXrnaR2xYf=yoiPZ2F2Tay31A1Rew-Aw@mail.gmail.com> References: <5408BB36.5060409@riseup.net> <5408BE6A.4050500@riseup.net> <5408CE14.2090809@riseup.net> <CALCpEUHK3aDv0b8FVafqwSOEzEdO16rdF7Oim2U3GcYw79yjgA@mail.gmail.com> <CALCpEUFPhZxsfwcQj3vZGVGfUEVNgvZBQR5oAxd%2BOm4Un14YNQ@mail.gmail.com> <CALCpEUEZH3RtBioJ4aWcwvvHiRm1Q_rrs4mXB320g0OgHJ%2BTWw@mail.gmail.com> <540A0BDE.6040605@riseup.net> <CALCpEUGDVQ=frz9YorkXrnaR2xYf=yoiPZ2F2Tay31A1Rew-Aw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --TMgugTGdpJhsSdODitcvga7fSPhbQULiM Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 09/05/2014 22:46, hiren panchasara wrote: > On Fri, Sep 5, 2014 at 12:15 PM, Piotr Kubaj <pkubaj@riseup.net> wrote:= >> On 09/05/2014 19:59, hiren panchasara wrote: >>> On Thu, Sep 4, 2014 at 2:27 PM, hiren panchasara <hiren@freebsd.org> = wrote: >>>> On Thu, Sep 4, 2014 at 1:44 PM, hiren panchasara <hiren@freebsd.org>= wrote: >>>>> On Thu, Sep 4, 2014 at 1:39 PM, Piotr Kubaj <pkubaj@riseup.net> wro= te: >>>>>> Adding following lines to kernel config shrinks size to 1750991 (o= n >>>>>> releng/10.0): >>>>>> makeoptions INLINE_LIMIT=3D768 >>>>>> nomakeoptions DEBUG >>>>>> nomakeoptions ALQ >>>>>> nooptions INET6 >>>>>> options NO_SWAPPING >>>>>> nooptions HWPMC_HOOKS >>>>>> nodevice hwpmc >>>>>> nodevice hwpmc_mips24k >>>>>> nooptions KDB >>>>>> >>>>>> Any ideas what else I can remove? :P >>>>> >>>>> I see you already have r255656. >>>>> Let me try to build for -head and see. >>>> >>>> >>>>> [mktplinkfw] *** error: kernel image is too big. Max[1572352] kerne= l img [2000794] >>>> >>>> ugh. Need to trim more. I'll see if I can find time this week to che= ck >>>> where/what we can trim. >>> >>> Randomly disabled a ton of things and then I could create small enoug= h >>> kernel. I'm not even sure if things will actually work. >>> >>> We've grown too big, it seems :-( >>> >>> Diffs against -head. >>> >>> Index: sys/mips/conf/TP-WN1043ND >>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>> --- sys/mips/conf/TP-WN1043ND (revision 271137) >>> +++ sys/mips/conf/TP-WN1043ND (working copy) >>> @@ -16,7 +16,7 @@ >>> options AR71XX_REALMEM=3D32*1024*1024 >>> >>> # i2c GPIO bus >>> -device gpioiic >>> +#device gpioiic >>> device iicbb >>> device iicbus >>> device iic >>> @@ -28,7 +28,7 @@ >>> device rtl8366rb >>> >>> # read MSDOS formatted disks - USB >>> -options MSDOSFS >>> +#options MSDOSFS >>> >>> # Enable the uboot environment stuff rather then the >>> # redboot stuff. >>> @@ -57,3 +57,29 @@ >>> nooptions WITNESS_SKIPSPIN >>> nooptions DEBUG_REDZONE >>> nooptions DEBUG_MEMGUARD >>> + >>> +nooptions DDB >>> +nooptions KDB >>> +nooptions ALQ >>> +nooptions HWPMC_HOOKS >>> +nodevice hwpmc >>> +nodevice hwpmc_mips24k >>> +nooptions INET6 #InterNETworking >>> + >>> +nooptions ATH_DEBUG >>> +nooptions AH_DEBUG >>> +nooption AH_DEBUG_ALQ >>> +nooptions IEEE80211_DEBUG >>> +nooptions IEEE80211_SUPPORT_MESH >>> +nooptions IEEE80211_SUPPORT_TDMA >>> +nooptions IEEE80211_ALQ # 802.11 ALQ logging support >>> + >>> +nodevice usb >>> +nooptions USB_EHCI_BIG_ENDIAN_DESC >>> +nooptions USB_DEBUG >>> +nooptions USB_HOST_ALIGN >>> +nodevice umass >>> +nodevice ehci >>> + >>> +nodevice gpio >>> +nodevice gpioled >>> >> I could've done it myself, but I need usb and GPIO is required for usb= , >> so that needs to stay. That said, I removed PSEUDOFS (I don't need >> /proc) and some of what you mailed, so now it's smaller, but still too= >> large (1682325). Here are the contents (still on releng/10.0) >> # Force the board memory - 64mb >> options AR71XX_REALMEM=3D64*1024*1024 >> >> makeoptions INLINE_LIMIT=3D768 >> nomakeoptions DEBUG >> nomakeoptions ALQ >> nooptions INET6 >> options NO_SWAPPING >> nooptions HWPMC_HOOKS >> nodevice hwpmc >> nodevice hwpmc_mips24k >> nooptions USB_DEBUG >> nooptions IEEE80211_DEBUG >> nooptions PSEUDOFS >> nooptions ATH_DEBUG >> nooptions AH_DEBUG >> nooption AH_DEBUG_ALQ >> nooptions IEEE80211_SUPPORT_MESH >> nooptions IEEE80211_SUPPORT_TDMA >> nooptions IEEE80211_ALQ # 802.11 ALQ logging support >> >> # i2c GPIO bus >> device gpioiic >> device iicbb >> device iicbus >> device iic >> >> # ethernet switch device >> device etherswitch >> >> # RTL8366RB support >> device rtl8366rb >> >> # Enable the uboot environment stuff rather then the >> # redboot stuff. >> options AR71XX_ENV_UBOOT >> >> # uncompress - to boot natively from flash >> device geom_uncompress >> options GEOM_UNCOMPRESS >> >> # Used for the static uboot partition map >> device geom_map >> >> # Boot off of the rootfs, as defined in the geom_map setup. >> options ROOTDEVNAME=3D\"ufs:map/rootfs.uncompress\" >> >> # We bite the performance overhead for now; the kernel won't >> # fit if the mutexes are inlined. >> options MUTEX_NOINLINE >> options RWLOCK_NOINLINE >> options SX_NOINLINE >> >> # Remove everything we don't need. We need a _really_ small kernel! >> nooptions INVARIANTS >> nooptions INVARIANT_SUPPORT >> nooptions WITNESS >> nooptions WITNESS_SKIPSPIN >> nooptions DEBUG_REDZONE >> nooptions DEBUG_MEMGUARD >> nooptions DDB >> nooptions KDB >> >> It doesn't need to be much smaller now, but what made it so large? Why= >> did it work a year ago with 10.0-CURRENT? Since 10.0-RELEASE is too >> large and there are working images with 10.0-CURRENT from August 2013 = at >> http://www.strugglingcoder.info/pkgs/TP-WN1043ND.factory.bin (it seems= >> to be actually generated by you), something must have happened then a= nd >> later, when CURRENT went up to 11. >=20 > "More code" happened :-) >=20 > This clearly is not a good sign. I'll try to spend some time to narrow > the source down. > We _should_ at least be able to "not-include" that portion. >=20 > cheers, > Hiren >=20 Since I'm going to anyway run it with a pendrive, isn't it possible to install only /boot to flash and the rest of rootfs to that pendrive? That would make it possible for the kernel to have a bigger size. --TMgugTGdpJhsSdODitcvga7fSPhbQULiM Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQIcBAEBCgAGBQJUC0ebAAoJEC9nKukRsfY+HtQP/3k+7zTUfxXP/FDkfFmzx6v0 s9Qr1RSkE54PGGS2aL0gPYtH4RSfXZCYH78x60i//cILfVB2gTQVN1iw5MoMnBO5 2kkliguTzYqxFdXlw7tza2+weyvCEN70QwQpvKd1sTQuns2+S2kaVzd81ZPnqV68 JlW4N3xAkFEFrhhROe/N848jzv0WVvDXxxXcEUWxVQ4nFcHbdihfIgB732qMenu3 7QPffgTU6bIH6WZJig3shBDIqqcseTMFKYMtT8XfXTa2Q5OFA/LIqXoo7vtVCOsK mH9X7qpBdarVraX9T/84Wqbx+hiEeMJNIkOwIdXn8sIEtB4PrIEiQ1Y4relmcACV TFfslcv1k7l/0+OBo12S15K0iXNZWTBky1xLpx8zvO9d6lGECXU8iMHUIL+zMnmO FDaGtd0AokBoMOUQik/bTbtraNuiFBy4xrhq7nIjkY55bWd0VZa3qrfCgkCdfK9w MD4ur9YULTizs7N1BLw320KFitW2LqLjiZJKgv8dUCas+laXJDGN6+u5F+e9YbcD MIsDEG53pnKbLdRu9Uk/4UcxEGEQbpkz/KVWzhwThlzcLayISeMFxUWpm2xx9RfJ wKiih3DgP0mtz0xI835zVtu5QOatmjfRe1YyYvd6+YboimfXgQ7404qParkYg6co Sk0tMJqCxKzDNXmVpV3s =V4SJ -----END PGP SIGNATURE----- --TMgugTGdpJhsSdODitcvga7fSPhbQULiM--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?540B479B.10809>