[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH v10 0/9] error: auto propagated local_err part I


  • To: qemu-devel@xxxxxxxxxx
  • From: Vladimir Sementsov-Ogievskiy <vsementsov@xxxxxxxxxxxxx>
  • Date: Tue, 17 Mar 2020 18:16:16 +0300
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GUsq6mR0U4wxUIuZKye6yt7jGndO+qzgMrMfGLSdFzs=; b=m2H59Chm4uAtheuYGErpNynN7uDHT5suK0H/yOAzedwxRPlB4O/MCkaEFU+lm/bN/VxsklJrZjbl5LkvOE81rcerCbhAzm0CRwK3JU64PztAuybTWEOu5hv3YZfvSRPr3rCexopcURqN9kfjdVpf+MsajkdahWObdrO6LK2LyTMzjnU84Y9IeLC8waJJ16Fz+2Q0HpdlfjxxAnlNcVDbflHzZoYgYchwOFMz6cOH/xi9prY+KngRyAX3jgmQLaUJz8DLu4q3B6OkUSraUoGjSPw3XV5SrtdN93d7MrJfOhQgJUDol4eB0wcv9ml9W+kxAZvwhCTPKfqYwjyfYlE4nQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UVEMCZv+ONK07qBJgPkDvTM7RfSk14a96c/4EdMRjEk2qkLwlnlbin8YNC8cjTbzsKHvAuZ6djMytumFOBdA1RnWR5XDv2Y9IBpl/gxvH2xCNuXBc88OddZv2PfMlQPjF64Wc06q+3QSdWlLzgcF7aZL/MxYuL//pCsLIdYgbbkJs+DHU/cxGl6AH405iFIg1x8qM8vWpf+W0DWFeYnLoqqB1dHtE8pK2IePTd57j2/jR1ZTYCG9SQ1LoFpRzGZzgMtgi1ko8aBHDI1JOGmkToWTcDFtoFbzxmCTTH80/U9EFA7STRjFfEdbff2y/b79qSZ4mLXwFP9k5D+P7Tejsg==
  • Authentication-results: spf=none (sender IP is ) smtp.mailfrom=vsementsov@xxxxxxxxxxxxx;
  • Cc: Kevin Wolf <kwolf@xxxxxxxxxx>, vsementsov@xxxxxxxxxxxxx, Laszlo Ersek <lersek@xxxxxxxxxx>, qemu-block@xxxxxxxxxx, Paul Durrant <paul@xxxxxxx>, Philippe Mathieu-Daudé <philmd@xxxxxxxxxx>, Christian Schoenebeck <qemu_oss@xxxxxxxxxxxxx>, Greg Kurz <groug@xxxxxxxx>, armbru@xxxxxxxxxx, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Gerd Hoffmann <kraxel@xxxxxxxxxx>, Stefan Hajnoczi <stefanha@xxxxxxxxxx>, Anthony Perard <anthony.perard@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx, Max Reitz <mreitz@xxxxxxxxxx>, Eric Blake <eblake@xxxxxxxxxx>, Michael Roth <mdroth@xxxxxxxxxxxxxxxxxx>, Stefan Berger <stefanb@xxxxxxxxxxxxx>
  • Delivery-date: Tue, 17 Mar 2020 15:17:05 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

v10: (based-on "[PATCH 0/3] Minor error handling cleanups" including my 4/3 in 
it)
02: Change some comments.
    Do not chain check1 and check2 rules to rule1 to cover move
    unusual cases to warn about.
    Add positions to check1 rule.
    Move check1 and check2 above rule1, otherwise our ___ hack will break check2
    rule.
03: add hunk, due to rebasing and
09: rebased. Change is trivial, I keep r-b.


v10 is available at
 https://src.openvz.org/scm/~vsementsov/qemu.git #tag 
up-auto-local-err-partI-v10
v9 is available at
 https://src.openvz.org/scm/~vsementsov/qemu.git #tag up-auto-local-err-partI-v9


In these series, there is no commit-per-subsystem script, each generated
commit is generated in separate.

Still, generating commands are very similar, and looks like

    sed -n '/^<Subsystem name>$/,/^$/{s/^F: //p}' MAINTAINERS | \
    xargs git ls-files | grep '\.[hc]$' | \
    xargs spatch \
        --sp-file scripts/coccinelle/auto-propagated-errp.cocci \
        --macro-file scripts/cocci-macro-file.h \
        --in-place --no-show-diff --max-width 80

Note, that in each generated commit, generation command is the only
text, indented by 8 spaces in 'git log -1' output, so, to regenerate all
commits (for example, after rebase, or change in coccinelle script), you
may use the following command:

git rebase -x "sh -c \"git show --pretty= --name-only | xargs git checkout 
HEAD^ -- ; git reset; git log -1 | grep '^        ' | sh\"" HEAD~7

Which will start automated interactive rebase for generated patches,
which will stop if generated patch changed
(you may do git commit --amend to apply updated generated changes).

Note:
  git show --pretty= --name-only   - lists files, changed in HEAD
  git log -1 | grep '^        ' | sh   - rerun generation command of HEAD


Check for compilation of changed .c files
git rebase -x "sh -c \"git show --pretty= --name-only | sed -n 's/\.c$/.o/p' | 
xargs make -j9\"" HEAD~7

Vladimir Sementsov-Ogievskiy (9):
  error: auto propagated local_err
  scripts: Coccinelle script to use ERRP_AUTO_PROPAGATE()
  SD (Secure Card): introduce ERRP_AUTO_PROPAGATE
  pflash: introduce ERRP_AUTO_PROPAGATE
  fw_cfg: introduce ERRP_AUTO_PROPAGATE
  virtio-9p: introduce ERRP_AUTO_PROPAGATE
  TPM: introduce ERRP_AUTO_PROPAGATE
  nbd: introduce ERRP_AUTO_PROPAGATE
  xen: introduce ERRP_AUTO_PROPAGATE

 scripts/coccinelle/auto-propagated-errp.cocci | 336 ++++++++++++++++++
 include/block/nbd.h                           |   1 +
 include/qapi/error.h                          | 208 +++++++++--
 block/nbd.c                                   |  21 +-
 hw/9pfs/9p-local.c                            |  12 +-
 hw/9pfs/9p.c                                  |   1 +
 hw/block/dataplane/xen-block.c                |  17 +-
 hw/block/pflash_cfi01.c                       |   7 +-
 hw/block/pflash_cfi02.c                       |   7 +-
 hw/block/xen-block.c                          | 122 +++----
 hw/nvram/fw_cfg.c                             |  14 +-
 hw/pci-host/xen_igd_pt.c                      |   7 +-
 hw/sd/sdhci-pci.c                             |   7 +-
 hw/sd/sdhci.c                                 |  21 +-
 hw/sd/ssi-sd.c                                |  16 +-
 hw/tpm/tpm_util.c                             |   7 +-
 hw/xen/xen-backend.c                          |   7 +-
 hw/xen/xen-bus.c                              |  92 ++---
 hw/xen/xen-host-pci-device.c                  |  27 +-
 hw/xen/xen_pt.c                               |  25 +-
 hw/xen/xen_pt_config_init.c                   |  20 +-
 nbd/client.c                                  |   5 +
 nbd/server.c                                  |   5 +
 tpm.c                                         |   7 +-
 MAINTAINERS                                   |   1 +
 25 files changed, 715 insertions(+), 278 deletions(-)
 create mode 100644 scripts/coccinelle/auto-propagated-errp.cocci

Cc: Eric Blake <eblake@xxxxxxxxxx>
Cc: Kevin Wolf <kwolf@xxxxxxxxxx>
Cc: Max Reitz <mreitz@xxxxxxxxxx>
Cc: Greg Kurz <groug@xxxxxxxx>
Cc: Christian Schoenebeck <qemu_oss@xxxxxxxxxxxxx>
Cc: Stefan Hajnoczi <stefanha@xxxxxxxxxx>
Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>
Cc: Anthony Perard <anthony.perard@xxxxxxxxxx>
Cc: Paul Durrant <paul@xxxxxxx>
Cc: "Philippe Mathieu-Daudé" <philmd@xxxxxxxxxx>
Cc: Laszlo Ersek <lersek@xxxxxxxxxx>
Cc: Gerd Hoffmann <kraxel@xxxxxxxxxx>
Cc: Stefan Berger <stefanb@xxxxxxxxxxxxx>
Cc: Markus Armbruster <armbru@xxxxxxxxxx>
Cc: Michael Roth <mdroth@xxxxxxxxxxxxxxxxxx>
Cc: qemu-devel@xxxxxxxxxx
Cc: qemu-block@xxxxxxxxxx
Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx

-- 
2.21.0


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.