diff --git a/drivers/media/platform/msm/synx/synx.c b/drivers/media/platform/msm/synx/synx.c index 7d742601ffad..c2ebdd16a387 100644 --- a/drivers/media/platform/msm/synx/synx.c +++ b/drivers/media/platform/msm/synx/synx.c @@ -9,6 +9,7 @@ #include #include #include +#include #include "synx_api.h" #include "synx_util.h" @@ -1435,7 +1436,7 @@ int synx_initialize(struct synx_session *session_id, bit = test_and_set_bit(idx, synx_dev->bitmap); } while (bit); - client = kzalloc(sizeof(*client), GFP_KERNEL); + client = vzalloc(sizeof(*client)); if (!client) { clear_bit(idx, synx_dev->bitmap); return -ENOMEM; diff --git a/drivers/media/platform/msm/synx/synx_util.c b/drivers/media/platform/msm/synx/synx_util.c index 2b532429086a..97ae7153367a 100644 --- a/drivers/media/platform/msm/synx/synx_util.c +++ b/drivers/media/platform/msm/synx/synx_util.c @@ -6,6 +6,7 @@ #include #include +#include #include "synx_api.h" #include "synx_util.h" @@ -975,7 +976,7 @@ static void synx_client_destroy(struct kref *kref) pr_info("[sess: %u] session destroyed %s\n", client->id, client->name); - kfree(client); + vfree(client); } void synx_put_client(struct synx_client *client)