Re: [PATCH] ath10k: replace deprecated strncpy with strtomem_pad

2023-10-23 Thread Jeff Johnson

On 10/18/2023 4:35 PM, Kees Cook wrote:

On Fri, Oct 13, 2023 at 05:58:03PM -0700, Jeff Johnson wrote:

Let's also mark ath10k_vif.u.ap.ssid as __nonstring.


what criteria is used to determine whether or not to use __nonstring?
doesn't the use of u8 vs char already communicate that distinction?
just want to know what other u8 arrays might require this.
FWIW the documentation referenced by the __nonstring macro explicitly refers
to "type array of char, signed char, or unsigned char"


The use of __nonstring is for byte arrays that are _not_ expected to be
%NUL terminated. Unfortunately "char" vs "u8" isn't distinguished by the
compiler. All byte arrays are treated as C strings unless __nonstring is
used.


So is the plan to annotate every single binary blob array in the kernel 
as __nonstring? I suspect those outnumber string arrays.





[kvalo-ath:pending-deferred] BUILD SUCCESS a3cfdc79c4a8fc1096676e4b68da8ae1f84fbefd

2023-10-23 Thread kernel test robot
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git 
pending-deferred
branch HEAD: a3cfdc79c4a8fc1096676e4b68da8ae1f84fbefd  wifi: ath10k: mac: 
enable WIPHY_FLAG_CHANNEL_CHANGE_ON_BEACON on ath10k

elapsed time: 6072m

configs tested: 133
configs skipped: 2

The following configs have been built successfully.
More configs may be tested in the coming days.

tested configs:
alpha allnoconfig   gcc  
alphaallyesconfig   gcc  
alpha   defconfig   gcc  
arc  allmodconfig   gcc  
arc   allnoconfig   gcc  
arc  allyesconfig   gcc  
arc defconfig   gcc  
arc   randconfig-001-20231020   gcc  
arm  allmodconfig   gcc  
arm   allnoconfig   gcc  
arm  allyesconfig   gcc  
arm defconfig   gcc  
arm   randconfig-001-20231021   gcc  
arm64allmodconfig   gcc  
arm64 allnoconfig   gcc  
arm64allyesconfig   gcc  
arm64   defconfig   gcc  
csky allmodconfig   gcc  
csky  allnoconfig   gcc  
csky allyesconfig   gcc  
cskydefconfig   gcc  
i386 allmodconfig   gcc  
i386  allnoconfig   gcc  
i386 buildonly-randconfig-001-20231021   gcc  
i386 buildonly-randconfig-002-20231021   gcc  
i386 buildonly-randconfig-003-20231021   gcc  
i386 buildonly-randconfig-004-20231021   gcc  
i386 buildonly-randconfig-005-20231021   gcc  
i386 buildonly-randconfig-006-20231021   gcc  
i386  debian-10.3   gcc  
i386defconfig   gcc  
i386  randconfig-001-20231021   gcc  
i386  randconfig-002-20231021   gcc  
i386  randconfig-003-20231021   gcc  
i386  randconfig-004-20231021   gcc  
i386  randconfig-005-20231021   gcc  
i386  randconfig-006-20231021   gcc  
i386  randconfig-011-20231021   gcc  
i386  randconfig-012-20231021   gcc  
i386  randconfig-013-20231021   gcc  
i386  randconfig-014-20231021   gcc  
i386  randconfig-015-20231021   gcc  
i386  randconfig-016-20231021   gcc  
loongarchallmodconfig   gcc  
loongarch allnoconfig   gcc  
loongarchallyesconfig   gcc  
loongarch   defconfig   gcc  
loongarch randconfig-001-20231020   gcc  
m68k allmodconfig   gcc  
m68k  allnoconfig   gcc  
m68k allyesconfig   gcc  
m68kdefconfig   gcc  
microblaze   allmodconfig   gcc  
microblazeallnoconfig   gcc  
microblaze   allyesconfig   gcc  
microblaze  defconfig   gcc  
mips allmodconfig   gcc  
mips  allnoconfig   gcc  
mips allyesconfig   gcc  
nios2allmodconfig   gcc  
nios2 allnoconfig   gcc  
nios2allyesconfig   gcc  
nios2   defconfig   gcc  
openrisc allmodconfig   gcc  
openrisc  allnoconfig   gcc  
openrisc allyesconfig   gcc  
openriscdefconfig   gcc  
parisc   allmodconfig   gcc  
pariscallnoconfig   gcc  
parisc   allyesconfig   gcc  
parisc  defconfig   gcc  
parisc64defconfig   gcc  
powerpc  allmodconfig   gcc  
powerpc   allnoconfig   gcc  
powerpc  allyesconfig   gcc  
riscvallmodconfig   gcc  
riscv allnoconfig   gcc  
riscvallyesconfig   gcc  
riscv   defconfig   gcc  
riscv randconfig-001-20231020   gcc  
riscv  rv32_defconfig   gcc  
s390 allmodconfig   gcc  
s390  allnoconfig   gcc  
s390 allyesconfig   gcc  
s390defconfig   gcc  
s390