CFT: Re: linux libusb again, I made an updated port...
Juergen Lock
nox at jelal.kn-bremen.de
Mon Feb 10 23:13:52 UTC 2014
On Mon, Feb 10, 2014 at 11:06:27AM +0000, Bjoern A. Zeeb wrote:
>
> On 10 Feb 2014, at 04:18 , Wojciech A. Koszek <wkoszek at FreeBSD.org> wrote:
>
> > On nie, lut 09, 2014 at 02:59:06 +0100, Juergen Lock wrote:
> >> On Sun, Feb 09, 2014 at 02:56:24AM +0000, Wojciech A. Koszek wrote:
> >>> On sob, lut 08, 2014 at 09:45:46 +0100, Juergen Lock wrote:
> >>>> On Fri, Feb 07, 2014 at 08:49:28PM +0000, Wojciech A. Koszek wrote:
> >>>>> On pi??, lut 07, 2014 at 09:12:08 +0100, Juergen Lock wrote:
> >>>>>> Hi!
> >>>>>>
> >>>>>> This came up on irc so I tried to build a linux libusb port (before
> >>>>>> I learned about ports/146895), mine uses linux_base-gentoo-stage3
> >>>>>> like linux_kdump with a src/lib/libusb head snapshot so it's more
> >>>>>> up to date than wkoszek's build (ports/146895), and it's really
> >>>>>> easy to update it again. Also maybe it can be used as linux
> >>>>>> libusb-1.0.so too; I didn't actually test it tho.
> >>>>>>
> >>>>>> Should this be committed? Is wkoszek's version better since it
> >>>>>> also builds on < 10.x? Comments welcome...
> >>>>>>
> >>>>>> wkoszek's version:
> >>>>>>
> >>>>>> http://www.freebsd.org/cgi/query-pr.cgi?pr=146895
> >>>>>>
> >>>>>> Mine:
> >>>>>>
> >>>>>> http://people.freebsd.org/~nox/tmp/linux_libusb.shar
> >>>>>>
> >>>>>> Distfile:
> >>>>>>
> >>>>>> http://people.freebsd.org/~nox/tmp/distfiles/linux_libusb-11.0r261448.tar.bz2
> >>>>>>
> >>>>>> 10/amd64 package:
> >>>>>>
> >>>>>> http://people.freebsd.org/~nox/tmp/packages/10amd64/linux_libusb-11.0r261448.txz
> >>>>>>
> >>>>>> (built via:
> >>>>>>
> >>>>>> poudriere bulk -v -j 10amd64 -p custom devel/linux_libusb
> >>>>>>
> >>>>>> - btw for some reason the dependency emulators/linux_base-gentoo-stage3
> >>>>>> doesn't build for 10i386 in poudriere bulk, I get a pkg segfault. bapt
> >>>>>> Cc'd...)
> >>>>>>
> >>>>>
> >>>>> Juergen,
> >>>> Hi!
> >>>>>
> >>>>> What would be the reason for this update?
> >>>>>
> >>>>> My stuff may be out of date, but it was all tested and working. I verified
> >>>>> it with Linux'ish lsusb(1) and USB-based FPGA JTAG programmer, for which
> >>>>> this stuff was written.
> >>>>>
> >>>> I was just thinking an updated version may be useful, but if it's
> >>>> already working for everyone maybe less so...
> >>>>
> >>>> Or would it work as a linux libusb-1.0.so too? I know the libusb 1.0
> >>>> stuff added some functions since 9.x at least... maybe hps would know
> >>>> (Cc'd.)
> >>>>
> >>>
> >>> Juergen,
> >>>
> >>> I think this package is useful and is looking for maintainer, so if you have
> >>> time and energy, I'm OK with upgrading it, but I suggest testing it first.
> >>> Bjoern might be interested too.
> >>>
> >> You mean bz@ ? Cc'd. I tried testing lsusb from debian sid but it printed
> >> nothing, neither with my nor with your older version, but maybe it's just
> >> `too new' for our current linuxolator.
> >
> > I assume you have at least 1 USB device while trying this. I don't remember
> > exactly, but while trying within Linuxolator, you may need devfs/procfs to
> > be mounted under Linuxolator's root directory.
>
> My understanding and from looking at trace is that if we cannot find it in /compat/linux we ale search in /; so no need for an extra mount unless maybe you run chrooted.
>
>
> > So you'll have to figure this out.
> >
> > Does it return with 0 exit code?
> >
> > If not, lsusb should be simple enough to let you place printf() all over the
> > place and understand out when it's failing.
>
> For me the problem was a clock_gettime() call in the libusb which my glibc did not provide. That made all things fail (silently) until I used linux ?rtld" tracing to see the unresolved symbol from libusb/the commercial 3rd party software dynamically loading libusb.
>
And my linux_kdump ends like this:
35607 lsusb CALL munmap(0x28247000,0x8000)
35607 lsusb RET munmap 0
35607 lsusb CALL linux_open(0x28090c31,0,0x28081e00)
35607 lsusb NAMI "/compat/linux/dev/usbctl"
35607 lsusb NAMI "/dev/usbctl"
35607 lsusb RET linux_open 3
35607 lsusb CALL linux_ioctl(0x3,0xffe5 ,0xffffc5d8)
35607 lsusb RET linux_ioctl 0
35607 lsusb CALL close(0x3)
35607 lsusb RET close 0
35607 lsusb CALL linux_exit_group(0x1)
35607 lsusb UNKNOWN(11)
and the exit code is 1, so I guess it's failing on an unhandled
syscall or something like that.
Juergen
More information about the freebsd-emulation
mailing list