From: Greg KH <greg@kroah.com>
To: maxk@qualcomm.com
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
linux-usb-devel@lists.sourceforge.net
Subject: Re: [Bluetooth] HCI USB driver update. Support for SCO over HCI USB.
Date: Mon, 28 Apr 2003 21:15:35 -0700 [thread overview]
Message-ID: <20030429041535.GA2093@kroah.com> (raw)
In-Reply-To: <200304290317.h3T3HOdA027579@hera.kernel.org>
On Mon, Mar 24, 2003 at 09:03:28PM +0000, Linux Kernel Mailing List wrote:
> ChangeSet 1.971.22.2, 2003/03/24 13:03:28-08:00, maxk@qualcomm.com
>
> [Bluetooth] HCI USB driver update. Support for SCO over HCI USB.
> URB and buffer managment rewrite.
Max, you need to be very careful with this:
> -static void hci_usb_interrupt(struct urb *urb, struct pt_regs *regs);
> +struct _urb *_urb_alloc(int isoc, int gfp)
> +{
> + struct _urb *_urb = kmalloc(sizeof(struct _urb) +
> + sizeof(struct usb_iso_packet_descriptor) * isoc, gfp);
> + if (_urb) {
> + memset(_urb, 0, sizeof(*_urb));
> + _urb->urb.count = (atomic_t)ATOMIC_INIT(1);
> + spin_lock_init(&_urb->urb.lock);
> + }
> + return _urb;
> +}
You aren't calling usb_alloc_urb() and:
> +struct _urb *_urb_dequeue(struct _urb_queue *q)
> +{
> + struct _urb *_urb = NULL;
> + unsigned long flags;
> + spin_lock_irqsave(&q->lock, flags);
> + {
> + struct list_head *head = &q->head;
> + struct list_head *next = head->next;
> + if (next != head) {
> + _urb = list_entry(next, struct _urb, list);
> + list_del(next); _urb->queue = NULL;
> + }
> + }
> + spin_unlock_irqrestore(&q->lock, flags);
> + return _urb;
> +}
You aren't calling usb_free_urb() as you are embedding a struct urb
within your struct _urb structure. Any reason you can't use a struct
urb * instead and call the usb core's functions to create and return a
urb?
Otherwise any changes to the internal urb structures, and the
usb_alloc_urb() and usb_free_urb() functions will have to be mirrored
here in your functions, and I know I will forget to do that :)
Other than that, it's nice to see Bluetooth SCO support for Linux, very
nice job.
thaks,
greg k-h
next parent reply other threads:[~2003-04-29 4:01 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <200304290317.h3T3HOdA027579@hera.kernel.org>
2003-04-29 4:15 ` Greg KH [this message]
2003-04-29 20:29 ` [Bluetooth] HCI USB driver update. Support for SCO over HCI USB Max Krasnyansky
2003-04-29 21:15 ` Greg KH
2003-04-29 21:34 ` Oliver Neukum
2003-04-29 21:40 ` Greg KH
2003-04-29 22:24 ` [linux-usb-devel] " Oliver Neukum
2003-04-30 0:44 ` Max Krasnyansky
2003-04-30 7:06 ` Oliver Neukum
2003-04-29 21:55 ` Max Krasnyansky
2003-04-29 22:04 ` Greg KH
2003-04-29 21:39 ` [linux-usb-devel] " David Brownell
2003-04-29 21:37 ` Greg KH
2003-04-29 22:04 ` Max Krasnyansky
2003-04-30 4:55 ` David Brownell
2003-05-08 22:55 ` Max Krasnyansky
2003-05-09 19:06 ` David Brownell
2003-05-09 19:29 ` Greg KH
2003-05-09 22:35 ` Max Krasnyansky
2003-05-09 22:35 ` Max Krasnyansky
2003-05-09 23:05 ` Greg KH
2003-05-10 0:48 ` David Brownell
2003-05-10 5:06 ` Brad Hards
2003-05-10 5:40 ` Greg KH
2003-05-10 5:55 ` William Lee Irwin III
2003-05-10 6:11 ` Greg KH
2003-05-10 6:14 ` William Lee Irwin III
2003-05-12 17:53 ` Max Krasnyansky
2003-05-12 18:01 ` Greg KH
2003-05-12 18:55 ` Max Krasnyansky
2003-05-12 20:23 ` David Brownell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20030429041535.GA2093@kroah.com \
--to=greg@kroah.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb-devel@lists.sourceforge.net \
--cc=maxk@qualcomm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.