From patchwork Fri Oct 24 11:37:07 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Peter Maydell X-Patchwork-Id: 39455 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-ee0-f70.google.com (mail-ee0-f70.google.com [74.125.83.70]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id 8836624026 for ; Fri, 24 Oct 2014 12:00:47 +0000 (UTC) Received: by mail-ee0-f70.google.com with SMTP id b15sf78702eek.1 for ; Fri, 24 Oct 2014 05:00:46 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:delivered-to:from:to:date:message-id:in-reply-to :references:mime-version:subject:precedence:list-id:list-unsubscribe :list-archive:list-post:list-help:list-subscribe:errors-to:sender :x-original-sender:x-original-authentication-results:mailing-list :content-type:content-transfer-encoding; bh=lse5v3dBx6OvvLIfp1K4Co2ao/pWebTj69pwltbTxGM=; b=mFzkkktAfY8BN1T63NCEBHBVAchhEARYEHgbltWsUunpTmUAwrjKEhEXNOO/Sz18ay uKRvvsQwuQvAtpGF+/4lJbpnWNoEpxlGDTyLk1cKvsPNhP/HuVN/uRKgIr7SYe/OqnFd TKExox0n2YDEaDSbhk20mMiE0C1qryj9zEW3Eh1SM1dWc8Njv398m+g1I3tv2UYywnhW nVI4suQ3X++VeuTx1LrWC/8V/5swXOkUNCE0naloXezs2SE3qXUzGik1Dl+wfCG6LvI2 Y73W4zr76kpS1uXnln8Z+Ya4d4TkXIEFwpMfifs1Ggkzm4H6LEFZK5pKfsK+WAlg9quM JSGQ== X-Gm-Message-State: ALoCoQnAqTMMKJFFYkUOUr6LN5Zkwar5pCnkecEOm0/ttt9XI5y8XZvZjYnpdn5U+Sv7KkU7NMmr X-Received: by 10.194.206.10 with SMTP id lk10mr2331705wjc.3.1414152046694; Fri, 24 Oct 2014 05:00:46 -0700 (PDT) X-BeenThere: patchwork-forward@linaro.org Received: by 10.152.26.130 with SMTP id l2ls404647lag.45.gmail; Fri, 24 Oct 2014 05:00:46 -0700 (PDT) X-Received: by 10.112.172.231 with SMTP id bf7mr2229761lbc.100.1414152046536; Fri, 24 Oct 2014 05:00:46 -0700 (PDT) Received: from mail-la0-f51.google.com (mail-la0-f51.google.com. [209.85.215.51]) by mx.google.com with ESMTPS id m8si6623711lah.97.2014.10.24.05.00.46 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 24 Oct 2014 05:00:46 -0700 (PDT) Received-SPF: pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.215.51 as permitted sender) client-ip=209.85.215.51; Received: by mail-la0-f51.google.com with SMTP id ge10so2520929lab.10 for ; Fri, 24 Oct 2014 05:00:46 -0700 (PDT) X-Received: by 10.152.6.228 with SMTP id e4mr3929785laa.71.1414152046424; Fri, 24 Oct 2014 05:00:46 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patch@linaro.org Received: by 10.112.84.229 with SMTP id c5csp414199lbz; Fri, 24 Oct 2014 05:00:45 -0700 (PDT) X-Received: by 10.224.163.78 with SMTP id z14mr4987563qax.69.1414152043666; Fri, 24 Oct 2014 05:00:43 -0700 (PDT) Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id k2si7360178qai.124.2014.10.24.05.00.43 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Fri, 24 Oct 2014 05:00:43 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Received: from localhost ([::1]:47076 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XhdXu-0002Ye-BT for patch@linaro.org; Fri, 24 Oct 2014 08:00:42 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50565) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XhdBh-0006g5-IT for qemu-devel@nongnu.org; Fri, 24 Oct 2014 07:37:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XhdBg-0008VM-9O for qemu-devel@nongnu.org; Fri, 24 Oct 2014 07:37:45 -0400 Received: from mnementh.archaic.org.uk ([2001:8b0:1d0::1]:54280) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XhdBg-0008OE-2a for qemu-devel@nongnu.org; Fri, 24 Oct 2014 07:37:44 -0400 Received: from pm215 by mnementh.archaic.org.uk with local (Exim 4.80) (envelope-from ) id 1XhdBR-0007vJ-Gb for qemu-devel@nongnu.org; Fri, 24 Oct 2014 12:37:29 +0100 From: Peter Maydell To: qemu-devel@nongnu.org Date: Fri, 24 Oct 2014 12:37:07 +0100 Message-Id: <1414150649-30428-2-git-send-email-peter.maydell@linaro.org> X-Mailer: git-send-email 1.7.10.4 In-Reply-To: <1414150649-30428-1-git-send-email-peter.maydell@linaro.org> References: <1414150649-30428-1-git-send-email-peter.maydell@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:8b0:1d0::1 Subject: [Qemu-devel] [PULL 01/23] hmp: Remove "info pcmcia" X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: , List-Help: , List-Subscribe: , Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org X-Removed-Original-Auth: Dkim didn't pass. X-Original-Sender: peter.maydell@linaro.org X-Original-Authentication-Results: mx.google.com; spf=pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.215.51 as permitted sender) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org X-Google-Group-Id: 836684582541 From: Markus Armbruster This command lists PCMCIA sockets and cards. Only a few ARM boards have sockets (akita, borzoi, connex, mainstone, spitz, terrier, tosa, verdex, z2), the only card is the DSCM-1xxxx Hitachi Microdrive (qdev "microdrive"), and it is only inserted during machine init, if ever. So this command doesn't really tell anybody anything new so far. Moreover, pcmcia_socket_unregister() has a use-after-free bug, flagged by Coverity. Has never been used, because there has never been code to eject a PCMCIA card. Not worth fixing & converting to QMP. Remove it. Signed-off-by: Markus Armbruster Acked-by: Luiz Capitulino Acked-by: Andreas Färber Message-id: 1411144812-22958-1-git-send-email-armbru@redhat.com Signed-off-by: Peter Maydell --- hmp-commands.hx | 2 -- hw/ide/microdrive.c | 1 - hw/pcmcia/pxa2xx.c | 21 --------------------- include/hw/pcmcia.h | 6 ------ monitor.c | 8 -------- vl.c | 44 -------------------------------------------- 6 files changed, 82 deletions(-) diff --git a/hmp-commands.hx b/hmp-commands.hx index 0b1a4f7..e37bc8b 100644 --- a/hmp-commands.hx +++ b/hmp-commands.hx @@ -1748,8 +1748,6 @@ show information about active capturing show list of VM snapshots @item info status show the current VM status (running|paused) -@item info pcmcia -show guest PCMCIA status @item info mice show which guest mouse is receiving events @item info vnc diff --git a/hw/ide/microdrive.c b/hw/ide/microdrive.c index ed85185..6639dd4 100644 --- a/hw/ide/microdrive.c +++ b/hw/ide/microdrive.c @@ -543,7 +543,6 @@ static int dscm1xxxx_attach(PCMCIACardState *card) device_reset(DEVICE(md)); md_interrupt_update(md); - card->slot->card_string = "DSCM-1xxxx Hitachi Microdrive"; return 0; } diff --git a/hw/pcmcia/pxa2xx.c b/hw/pcmcia/pxa2xx.c index 55e8a2a..a7e1877 100644 --- a/hw/pcmcia/pxa2xx.c +++ b/hw/pcmcia/pxa2xx.c @@ -149,24 +149,11 @@ PXA2xxPCMCIAState *pxa2xx_pcmcia_init(MemoryRegion *sysmem, sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, base); s = PXA2XX_PCMCIA(dev); - if (base == 0x30000000) { - s->slot.slot_string = "PXA PC Card Socket 1"; - } else { - s->slot.slot_string = "PXA PC Card Socket 0"; - } - qdev_init_nofail(dev); return s; } -static void pxa2xx_pcmcia_realize(DeviceState *dev, Error **errp) -{ - PXA2xxPCMCIAState *s = PXA2XX_PCMCIA(dev); - - pcmcia_socket_register(&s->slot); -} - static void pxa2xx_pcmcia_initfn(Object *obj) { SysBusDevice *sbd = SYS_BUS_DEVICE(obj); @@ -262,19 +249,11 @@ void pxa2xx_pcmcia_set_irq_cb(void *opaque, qemu_irq irq, qemu_irq cd_irq) s->cd_irq = cd_irq; } -static void pxa2xx_pcmcia_class_init(ObjectClass *oc, void *data) -{ - DeviceClass *dc = DEVICE_CLASS(oc); - - dc->realize = pxa2xx_pcmcia_realize; -} - static const TypeInfo pxa2xx_pcmcia_type_info = { .name = TYPE_PXA2XX_PCMCIA, .parent = TYPE_SYS_BUS_DEVICE, .instance_size = sizeof(PXA2xxPCMCIAState), .instance_init = pxa2xx_pcmcia_initfn, - .class_init = pxa2xx_pcmcia_class_init, }; static void pxa2xx_pcmcia_register_types(void) diff --git a/include/hw/pcmcia.h b/include/hw/pcmcia.h index 2695d3c..98406ff 100644 --- a/include/hw/pcmcia.h +++ b/include/hw/pcmcia.h @@ -8,14 +8,8 @@ typedef struct PCMCIASocket { qemu_irq irq; bool attached; - const char *slot_string; - const char *card_string; } PCMCIASocket; -void pcmcia_socket_register(PCMCIASocket *socket); -void pcmcia_socket_unregister(PCMCIASocket *socket); -void pcmcia_info(Monitor *mon, const QDict *qdict); - #define TYPE_PCMCIA_CARD "pcmcia-card" #define PCMCIA_CARD(obj) \ OBJECT_CHECK(PCMCIACardState, (obj), TYPE_PCMCIA_CARD) diff --git a/monitor.c b/monitor.c index 07fb36e..1fc201a 100644 --- a/monitor.c +++ b/monitor.c @@ -25,7 +25,6 @@ #include "hw/hw.h" #include "monitor/qdev.h" #include "hw/usb.h" -#include "hw/pcmcia.h" #include "hw/i386/pc.h" #include "hw/pci/pci.h" #include "sysemu/watchdog.h" @@ -2792,13 +2791,6 @@ static mon_cmd_t info_cmds[] = { .mhandler.cmd = hmp_info_status, }, { - .name = "pcmcia", - .args_type = "", - .params = "", - .help = "show guest PCMCIA status", - .mhandler.cmd = pcmcia_info, - }, - { .name = "mice", .args_type = "", .params = "", diff --git a/vl.c b/vl.c index aee73e1..2f81384 100644 --- a/vl.c +++ b/vl.c @@ -63,7 +63,6 @@ int main(int argc, char **argv) #include "hw/boards.h" #include "sysemu/accel.h" #include "hw/usb.h" -#include "hw/pcmcia.h" #include "hw/i386/pc.h" #include "hw/isa/isa.h" #include "hw/bt.h" @@ -1408,49 +1407,6 @@ void do_usb_del(Monitor *mon, const QDict *qdict) } /***********************************************************/ -/* PCMCIA/Cardbus */ - -static struct pcmcia_socket_entry_s { - PCMCIASocket *socket; - struct pcmcia_socket_entry_s *next; -} *pcmcia_sockets = 0; - -void pcmcia_socket_register(PCMCIASocket *socket) -{ - struct pcmcia_socket_entry_s *entry; - - entry = g_malloc(sizeof(struct pcmcia_socket_entry_s)); - entry->socket = socket; - entry->next = pcmcia_sockets; - pcmcia_sockets = entry; -} - -void pcmcia_socket_unregister(PCMCIASocket *socket) -{ - struct pcmcia_socket_entry_s *entry, **ptr; - - ptr = &pcmcia_sockets; - for (entry = *ptr; entry; ptr = &entry->next, entry = *ptr) - if (entry->socket == socket) { - *ptr = entry->next; - g_free(entry); - } -} - -void pcmcia_info(Monitor *mon, const QDict *qdict) -{ - struct pcmcia_socket_entry_s *iter; - - if (!pcmcia_sockets) - monitor_printf(mon, "No PCMCIA sockets\n"); - - for (iter = pcmcia_sockets; iter; iter = iter->next) - monitor_printf(mon, "%s: %s\n", iter->socket->slot_string, - iter->socket->attached ? iter->socket->card_string : - "Empty"); -} - -/***********************************************************/ /* machine registration */ MachineState *current_machine;