Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1527759 > unrolled thread
| Started by | Cathy Avery <cavery@redhat.com> |
|---|---|
| First post | 2016-11-22 18:40 +0100 |
| Last post | 2016-11-23 04:00 +0100 |
| Articles | 3 — 2 participants |
Back to article view | Back to linux.kernel
[PATCH] [hv] storvsc: Payload buffer incorrectly sized for 32 bit kernels. Cathy Avery <cavery@redhat.com> - 2016-11-22 18:40 +0100
[PATCH] storvsc: fix kzalloc-simple.cocci warnings kbuild test robot <lkp@intel.com> - 2016-11-23 04:00 +0100
Re: [PATCH] [hv] storvsc: Payload buffer incorrectly sized for 32 bit kernels. kbuild test robot <lkp@intel.com> - 2016-11-23 04:00 +0100
| From | Cathy Avery <cavery@redhat.com> |
|---|---|
| Date | 2016-11-22 18:40 +0100 |
| Subject | [PATCH] [hv] storvsc: Payload buffer incorrectly sized for 32 bit kernels. |
| Message-ID | <sGnd1-1Py-59@gated-at.bofh.it> |
On a 32 bit kernel sizeof(void *) is not 64 bits as hv_mpb_array
requires. Also the buffer needs to be cleared or the upper bytes
could contain junk.
Suggested-by: Vitaly Kuznets <vkuznets@redhat.com>
Signed-off-by: Cathy Avery <cavery@redhat.com>
---
drivers/scsi/storvsc_drv.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/scsi/storvsc_drv.c b/drivers/scsi/storvsc_drv.c
index 8ccfc9e..b4a8c9d 100644
--- a/drivers/scsi/storvsc_drv.c
+++ b/drivers/scsi/storvsc_drv.c
@@ -1495,11 +1495,12 @@ static int storvsc_queuecommand(struct Scsi_Host *host, struct scsi_cmnd *scmnd)
if (sg_count) {
if (sg_count > MAX_PAGE_BUFFER_COUNT) {
- payload_sz = (sg_count * sizeof(void *) +
+ payload_sz = (sg_count * sizeof(u64) +
sizeof(struct vmbus_packet_mpb_array));
payload = kmalloc(payload_sz, GFP_ATOMIC);
if (!payload)
return SCSI_MLQUEUE_DEVICE_BUSY;
+ memset(payload, 0, payload_sz);
}
payload->range.len = length;
--
2.5.0
[toc] | [next] | [standalone]
| From | kbuild test robot <lkp@intel.com> |
|---|---|
| Date | 2016-11-23 04:00 +0100 |
| Subject | [PATCH] storvsc: fix kzalloc-simple.cocci warnings |
| Message-ID | <sGvWV-7jS-9@gated-at.bofh.it> |
| In reply to | #1527759 |
drivers/scsi/storvsc_drv.c:1500:13-20: WARNING: kzalloc should be used for payload, instead of kmalloc/memset Use kzalloc rather than kmalloc followed by memset with 0 This considers some simple cases that are common and easy to validate Note in particular that there are no ...s in the rule, so all of the matched code has to be contiguous Generated by: scripts/coccinelle/api/alloc/kzalloc-simple.cocci CC: Cathy Avery <cavery@redhat.com> Signed-off-by: Fengguang Wu <fengguang.wu@intel.com> --- storvsc_drv.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) --- a/drivers/scsi/storvsc_drv.c +++ b/drivers/scsi/storvsc_drv.c @@ -1497,10 +1497,9 @@ static int storvsc_queuecommand(struct S payload_sz = (sg_count * sizeof(u64) + sizeof(struct vmbus_packet_mpb_array)); - payload = kmalloc(payload_sz, GFP_ATOMIC); + payload = kzalloc(payload_sz, GFP_ATOMIC); if (!payload) return SCSI_MLQUEUE_DEVICE_BUSY; - memset(payload, 0, payload_sz); } payload->range.len = length;
[toc] | [prev] | [next] | [standalone]
| From | kbuild test robot <lkp@intel.com> |
|---|---|
| Date | 2016-11-23 04:00 +0100 |
| Subject | Re: [PATCH] [hv] storvsc: Payload buffer incorrectly sized for 32 bit kernels. |
| Message-ID | <sGvWV-7jS-11@gated-at.bofh.it> |
| In reply to | #1527759 |
Hi Cathy, [auto build test WARNING on scsi/for-next] [also build test WARNING on v4.9-rc6 next-20161122] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Cathy-Avery/storvsc-Payload-buffer-incorrectly-sized-for-32-bit-kernels/20161123-091420 base: https://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git for-next coccinelle warnings: (new ones prefixed by >>) >> drivers/scsi/storvsc_drv.c:1500:13-20: WARNING: kzalloc should be used for payload, instead of kmalloc/memset Please review and possibly fold the followup patch. --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web