Date: Thu, 5 Apr 2007 09:15:33 +0900 From: Pyun YongHyeon <pyunyh@gmail.com> To: Marv <b@helectronics.de> Cc: freebsd-net@freebsd.org Subject: Re: if_msk in 6.2 Message-ID: <20070405001533.GA15837@cdnetworks.co.kr> In-Reply-To: <20070404190649.GB986@home.bh.net> References: <20070404100200.GA1167@home.bh.net> <20070404111158.GB11525@cdnetworks.co.kr> <20070404190649.GB986@home.bh.net>
next in thread | previous in thread | raw e-mail | index | archive | help
--BXVAT5kNtrzKuDFl Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Wed, Apr 04, 2007 at 09:06:49PM +0200, Marv wrote: > Thanks for your reply. I checked out the kernel source tree of RELENG_6, > applied your patch and compiled a new kernel. > > The kernel boots and detects a 88E8038 Ethernet card but then hangs: > > mskc0: <Marvell Yukon 88E8038 Gigabit Ethernet> irq 16 at device 0.0 on > pci2 > mskc0: 0x4000 bytes of rid 0x10 res 3 failed (0, 0xffffffff). > mskc0: unknown device: id=0xff, rev=0x0f > > (doing nothing no more at this point). > > Was there some kind of detection failure or is my ethernet controller > not configured properly to fit the driver? > Since msk(4) supports 88E8038 I guess the device was not properly initialized/recognized by system BIOS. But it's driver bug if it hang your system when it encounter an exceptional condition. Try attached patch and report back the result. It wouldn't fix device recognization but it will not hang your system. -- Regards, Pyun YongHyeon --BXVAT5kNtrzKuDFl Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="if_msk.patch2" Index: if_msk.c =================================================================== RCS file: /home/ncvs/src/sys/dev/msk/if_msk.c,v retrieving revision 1.11.2.2 diff -u -r1.11.2.2 if_msk.c --- if_msk.c 2 Apr 2007 01:22:31 -0000 1.11.2.2 +++ if_msk.c 5 Apr 2007 00:12:53 -0000 @@ -1581,8 +1581,8 @@ sc->msk_hw_id > CHIP_ID_YUKON_FE) { device_printf(dev, "unknown device: id=0x%02x, rev=0x%02x\n", sc->msk_hw_id, sc->msk_hw_rev); - error = ENXIO; - goto fail; + mtx_destroy(&sc->msk_mtx); + return (ENXIO); } SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), --BXVAT5kNtrzKuDFl--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070405001533.GA15837>