Skip to content

Commit a9a5fd1

Browse files
author
dmitrygo
committed
Fixed out of bounds read in JIT planar convolution
1 parent 5a22aee commit a9a5fd1

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

src/cpu/x64/jit_uni_planar_conv_kernel_f32.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -691,24 +691,24 @@ status_t jit_uni_planar_conv_fwd_kernel_f32<isa>::init_conf(jit_conv_conf_t &jcp
691691
jcp.ic = src_d.dims()[1] / jcp.ngroups;
692692

693693
jcp.id = (ndims == 5) ? src_d.dims()[2] : 1;
694-
jcp.ih = src_d.dims()[ndims-2];
694+
jcp.ih = (ndims == 3) ? 1 : src_d.dims()[ndims-2];
695695
jcp.iw = src_d.dims()[ndims-1];
696696
jcp.od = (ndims == 5) ? dst_d.dims()[2] : 1;
697-
jcp.oh = dst_d.dims()[ndims-2];
697+
jcp.oh = (ndims == 3) ? 1 : dst_d.dims()[ndims-2];
698698
jcp.ow = dst_d.dims()[ndims-1];
699699
jcp.kd = (ndims == 5) ? weights_d.dims()[with_groups + 2] : 1;
700-
jcp.kh = weights_d.dims()[with_groups + ndims-2];
700+
jcp.kh = (ndims == 3) ? 1 : weights_d.dims()[with_groups + ndims-2];
701701
jcp.kw = weights_d.dims()[with_groups + ndims-1];
702702

703703
jcp.f_pad = (ndims == 5) ? cd.padding[0][0] : 0;
704-
jcp.t_pad = cd.padding[0][ndims-4];
704+
jcp.t_pad = (ndims == 3) ? 0 : cd.padding[0][ndims-4];
705705
jcp.l_pad = cd.padding[0][ndims-3];
706706
jcp.stride_d = (ndims == 5) ? cd.strides[0] : 1;
707-
jcp.stride_h = cd.strides[ndims-4];
707+
jcp.stride_h = (ndims == 3) ? 1 : cd.strides[ndims-4];
708708
jcp.stride_w = cd.strides[ndims-3];
709709

710710
jcp.dilate_d = (ndims == 5) ? cd.dilates[0] : 0;
711-
jcp.dilate_h = cd.dilates[ndims-4];
711+
jcp.dilate_h = (ndims == 3) ? 0 : cd.dilates[ndims-4];
712712
jcp.dilate_w = cd.dilates[ndims-3];
713713

714714
jcp.b_pad = (jcp.oh - 1) * jcp.stride_h + (jcp.kh - 1) * (jcp.dilate_h + 1)

0 commit comments

Comments
 (0)