On Wed, 18 Feb 2004 14:31:15 -0500 (EST)
Alan Stern <[EMAIL PROTECTED]> wrote:

> On Wed, 18 Feb 2004, Stephen Hemminger wrote:
> 
> > Got this running with my irda driver that does lots of unlinks
> > with 2.6.3.
> > Looks like another race between the interrupt and unlink.
> 
> My compiled code is different from yours.  Can you either tell me which
> source line in uhci_unlink_generic() is at offset 0xe4 or else post a
> disassembled listing of the routine?

0000360c <uhci_unlink_generic>:
    360c:       55                      push   %ebp
    360d:       89 e5                   mov    %esp,%ebp
    360f:       57                      push   %edi
    3610:       56                      push   %esi
    3611:       53                      push   %ebx
    3612:       83 ec 24                sub    $0x24,%esp
    3615:       8b 45 0c                mov    0xc(%ebp),%eax
    3618:       8b 40 08                mov    0x8(%eax),%eax
    361b:       c7 45 e8 01 00 00 00    movl   $0x1,0xffffffe8(%ebp)
    3622:       85 c0                   test   %eax,%eax
    3624:       89 45 ec                mov    %eax,0xffffffec(%ebp)
    3627:       0f 84 6a 01 00 00       je     3797 <uhci_unlink_generic+0x18b>
    362d:       8b 55 0c                mov    0xc(%ebp),%edx
    3630:       89 54 24 04             mov    %edx,0x4(%esp,1)
    3634:       8b 4d 08                mov    0x8(%ebp),%ecx
    3637:       89 0c 24                mov    %ecx,(%esp,1)
    363a:       e8 23 ed ff ff          call   2362 <uhci_dec_fsbr>
    363f:       8b 55 ec                mov    0xffffffec(%ebp),%edx
    3642:       8b 45 ec                mov    0xffffffec(%ebp),%eax
    3645:       83 c0 10                add    $0x10,%eax
    3648:       89 45 f0                mov    %eax,0xfffffff0(%ebp)
    364b:       8b 72 10                mov    0x10(%edx),%esi
    364e:       39 c6                   cmp    %eax,%esi
    3650:       3e 0f 85 93 00 00 00    jne,pt 36ea <uhci_unlink_generic+0xde>
    3657:       e9 0a 01 00 00          jmp    3766 <uhci_unlink_generic+0x15a>
    365c:       8b 45 e4                mov    0xffffffe4(%ebp),%eax
    365f:       8d 53 01                lea    0x1(%ebx),%edx
    3662:       8b 78 08                mov    0x8(%eax),%edi
    3665:       81 e2 ff 07 00 00       and    $0x7ff,%edx
    366b:       89 f8                   mov    %edi,%eax
    366d:       c1 e8 15                shr    $0x15,%eax
    3670:       83 c0 01                add    $0x1,%eax
    3673:       25 ff 07 00 00          and    $0x7ff,%eax
    3678:       39 c2                   cmp    %eax,%edx
    367a:       0f 92 c2                setb   %dl
    367d:       3b 75 f0                cmp    0xfffffff0(%ebp),%esi
    3680:       0f 94 c0                sete   %al
    3683:       09 d0                   or     %edx,%eax
    3685:       a8 01                   test   $0x1,%al
    3687:       74 7a                   je     3703 <uhci_unlink_generic+0xf7>
    3689:       89 f8                   mov    %edi,%eax
    368b:       31 c9                   xor    %ecx,%ecx
    368d:       8b 55 0c                mov    0xc(%ebp),%edx
    3690:       25 ff 00 00 00          and    $0xff,%eax
    3695:       8b 52 18                mov    0x18(%edx),%edx
    3698:       83 f8 69                cmp    $0x69,%eax
    369b:       89 55 dc                mov    %edx,0xffffffdc(%ebp)
    369e:       b8 01 00 00 00          mov    $0x1,%eax
    36a3:       0f 95 c1                setne  %cl
    36a6:       c1 ef 0f                shr    $0xf,%edi
    36a9:       89 fb                   mov    %edi,%ebx
    36ab:       89 4d d8                mov    %ecx,0xffffffd8(%ebp)
    36ae:       89 ca                   mov    %ecx,%edx
    36b0:       83 e3 0f                and    $0xf,%ebx
    36b3:       c1 ef 04                shr    $0x4,%edi
    36b6:       89 d9                   mov    %ebx,%ecx
    36b8:       83 e7 01                and    $0x1,%edi
    36bb:       d3 e0                   shl    %cl,%eax
    36bd:       83 f7 01                xor    $0x1,%edi
    36c0:       8b 4d dc                mov    0xffffffdc(%ebp),%ecx
    36c3:       f7 d0                   not    %eax
    36c5:       23 44 91 38             and    0x38(%ecx,%edx,4),%eax
    36c9:       89 d9                   mov    %ebx,%ecx
    36cb:       d3 e7                   shl    %cl,%edi
    36cd:       8b 4d dc                mov    0xffffffdc(%ebp),%ecx
    36d0:       09 f8                   or     %edi,%eax
    36d2:       89 44 91 38             mov    %eax,0x38(%ecx,%edx,4)
    36d6:       8b 45 e4                mov    0xffffffe4(%ebp),%eax
    36d9:       8b 58 04                mov    0x4(%eax),%ebx
    36dc:       81 e3 00 00 80 00       and    $0x800000,%ebx
    36e2:       3b 75 f0                cmp    0xfffffff0(%ebp),%esi
    36e5:       89 5d e8                mov    %ebx,0xffffffe8(%ebp)
    36e8:       74 7c                   je     3766 <uhci_unlink_generic+0x15a>
    36ea:       8d 4e e4                lea    0xffffffe4(%esi),%ecx
    36ed:       89 4d e4                mov    %ecx,0xffffffe4(%ebp)
    36f0:       8b 59 04                mov    0x4(%ecx),%ebx


-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to