Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 15 Mar 2014 22:31:43 +0100
From:      Juergen Lock <nox@jelal.kn-bremen.de>
To:        Juergen Lock <nox@jelal.kn-bremen.de>
Cc:        hselasky@FreeBSD.org, "Wojciech A. Koszek" <wkoszek@FreeBSD.org>, freebsd-emulation@FreeBSD.org, "Bjoern A. Zeeb" <bz@FreeBSD.org>, freebsd-usb@FreeBSD.org
Subject:   Re: CFT #3: Re: linux libusb again... (now also for 10i386)
Message-ID:  <20140315213143.GA37825@enceladus10.kn-bremen.de>
In-Reply-To: <20140303181825.GA59170@enceladus10.kn-bremen.de>
References:  <20140207204928.GD12994@FreeBSD.org> <20140208084546.GA74796@enceladus10.kn-bremen.de> <20140209025624.GE12994@FreeBSD.org> <20140209135905.GA13024@enceladus10.kn-bremen.de> <20140210041845.GG12994@FreeBSD.org> <D4F77E00-748A-4F18-AC39-3821380D13AA@FreeBSD.org> <20140210231109.GA54389@enceladus10.kn-bremen.de> <20140211195650.GI12994@FreeBSD.org> <20140211232048.GA91008@enceladus10.kn-bremen.de> <20140303181825.GA59170@enceladus10.kn-bremen.de>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi!

 I now have changed my port to use devel/linux-f10-devtools instead of
emulators/linux_base-gentoo-stage3 (you need linux-f10-devtools-10_1
because of http://www.freebsd.org/cgi/query-pr.cgi?pr=187609 ),
which not only allows it to build outside of tb/powderkeg but also
works around the missing 10i386 package issue:

	http://people.freebsd.org/~nox/tmp/linux_libusb-002.shar

 Packages:

	http://people.freebsd.org/~nox/tmp/packages/10amd64/linux_libusb-11.0r261448_1.txz
	http://people.freebsd.org/~nox/tmp/packages/10i386/linux_libusb-11.0r261448_1.txz

(Seems you can also manually untar them and use them on 9.x,
at least Linux lsusb seems to do something on 9.2/amd64 too.)

 Happy testing... :)
	Juergen

On Mon, Mar 03, 2014 at 07:18:25PM +0100, Juergen Lock wrote:
> HPS found out what was wrong, the linux libusb needs to be built
> with COMPAT_32BIT=YES on amd64 since the linuxolator is 32bit...
> Using this packages Linux lsusb finally does something.
> 
>  So I updated the shar and package at the locations listed below,
> please test! :)
> 
>  Thanx,
> 	Juergen
> 
> On Wed, Feb 12, 2014 at 12:20:48AM +0100, Juergen Lock wrote:
> > On Tue, Feb 11, 2014 at 07:56:50PM +0000, Wojciech A. Koszek wrote:
> > > On Tue, Feb 11, 2014 at 12:11:09AM +0100, Juergen Lock wrote:
> > > > 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@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
> > > 
> > > Can you send the full trace with all eventual child processes? If you could
> > > copy&paste:
> > > 
> > > 	open libusb
> > > 	for each bus
> > > 		for each device
> > > 			open device
> > > 
> > > to a separate program, we could make it libusb/Linuxolator regression test.
> > > This would also help us match ptrace<->line number output.
> > > 
> > There are no child processes and it seems it doesn't even get to
> > enumerate buses, i.e. the /dev/usbctl above is the only usb-related
> > thing it opens.  I've put the full kdump here:
> > 
> > 	http://people.freebsd.org/~nox/tmp/lsusb.kdump.txt.xz
> > 
> > (don't be surprised about the libz.so.1 path, the one from fc10
> > was too old so I had to point LD_LIBRARY_PATH at debian's one
> > I copied.)
> > 
> > > Which FreeBSD are you using?
> > > 
> >  10.0-r.
> > 
> > > This may indicate some relationship with
> > > 
> > > 	http://www.freebsd.org/cgi/query-pr.cgi?pr=141439
> > > 
> >  Well at least 10.0 should have that fix already.
> > 
> >  Maybe I can find an older (fc10?) lsusb later...
> > 
> >  Thanx,
> > 	Juergen



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