From owner-freebsd-alpha Fri Mar 23 20:50: 6 2001 Delivered-To: freebsd-alpha@freebsd.org Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 25DF537B71A for ; Fri, 23 Mar 2001 20:50:01 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.11.1/8.11.1) id f2O4o1c84147; Fri, 23 Mar 2001 20:50:01 -0800 (PST) (envelope-from gnats) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 0F52E37B719 for ; Fri, 23 Mar 2001 20:49:26 -0800 (PST) (envelope-from nobody@FreeBSD.org) Received: (from nobody@localhost) by freefall.freebsd.org (8.11.1/8.11.1) id f2O4nQF84123; Fri, 23 Mar 2001 20:49:26 -0800 (PST) (envelope-from nobody) Message-Id: <200103240449.f2O4nQF84123@freefall.freebsd.org> Date: Fri, 23 Mar 2001 20:49:26 -0800 (PST) From: leclercn@videotron.ca To: freebsd-gnats-submit@freebsd.org X-Send-Pr-Version: www-1.0 Subject: alpha/26042: dev_t size mismatch for DEC Alpha CPUs - kernel / userland Sender: owner-freebsd-alpha@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org >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