diff options
author | Jes Sorensen <Jes.Sorensen@redhat.com> | 2015-05-05 18:37:13 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-05-08 15:27:33 +0200 |
commit | cc55b5c5a7e3ff82e9c419554c531bc444a7f87c (patch) | |
tree | 8c30bac4688aec14bc443d533ddc98591f48a9c4 /drivers/staging/unisys | |
parent | 464129edbccf70d77f526943d1ca6f8163d7f82b (diff) |
staging: unisys: parser_init_guts(): standard_payload_header is always false
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/unisys')
-rw-r--r-- | drivers/staging/unisys/visorbus/visorchipset.c | 37 |
1 files changed, 9 insertions, 28 deletions
diff --git a/drivers/staging/unisys/visorbus/visorchipset.c b/drivers/staging/unisys/visorbus/visorchipset.c index b6b332c27150..2cf59cacc7f4 100644 --- a/drivers/staging/unisys/visorbus/visorchipset.c +++ b/drivers/staging/unisys/visorbus/visorchipset.c @@ -376,21 +376,20 @@ static void controlvm_respond_physdev_changestate( static void parser_done(struct parser_context *ctx); static struct parser_context * -parser_init_guts(u64 addr, u32 bytes, bool local, - bool standard_payload_header, bool *retry) +parser_init_guts(u64 addr, u32 bytes, bool local, bool *retry) { int allocbytes = sizeof(struct parser_context) + bytes; struct parser_context *rc = NULL; struct parser_context *ctx = NULL; - struct spar_controlvm_parameters_header *phdr = NULL; if (retry) *retry = false; - if (!standard_payload_header) - /* alloc and 0 extra byte to ensure payload is - * '\0'-terminated - */ - allocbytes++; + + /* + * alloc an 0 extra byte to ensure payload is + * '\0'-terminated + */ + allocbytes++; if ((controlvm_payload_bytes_buffered + bytes) > MAX_CONTROLVM_PAYLOAD_BYTES) { if (retry) @@ -437,26 +436,8 @@ parser_init_guts(u64 addr, u32 bytes, bool local, memcpy_fromio(ctx->data, mapping, bytes); release_mem_region(addr, bytes); } - if (!standard_payload_header) { - ctx->byte_stream = true; - rc = ctx; - goto cleanup; - } - phdr = (struct spar_controlvm_parameters_header *)(ctx->data); - if (phdr->total_length != bytes) { - rc = NULL; - goto cleanup; - } - if (phdr->total_length < phdr->header_length) { - rc = NULL; - goto cleanup; - } - if (phdr->header_length < - sizeof(struct spar_controlvm_parameters_header)) { - rc = NULL; - goto cleanup; - } + ctx->byte_stream = true; rc = ctx; cleanup: if (rc) { @@ -478,7 +459,7 @@ cleanup: static struct parser_context * parser_init_byte_stream(u64 addr, u32 bytes, bool local, bool *retry) { - return parser_init_guts(addr, bytes, local, false, retry); + return parser_init_guts(addr, bytes, local, retry); } static uuid_le |