Date: Mon, 11 Mar 2019 16:57:12 +1030 From: "O'Connor, Daniel" <darius@dons.net.au> To: Hans Petter Selasky <hps@selasky.org> Cc: Konstantin Belousov <kostikbel@gmail.com>, Warner Losh <imp@bsdimp.com>, FreeBSD Hackers <freebsd-hackers@freebsd.org> Subject: Re: USB stack getting confused Message-ID: <CDE6EC29-BCEE-46FD-A2A2-82772304BE46@dons.net.au> In-Reply-To: <1BBD445B-9A27-4BE7-9B60-04BE0814D7CA@dons.net.au> References: <f3e6e30b-8b62-546b-2b51-e841f2e645bd@selasky.org> <3B29D870-41F9-46AF-B9F3-03106DEC417D@dons.net.au> <20190309152613.GM2492@kib.kiev.ua> <ea6e2690-1ad7-6c06-49e5-c528013f26c0@selasky.org> <20190309162640.GN2492@kib.kiev.ua> <CANCZdfr9jRcXQeZWMPKSMvUB5u7kE0eDvbuKrtGvuUDYOr=n4A@mail.gmail.com> <20190309192330.GO2492@kib.kiev.ua> <fd5038a4-406b-6e4b-bb52-b567b1954ad1@selasky.org> <20190310094758.GP2492@kib.kiev.ua> <35f69493-4bbb-4142-b61a-3e90adc8777b@selasky.org> <20190310102629.GQ2492@kib.kiev.ua> <40bf77e0-47a5-6edc-b5d0-58e3c44988ac@selasky.org> <030A0C16-4508-4C7C-A87C-72B69B15EDF5@dons.net.au> <1BBD445B-9A27-4BE7-9B60-04BE0814D7CA@dons.net.au>
next in thread | previous in thread | raw e-mail | index | archive | help
> On 11 Mar 2019, at 15:00, O'Connor, Daniel <darius@dons.net.au> wrote:
>=20
>=20
>=20
>> On 11 Mar 2019, at 14:27, O'Connor, Daniel <darius@dons.net.au> =
wrote:
>> I can dig into the kernel part if you want but will need some =
guidance where to look..
>=20
> Note that I put a dtrace probe on ugen_open and usb_fifo_open and it =
does not fire for 0.5, eg..
> [maarsytest 4:28] ~> sudo dtrace -s ~/usb_fifo.d 2324
> Password:
> dtrace: script '/home/radar/usb_fifo.d' matched 4 probes
> CPU ID FUNCTION:NAME
> 2 65418 openat:entry Open: =
/home/radar/ud3/run/experiment.stemp
> 0 65418 openat:entry Open: =
/local0/Measurements/Phasetest/20190311-0428.noise
> 2 65418 openat:entry Open: =
/home/radar/ud3/lib/acquisition//integrate.plugin
> 3 65418 openat:entry Open: /dev/ugsio0.ud
> 3 12030 usb_fifo_open:entry Ugen: ugen0.2 f_open: =
ffffffff822946a0
> 3 12031 usb_fifo_open:return Return: 0 Errno: 9
> 3 65418 openat:entry Open: /dev/ussio0.ud
> 0 65418 openat:entry Open: /dev/usbctl
> 0 65418 openat:entry Open: /dev/ugen0.1
> 0 12030 usb_fifo_open:entry Ugen: ugen0.1 f_open: =
ffffffff8093fd00
> 0 12102 ugen_open:return Return: 0 Errno: 0
> 0 12031 usb_fifo_open:return Return: 0 Errno: 0
> 0 12030 usb_fifo_open:entry Ugen: ugen0.1 f_open: =
ffffffff8093fd00
> 0 12102 ugen_open:return Return: 0 Errno: 0
> 0 12031 usb_fifo_open:return Return: 0 Errno: 0
> 3 65418 openat:entry Open: /dev/ugen0.2
> 3 12030 usb_fifo_open:entry Ugen: ugen0.2 f_open: =
ffffffff8093fd00
> 3 12102 ugen_open:return Return: 0 Errno: 0
> 3 12031 usb_fifo_open:return Return: 0 Errno: 0
> 3 12030 usb_fifo_open:entry Ugen: ugen0.2 f_open: =
ffffffff8093fd00
> 3 12102 ugen_open:return Return: 0 Errno: 0
> 3 12031 usb_fifo_open:return Return: 0 Errno: 0
> 3 65418 openat:entry Open: /dev/ugen0.3
> 3 12030 usb_fifo_open:entry Ugen: ugen0.3 f_open: =
ffffffff8093fd00
> 3 12102 ugen_open:return Return: 0 Errno: 0
> 3 12031 usb_fifo_open:return Return: 0 Errno: 0
> 3 12030 usb_fifo_open:entry Ugen: ugen0.3 f_open: =
ffffffff8093fd00
> 3 12102 ugen_open:return Return: 0 Errno: 0
> 3 12031 usb_fifo_open:return Return: 0 Errno: 0
> 1 65418 openat:entry Open: /dev/ugen0.4
> 1 12030 usb_fifo_open:entry Ugen: ugen0.4 f_open: =
ffffffff8093fd00
> 1 12102 ugen_open:return Return: 0 Errno: 0
> 1 12031 usb_fifo_open:return Return: 0 Errno: 0
> 1 12030 usb_fifo_open:entry Ugen: ugen0.4 f_open: =
ffffffff8093fd00
> 1 12102 ugen_open:return Return: 0 Errno: 0
> 1 12031 usb_fifo_open:return Return: 0 Errno: 0
> 1 65418 openat:entry Open: /dev/ugen0.5
I just realised I can check procstat for open file, derp.
[maarsytest 6:26] ~> procstat -f 2324|grep 0.5.0| wc
64 640 4928
So I guess that is why it is giving ENOMEM, I'm leaking FDs!
--
Daniel O'Connor
"The nice thing about standards is that there
are so many of them to choose from."
-- Andrew Tanenbaum
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CDE6EC29-BCEE-46FD-A2A2-82772304BE46>
