Hi,
this cleans up locking and freeing in usblp_release and
poll.
Regards
Oliver
You can import this changeset into BK by piping this whole message to:
'| bk receive [path to repository]' or apply the patch as usual.
===================================================================
[EMAIL PROTECTED], 2003-07-25 14:54:48+02:00, [EMAIL PROTECTED]
- cleanup of release and poll
usblp.c | 10 ++++------
1 files changed, 4 insertions(+), 6 deletions(-)
diff -Nru a/drivers/usb/class/usblp.c b/drivers/usb/class/usblp.c
--- a/drivers/usb/class/usblp.c Fri Jul 25 14:55:31 2003
+++ b/drivers/usb/class/usblp.c Fri Jul 25 14:55:31 2003
@@ -383,7 +383,7 @@
usb_buffer_free (usblp->dev, USBLP_BUF_SIZE,
usblp->writebuf, usblp->writeurb->transfer_dma);
usb_buffer_free (usblp->dev, USBLP_BUF_SIZE,
- usblp->readbuf, usblp->writeurb->transfer_dma);
+ usblp->readbuf, usblp->readurb->transfer_dma);
kfree (usblp->device_id_string);
kfree (usblp->statusbuf);
usb_free_urb(usblp->writeurb);
@@ -403,14 +403,12 @@
struct usblp *usblp = file->private_data;
down (&usblp->sem);
- lock_kernel();
usblp->used = 0;
if (usblp->present) {
usblp_unlink_urbs(usblp);
up(&usblp->sem);
} else /* finish cleanup from disconnect */
usblp_cleanup (usblp);
- unlock_kernel();
return 0;
}
@@ -419,8 +417,8 @@
{
struct usblp *usblp = file->private_data;
poll_wait(file, &usblp->wait, wait);
- return ((!usblp->bidir || usblp->readurb->status == -EINPROGRESS) ? 0 :
POLLIN | POLLRDNORM)
- | (usblp->writeurb->status == -EINPROGRESS ? 0 :
POLLOUT | POLLWRNORM);
+ return ((!usblp->bidir || !usblp->rcomplete) ? 0 : POLLIN | POLLRDNORM)
+ | (!usblp->wcomplete ? 0 : POLLOUT | POLLWRNORM);
}
static int usblp_ioctl(struct inode *inode, struct file *file, unsigned int cmd,
unsigned long arg)
@@ -738,7 +736,7 @@
usblp->readurb->dev = usblp->dev;
usblp->readcount = 0;
if (usb_submit_urb(usblp->readurb, GFP_KERNEL) < 0)
- dbg("error submitting urb");
+ dbg("error submitting urb");
count = -EIO;
goto done;
}
===================================================================
This BitKeeper patch contains the following changesets:
1.2146
## Wrapped with gzip_uu ##
begin 664 bkpatch2383
M'XL(`,0H(3\``ZU4VT[;0!!]]G[%%%Z(J.V]V4E<A=*2JD50$J6@/J*UO4ZL
M^!*M;2B2/[EMAIL PROTECTED]/7..S^P<>Q<N*JD"J\S2*ZG0+GPIJSJP=)PW
ML2R<0C;K)G=*M=2Y15GJG+LJ<^GV`/=<25FY317:U/&0KIF+.EJ!3E6!11RV
M?5+?;&[EMAIL PROTECTED],H&CE2B6\INL83)!X?HP;[EMAIL PROTECTED]
M0JB'F><3KZ4CQGA+?!S&.HSI<)R$_ACU@@Z?4/Z8BN$AQ910RDG+?88YF@)Q
M*.$^8.;BH4L](#SP>,!'^Y@&&,/SU+!/P,;H([Q>_Q&*P(8HDZ)H-E`FH*2.
M*PFBB&%39ADZ`:V7^&A^?W3(_LL+(2PP.GA";ZRZ)LTLW8U*BUHJ)[K7SO&8
M^"VCG([;,!%X-&;C(1<)9E'[EMAIL PROTECTED]<ZYWY*A1WUCC&<A
M3QOE%<)?,LUOA1L3,3U/S8>-B8:_6LC_`PMQL/W_:*%$?Y(0E4K)J(:P21*I
M("W`J+^\]9<IS--*[^*T6$)61NO+M52%S.YK[PRH9%Y>[EMAIL PROTECTED](AN=%IV!FU4
M:!]4M:B;[EMAIL PROTECTED]'H4D_:$K3Z"[EMAIL PROTECTED];SY\X/]!QM/V<@'@H[[Q;(L0V4?
M*-V1;OHM/-@;H;421:7/XC+.Q>`=FG+<`:><,+-0"A0=<\KT`I:2=:,*V-M[
M<TL3IG&JH&WA[H&*RGR3R5H.X#U@"&`^.ST]/@-H3;28GLT67P>:[EMAIL PROTECTED]
[EMAIL PROTECTED]@9Q?GM]CO"X/5&H><=#WVBV:*P^7>CE2J5%`U89[6=3<\W=Z.KM[^
8:J.5C-95DT]"+Z8")Q'Z"9,[EMAIL PROTECTED]
`
end
-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel