ports/115517: uppc kmod installation problem on amd64

Andriy Gapon avg at icyb.net.ua
Tue Aug 14 12:50:06 UTC 2007


>Number:         115517
>Category:       ports
>Synopsis:       uppc kmod installation problem on amd64
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Aug 14 12:50:01 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Andriy Gapon
>Release:        FreeBSD 6.2-RELEASE-p3 amd64
>Organization:
>Environment:
System: FreeBSD 6.2-RELEASE-p3 amd64
uppc-kmod-0.8_1


	
>Description:
Please see a discussion thread starting with the following message:
http://lists.freebsd.org/pipermail/freebsd-ports/2007-August/042999.html

It seems that installation action of uppc-kmod port (do-install target)
uses incorrect tool to put uppc.ko in its destination. It seems that the
tool (${INSTALL_PROGRAM}) corrupts the .ko, so that it is not a valid
kernel module anymore. If I put uppc.ko into /boot/kernel and do kldxref
then kldxref complains about missing symbol table in uppc.ko and dumps
core. If the module is loaded then it crashes my system.

On the other hand, if I simply copy uppc.ko from work directory then it
works ok.

Essentially this is the same issue as described in the following PR only
with another port:
http://www.freebsd.org/cgi/query-pr.cgi?pr=100703

Kostik Belousov confirms the issue with stripping kernel modules on amd64:
You cannot strip kernel modules on amd64, because modules are elf object
files, as opposed to shared objects on all other archs. Strip strips the
object file symbol table, that is used by the static linker and in-kernel
linker on amd64. On the other hand, shared object contains also a dynamic
symbol table, that is not stripped and used by in-kernel linker on !amd64.

>How-To-Repeat:
1. install the port
2a. for "soft" error attemp kldxref on the module
2b. for hard failure (panic) kldload the module
2c. (or) for hard failure (panic) run uppcsetup, as suggested in pkg-message,
and follow instructions

>Fix:
A fix similar to the one in the mentioned above PR 100703 should be applied.
I am not aware of any other kmod port that has the issue on amd64 at present,
but there might be more of them.

	


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list