Peter Memishian wrote: > > I'm not going to disagree with you too strongly, but I do note that the > > man page claims: > > > > These macros assume the message itself is well formed, that > > is: mp->b_datap->db_base <= mp->b_rptr <= mp->b_wptr <= mp- > > >b_datap->db_lim. > > That claim should probably just be removed, as I think they will return > the "right" answer regardless. I don't recall what prompted me to put > that in there -- maybe paranoia. > > > The other problem with casting to (int), is that if the mblk were *very* > > large, you might lose the high order bits. > > I'm not aware of any cases where an mblk is 2^31 or greater. > > > Maybe a better solution is to insert an assertion at the right point, > > e.g. (casting and parenthesis omitted for clarity): > > > > #ifdef DEBUG > > #define MBLKL(mp) ((mp->b_wptr >= mp->b_rptr) ? mp->b_wptr - > > mp->b-rptr : ASSERT(mp->b_wptr >= mp->b_rptr) > > #else > > #define MBLKL(mp) ... use traditional definition here ... > > #endif > > If we could go back in time, I think that'd be good. If we do it now, I > think we'll be hitting assertions for months. Yes, it's good to find > those cases, but many of them will end up being benign. I'd rather just > deal with the lint problems and leave other rocks associated with MBLKL() > and friends right-side-up for now. >
I'm not sure I understand what you're suggesting. Are you suggesting that I just drop this issue on the floor, and abandon the attempt to clean this up? -- Garrett > -- > meem > _______________________________________________ > driver-discuss mailing list > [EMAIL PROTECTED] > http://mail.opensolaris.org/mailman/listinfo/driver-discuss > _______________________________________________ opensolaris-code mailing list opensolaris-code@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/opensolaris-code