Date: Fri, 21 Feb 2003 15:07:43 -0500 From: Bosko Milekic <bmilekic@unixdaemons.com> To: Terry Lambert <tlambert2@mindspring.com> Cc: Hiten Pandya <hiten@unixdaemons.com>, FreeBSD-arch@FreeBSD.ORG Subject: Re: Mbuf flags cleanup proposal Message-ID: <20030221150743.A79345@unixdaemons.com> In-Reply-To: <3E5673E7.F3F1FA4F@mindspring.com>; from tlambert2@mindspring.com on Fri, Feb 21, 2003 at 10:45:59AM -0800 References: <20030221151007.GA60348@unixdaemons.com> <3E5673E7.F3F1FA4F@mindspring.com>
next in thread | previous in thread | raw e-mail | index | archive | help
For What It's Worth: On Fri, Feb 21, 2003 at 10:45:59AM -0800, Terry Lambert wrote: > Hiten Pandya wrote: > > Gang. I have a proposal to rename the current mbuf subsystem > > flag bits as follows: > > > > mbuf (sys/mbuf.h) flags: > > > > M_TRYWAIT -> MB_TRYWAIT > > M_DONTWAIT -> MB_DONTWAIT > > [ ... ] > > > Any reasonable objections/comments? > > 1) This seems to move away from integration of UVA and the > mbuf allocator. You mean UMA. And this has absolutely nothing to do with it. There are several other reasons that the move is most likely not going to happen (they are cited at the top of the most recent subr_mbuf.c in the comments). I wish people read those more often and stopped blindly recommending where and to what things should move towards, without providing reasonable solutions to the problems that actually arise when TRYING to do what they suggest. In other words, talk is cheap, dirt cheap. > 2) It seems to me that all code should be moving to non-blocking > interfaces, and blocking interfaces should be deprecated. > > 3) "TRYWAIT" is really useless; either I can depend on blocking > until the request is satisfied, or I can't; if I can't, then > I might as well not have the extra complication of "wait a > little bit, and then fail anyway": it doesn't make my code > any less complicated. The behavior has absolutely nothing to do with your code. It's not an API thing, it's the default behavior of the allocator which tries to wait at least a little bit to see if it can recover during an exhaustion before giving up. I agree with you when you say that the networking code[1] should be taught to deal with failure (however "drastic" its dealing with it is is irrelevant), but that should not be sufficient reason to preclude the allocator from at least trying harder when it's in a tight spot. [1] This is what I infer you're saying from this post and this earlier one: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=333614+0+archive/2003/ \ freebsd-arch/20030126.freebsd-arch > -- Terry As for the flags renaming, although I would like to see it, Sam made a good point in the first response to this post. Now let's just let it die and move on to bigger and better things. -- Bosko Milekic * bmilekic@unixdaemons.com * bmilekic@FreeBSD.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030221150743.A79345>