From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:54712) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q9gSx-0005gO-Ic for qemu-devel@nongnu.org; Tue, 12 Apr 2011 12:29:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q9gSw-0000Ah-D0 for qemu-devel@nongnu.org; Tue, 12 Apr 2011 12:29:23 -0400 Received: from mx1.redhat.com ([209.132.183.28]:5203) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q9gSw-0000AY-3f for qemu-devel@nongnu.org; Tue, 12 Apr 2011 12:29:22 -0400 Message-ID: <4DA47DD9.4060002@redhat.com> Date: Tue, 12 Apr 2011 18:29:13 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v5 0/5] atapi: Implement 'media' subcommand for GESN List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Amit Shah Cc: Kevin Wolf , Juan Quintela , Stefan Hajnoczi , Markus Armbruster , qemu list , Jes Sorensen On 04/12/2011 06:06 PM, Amit Shah wrote: > The GET_EVENT_STATUS_NOTIFICATION ATAPI command is listed as a > mandatory command in the spec but we don't really implement it any of > its sub-commands. > > The commit message for the last commit explains why implementing just > the media subcommand is helpful and how it goes a long way in getting > guests to behave as expected. > > The difference from the RFC series sent earlier is: > - Split into more patches > - Add tray open/close notification (from Markus) > > There certainly is much more work to be done for the other commands > and also for state change handling (tray open / close / new media) > overall for the block layer, but this is a good first step in being > spec-compliant and at the same time making guests work. > > v5: > - re-add initialisation of gesn_event_header->notification_class; it > is a bug to not init it; add comment. > - remove max_len param from call to event_status_media() > - convert enums to upper case. > > v4: > - gesn_event_header should point to buf > - compile fix for patch 3/5 > - remove initialisation without effect of a variable. > > v3: > - Add gesn_event_header struct, further removing a few constants used > - Set reserved bits to 0 for the media subcommand > - Remove the function handling NEA, move to generic code > - Re-do patch series to reflect above change > - Merge vmstate patches with patch introducing new fields > - Merge fixes for other comments by Kevin > > v2: > - Update comments > - Use struct instead of enum for cdb packet > - Add a new subsection to vmstate for new fields for save/restore > > v1: > - Split into more patches > - Add tray open/close notification (from Markus) > > RFC: > - Orig. series > > Amit Shah (5): > atapi: Allow GET_EVENT_STATUS_NOTIFICATION after media change > atapi: Move GET_EVENT_STATUS_NOTIFICATION command handling to its own > function > atapi: GESN: Use structs for commonly-used field types > atapi: GESN: Standardise event response handling for future additions > atapi: GESN: implement 'media' subcommand > > hw/ide/core.c | 187 +++++++++++++++++++++++++++++++++++++++++++++++------ > hw/ide/internal.h | 6 ++ > 2 files changed, 174 insertions(+), 19 deletions(-) ACK Please consider moving structs and enums to a common header file (mmc.h or atapi.h) and naming them to avoid void* casts in a followup. Paolo