USB_LOCK_DEVICE_FOR_(9) USB Core APIs USB_LOCK_DEVICE_FOR_(9)NAME
usb_lock_device_for_reset - cautiously acquire the lock for a usb device structure
SYNOPSIS
int usb_lock_device_for_reset(struct usb_device * udev, const struct usb_interface * iface);
ARGUMENTS
udev
device that's being locked
iface
interface bound to the driver making the request (optional)
DESCRIPTION
Attempts to acquire the device lock, but fails if the device is NOTATTACHED or SUSPENDED, or if iface is specified and the interface is
neither BINDING nor BOUND. Rather than sleeping to wait for the lock, the routine polls repeatedly. This is to prevent deadlock with
disconnect; in some drivers (such as usb-storage) the disconnect or suspend method will block waiting for a device reset to complete.
Returns a negative error code for failure, otherwise 0.
COPYRIGHT Kernel Hackers Manual 2.6. July 2010 USB_LOCK_DEVICE_FOR_(9)
Check Out this Related Man Page
USB_QUEUE_RESET_DEVI(9) USB Core APIs USB_QUEUE_RESET_DEVI(9)NAME
usb_queue_reset_device - Reset a USB device from an atomic context
SYNOPSIS
void usb_queue_reset_device(struct usb_interface * iface);
ARGUMENTS
iface
USB interface belonging to the device to reset
DESCRIPTION
This function can be used to reset a USB device from an atomic context, where usb_reset_device won't work (as it blocks).
Doing a reset via this method is functionally equivalent to calling usb_reset_device, except for the fact that it is delayed to a
workqueue. This means that any drivers bound to other interfaces might be unbound, as well as users from usbfs in user space.
CORNER CASES
- Scheduling two resets at the same time from two different drivers attached to two different interfaces of the same device is possible;
depending on how the driver attached to each interface handles ->pre_reset, the second reset might happen or not.
- If a driver is unbound and it had a pending reset, the reset will be cancelled.
- This function can be called during .probe or .disconnect times. On return from .disconnect, any pending resets will be cancelled.
There is no no need to lock/unlock the reset_ws as schedule_work does its own.
NOTE
We don't do any reference count tracking because it is not needed. The lifecycle of the work_struct is tied to the usb_interface. Before
destroying the interface we cancel the work_struct, so the fact that work_struct is queued and or running means the interface (and thus,
the device) exist and are referenced.
COPYRIGHT Kernel Hackers Manual 3.10 June 2014 USB_QUEUE_RESET_DEVI(9)
Hi all,
I want to create a new user and grant him ONLY transfer files access to a specific directory where he can only upload and read the files. He should be restricted to this activity only.
Regards (6 Replies)
Hi everyone,
I know the following questions are noobish questions but I am asking them because I am confused about the basics of history behind UNIX and LINUX.
Ok onto business, my questions are-:
Was/Is UNIX ever an open source operating system ?
If UNIX was... (21 Replies)
Hi,
Last 2 weeks I have searched many forums and i haven't found the answer for the question:
How to get all command output to Putty title?
Needed it for other programs to know when some jobs on a server is done and is it done right or wrong. Plink stdout and stdin wasn't working, i used many... (1 Reply)
anyone have any idea how do to this with auth_attr?
I suspect if I grant him
solaris.device.:RO::Device Allocation::help=DevAllocHeader.html
that will work but I'm unsure. Just looking for a second opinion. (10 Replies)
I am looking for a stable, reliable system to replace my current Windows systems in the home. These are simple systems that I purchased from the local Big Box store.
I have heard many good things about Unix and it's various children and it sounds like a good option to me. I have worked... (2 Replies)
We have a lot of scripts using cut as :
cut -c 0-8 --works for cut (GNU coreutils) 5.97, but does not work for cut (GNU coreutils) 8.4.
Gives error -
cut: fields and positions are numbered from 1
Try `cut --help' for more information.
The position needs to start with 1 for later... (6 Replies)
I've got a problem with a proxy configuration. We have an LDAP group that lists all users who are authorised to use the proxy to FTP (usually Filezilla) out to the world, and by implication those not in the group should be denied. My users are delighted that this has been enabled and those that... (9 Replies)
hi folks,
how to using tar with exclude directory and compress it using tar.Z
i only know how to exclude dir only with this command below:
tar -cvf /varios/restore/test.tar -X excludefile.txt /jfma/test1/
how to compress it using 1 command?
Thanx
Please use CODE tags as... (6 Replies)
Hello All,
I had recently learnt a bit of Docker(which provides containerization process).
Here are some of my learning points from it.
Let us start first with very basic question:
What is Docker:
Docker is a platform for sysadmins and developers to DEPLOY, DEVELOP and RUN applications ... (7 Replies)
What is the point of this? Whenever I close my shell it appends to the history file without adding this. I have never seen it overwrite my history file.
# When the shell exits, append to the history file instead of overwriting it
shopt -s histappend (3 Replies)
Hello for all,
I am testing the behavior of a 32 bit application running on Solaris 5.10 (SPARC), and realize it reaches 4GB of memory and then crashes.
It doesn't matter the amount of used memory as application is intended to perform many transactions; rather, what I want to achieve is to... (2 Replies)