* [Qemu-devel] [PULL 0/6] Block patches @ 2013-12-13 17:48 Kevin Wolf 2013-12-13 17:48 ` [Qemu-devel] [PULL 1/6] sheepdog: check if '-o redundancy' is passed from user Kevin Wolf ` (5 more replies) 0 siblings, 6 replies; 18+ messages in thread From: Kevin Wolf @ 2013-12-13 17:48 UTC (permalink / raw) To: anthony; +Cc: kwolf, qemu-devel The following changes since commit 47acdd63a33a5966bf4fc94a6ac835d72a70c555: target-microblaze: Use the new qemu_ld/st opcodes (2013-12-13 10:00:42 +1000) are available in the git repository at: git://repo.or.cz/qemu/kevin.git tags/for-anthony for you to fetch changes up to c547e5640d5b0993cdfb252331065c1a1d813bd8: blkdebug: Use QLIST_FOREACH_SAFE to resume IO (2013-12-13 17:11:19 +0100) ---------------------------------------------------------------- Block patches ---------------------------------------------------------------- Fam Zheng (1): blkdebug: Use QLIST_FOREACH_SAFE to resume IO Kevin Wolf (1): qapi-schema.json: Change 1.8 reference to 2.0 Liu Yuan (1): sheepdog: check if '-o redundancy' is passed from user Peter Lieven (2): block: expect get_block_status errors in bdrv_make_zero qemu-img: make progress output more accurate during convert Stefan Weil (1): block/vvfat: Fix compiler warnings for OpenBSD block.c | 5 +++++ block/blkdebug.c | 8 ++++---- block/sheepdog.c | 8 +++++--- block/vvfat.c | 43 ++++++++++++++++++++++--------------------- qapi-schema.json | 2 +- qemu-img.c | 26 +++++++++++++++++++++----- 6 files changed, 58 insertions(+), 34 deletions(-) ^ permalink raw reply [flat|nested] 18+ messages in thread
* [Qemu-devel] [PULL 1/6] sheepdog: check if '-o redundancy' is passed from user 2013-12-13 17:48 [Qemu-devel] [PULL 0/6] Block patches Kevin Wolf @ 2013-12-13 17:48 ` Kevin Wolf 2013-12-13 17:48 ` [Qemu-devel] [PULL 2/6] qapi-schema.json: Change 1.8 reference to 2.0 Kevin Wolf ` (4 subsequent siblings) 5 siblings, 0 replies; 18+ messages in thread From: Kevin Wolf @ 2013-12-13 17:48 UTC (permalink / raw) To: anthony; +Cc: kwolf, qemu-devel From: Liu Yuan <namei.unix@gmail.com> This fix a segfault (that is caused by b3af018f3) of following command: $ qemu-img convert some_img sheepdog:some_img Cc: qemu-devel@nongnu.org Cc: Kevin Wolf <kwolf@redhat.com> Cc: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Liu Yuan <namei.unix@gmail.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com> --- block/sheepdog.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/block/sheepdog.c b/block/sheepdog.c index b4ae50f..d1c812d 100644 --- a/block/sheepdog.c +++ b/block/sheepdog.c @@ -1666,9 +1666,11 @@ static int sd_create(const char *filename, QEMUOptionParameter *options, goto out; } } else if (!strcmp(options->name, BLOCK_OPT_REDUNDANCY)) { - ret = parse_redundancy(s, options->value.s); - if (ret < 0) { - goto out; + if (options->value.s) { + ret = parse_redundancy(s, options->value.s); + if (ret < 0) { + goto out; + } } } options++; -- 1.8.1.4 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [Qemu-devel] [PULL 2/6] qapi-schema.json: Change 1.8 reference to 2.0 2013-12-13 17:48 [Qemu-devel] [PULL 0/6] Block patches Kevin Wolf 2013-12-13 17:48 ` [Qemu-devel] [PULL 1/6] sheepdog: check if '-o redundancy' is passed from user Kevin Wolf @ 2013-12-13 17:48 ` Kevin Wolf 2013-12-13 17:49 ` [Qemu-devel] [PULL 3/6] block/vvfat: Fix compiler warnings for OpenBSD Kevin Wolf ` (3 subsequent siblings) 5 siblings, 0 replies; 18+ messages in thread From: Kevin Wolf @ 2013-12-13 17:48 UTC (permalink / raw) To: anthony; +Cc: kwolf, qemu-devel Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com> --- qapi-schema.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qapi-schema.json b/qapi-schema.json index d6f8615..c3c939c 100644 --- a/qapi-schema.json +++ b/qapi-schema.json @@ -949,7 +949,7 @@ # (only present if removable is true) # # @dirty-bitmaps: #optional dirty bitmaps information (only present if the -# driver has one or more dirty bitmaps) (Since 1.8) +# driver has one or more dirty bitmaps) (Since 2.0) # # @io-status: #optional @BlockDeviceIoStatus. Only present if the device # supports it and the VM is configured to stop on errors -- 1.8.1.4 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [Qemu-devel] [PULL 3/6] block/vvfat: Fix compiler warnings for OpenBSD 2013-12-13 17:48 [Qemu-devel] [PULL 0/6] Block patches Kevin Wolf 2013-12-13 17:48 ` [Qemu-devel] [PULL 1/6] sheepdog: check if '-o redundancy' is passed from user Kevin Wolf 2013-12-13 17:48 ` [Qemu-devel] [PULL 2/6] qapi-schema.json: Change 1.8 reference to 2.0 Kevin Wolf @ 2013-12-13 17:49 ` Kevin Wolf 2013-12-13 17:49 ` [Qemu-devel] [PULL 4/6] block: expect get_block_status errors in bdrv_make_zero Kevin Wolf ` (2 subsequent siblings) 5 siblings, 0 replies; 18+ messages in thread From: Kevin Wolf @ 2013-12-13 17:49 UTC (permalink / raw) To: anthony; +Cc: kwolf, qemu-devel From: Stefan Weil <sw@weilnetz.de> The buildbot shows these compiler warnings: block/vvfat.c: In function 'create_short_and_long_name': block/vvfat.c:620: warning: array size (8) smaller than bound length (11) block/vvfat.c:620: warning: array size (8) smaller than bound length (11) block/vvfat.c:635: warning: array size (8) smaller than bound length (11) block/vvfat.c:635: warning: array size (8) smaller than bound length (11) They are caused by tricky code where 8 characters for the name are followed by 3 characters for the extension, and some operations touch both name and extension. Using an 11 character name which includes the extension fixes the compiler warning, satisfies cppcheck, valgrind and maybe other static and dynamic code checkers, and even simplifies some parts of the code. Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com> --- block/vvfat.c | 43 ++++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/block/vvfat.c b/block/vvfat.c index 3ddaa0b..1abb8ad 100644 --- a/block/vvfat.c +++ b/block/vvfat.c @@ -266,8 +266,7 @@ typedef struct mbr_t { } QEMU_PACKED mbr_t; typedef struct direntry_t { - uint8_t name[8]; - uint8_t extension[3]; + uint8_t name[8 + 3]; uint8_t attributes; uint8_t reserved[2]; uint16_t ctime; @@ -518,11 +517,9 @@ static inline uint8_t fat_chksum(const direntry_t* entry) uint8_t chksum=0; int i; - for(i=0;i<11;i++) { - unsigned char c; - - c = (i < 8) ? entry->name[i] : entry->extension[i-8]; - chksum=(((chksum&0xfe)>>1)|((chksum&0x01)?0x80:0)) + c; + for (i = 0; i < ARRAY_SIZE(entry->name); i++) { + chksum = (((chksum & 0xfe) >> 1) | + ((chksum & 0x01) ? 0x80 : 0)) + entry->name[i]; } return chksum; @@ -617,7 +614,7 @@ static inline direntry_t* create_short_and_long_name(BDRVVVFATState* s, if(is_dot) { entry=array_get_next(&(s->directory)); - memset(entry->name,0x20,11); + memset(entry->name, 0x20, sizeof(entry->name)); memcpy(entry->name,filename,strlen(filename)); return entry; } @@ -632,12 +629,14 @@ static inline direntry_t* create_short_and_long_name(BDRVVVFATState* s, i = 8; entry=array_get_next(&(s->directory)); - memset(entry->name,0x20,11); + memset(entry->name, 0x20, sizeof(entry->name)); memcpy(entry->name, filename, i); - if(j > 0) - for (i = 0; i < 3 && filename[j+1+i]; i++) - entry->extension[i] = filename[j+1+i]; + if (j > 0) { + for (i = 0; i < 3 && filename[j + 1 + i]; i++) { + entry->name[8 + i] = filename[j + 1 + i]; + } + } /* upcase & remove unwanted characters */ for(i=10;i>=0;i--) { @@ -861,8 +860,7 @@ static int init_directories(BDRVVVFATState* s, { direntry_t* entry=array_get_next(&(s->directory)); entry->attributes=0x28; /* archive | volume label */ - memcpy(entry->name,"QEMU VVF",8); - memcpy(entry->extension,"AT ",3); + memcpy(entry->name, "QEMU VVFAT ", sizeof(entry->name)); } /* Now build FAT, and write back information into directory */ @@ -1591,17 +1589,20 @@ static int parse_short_name(BDRVVVFATState* s, lfn->name[i] = direntry->name[i]; } - for (j = 2; j >= 0 && direntry->extension[j] == ' '; j--); + for (j = 2; j >= 0 && direntry->name[8 + j] == ' '; j--) { + } if (j >= 0) { lfn->name[i++] = '.'; lfn->name[i + j + 1] = '\0'; for (;j >= 0; j--) { - if (direntry->extension[j] <= ' ' || direntry->extension[j] > 0x7f) - return -2; - else if (s->downcase_short_names) - lfn->name[i + j] = qemu_tolower(direntry->extension[j]); - else - lfn->name[i + j] = direntry->extension[j]; + uint8_t c = direntry->name[8 + j]; + if (c <= ' ' || c > 0x7f) { + return -2; + } else if (s->downcase_short_names) { + lfn->name[i + j] = qemu_tolower(c); + } else { + lfn->name[i + j] = c; + } } } else lfn->name[i + j + 1] = '\0'; -- 1.8.1.4 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [Qemu-devel] [PULL 4/6] block: expect get_block_status errors in bdrv_make_zero 2013-12-13 17:48 [Qemu-devel] [PULL 0/6] Block patches Kevin Wolf ` (2 preceding siblings ...) 2013-12-13 17:49 ` [Qemu-devel] [PULL 3/6] block/vvfat: Fix compiler warnings for OpenBSD Kevin Wolf @ 2013-12-13 17:49 ` Kevin Wolf 2013-12-13 17:49 ` [Qemu-devel] [PULL 5/6] qemu-img: make progress output more accurate during convert Kevin Wolf 2013-12-13 17:49 ` [Qemu-devel] [PULL 6/6] blkdebug: Use QLIST_FOREACH_SAFE to resume IO Kevin Wolf 5 siblings, 0 replies; 18+ messages in thread From: Kevin Wolf @ 2013-12-13 17:49 UTC (permalink / raw) To: anthony; +Cc: kwolf, qemu-devel From: Peter Lieven <pl@kamp.de> during testing around with 4k LUNs a bad target implementation triggert an -EIO in iscsi_get_block_status, but it got never caught resulting in an infinite loop. CC: qemu-stable@nongnu.org Signed-off-by: Peter Lieven <pl@kamp.de> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com> --- block.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/block.c b/block.c index 13f001a..64e7d22 100644 --- a/block.c +++ b/block.c @@ -2421,6 +2421,11 @@ int bdrv_make_zero(BlockDriverState *bs, BdrvRequestFlags flags) nb_sectors = INT_MAX; } ret = bdrv_get_block_status(bs, sector_num, nb_sectors, &n); + if (ret < 0) { + error_report("error getting block status at sector %" PRId64 ": %s", + sector_num, strerror(-ret)); + return ret; + } if (ret & BDRV_BLOCK_ZERO) { sector_num += n; continue; -- 1.8.1.4 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [Qemu-devel] [PULL 5/6] qemu-img: make progress output more accurate during convert 2013-12-13 17:48 [Qemu-devel] [PULL 0/6] Block patches Kevin Wolf ` (3 preceding siblings ...) 2013-12-13 17:49 ` [Qemu-devel] [PULL 4/6] block: expect get_block_status errors in bdrv_make_zero Kevin Wolf @ 2013-12-13 17:49 ` Kevin Wolf 2013-12-13 17:49 ` [Qemu-devel] [PULL 6/6] blkdebug: Use QLIST_FOREACH_SAFE to resume IO Kevin Wolf 5 siblings, 0 replies; 18+ messages in thread From: Kevin Wolf @ 2013-12-13 17:49 UTC (permalink / raw) To: anthony; +Cc: kwolf, qemu-devel From: Peter Lieven <pl@kamp.de> the progress output is very bumpy if the input images contains a significant portion of unallocated sectors. This patch checks how much sectors are allocated a priori if progress output is selected. Signed-off-by: Peter Lieven <pl@kamp.de> Signed-off-by: Kevin Wolf <kwolf@redhat.com> --- qemu-img.c | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/qemu-img.c b/qemu-img.c index 7dfe982..a4b3931 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -1135,8 +1135,7 @@ static int img_convert(int argc, char **argv) const char *fmt, *out_fmt, *cache, *out_baseimg, *out_filename; BlockDriver *drv, *proto_drv; BlockDriverState **bs = NULL, *out_bs = NULL; - int64_t total_sectors, nb_sectors, sector_num, bs_offset, - sector_num_next_status = 0; + int64_t total_sectors, nb_sectors, sector_num, bs_offset; uint64_t bs_sectors; uint8_t * buf = NULL; size_t bufsectors = IO_BUF_SIZE / BDRV_SECTOR_SIZE; @@ -1505,6 +1504,8 @@ static int img_convert(int argc, char **argv) /* signal EOF to align */ bdrv_write_compressed(out_bs, 0, NULL, 0); } else { + int64_t sectors_to_read, sectors_read, sector_num_next_status; + bool count_allocated_sectors; int has_zero_init = min_sparse ? bdrv_has_zero_init(out_bs) : 0; if (!has_zero_init && bdrv_can_write_zeroes_with_unmap(out_bs)) { @@ -1515,12 +1516,21 @@ static int img_convert(int argc, char **argv) has_zero_init = 1; } + sectors_to_read = total_sectors; + count_allocated_sectors = progress && (out_baseimg || has_zero_init); +restart: sector_num = 0; // total number of sectors converted so far - nb_sectors = total_sectors - sector_num; + sectors_read = 0; + sector_num_next_status = 0; for(;;) { nb_sectors = total_sectors - sector_num; if (nb_sectors <= 0) { + if (count_allocated_sectors) { + sectors_to_read = sectors_read; + count_allocated_sectors = false; + goto restart; + } ret = 0; break; } @@ -1586,8 +1596,14 @@ static int img_convert(int argc, char **argv) } n = MIN(n, bs_sectors - (sector_num - bs_offset)); - n1 = n; + sectors_read += n; + if (count_allocated_sectors) { + sector_num += n; + continue; + } + + n1 = n; ret = bdrv_read(bs[bs_i], sector_num - bs_offset, buf, n); if (ret < 0) { error_report("error while reading sector %" PRId64 ": %s", @@ -1612,7 +1628,7 @@ static int img_convert(int argc, char **argv) n -= n1; buf1 += n1 * 512; } - qemu_progress_print(100.0 * sector_num / total_sectors, 0); + qemu_progress_print(100.0 * sectors_read / sectors_to_read, 0); } } out: -- 1.8.1.4 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [Qemu-devel] [PULL 6/6] blkdebug: Use QLIST_FOREACH_SAFE to resume IO 2013-12-13 17:48 [Qemu-devel] [PULL 0/6] Block patches Kevin Wolf ` (4 preceding siblings ...) 2013-12-13 17:49 ` [Qemu-devel] [PULL 5/6] qemu-img: make progress output more accurate during convert Kevin Wolf @ 2013-12-13 17:49 ` Kevin Wolf 5 siblings, 0 replies; 18+ messages in thread From: Kevin Wolf @ 2013-12-13 17:49 UTC (permalink / raw) To: anthony; +Cc: kwolf, qemu-devel From: Fam Zheng <famz@redhat.com> Qemu-iotest 030 was broken. When the coroutine runs and finishes, it will remove itself from the req list, so let's use safe version of foreach to avoid use after free. Signed-off-by: Fam Zheng <famz@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com> --- block/blkdebug.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/block/blkdebug.c b/block/blkdebug.c index 37cf028..957be2c 100644 --- a/block/blkdebug.c +++ b/block/blkdebug.c @@ -594,9 +594,9 @@ static int blkdebug_debug_breakpoint(BlockDriverState *bs, const char *event, static int blkdebug_debug_resume(BlockDriverState *bs, const char *tag) { BDRVBlkdebugState *s = bs->opaque; - BlkdebugSuspendedReq *r; + BlkdebugSuspendedReq *r, *next; - QLIST_FOREACH(r, &s->suspended_reqs, next) { + QLIST_FOREACH_SAFE(r, &s->suspended_reqs, next, next) { if (!strcmp(r->tag, tag)) { qemu_coroutine_enter(r->co, NULL); return 0; @@ -609,7 +609,7 @@ static int blkdebug_debug_remove_breakpoint(BlockDriverState *bs, const char *tag) { BDRVBlkdebugState *s = bs->opaque; - BlkdebugSuspendedReq *r; + BlkdebugSuspendedReq *r, *r_next; BlkdebugRule *rule, *next; int i, ret = -ENOENT; @@ -622,7 +622,7 @@ static int blkdebug_debug_remove_breakpoint(BlockDriverState *bs, } } } - QLIST_FOREACH(r, &s->suspended_reqs, next) { + QLIST_FOREACH_SAFE(r, &s->suspended_reqs, next, r_next) { if (!strcmp(r->tag, tag)) { qemu_coroutine_enter(r->co, NULL); ret = 0; -- 1.8.1.4 ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [Qemu-devel] [PULL 0/6] Block patches @ 2018-03-05 9:40 Stefan Hajnoczi 2018-03-05 9:52 ` no-reply 2018-03-05 18:55 ` Peter Maydell 0 siblings, 2 replies; 18+ messages in thread From: Stefan Hajnoczi @ 2018-03-05 9:40 UTC (permalink / raw) To: qemu-devel; +Cc: qemu-block, Peter Maydell, Stefan Hajnoczi The following changes since commit 136c67e07869227b21b3f627316e03679ce7b738: Merge remote-tracking branch 'remotes/bkoppelmann/tags/pull-tricore-2018-03-02' into staging (2018-03-02 16:56:20 +0000) are available in the Git repository at: git://github.com/stefanha/qemu.git tags/block-pull-request for you to fetch changes up to 23500c6a9409efc80d696aede0629bfbe7556a90: README: Document 'git-publish' workflow (2018-03-05 09:03:17 +0000) ---------------------------------------------------------------- Pull request Mostly patches that are only indirectly related to the block layer, but I've reviewed them and there is no maintainer. ---------------------------------------------------------------- Fam Zheng (2): Add a git-publish configuration file README: Document 'git-publish' workflow Su Hang (3): util/uri.c: Coding style check, Only whitespace involved util/uri.c: remove brackets that wrap `return` statement's content. util/uri.c: wrap single statement blocks with braces {} Thomas Huth (1): tests/libqos: Check for valid dev pointer when looking for PCI devices tests/libqos/virtio-pci.c | 4 +- util/uri.c | 1733 ++++++++++++++++++++++++--------------------- .gitpublish | 51 ++ README | 31 +- 4 files changed, 1014 insertions(+), 805 deletions(-) create mode 100644 .gitpublish -- 2.14.3 ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [Qemu-devel] [PULL 0/6] Block patches 2018-03-05 9:40 [Qemu-devel] [PULL 0/6] Block patches Stefan Hajnoczi @ 2018-03-05 9:52 ` no-reply 2018-03-05 18:55 ` Peter Maydell 1 sibling, 0 replies; 18+ messages in thread From: no-reply @ 2018-03-05 9:52 UTC (permalink / raw) To: stefanha; +Cc: famz, qemu-devel, peter.maydell, qemu-block Hi, This series seems to have some coding style problems. See output below for more information: Type: series Message-id: 20180305094006.21446-1-stefanha@redhat.com Subject: [Qemu-devel] [PULL 0/6] Block patches === TEST SCRIPT BEGIN === #!/bin/bash BASE=base n=1 total=$(git log --oneline $BASE.. | wc -l) failed=0 git config --local diff.renamelimit 0 git config --local diff.renames True git config --local diff.algorithm histogram commits="$(git log --format=%H --reverse $BASE..)" for c in $commits; do echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..." if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then failed=1 echo fi n=$((n+1)) done exit $failed === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 From https://github.com/patchew-project/qemu 136c67e078..4f51e1d386 master -> master * [new tag] patchew/1520243276-30197-1-git-send-email-thuth@redhat.com -> patchew/1520243276-30197-1-git-send-email-thuth@redhat.com * [new tag] patchew/20180305094006.21446-1-stefanha@redhat.com -> patchew/20180305094006.21446-1-stefanha@redhat.com Switched to a new branch 'test' 20eeab9795 README: Document 'git-publish' workflow 333283c56b Add a git-publish configuration file 3a9752c776 tests/libqos: Check for valid dev pointer when looking for PCI devices 6863406cb9 util/uri.c: wrap single statement blocks with braces {} 906ebc14e5 util/uri.c: remove brackets that wrap `return` statement's content. d0e12d0916 util/uri.c: Coding style check, Only whitespace involved === OUTPUT BEGIN === Checking PATCH 1/6: util/uri.c: Coding style check, Only whitespace involved... ERROR: return is not a function, parentheses are not required #171: FILE: util/uri.c:215: + return (-1); ERROR: return is not a function, parentheses are not required #176: FILE: util/uri.c:219: + return (2); ERROR: return is not a function, parentheses are not required #190: FILE: util/uri.c:229: + return (0); ERROR: braces {} are necessary for all arms of this statement #212: FILE: util/uri.c:262: + if (uri->cleanup & 2) [...] + else [...] ERROR: braces {} are necessary for all arms of this statement #276: FILE: util/uri.c:359: + if (uri->cleanup & 2) [...] + else [...] ERROR: return is not a function, parentheses are not required #282: FILE: util/uri.c:365: + return (0); ERROR: return is not a function, parentheses are not required #285: FILE: util/uri.c:367: + return (1); ERROR: return is not a function, parentheses are not required #305: FILE: util/uri.c:389: + return (1); ERROR: braces {} are necessary for all arms of this statement #306: FILE: util/uri.c:390: + if (!ISA_DIGIT(cur + 1)) [...] + else if ((*cur != '0') && (ISA_DIGIT(cur + 1)) && (!ISA_DIGIT(cur + 2))) [...] else if ((*cur == '1') && (ISA_DIGIT(cur + 1)) && (ISA_DIGIT(cur + 2))) [...] - else if ((*cur == '2') && (*(cur + 1) >= '0') && [...] - else if ((*cur == '2') && (*(cur + 1) == '5') && [...] + cur += 3; [...] ERROR: braces {} are necessary for all arms of this statement #308: FILE: util/uri.c:392: + else if ((*cur != '0') && (ISA_DIGIT(cur + 1)) && (!ISA_DIGIT(cur + 2))) [...] else if ((*cur == '1') && (ISA_DIGIT(cur + 1)) && (ISA_DIGIT(cur + 2))) [...] - else if ((*cur == '2') && (*(cur + 1) >= '0') && [...] - else if ((*cur == '2') && (*(cur + 1) == '5') && [...] + cur += 3; [...] ERROR: braces {} are necessary for all arms of this statement #319: FILE: util/uri.c:396: + else if ((*cur == '2') && (*(cur + 1) >= '0') && (*(cur + 1) <= '4') && [...] + else if ((*cur == '2') && (*(cur + 1) == '5') && (*(cur + 2) >= '0') && [...] else [...] ERROR: braces {} are necessary for all arms of this statement #322: FILE: util/uri.c:399: + else if ((*cur == '2') && (*(cur + 1) == '5') && (*(cur + 2) >= '0') && [...] else [...] ERROR: return is not a function, parentheses are not required #327: FILE: util/uri.c:403: + return (1); ERROR: return is not a function, parentheses are not required #330: FILE: util/uri.c:405: + return (0); ERROR: braces {} are necessary even for single statement blocks #354: FILE: util/uri.c:433: + while ((*cur != ']') && (*cur != 0)) + cur++; ERROR: braces {} are necessary for all arms of this statement #356: FILE: util/uri.c:435: + if (*cur != ']') [...] ERROR: return is not a function, parentheses are not required #357: FILE: util/uri.c:436: + return (1); ERROR: braces {} are necessary for all arms of this statement #371: FILE: util/uri.c:446: + if (*cur != '.') [...] ERROR: braces {} are necessary for all arms of this statement #379: FILE: util/uri.c:451: + if (*cur != '.') [...] ERROR: braces {} are necessary for all arms of this statement #386: FILE: util/uri.c:455: + if (*cur != '.') [...] ERROR: braces {} are necessary for all arms of this statement #412: FILE: util/uri.c:473: + if (cur != host) { [...] + } else [...] ERROR: braces {} are necessary for all arms of this statement #413: FILE: util/uri.c:474: + if (uri->cleanup & 2) [...] + else [...] ERROR: return is not a function, parentheses are not required #422: FILE: util/uri.c:482: + return (0); ERROR: braces {} are necessary for all arms of this statement #441: FILE: util/uri.c:512: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #442: FILE: util/uri.c:513: + return (ret); ERROR: braces {} are necessary for all arms of this statement #447: FILE: util/uri.c:517: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #448: FILE: util/uri.c:518: + return (ret); ERROR: return is not a function, parentheses are not required #452: FILE: util/uri.c:521: + return (0); ERROR: return is not a function, parentheses are not required #471: FILE: util/uri.c:547: + return (0); ERROR: return is not a function, parentheses are not required #472: FILE: util/uri.c:548: + return (1); ERROR: return is not a function, parentheses are not required #494: FILE: util/uri.c:579: + return (ret); ERROR: return is not a function, parentheses are not required #513: FILE: util/uri.c:616: + return (1); ERROR: return is not a function, parentheses are not required #526: FILE: util/uri.c:624: + return (ret); ERROR: braces {} are necessary for all arms of this statement #546: FILE: util/uri.c:662: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #547: FILE: util/uri.c:663: + return (ret); ERROR: return is not a function, parentheses are not required #554: FILE: util/uri.c:668: + return (ret); ERROR: braces {} are necessary for all arms of this statement #573: FILE: util/uri.c:705: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #574: FILE: util/uri.c:706: + return (ret); ERROR: return is not a function, parentheses are not required #581: FILE: util/uri.c:711: + return (ret); ERROR: braces {} are necessary for all arms of this statement #606: FILE: util/uri.c:753: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #607: FILE: util/uri.c:754: + return (ret); ERROR: braces {} are necessary for all arms of this statement #609: FILE: util/uri.c:756: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #610: FILE: util/uri.c:757: + return (ret); ERROR: return is not a function, parentheses are not required #612: FILE: util/uri.c:759: + return (0); ERROR: braces {} are necessary for all arms of this statement #616: FILE: util/uri.c:762: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #617: FILE: util/uri.c:763: + return (ret); ERROR: braces {} are necessary for all arms of this statement #621: FILE: util/uri.c:766: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #622: FILE: util/uri.c:767: + return (ret); ERROR: braces {} are necessary for all arms of this statement #653: FILE: util/uri.c:802: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #654: FILE: util/uri.c:803: + return (ret); ERROR: braces {} are necessary for all arms of this statement #656: FILE: util/uri.c:805: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #657: FILE: util/uri.c:806: + return (ret); ERROR: braces {} are necessary for all arms of this statement #662: FILE: util/uri.c:809: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #663: FILE: util/uri.c:810: + return (ret); ERROR: braces {} are necessary for all arms of this statement #667: FILE: util/uri.c:813: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #668: FILE: util/uri.c:814: + return (ret); ERROR: braces {} are necessary for all arms of this statement #687: FILE: util/uri.c:826: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #688: FILE: util/uri.c:827: + return (ret); ERROR: braces {} are necessary for all arms of this statement #696: FILE: util/uri.c:832: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #697: FILE: util/uri.c:833: + return (ret); ERROR: return is not a function, parentheses are not required #703: FILE: util/uri.c:837: + return (1); ERROR: return is not a function, parentheses are not required #706: FILE: util/uri.c:839: + return (0); ERROR: braces {} are necessary for all arms of this statement #725: FILE: util/uri.c:859: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #726: FILE: util/uri.c:860: + return (ret); ERROR: return is not a function, parentheses are not required #729: FILE: util/uri.c:862: + return (1); ERROR: braces {} are necessary for all arms of this statement #734: FILE: util/uri.c:866: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #735: FILE: util/uri.c:867: + return (ret); ERROR: braces {} are necessary for all arms of this statement #742: FILE: util/uri.c:871: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #743: FILE: util/uri.c:872: + return (ret); ERROR: braces {} are necessary for all arms of this statement #751: FILE: util/uri.c:877: + if (ret != 0) [...] ERROR: return is not a function, parentheses are not required #752: FILE: util/uri.c:878: + return (ret); ERROR: return is not a function, parentheses are not required #758: FILE: util/uri.c:882: + return (1); ERROR: return is not a function, parentheses are not required #761: FILE: util/uri.c:884: + return (0); ERROR: return is not a function, parentheses are not required #777: FILE: util/uri.c:904: + return (-1); ERROR: return is not a function, parentheses are not required #794: FILE: util/uri.c:917: + return (ret); ERROR: return is not a function, parentheses are not required #798: FILE: util/uri.c:920: + return (0); ERROR: return is not a function, parentheses are not required #815: FILE: util/uri.c:939: + return (NULL); ERROR: return is not a function, parentheses are not required #821: FILE: util/uri.c:944: + return (NULL); ERROR: return is not a function, parentheses are not required #824: FILE: util/uri.c:946: + return (uri); ERROR: return is not a function, parentheses are not required #837: FILE: util/uri.c:963: + return (rfc3986_parse_uri_reference(uri, str)); ERROR: return is not a function, parentheses are not required #854: FILE: util/uri.c:983: + return (NULL); ERROR: return is not a function, parentheses are not required #863: FILE: util/uri.c:991: + return (NULL); ERROR: return is not a function, parentheses are not required #866: FILE: util/uri.c:993: + return (uri); ERROR: return is not a function, parentheses are not required #891: FILE: util/uri.c:1014: + return (ret); ERROR: return is not a function, parentheses are not required #910: FILE: util/uri.c:1031: + return (temp); ERROR: braces {} are necessary for all arms of this statement #930: FILE: util/uri.c:1050: + if (uri == NULL) [...] ERROR: return is not a function, parentheses are not required #931: FILE: util/uri.c:1051: + return (NULL); ERROR: braces {} are necessary for all arms of this statement #983: FILE: util/uri.c:1079: + if (IS_RESERVED(*(p)) || IS_UNRESERVED(*(p))) [...] + else { [...] ERROR: braces {} are necessary for all arms of this statement #1033: FILE: util/uri.c:1104: + if ((IS_UNRESERVED(*(p))) || ((*(p) == ';')) || [...] + else { [...] ERROR: braces {} are necessary for all arms of this statement #1117: FILE: util/uri.c:1150: + if ((IS_UNRESERVED(*(p))) || ((*(p) == '$')) || [...] + else { [...] ERROR: braces {} are necessary for all arms of this statement #1187: FILE: util/uri.c:1194: + if ((IS_UNRESERVED(*(p))) || ((*(p) == '/')) || [...] - else { [...] ERROR: braces {} are necessary for all arms of this statement #1269: FILE: util/uri.c:1236: + if ((IS_UNRESERVED(*(p))) || (IS_RESERVED(*(p)))) [...] + else { [...] ERROR: return is not a function, parentheses are not required #1286: FILE: util/uri.c:1252: + return (ret); ERROR: braces {} are necessary for all arms of this statement #1299: FILE: util/uri.c:1263: + if (uri == NULL) [...] ERROR: return is not a function, parentheses are not required #1338: FILE: util/uri.c:1318: + return (-1); ERROR: return is not a function, parentheses are not required #1349: FILE: util/uri.c:1327: + return (0); ERROR: braces {} are necessary even for single statement blocks #1375: FILE: util/uri.c:1343: + while (cur[0] == '/') + cur++; ERROR: braces {} are necessary for all arms of this statement #1390: FILE: util/uri.c:1352: + if ((cur[0] == '.') && (cur[1] == '\0')) [...] ERROR: braces {} are necessary even for single statement blocks #1408: FILE: util/uri.c:1362: + while ((cur[0] == '/') && (cur[1] == '/')) + cur++; ERROR: return is not a function, parentheses are not required #1424: FILE: util/uri.c:1375: + return (0); ERROR: braces {} are necessary even for single statement blocks #1517: FILE: util/uri.c:1482: + while (cur[0] != '\0') + (out++)[0] = (cur++)[0]; ERROR: return is not a function, parentheses are not required #1524: FILE: util/uri.c:1488: + return (0); ERROR: braces {} are necessary for all arms of this statement #1532: FILE: util/uri.c:1493: + if (((c >= '0') && (c <= '9')) || ((c >= 'a') && (c <= 'f')) || [...] ERROR: return is not a function, parentheses are not required #1536: FILE: util/uri.c:1495: + return (1); ERROR: return is not a function, parentheses are not required #1537: FILE: util/uri.c:1496: + return (0); ERROR: return is not a function, parentheses are not required #1559: FILE: util/uri.c:1519: + return (NULL); ERROR: braces {} are necessary for all arms of this statement #1560: FILE: util/uri.c:1520: + if (len <= 0) [...] ERROR: braces {} are necessary for all arms of this statement #1562: FILE: util/uri.c:1522: + if (len < 0) [...] ERROR: return is not a function, parentheses are not required #1563: FILE: util/uri.c:1523: + return (NULL); ERROR: braces {} are necessary for all arms of this statement #1599: FILE: util/uri.c:1534: + if ((*in >= '0') && (*in <= '9')) [...] + else if ((*in >= 'a') && (*in <= 'f')) [...] + else if ((*in >= 'A') && (*in <= 'F')) [...] ERROR: braces {} are necessary for all arms of this statement #1601: FILE: util/uri.c:1536: + else if ((*in >= 'a') && (*in <= 'f')) [...] + else if ((*in >= 'A') && (*in <= 'F')) [...] ERROR: braces {} are necessary for all arms of this statement #1603: FILE: util/uri.c:1538: + else if ((*in >= 'A') && (*in <= 'F')) [...] ERROR: braces {} are necessary for all arms of this statement #1606: FILE: util/uri.c:1541: + if ((*in >= '0') && (*in <= '9')) [...] + else if ((*in >= 'a') && (*in <= 'f')) [...] + else if ((*in >= 'A') && (*in <= 'F')) [...] ERROR: braces {} are necessary for all arms of this statement #1608: FILE: util/uri.c:1543: + else if ((*in >= 'a') && (*in <= 'f')) [...] + else if ((*in >= 'A') && (*in <= 'F')) [...] ERROR: braces {} are necessary for all arms of this statement #1610: FILE: util/uri.c:1545: + else if ((*in >= 'A') && (*in <= 'F')) [...] ERROR: return is not a function, parentheses are not required #1622: FILE: util/uri.c:1556: + return (ret); ERROR: return is not a function, parentheses are not required #1641: FILE: util/uri.c:1577: + return (NULL); ERROR: return is not a function, parentheses are not required #1644: FILE: util/uri.c:1579: + return (g_strdup(str)); ERROR: braces {} are necessary for all arms of this statement #1647: FILE: util/uri.c:1581: + if (!(len > 0)) [...] ERROR: return is not a function, parentheses are not required #1648: FILE: util/uri.c:1582: + return (NULL); ERROR: braces {} are necessary for all arms of this statement #1689: FILE: util/uri.c:1600: + if (val <= 9) [...] + else [...] ERROR: braces {} are necessary for all arms of this statement #1694: FILE: util/uri.c:1605: + if (val <= 9) [...] + else [...] ERROR: return is not a function, parentheses are not required #1705: FILE: util/uri.c:1615: + return (ret); ERROR: braces {} are necessary for all arms of this statement #1742: FILE: util/uri.c:1658: + if (*uri) { [...] + } else [...] ERROR: braces {} are necessary for all arms of this statement #1776: FILE: util/uri.c:1680: + if (ref) [...] ERROR: braces {} are necessary for all arms of this statement #1806: FILE: util/uri.c:1710: + if (bas->authority != NULL) [...] + else if (bas->server != NULL) { [...] ERROR: braces {} are necessary for all arms of this statement #1846: FILE: util/uri.c:1750: + if (ref->authority != NULL) [...] + else { [...] ERROR: braces {} are necessary even for single statement blocks #1905: FILE: util/uri.c:1802: + while ((bas->path[cur] != 0) && (bas->path[cur] != '/')) + cur++; ERROR: braces {} are necessary for all arms of this statement #1907: FILE: util/uri.c:1804: + if (bas->path[cur] == 0) [...] ERROR: braces {} are necessary for all arms of this statement #1942: FILE: util/uri.c:1825: + if ((out == 0) && (bas->server != NULL)) [...] ERROR: return is not a function, parentheses are not required #1963: FILE: util/uri.c:1854: + return (val); ERROR: braces {} are necessary for all arms of this statement #1995: FILE: util/uri.c:1912: + if (ret != 0) [...] ERROR: braces {} are necessary for all arms of this statement #2017: FILE: util/uri.c:1927: + if (ret != 0) [...] ERROR: braces {} are necessary for all arms of this statement #2073: FILE: util/uri.c:1965: + if (*uptr == '/') [...] ERROR: braces {} are necessary for all arms of this statement #2089: FILE: util/uri.c:1975: + if (bptr[ix] == '/') [...] ERROR: braces {} are necessary for all arms of this statement #2102: FILE: util/uri.c:1984: + if ((ref->path[pos] == '.') && (ref->path[pos + 1] == '/')) [...] ERROR: braces {} are necessary for all arms of this statement #2105: FILE: util/uri.c:1986: + if ((*bptr == '.') && (bptr[1] == '/')) [...] - else if ((*bptr == '/') && (ref->path[pos] != '/')) [...] ERROR: braces {} are necessary for all arms of this statement #2111: FILE: util/uri.c:1988: + else if ((*bptr == '/') && (ref->path[pos] != '/')) [...] ERROR: braces {} are necessary even for single statement blocks #2113: FILE: util/uri.c:1990: + while ((bptr[pos] == ref->path[pos]) && (bptr[pos] != 0)) + pos++; ERROR: braces {} are necessary for all arms of this statement #2149: FILE: util/uri.c:2003: + if ((ref->path[ix] == '/') && (ix > 0)) [...] + else if ((ref->path[ix] == 0) && (ix > 1) && (ref->path[ix - 1] == '/')) [...] ERROR: braces {} are necessary for all arms of this statement #2151: FILE: util/uri.c:2005: + else if ((ref->path[ix] == 0) && (ix > 1) && (ref->path[ix - 1] == '/')) [...] ERROR: braces {} are necessary for all arms of this statement #2154: FILE: util/uri.c:2008: + if (ref->path[ix] == '/') [...] ERROR: braces {} are necessary for all arms of this statement #2179: FILE: util/uri.c:2023: + if (bptr[ix] == '/') [...] ERROR: braces {} are necessary for all arms of this statement #2191: FILE: util/uri.c:2031: + if (uptr != NULL) [...] ERROR: braces {} are necessary for all arms of this statement #2272: FILE: util/uri.c:2096: + if (init_alloc <= 0) [...] ERROR: braces {} are necessary for all arms of this statement #2341: FILE: util/uri.c:2159: + if (eq && eq >= end) [...] ERROR: braces {} are necessary for all arms of this statement #2383: FILE: util/uri.c:2199: + if (*query) [...] total: 147 errors, 0 warnings, 2299 lines checked Your patch has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. Checking PATCH 2/6: util/uri.c: remove brackets that wrap `return` statement's content.... Checking PATCH 3/6: util/uri.c: wrap single statement blocks with braces {}... Checking PATCH 4/6: tests/libqos: Check for valid dev pointer when looking for PCI devices... Checking PATCH 5/6: Add a git-publish configuration file... Checking PATCH 6/6: README: Document 'git-publish' workflow... === OUTPUT END === Test command exited with code: 1 --- Email generated automatically by Patchew [http://patchew.org/]. Please send your feedback to patchew-devel@freelists.org ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [Qemu-devel] [PULL 0/6] Block patches 2018-03-05 9:40 [Qemu-devel] [PULL 0/6] Block patches Stefan Hajnoczi 2018-03-05 9:52 ` no-reply @ 2018-03-05 18:55 ` Peter Maydell 1 sibling, 0 replies; 18+ messages in thread From: Peter Maydell @ 2018-03-05 18:55 UTC (permalink / raw) To: Stefan Hajnoczi; +Cc: QEMU Developers, Qemu-block On 5 March 2018 at 09:40, Stefan Hajnoczi <stefanha@redhat.com> wrote: > The following changes since commit 136c67e07869227b21b3f627316e03679ce7b738: > > Merge remote-tracking branch 'remotes/bkoppelmann/tags/pull-tricore-2018-03-02' into staging (2018-03-02 16:56:20 +0000) > > are available in the Git repository at: > > git://github.com/stefanha/qemu.git tags/block-pull-request > > for you to fetch changes up to 23500c6a9409efc80d696aede0629bfbe7556a90: > > README: Document 'git-publish' workflow (2018-03-05 09:03:17 +0000) > > ---------------------------------------------------------------- > Pull request > > Mostly patches that are only indirectly related to the block layer, but I've > reviewed them and there is no maintainer. > > ---------------------------------------------------------------- > > Fam Zheng (2): > Add a git-publish configuration file > README: Document 'git-publish' workflow > > Su Hang (3): > util/uri.c: Coding style check, Only whitespace involved > util/uri.c: remove brackets that wrap `return` statement's content. > util/uri.c: wrap single statement blocks with braces {} > > Thomas Huth (1): > tests/libqos: Check for valid dev pointer when looking for PCI devices > > tests/libqos/virtio-pci.c | 4 +- > util/uri.c | 1733 ++++++++++++++++++++++++--------------------- > .gitpublish | 51 ++ > README | 31 +- > 4 files changed, 1014 insertions(+), 805 deletions(-) > create mode 100644 .gitpublish Applied, thanks. -- PMM ^ permalink raw reply [flat|nested] 18+ messages in thread
* [Qemu-devel] [PULL 0/6] Block patches @ 2014-06-23 9:31 Stefan Hajnoczi 2014-06-23 12:18 ` Peter Maydell 0 siblings, 1 reply; 18+ messages in thread From: Stefan Hajnoczi @ 2014-06-23 9:31 UTC (permalink / raw) To: qemu-devel; +Cc: Peter Maydell, Stefan Hajnoczi The following changes since commit 427e1750a0b98a72cad424327604f51e993dcc5f: gt64xxx_pci: Add VMStateDescription (2014-06-20 23:40:16 +0200) are available in the git repository at: git://github.com/stefanha/qemu.git tags/block-pull-request for you to fetch changes up to 2bd3bce8efebe86b031beab5c0e3b9bbaec0b502: block: asynchronously stop the VM on I/O errors (2014-06-23 16:36:13 +0800) ---------------------------------------------------------------- Block pull request ---------------------------------------------------------------- Chunyan Liu (1): QemuOpts: check NULL opts in qemu_opt_get functions Liu Yuan (1): sheepdog: fix NULL dereference in sd_create Paolo Bonzini (2): vl: allow other threads to do qemu_system_vmstop_request block: asynchronously stop the VM on I/O errors Peter Crosthwaite (2): block: m25p80: sync_page(): Deindent function body. block: m25p80: Support read only bdrvs. block.c | 21 ++++++++++-- block/sheepdog.c | 1 + cpus.c | 1 + docs/qmp/qmp-events.txt | 2 +- hw/block/m25p80.c | 30 ++++++++--------- include/sysemu/sysemu.h | 1 + stubs/vm-stop.c | 7 +++- target-lm32/op_helper.c | 2 +- util/qemu-option.c | 28 +++++++++++++--- vl.c | 85 +++++++++++++++++++++++++++++++------------------ 10 files changed, 122 insertions(+), 56 deletions(-) -- 1.9.3 ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [Qemu-devel] [PULL 0/6] Block patches 2014-06-23 9:31 Stefan Hajnoczi @ 2014-06-23 12:18 ` Peter Maydell 0 siblings, 0 replies; 18+ messages in thread From: Peter Maydell @ 2014-06-23 12:18 UTC (permalink / raw) To: Stefan Hajnoczi; +Cc: QEMU Developers On 23 June 2014 10:31, Stefan Hajnoczi <stefanha@redhat.com> wrote: > The following changes since commit 427e1750a0b98a72cad424327604f51e993dcc5f: > > gt64xxx_pci: Add VMStateDescription (2014-06-20 23:40:16 +0200) > > are available in the git repository at: > > git://github.com/stefanha/qemu.git tags/block-pull-request > > for you to fetch changes up to 2bd3bce8efebe86b031beab5c0e3b9bbaec0b502: > > block: asynchronously stop the VM on I/O errors (2014-06-23 16:36:13 +0800) > > ---------------------------------------------------------------- > Block pull request Applied, thanks. -- PMM ^ permalink raw reply [flat|nested] 18+ messages in thread
* [Qemu-devel] [PULL 0/6] Block patches @ 2013-01-14 10:01 Kevin Wolf 2013-01-20 14:47 ` Anthony Liguori 0 siblings, 1 reply; 18+ messages in thread From: Kevin Wolf @ 2013-01-14 10:01 UTC (permalink / raw) To: anthony; +Cc: kwolf, qemu-devel The following changes since commit 63fb2590839162afdf14d7c0ee02d460766c0956: Merge branch 'target-arm.next' of git://git.linaro.org/people/pmaydell/qemu-arm (2013-01-12 12:47:07 +0000) are available in the git repository at: git://repo.or.cz/qemu/kevin.git for-anthony Liu Yuan (1): sheepdog: implement direct write semantics Paolo Bonzini (2): block: do not probe zero-sized disks raw-posix: fix bdrv_aio_ioctl Stefan Hajnoczi (3): block: make qiov_is_aligned() public dataplane: extract virtio-blk read/write processing into do_rdwr_cmd() dataplane: handle misaligned virtio-blk requests block.c | 18 +++++++++++- block/raw-posix.c | 28 +---------------- block/sheepdog.c | 70 +++++++++++++++++++++++++------------------- hw/dataplane/virtio-blk.c | 71 ++++++++++++++++++++++++++++++++++++++------- include/block/block.h | 1 + 5 files changed, 120 insertions(+), 68 deletions(-) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [Qemu-devel] [PULL 0/6] Block patches 2013-01-14 10:01 Kevin Wolf @ 2013-01-20 14:47 ` Anthony Liguori 0 siblings, 0 replies; 18+ messages in thread From: Anthony Liguori @ 2013-01-20 14:47 UTC (permalink / raw) To: Kevin Wolf, anthony; +Cc: qemu-devel Pulled. Thanks. Regards, Anthony Liguori ^ permalink raw reply [flat|nested] 18+ messages in thread
* [Qemu-devel] [PULL 0/6] Block patches @ 2011-05-03 11:08 Kevin Wolf 2011-05-03 12:44 ` Anthony Liguori 0 siblings, 1 reply; 18+ messages in thread From: Kevin Wolf @ 2011-05-03 11:08 UTC (permalink / raw) To: anthony; +Cc: kwolf, qemu-devel The following changes since commit 57aa265d462a64a06268be26d49020729cff56c1: lm32: add Milkymist Minimac2 support (2011-05-03 10:48:40 +0200) are available in the git repository at: git://repo.or.cz/qemu/kevin.git for-anthony Alon Levy (1): ide/atapi: fix set but unused Amit Shah (2): atapi: Move comment to proper place atapi: Explain why we need a 'media not present' state Jes Sorensen (1): qemu-progress.c: printf isn't signal safe Kevin Wolf (1): qemu-img resize: Fix option parsing Nick Thomas (1): NBD: Avoid leaking a couple of strings when the NBD device is closed block/nbd.c | 4 ++++ hw/ide/atapi.c | 14 +++++++++----- qemu-img.c | 13 +++++++++++-- qemu-progress.c | 7 ++++++- 4 files changed, 30 insertions(+), 8 deletions(-) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [Qemu-devel] [PULL 0/6] Block patches 2011-05-03 11:08 Kevin Wolf @ 2011-05-03 12:44 ` Anthony Liguori 0 siblings, 0 replies; 18+ messages in thread From: Anthony Liguori @ 2011-05-03 12:44 UTC (permalink / raw) To: Kevin Wolf; +Cc: qemu-devel On 05/03/2011 06:08 AM, Kevin Wolf wrote: > The following changes since commit 57aa265d462a64a06268be26d49020729cff56c1: > > lm32: add Milkymist Minimac2 support (2011-05-03 10:48:40 +0200) > > are available in the git repository at: > git://repo.or.cz/qemu/kevin.git for-anthony Pulled. Thanks. Regards, Anthony Liguori > Alon Levy (1): > ide/atapi: fix set but unused > > Amit Shah (2): > atapi: Move comment to proper place > atapi: Explain why we need a 'media not present' state > > Jes Sorensen (1): > qemu-progress.c: printf isn't signal safe > > Kevin Wolf (1): > qemu-img resize: Fix option parsing > > Nick Thomas (1): > NBD: Avoid leaking a couple of strings when the NBD device is closed > > block/nbd.c | 4 ++++ > hw/ide/atapi.c | 14 +++++++++----- > qemu-img.c | 13 +++++++++++-- > qemu-progress.c | 7 ++++++- > 4 files changed, 30 insertions(+), 8 deletions(-) ^ permalink raw reply [flat|nested] 18+ messages in thread
* [Qemu-devel] [PULL 0/6] Block patches @ 2010-08-03 14:44 Kevin Wolf 2010-08-09 13:41 ` Anthony Liguori 0 siblings, 1 reply; 18+ messages in thread From: Kevin Wolf @ 2010-08-03 14:44 UTC (permalink / raw) To: anthony; +Cc: kwolf, qemu-devel The following changes since commit 5933e8a96ab9c59cb6b6c80c9db385364a68c959: fix last cpu timer initialization (2010-08-02 18:49:13 +0000) are available in the git repository at: git://repo.or.cz/qemu/kevin.git for-anthony Andrea Arcangeli (1): ide: Avoid canceling IDE DMA Kevin Wolf (2): block: Change bdrv_commit to handle multiple sectors at once block: Fix bdrv_has_zero_init Markus Armbruster (1): block: Change bdrv_eject() not to drop the image Miguel Di Ciurcio Filho (1): loadvm: improve tests before bdrv_snapshot_goto() Yoshiaki Tamura (1): block migration: replace tabs by spaces. block-migration.c | 12 ++++---- block.c | 50 ++++++++++++++++++------------------ block/raw-posix.c | 13 ++++++--- block/raw-win32.c | 6 ++++ block/raw.c | 6 ++++ block_int.h | 8 ++++- hw/ide/pci.c | 23 +++++++++++++++- monitor.c | 3 +- savevm.c | 71 +++++++++++++++++++++++++--------------------------- 9 files changed, 115 insertions(+), 77 deletions(-) ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [Qemu-devel] [PULL 0/6] Block patches 2010-08-03 14:44 Kevin Wolf @ 2010-08-09 13:41 ` Anthony Liguori 0 siblings, 0 replies; 18+ messages in thread From: Anthony Liguori @ 2010-08-09 13:41 UTC (permalink / raw) To: Kevin Wolf; +Cc: qemu-devel On 08/03/2010 09:44 AM, Kevin Wolf wrote: > The following changes since commit 5933e8a96ab9c59cb6b6c80c9db385364a68c959: > > fix last cpu timer initialization (2010-08-02 18:49:13 +0000) > Pulled, thanks. Regards, Anthony Liguori > are available in the git repository at: > git://repo.or.cz/qemu/kevin.git for-anthony > > Andrea Arcangeli (1): > ide: Avoid canceling IDE DMA > > Kevin Wolf (2): > block: Change bdrv_commit to handle multiple sectors at once > block: Fix bdrv_has_zero_init > > Markus Armbruster (1): > block: Change bdrv_eject() not to drop the image > > Miguel Di Ciurcio Filho (1): > loadvm: improve tests before bdrv_snapshot_goto() > > Yoshiaki Tamura (1): > block migration: replace tabs by spaces. > > block-migration.c | 12 ++++---- > block.c | 50 ++++++++++++++++++------------------ > block/raw-posix.c | 13 ++++++--- > block/raw-win32.c | 6 ++++ > block/raw.c | 6 ++++ > block_int.h | 8 ++++- > hw/ide/pci.c | 23 +++++++++++++++- > monitor.c | 3 +- > savevm.c | 71 +++++++++++++++++++++++++--------------------------- > 9 files changed, 115 insertions(+), 77 deletions(-) > > > ^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2018-03-05 18:55 UTC | newest] Thread overview: 18+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-12-13 17:48 [Qemu-devel] [PULL 0/6] Block patches Kevin Wolf 2013-12-13 17:48 ` [Qemu-devel] [PULL 1/6] sheepdog: check if '-o redundancy' is passed from user Kevin Wolf 2013-12-13 17:48 ` [Qemu-devel] [PULL 2/6] qapi-schema.json: Change 1.8 reference to 2.0 Kevin Wolf 2013-12-13 17:49 ` [Qemu-devel] [PULL 3/6] block/vvfat: Fix compiler warnings for OpenBSD Kevin Wolf 2013-12-13 17:49 ` [Qemu-devel] [PULL 4/6] block: expect get_block_status errors in bdrv_make_zero Kevin Wolf 2013-12-13 17:49 ` [Qemu-devel] [PULL 5/6] qemu-img: make progress output more accurate during convert Kevin Wolf 2013-12-13 17:49 ` [Qemu-devel] [PULL 6/6] blkdebug: Use QLIST_FOREACH_SAFE to resume IO Kevin Wolf -- strict thread matches above, loose matches on Subject: below -- 2018-03-05 9:40 [Qemu-devel] [PULL 0/6] Block patches Stefan Hajnoczi 2018-03-05 9:52 ` no-reply 2018-03-05 18:55 ` Peter Maydell 2014-06-23 9:31 Stefan Hajnoczi 2014-06-23 12:18 ` Peter Maydell 2013-01-14 10:01 Kevin Wolf 2013-01-20 14:47 ` Anthony Liguori 2011-05-03 11:08 Kevin Wolf 2011-05-03 12:44 ` Anthony Liguori 2010-08-03 14:44 Kevin Wolf 2010-08-09 13:41 ` Anthony Liguori
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).