#
5763f796 |
| 21-Oct-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r307383 through r307735.
|
#
d3bf5efc |
| 17-Oct-2016 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Fix device delete child function.
When detaching device trees parent devices must be detached prior to detaching its children. This is because parent devices can have pointers to the child devices i
Fix device delete child function.
When detaching device trees parent devices must be detached prior to detaching its children. This is because parent devices can have pointers to the child devices in their softcs which are not invalidated by device_delete_child(). This can cause use after free issues and panic().
Device drivers implementing trees, must ensure its detach function detaches or deletes all its children before returning.
While at it remove now redundant device_detach() calls before device_delete_child() and device_delete_children(), mostly in the USB controller drivers.
Tested by: Jan Henrik Sylvester <me@janh.de> Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D8070 MFC after: 2 weeks
show more ...
|
Revision tags: release/11.0.1, release/11.0.0 |
|
#
93badfa1 |
| 16-Sep-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r305687 through r305890.
|
#
0eb8d462 |
| 14-Sep-2016 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Improve USB polling mode by not locking any mutexes, asserting any mutexes or using any callouts when active.
Trying to lock a mutex when KDB is active or the scheduler is stopped can result in infi
Improve USB polling mode by not locking any mutexes, asserting any mutexes or using any callouts when active.
Trying to lock a mutex when KDB is active or the scheduler is stopped can result in infinite wait loops. The same goes for calling callout related functions which in turn lock mutexes.
If the USB controller at which a USB keyboard is connected is idle when KDB is entered, polling the USB keyboard via USB will always succeed. Else polling may fail depending on which state the USB subsystem and USB interrupt handler is in. This is unavoidable unless KDB can wait for USB interrupt threads to complete before stalling the CPU(s).
Tested by: Bruce Evans <bde@freebsd.org> MFC after: 4 weeks
show more ...
|
#
1839de1a |
| 05-Sep-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r305397 through r305430.
|
#
64cb5e2a |
| 05-Sep-2016 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Resolve deadlock between device_detach() and usbd_do_request_flags() by reviving the SX control request lock and refining which lock protects the common scratch area in "struct usb_device".
The SX c
Resolve deadlock between device_detach() and usbd_do_request_flags() by reviving the SX control request lock and refining which lock protects the common scratch area in "struct usb_device".
The SX control request lock was removed by r246759 because it caused a lock order reversal with the USB enumeration lock inside usbd_transfer_setup() as a function of r246616. It was thought that reducing the number of locks would resolve the LOR, but because some USB device drivers use usbd_do_request_flags() inside callback functions, like in taskqueues, a deadlock may occur when these are drained from device_detach(). By restoring the SX control request lock usbd_do_request_flags() is allowed to complete its execution when a USB device driver is detaching. By using the SX control request lock to protect the scratch area, the LOR introduced by r246616 is also resolved.
Bump the FreeBSD version while at it to force recompilation of all USB kernel modules.
Found by: avos@ MFC after: 1 week
show more ...
|
#
27067774 |
| 16-Aug-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r303250 through r304235.
|
#
6be75992 |
| 29-Jul-2016 |
Edward Tomasz Napierala <trasz@FreeBSD.org> |
Improve error message.
MFC after: 1 month
|
#
10aab8b6 |
| 25-May-2016 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Check for signals when locking the USB enumeration thread from userspace, so that USB applications can be killed if an enumeration thread should be stuck for various reasons.
MFC after: 1 week
|
#
869df733 |
| 04-May-2016 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Extend the UQ_NO_STRINGS quirk to also cover the USB language string descriptor. This fixes enumeration of some older Samsung Galaxy S3 phones.
MFC after: 1 week
|
#
20733245 |
| 02-May-2016 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
dev/usb: minor spelling fixes in comments.
No functional change.
Reviewed by: hselasky
|
Revision tags: release/10.3.0 |
|
#
009e81b1 |
| 22-Jan-2016 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
MFH @r294567
|
#
59d43d11 |
| 20-Jan-2016 |
Glen Barber <gjb@FreeBSD.org> |
MFH
Sponsored by: The FreeBSD Foundation
|
#
7f38eb34 |
| 15-Jan-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r293850 through r294089.
|
#
ac3490fd |
| 15-Jan-2016 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Use the recently added "make_dev_s()" function to solve old race setting the si_drv1 field in "struct cdev" when creating new character devices.
|
#
b626f5a7 |
| 04-Jan-2016 |
Glen Barber <gjb@FreeBSD.org> |
MFH r289384-r293170
Sponsored by: The FreeBSD Foundation
|
#
a5d8944a |
| 19-Nov-2015 |
Navdeep Parhar <np@FreeBSD.org> |
Catch up with head (r291075).
|
#
3c3feed4 |
| 01-Nov-2015 |
Baptiste Daroussin <bapt@FreeBSD.org> |
Merge from head
|
#
8d59ecb2 |
| 29-Oct-2015 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Finish process of moving the LinuxKPI module into the default kernel build.
- Move all files related to the LinuxKPI into sys/compat/linuxkpi and its subfolders. - Update sys/conf/files and some M
Finish process of moving the LinuxKPI module into the default kernel build.
- Move all files related to the LinuxKPI into sys/compat/linuxkpi and its subfolders. - Update sys/conf/files and some Makefiles to use new file locations. - Added description of COMPAT_LINUXKPI to sys/conf/NOTES which in turn adds the LinuxKPI to all LINT builds. - The LinuxKPI can be added to the kernel by setting the COMPAT_LINUXKPI option. The OFED kernel option no longer builds the LinuxKPI into the kernel. This was done to keep the build rules for the LinuxKPI in sys/conf/files simple. - Extend the LinuxKPI module to include support for USB by moving the Linux USB compat from usb.ko to linuxkpi.ko. - Bump the FreeBSD_version. - A universe kernel build has been done.
Reviewed by: np @ (cxgb and cxgbe related changes only) Sponsored by: Mellanox Technologies
show more ...
|
#
11d38a57 |
| 28-Oct-2015 |
Baptiste Daroussin <bapt@FreeBSD.org> |
Merge from head
Sponsored by: Gandi.net
|
#
f94594b3 |
| 12-Sep-2015 |
Baptiste Daroussin <bapt@FreeBSD.org> |
Finish merging from head, messed up in previous attempt
|
#
00176600 |
| 09-Sep-2015 |
Navdeep Parhar <np@FreeBSD.org> |
Merge r286744-r287584 from head.
|
#
23a32822 |
| 25-Aug-2015 |
Baptiste Daroussin <bapt@FreeBSD.org> |
Merge from HEAD
|
#
6fdf637e |
| 17-Aug-2015 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r286697 through r286857.
|
#
43ea03d7 |
| 14-Aug-2015 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Improve the realtime properties of USB transfers for embedded systems like RPI-B and RPI-2.
Description of problem: USB transfers can process data in their callbacks sometimes causing unacceptable l
Improve the realtime properties of USB transfers for embedded systems like RPI-B and RPI-2.
Description of problem: USB transfers can process data in their callbacks sometimes causing unacceptable latency for other USB transfers. Separate BULK completion callbacks from CONTROL, INTERRUPT and ISOCHRONOUS callbacks, and give BULK completion callbacks lesser execution priority than the others. This way USB audio won't be interfered by heavy USB ethernet usage for example.
Further serve USB transfer completion in a round robin fashion, instead of only serving the most CPU hungry. This has been done by adding a third flag to USB transfer queue structure which keeps track of looping callbacks. The "command" callback function then decides what to do when looping.
MFC after: 2 weeks
show more ...
|