From owner-freebsd-bugs Sun Jul 1 12:10: 6 2001 Delivered-To: freebsd-bugs@hub.freebsd.org Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id C87F137B405 for ; Sun, 1 Jul 2001 12:10:02 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.11.3/8.11.3) id f61JA2w81240; Sun, 1 Jul 2001 12:10:02 -0700 (PDT) (envelope-from gnats) Received: from arg1.demon.co.uk (arg1.demon.co.uk [194.222.34.166]) by hub.freebsd.org (Postfix) with ESMTP id 08F4D37B405 for ; Sun, 1 Jul 2001 12:09:02 -0700 (PDT) (envelope-from arg@arg1.demon.co.uk) Received: by arg1.demon.co.uk (Postfix, from userid 300) id 1118C9B03; Sun, 1 Jul 2001 20:08:57 +0100 (BST) Message-Id: <20010701190857.1118C9B03@arg1.demon.co.uk> Date: Sun, 1 Jul 2001 20:08:57 +0100 (BST) From: arg@arg1.demon.co.uk Reply-To: arg@arg1.demon.co.uk To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.113 Subject: kern/28604: DVD_REPORT_RPC/DVD_SEND_RPC in ATAPI driver Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org >Number: 28604 >Category: kern >Synopsis: DVD_REPORT_RPC/DVD_SEND_RPC in ATAPI driver >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Jul 01 12:10:02 PDT 2001 >Closed-Date: >Last-Modified: >Originator: Andrew Gordon >Release: FreeBSD 4.3-STABLE i386 >Organization: >Environment: System: FreeBSD server.arg.sj.co.uk 4.3-STABLE FreeBSD 4.3-STABLE #12: Thu May 24 01:04:11 BST 2001 arg@server.arg.sj.co.uk:/usr/src/sys/compile/SERVER i386 >Description: The implementation DVD_REPORT_RPC/DVD_SEND_RPC ioctls in the atapi-cd driver is incomplete: it performs the correct operations on the drive, but fails to pass the parameter to/from user space, making the call useless. [Note: these are the ioctls used to set/read the region code on a DVD drive - necessary to initialise an 'out of the box' drive to allow region-specific DVDs to be played] The equivalent ioctls in the CAM cd driver were fixed a while ago. >How-To-Repeat: A small program to exercise these calls can be found at. http://www.arg1.demon.co.uk/freebsd.html >Fix: Index: dev/ata/atapi-cd.c =================================================================== RCS file: /repository/src/sys/dev/ata/atapi-cd.c,v retrieving revision 1.48.2.10 diff -u -r1.48.2.10 atapi-cd.c --- dev/ata/atapi-cd.c 2001/02/25 21:35:20 1.48.2.10 +++ dev/ata/atapi-cd.c 2001/07/01 19:02:32 @@ -1584,6 +1584,8 @@ ai->reg_type = (d.data[0] >> 6); ai->vend_rsts = (d.data[0] >> 3) & 0x7; ai->user_rsts = d.data[0] & 0x7; + ai->region = d.data[1]; + ai->rpc_scheme = d.data[2]; break; case DVD_INVALIDATE_AGID: @@ -1620,6 +1622,7 @@ break; case DVD_SEND_RPC: + d.data[0] = ai->region; length = 8; break; >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message