summaryrefslogtreecommitdiff
authorapollo.ling <apollo.ling@amlogic.com>2020-05-27 09:21:14 (GMT)
committer apollo.ling <apollo.ling@amlogic.com>2020-05-29 02:31:44 (GMT)
commit92a6ea7cdafe3717c7e05c1282a8d24dbbd90216 (patch)
tree6d71f2e3488ba5d411874c7bf2f3098bf2bb0922
parent81b659430ef6142d26910a27f06b40cc5207bc58 (diff)
downloadmedia_modules-92a6ea7cdafe3717c7e05c1282a8d24dbbd90216.zip
media_modules-92a6ea7cdafe3717c7e05c1282a8d24dbbd90216.tar.gz
media_modules-92a6ea7cdafe3717c7e05c1282a8d24dbbd90216.tar.bz2
vdec: use kzalloc instead of vzalloc for some buffer use [1/1]
PD#SWPL-26743 Problem: In soft irq context uses vmalloc functions Solution: use kzalloc with GFP_ATOMIC flag to substitude vzalloc Verify: AC214 Change-Id: I10a5f58ade1f4107431cf9de24b0d40f5aae08a1 Signed-off-by: apollo.ling <apollo.ling@amlogic.com>
Diffstat
-rw-r--r--drivers/frame_provider/decoder/h264_multi/h264_dpb.c10
-rw-r--r--drivers/frame_provider/decoder/mjpeg/vmjpeg_multi.c5
-rw-r--r--drivers/frame_provider/decoder/mpeg12/vmpeg12_multi.c5
-rw-r--r--drivers/frame_provider/decoder/mpeg4/vmpeg4_multi.c5
4 files changed, 15 insertions, 10 deletions
diff --git a/drivers/frame_provider/decoder/h264_multi/h264_dpb.c b/drivers/frame_provider/decoder/h264_multi/h264_dpb.c
index 106b99e..94ff91e 100644
--- a/drivers/frame_provider/decoder/h264_multi/h264_dpb.c
+++ b/drivers/frame_provider/decoder/h264_multi/h264_dpb.c
@@ -37,18 +37,19 @@ int dpb_print(int index, int debug_flag, const char *fmt, ...)
if (((h264_debug_flag & debug_flag) &&
((1 << index) & h264_debug_mask))
|| (debug_flag == PRINT_FLAG_ERROR)) {
- unsigned char *buf = vzalloc(512);
+ unsigned char *buf = kzalloc(512, GFP_ATOMIC);
int len = 0;
va_list args;
if (!buf)
return 0;
+
va_start(args, fmt);
len = sprintf(buf, "%d: ", index);
vsnprintf(buf + len, 512-len, fmt, args);
pr_debug("%s", buf);
va_end(args);
- vfree(buf);
+ kfree(buf);
}
return 0;
}
@@ -58,17 +59,18 @@ int dpb_print_cont(int index, int debug_flag, const char *fmt, ...)
if (((h264_debug_flag & debug_flag) &&
((1 << index) & h264_debug_mask))
|| (debug_flag == PRINT_FLAG_ERROR)) {
- unsigned char *buf = vzalloc(512);
+ unsigned char *buf = kzalloc(512, GFP_ATOMIC);
int len = 0;
va_list args;
if (!buf)
return 0;
+
va_start(args, fmt);
vsnprintf(buf + len, 512-len, fmt, args);
pr_info("%s", buf);
va_end(args);
- vfree(buf);
+ kfree(buf);
}
return 0;
}
diff --git a/drivers/frame_provider/decoder/mjpeg/vmjpeg_multi.c b/drivers/frame_provider/decoder/mjpeg/vmjpeg_multi.c
index 7f2007a..5c9884c 100644
--- a/drivers/frame_provider/decoder/mjpeg/vmjpeg_multi.c
+++ b/drivers/frame_provider/decoder/mjpeg/vmjpeg_multi.c
@@ -122,18 +122,19 @@ int mmjpeg_debug_print(int index, int debug_flag, const char *fmt, ...)
if (((debug_enable & debug_flag) &&
((1 << index) & mmjpeg_debug_mask))
|| (debug_flag == PRINT_FLAG_ERROR)) {
- unsigned char *buf = vzalloc(512);
+ unsigned char *buf = kzalloc(512, GFP_ATOMIC);
int len = 0;
va_list args;
if (!buf)
return 0;
+
va_start(args, fmt);
len = sprintf(buf, "%d: ", index);
vsnprintf(buf + len, 512-len, fmt, args);
pr_info("%s", buf);
va_end(args);
- vfree(buf);
+ kfree(buf);
}
return 0;
}
diff --git a/drivers/frame_provider/decoder/mpeg12/vmpeg12_multi.c b/drivers/frame_provider/decoder/mpeg12/vmpeg12_multi.c
index 8a04616..c806cde 100644
--- a/drivers/frame_provider/decoder/mpeg12/vmpeg12_multi.c
+++ b/drivers/frame_provider/decoder/mpeg12/vmpeg12_multi.c
@@ -348,18 +348,19 @@ int debug_print(int index, int debug_flag, const char *fmt, ...)
if (((debug_enable & debug_flag) &&
((1 << index) & mpeg12_debug_mask))
|| (debug_flag == PRINT_FLAG_ERROR)) {
- unsigned char *buf = vzalloc(512);
+ unsigned char *buf = kzalloc(512, GFP_ATOMIC);
int len = 0;
va_list args;
if (!buf)
return 0;
+
va_start(args, fmt);
len = sprintf(buf, "%d: ", index);
vsnprintf(buf + len, 512-len, fmt, args);
pr_info("%s", buf);
va_end(args);
- vfree(buf);
+ kfree(buf);
}
return 0;
}
diff --git a/drivers/frame_provider/decoder/mpeg4/vmpeg4_multi.c b/drivers/frame_provider/decoder/mpeg4/vmpeg4_multi.c
index d6f2845..b1a5911 100644
--- a/drivers/frame_provider/decoder/mpeg4/vmpeg4_multi.c
+++ b/drivers/frame_provider/decoder/mpeg4/vmpeg4_multi.c
@@ -179,18 +179,19 @@ int mmpeg4_debug_print(int index, int debug_flag, const char *fmt, ...)
if (((debug_enable & debug_flag) &&
((1 << index) & mpeg4_debug_mask))
|| (debug_flag == PRINT_FLAG_ERROR)) {
- unsigned char *buf = vzalloc(512);
+ unsigned char *buf = kzalloc(512, GFP_ATOMIC);
int len = 0;
va_list args;
if (!buf)
return 0;
+
va_start(args, fmt);
len = sprintf(buf, "%d: ", index);
vsnprintf(buf + len, 512-len, fmt, args);
pr_info("%s", buf);
va_end(args);
- vfree(buf);
+ kfree(buf);
}
return 0;
}