Date: Thu, 16 Sep 2004 03:42:14 -0000 From: Pyun YongHyeon <yongari@kt-is.co.kr> To: pf4freebsd@freelists.org Cc: Dennis.Berger@BSDsystems.de Subject: [pf4freebsd] Re: patches for ALTQ on 5.1R Message-ID: <20030729133844.GA5934@kt-is.co.kr> In-Reply-To: <20030729021246.GA4291@kt-is.co.kr> References: <20030729021246.GA4291@kt-is.co.kr>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jul 29, 2003 at 11:12:46AM +0900, To pf4freebsd@freelists.org wrote: > > Hello All, > > There is a patch for Dennis Berger's ALTQ. > This patch was posted to Dennis and he published the patch > on this URL. His next release will include this patch. > > http://www.nipsi.de/FreeBSD/altqfixes.0.1 > > Above patch solves Dennis' IF_POLL macro problem. It also > touches wi(4) driver and provide a new ALTQ driver tun(4). > Beware! Both wi(4) and tun(4) driver was not tested at all. > So you may get panics!(I just have fxp(4)) > I hope the tun(4) driver can be used to experiment > "prioritizing empty TCP acks". > Hello All, I got several random lockups when I enable ALTQ. If I ping to the victim system during boot, the system is paniced. I think this problem comes from ALTQ fxp(4) driver. Based on http://people.freebsd.org/~hmp/patches/if_fxp-alt.diff I made a patch for ALTQ fxp driver. This patch was generated after applying Dennis's ALTQ patch. I can't sure this patch solves all fxp(4) problems but it works for me at least up to now. --- ./sys.altq/dev/fxp/if_fxpvar.h.ORG Tue Jul 29 22:25:51 2003 +++ ./sys.altq/dev/fxp/if_fxpvar.h Tue Jul 29 22:13:34 2003 @@ -111,8 +111,14 @@ #define mtx_destroy(a) struct mtx { int dummy; }; #else -#define FXP_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) -#define FXP_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) +#define FXP_LOCK(_sc) do { \ + if (!mtx_owned(&(_sc)->sc_mtx)) \ + mtx_lock(&(_sc)->sc_mtx); \ +} while(0) +#define FXP_UNLOCK(_sc) do { \ + if (mtx_owned(&(_sc)->sc_mtx)); \ + mtx_unlock(&(_sc)->sc_mtx); \ +} while(0) #endif /* Thanks. Regards, -- Pyun YongHyeon <http://www.kr.freebsd.org/~yongari>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030729133844.GA5934>