Date: Fri, 23 Mar 2001 20:49:26 -0800 (PST) From: leclercn@videotron.ca To: freebsd-gnats-submit@freebsd.org Subject: alpha/26042: dev_t size mismatch for DEC Alpha CPUs - kernel / userland Message-ID: <200103240449.f2O4nQF84123@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 26042 >Category: alpha >Synopsis: dev_t size mismatch for DEC Alpha CPUs - kernel / userland >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-alpha >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Mar 23 20:50:00 PST 2001 >Closed-Date: >Last-Modified: >Originator: Normand Leclerc >Release: 4.2 stable cvsed 23rd March >Organization: >Environment: FreeBSD atom.quanta.ca 4.3-RC FreeBSD 4.3-RC #3: Fri Mar 23 22:41:15 EST 2001 root@atom.quanta.ca:/usr/src/sys/compile/ATOM alpha >Description: I Had problems with vinum. While debugging, I found that the disk structure of vinum had a size mismatch between kernel module and userland. I investigated and found that dev_t is a 64bits in kernel but 32 bits in userland. (/usr/src/sys/sys/types.h). Once dev_t is converted to 64 bits for userland, vinum works perfectly. This will affect more than just vinum. >How-To-Repeat: On an Alpha machine, vinum can't print configuration when one exists. When vinum attempts to create a configuration, it will fail. >Fix: In /usr/src/sys/sys/types.h, I changed the line typedef u_int32_t dev_t; /* device number */ to #ifdef __alpha__ typedef u_int64_t dev_t; /* device number */ #else typedef u_int32_t dev_t; /* device number */ #endif >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200103240449.f2O4nQF84123>