Date: Wed, 16 Sep 2015 16:50:03 +0300 From: Gleb Smirnoff <glebius@FreeBSD.org> To: Konstantin Belousov <kostikbel@gmail.com> Cc: marcel@FreeBSD.org, Steve Kiernan <stevek@juniper.net>, brooks@FreeBSD.org, current@FreeBSD.org Subject: Re: r286727 breaks geom_md.ko loading Message-ID: <20150916135003.GM1023@glebius.int.ru> In-Reply-To: <20150916134249.GG67105@kib.kiev.ua> References: <20150916000019.GH1023@FreeBSD.org> <20150916051005.GF67105@kib.kiev.ua> <20150916131515.GL1023@glebius.int.ru> <20150916134249.GG67105@kib.kiev.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
--M/SuVGWktc5uNpra Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Wed, Sep 16, 2015 at 04:42:49PM +0300, Konstantin Belousov wrote: K> On Wed, Sep 16, 2015 at 04:15:15PM +0300, Gleb Smirnoff wrote: K> > On Wed, Sep 16, 2015 at 08:10:05AM +0300, Konstantin Belousov wrote: K> > K> > There is regression after r286727. Our dynamic kernel linker doesn't K> > K> > support weak symbols, so the geom_md.ko can no longer be loaded dynamically K> > K> > neither from loader nor at runtime. Having it statically in kernel is K> > K> > the only working option. K> > K> K> > K> Perhaps, something could be fixed in the dynamic linker ? K> > K> K> > K> I checked both i386 and amd64, and on both arches I can load geom_md.ko. K> > K> On the other hand, I do not use preloaded mfs images. Can you explain K> > K> how to reproduce the issue, and what linker is affected ? Note that we K> > K> have two kernel dynamic linkers, one is used on amd64 and mips, second one K> > K> is for all other architectures. K> > K> > To reproduce you need just a vanilla head, a kernel that doesn't have K> > 'device md' in it, and run kldload geom_md.ko. Does that work for you? K> K> Yes, it does, both on amd64 and i386. You did not said which architecture K> exposes your problem. Post your kernel config. It is amd64. Here is config. -- Totus tuus, Glebius. --M/SuVGWktc5uNpra Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=THINKPAD_X1 cpu HAMMER ident THINKPAD_X1 makeoptions DEBUG=-g makeoptions WITH_CTF=1 options SCHED_ULE # ULE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols options SCTP # Stream Control Transmission Protocol options FFS # Berkeley Fast Filesystem options SOFTUPDATES # Enable FFS soft updates support options UFS_ACL # Support for access control lists options UFS_DIRHASH # Improve performance on big directories options UFS_GJOURNAL # Enable gjournal-based UFS journaling options MD_ROOT # MD is a potential root device options NFSCL # New Network Filesystem Client options NFSD # New Network Filesystem Server options NFSLOCKD # Network Lock Manager options NFS_ROOT # NFS usable as /, requires NFSCL options MSDOSFS # MSDOS Filesystem options CD9660 # ISO 9660 Filesystem options PROCFS # Process filesystem (requires PSEUDOFS) options PSEUDOFS # Pseudo-filesystem framework options GEOM_PART_GPT # GUID Partition Tables. options GEOM_LABEL # Provides labelization options COMPAT_FREEBSD32 # Compatible with i386 binaries options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI options KTRACE # ktrace(1) support options STACK # stack(9) support options SYSVSHM # SYSV-style shared memory options SYSVMSG # SYSV-style message queues options SYSVSEM # SYSV-style semaphores options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed. options KBD_INSTALL_CDEV # install a CDEV entry in /dev options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4) options KDTRACE_FRAME # Ensure frames are compiled in options KDTRACE_HOOKS # Kernel DTrace hooks options DDB_CTF options INCLUDE_CONFIG_FILE # Include this file in kernel options KDB # Enable kernel debugger support. options DDB # Support DDB. options GDB # Support remote GDB. # Make an SMP-capable kernel by default options SMP # Symmetric MultiProcessor Kernel # CPU frequency control device cpufreq # Bus support. device acpi options ACPI_DMAR device pci # ATA controllers device ahci # AHCI-compatible SATA controllers device ata # Legacy ATA/SATA controllers options ATA_STATIC_ID # Static device numbering # ATA/SCSI peripherals device scbus # SCSI bus (required for ATA/SCSI) device da # Direct Access (disks) device cd # CD device pass # Passthrough device (direct ATA/SCSI access) # atkbdc0 controls both the keyboard and the PS/2 mouse device atkbdc # AT keyboard controller device atkbd # AT keyboard device psm # PS/2 mouse device kbdmux # keyboard multiplexer device vt device vt_vga device agp # support several AGP chipsets # Serial (COM) ports device uart # Generic UART driver # Wireless NIC cards device wlan # 802.11 support options IEEE80211_DEBUG # enable debug msgs options IEEE80211_AMPDU_AGE # age frames in AMPDU reorder q's options IEEE80211_SUPPORT_MESH # enable 802.11s draft support device wlan_wep # 802.11 WEP support device wlan_ccmp # 802.11 CCMP support device wlan_tkip # 802.11 TKIP support device wlan_amrr # AMRR transmit rate control algorithm device iwn # Intel 4965/1000/5000/6000 wireless NICs. # Pseudo devices. device loop # Network loopback device random # Entropy device device ether # Ethernet support device vlan # 802.1Q VLAN support device tun # Packet tunnel. device pty # BSD-style compatibility pseudo ttys device firmware # firmware assist module device bpf # Berkeley packet filter # Sound support device sound # Generic sound driver (required) device snd_hda # Intel High Definition Audio device coretemp device crypto device cryptodev device aesni --M/SuVGWktc5uNpra--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20150916135003.GM1023>