@@ -232,6 +232,7 @@ static struct tb_cfg_result decode_error(const struct ctl_pkg *response)
struct cfg_error_pkg *pkg = response->buffer;
struct tb_ctl *ctl = response->ctl;
struct tb_cfg_result res = { 0 };
+
res.response_route = tb_cfg_get_route(&pkg->header);
res.response_port = 0;
res.err = check_header(response, sizeof(*pkg), TB_CFG_PKG_ERROR,
@@ -327,6 +328,7 @@ static void tb_ctl_pkg_free(struct ctl_pkg *pkg)
static struct ctl_pkg *tb_ctl_pkg_alloc(struct tb_ctl *ctl)
{
struct ctl_pkg *pkg = kzalloc(sizeof(*pkg), GFP_KERNEL);
+
if (!pkg)
return NULL;
pkg->ctl = ctl;
@@ -346,6 +348,7 @@ static void tb_ctl_tx_callback(struct tb_ring *ring, struct ring_frame *frame,
bool canceled)
{
struct ctl_pkg *pkg = container_of(frame, typeof(*pkg), frame);
+
tb_ctl_pkg_free(pkg);
}
@@ -361,6 +364,7 @@ static int tb_ctl_tx(struct tb_ctl *ctl, const void *data, size_t len,
{
int res;
struct ctl_pkg *pkg;
+
if (len % 4 != 0) { /* required for le->be conversion */
tb_ctl_WARN(ctl, "TX: invalid size: %zu\n", len);
return -EINVAL;
@@ -627,6 +631,7 @@ struct tb_ctl *tb_ctl_alloc(struct tb_nhi *nhi, int timeout_msec, event_cb cb,
{
int i;
struct tb_ctl *ctl = kzalloc(sizeof(*ctl), GFP_KERNEL);
+
if (!ctl)
return NULL;
ctl->nhi = nhi;
@@ -700,6 +705,7 @@ void tb_ctl_free(struct tb_ctl *ctl)
void tb_ctl_start(struct tb_ctl *ctl)
{
int i;
+
tb_ctl_dbg(ctl, "control channel starting...\n");
tb_ring_start(ctl->tx); /* is used to ack hotplug packets, start first */
tb_ring_start(ctl->rx);
Added blank lines after variable declarations as per checkpatch.pl (all issues of that kind in the file). Signed-off-by: Gabriel Viso Carrera <gabriel@gvisoc.com> --- drivers/thunderbolt/ctl.c | 6 ++++++ 1 file changed, 6 insertions(+)