From: Mark H. <ma...@os...> - 2004-04-19 16:15:15
|
On Sat, 2004-04-17 at 10:42, Ling, Xiaofeng wrote: > Ok, these are good patches, you can just check in them. Done. >=20 > > -----Original Message----- > > From: Mark Haverkamp [mailto:ma...@os...]=20 > > Sent: 2004=E5=B9=B44=E6=9C=8817=E6=97=A5 1:41 > > To: Guo, Min; Ling, Xiaofeng; tipc > > Subject: mcast patches > >=20 > >=20 > > Here are some patches for your consideration. =20 > >=20 > > The recvbcast.c patch allows tipc_bcast_stop access to=20 > > bnode_outqueue_release. > >=20 > > The name_table.c patch fixed an occasional panic where the=20 > > for loop could run off the end of the seq table. > >=20 > > the bcast.c patch moves prev_destnode outside the=20 > > list_for_each so it isn't continually being zeroed out.=20 > >=20 > > Thanks, > > Mark. > >=20 > > Index: recvbcast.c=20 > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > RCS file: /cvsroot/tipc/source/unstable/net/tipc/recvbcast.c,v > > retrieving revision 1.11 > > diff -u -r1.11 recvbcast.c > > --- recvbcast.c 16 Apr 2004 04:03:46 -0000 1.11 > > +++ recvbcast.c 16 Apr 2004 17:34:33 -0000 > > @@ -166,7 +166,7 @@ > > * Input: ackno: the acked packet seqno > > * Return: void > > */ > > -static void bnode_outqueue_release(int ackno) > > +void bnode_outqueue_release(int ackno) > > { > > struct sk_buff *buf; > > =09 > > Index: name_table.c=20 > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > RCS file: /cvsroot/tipc/source/unstable/net/tipc/name_table.c,v > > retrieving revision 1.8 > > diff -u -r1.8 name_table.c > > --- name_table.c 16 Apr 2004 04:03:46 -0000 1.8 > > +++ name_table.c 16 Apr 2004 17:34:33 -0000 > > @@ -723,6 +723,9 @@ > > =20 > > if (high_seq < low_seq) > > goto not_found;=20 > > + > > + if (high_seq >=3D seq->first_free) > > + high_seq =3D seq->first_free -1; > > =20 > > spin_lock_bh(&seq->lock); > > =20 > > @@ -794,6 +797,9 @@ > > high_seq =3D nameseq_find_insert_pos(seq,upper);=20 > > if (high_seq < 0) > > high_seq =3D high_seq < 0 ? ((~high_seq) -1): high_seq; > > + > > + if (high_seq >=3D seq->first_free) > > + high_seq =3D seq->first_free -1; > > =20 > > if (high_seq < low_seq) > > goto not_found;=20 > > Index: bcast.c=20 > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > RCS file: /cvsroot/tipc/source/unstable/net/tipc/bcast.c,v > > retrieving revision 1.14 > > diff -u -r1.14 bcast.c > > --- bcast.c 16 Apr 2004 04:03:46 -0000 1.14 > > +++ bcast.c 16 Apr 2004 17:34:33 -0000 > > @@ -427,8 +427,8 @@ > > int i =3D 0,prev_destnode;=09 > > struct mc_identity* mid; > > =09 > > + prev_destnode =3D 0; > > list_for_each(pos,mc_head) { > > - prev_destnode =3D 0; > > mid =3D list_entry(pos,struct mc_identity,list); > > if (mid !=3D NULL && (prev_destnode !=3D mid->node)){ > > prev_destnode =3D mid->node; > >=20 > > --=20 > > Mark Haverkamp <ma...@os...> > >=20 > >=20 >=20 >=20 > ------------------------------------------------------- > This SF.Net email is sponsored by: IBM Linux Tutorials > Free Linux tutorial presented by Daniel Robbins, President and CEO of > GenToo technologies. Learn everything from fundamentals to system > administration.http://ads.osdn.com/?ad_id=1470&alloc_id638&opk > _______________________________________________ > TIPC-discussion mailing list > TIP...@li... > https://lists.sourceforge.net/lists/listinfo/tipc-discussion --=20 Mark Haverkamp <ma...@os...> |