Jean Tourrilhes <[EMAIL PROTECTED]> writes:
> Dag,
>
> For your pleasure, I modified the auto-connect to be according
> to your rules. This time, no policy in the kernel, and we do things
> proper. I hope it will make you happy...
No, this patch is wrong (or braindamaged since you like to use such
terminology;-) You are assuming that every LSAP connect request, results in
an IrLAP connect request. This is _not_ the case!!
I have moved the refcount to the lap_cb struct of irlmp, and I'm doing the
refcounting there instead. Then it's possible to impl what the spec sais on
page 51 in irlmp. And it dosn't say anything about doing an IrLAP
disconnect request in state u-connect.
> @@ -265,6 +266,10 @@ void irlap_connect_request(struct irlap_
> ASSERT(self != NULL, return;);
> ASSERT(self->magic == LAP_MAGIC, return;);
>
> + self->n_lsaps++; /* One more LSAP connected */
> + /* Note : verify that we refcount LSAP open on incomming connections */
> +
> + /* May want to check if the same in case n_lsaps > 1 */
> self->daddr = daddr;
So, my problem is that you are sending in a lot of patches that changes
functionality in the stack, and doesn't comply with the spec. You think
that everything is OK, just because it's working for you in your setup. But
this patch would definitively have resulted in headache for somebody in the
future!
The patch you included clearly shows that you don't know how IrLMP actually
works. Now why do I hesitate when applying your patches?
-- Dag
--
/ Dag Brattli | The Linux-IrDA Project /
// University of Tromsoe, Norway | Infrared communication for Linux //
/// http://www.cs.uit.no/~dagb | http://www.cs.uit.no/linux-irda/ ///
_______________________________________________
Linux-IrDA mailing list - [EMAIL PROTECTED]
http://www4.pasta.cs.UiT.No/mailman/listinfo/linux-irda