Convert 'alloc_obj' family to use the new default GFP_KERNEL argumentThis was done entirely with mindless brute force, using git grep -l '\<k[vmz]*alloc_objs*(.*, GFP_KERNEL)' | xargs
Convert 'alloc_obj' family to use the new default GFP_KERNEL argumentThis was done entirely with mindless brute force, using git grep -l '\<k[vmz]*alloc_objs*(.*, GFP_KERNEL)' | xargs sed -i 's/\(alloc_objs*(.*\), GFP_KERNEL)/\1)/'to convert the new alloc_obj() users that had a simple GFP_KERNELargument to just drop that argument.Note that due to the extreme simplicity of the scripting, any slightlymore complex cases spread over multiple lines would not be triggered:they definitely exist, but this covers the vast bulk of the cases, andthe resulting diff is also then easier to check automatically.For the same reason the 'flex' versions will be done as a separateconversion.Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
show more ...
treewide: Replace kmalloc with kmalloc_obj for non-scalar typesThis is the result of running the Coccinelle script fromscripts/coccinelle/api/kmalloc_objs.cocci. The script is designed toavoid sc
treewide: Replace kmalloc with kmalloc_obj for non-scalar typesThis is the result of running the Coccinelle script fromscripts/coccinelle/api/kmalloc_objs.cocci. The script is designed toavoid scalar types (which need careful case-by-case checking), andinstead replace kmalloc-family calls that allocate struct or unionobject instances:Single allocations: kmalloc(sizeof(TYPE), ...)are replaced with: kmalloc_obj(TYPE, ...)Array allocations: kmalloc_array(COUNT, sizeof(TYPE), ...)are replaced with: kmalloc_objs(TYPE, COUNT, ...)Flex array allocations: kmalloc(struct_size(PTR, FAM, COUNT), ...)are replaced with: kmalloc_flex(*PTR, FAM, COUNT, ...)(where TYPE may also be *VAR)The resulting allocations no longer return "void *", instead returning"TYPE *".Signed-off-by: Kees Cook <kees@kernel.org>
tee: tstee: Add Trusted Services TEE driverThe Trusted Services project provides a framework for developing anddeploying device Root of Trust services in FF-A Secure Partitions. TheFF-A SPs are a
tee: tstee: Add Trusted Services TEE driverThe Trusted Services project provides a framework for developing anddeploying device Root of Trust services in FF-A Secure Partitions. TheFF-A SPs are accessible through the FF-A driver, but this doesn'tprovide a user space interface. The goal of this TEE driver is to makeTrusted Services SPs accessible for user space clients.All TS SPs have the same FF-A UUID, it identifies the RPC protocol usedby TS. A TS SP can host one or more services, a service is identified byits service UUID. The same type of service cannot be present twice inthe same SP. During SP boot each service in an SP is assigned aninterface ID, this is just a short ID to simplify message addressing.There is 1:1 mapping between TS SPs and TEE devices, i.e. a separate TEEdevice is registered for each TS SP. This is required since contrary tothe generic TEE design where memory is shared with the whole TEEimplementation, in case of FF-A, memory is shared with a specific SP. Auser space client has to be able to separately share memory with each SPbased on its endpoint ID.Acked-by: Sumit Garg <sumit.garg@linaro.org>Signed-off-by: Balint Dobszay <balint.dobszay@arm.com>Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>