Messages in this thread | | | Date | Tue, 29 Apr 2003 17:44:21 -0700 | From | Max Krasnyansky <> | Subject | Re: [Bluetooth] HCI USB driver update. Support for SCO over HCI USB. |
| |
At 02:40 PM 4/29/2003, Greg KH wrote: >On Tue, Apr 29, 2003 at 11:34:19PM +0200, Oliver Neukum wrote: >> >> > +int usb_init_urb(struct urb *urb) >> > +{ >> > + if (!urb) >> > + return -EINVAL; >> > + memset(urb, 0, sizeof(*urb)); >> > + urb->count = (atomic_t)ATOMIC_INIT(1); >> > + spin_lock_init(&urb->lock); >> > + >> > + return 0; >> > +} >> >> Greg, please don't do it this way. Somebody will >> try to free this urb. If the urb is part of a structure >> this must not lead to a kfree. Please init it to some >> insanely high dummy value in this case. Uh, I didn't think about that one. This stuff was first implemented for 2.4 which didn't have refcount in urb and then forward ported to 2.5.
>We can't init it to a high value, if we want to use it ourself in >usb_alloc_urb(). > >And yes, I agree this is a very dangerous function to use on your own, >I thought I conveyed that in the documentation for the function. > >But if we don't have such a function, then people like Max will just >roll their own, like he just did :) > >Might as well make it easy for him to shoot himself in the foot if he >really wants to... Thanks. I'll wear bullet proof shoes, just in case :-).
Max
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |