#
a9f07790 |
| 08-Dec-2023 |
Xingyuan Mo <hdthky0@gmail.com> |
accel/habanalabs: fix information leak in sec_attest_info()
This function may copy the pad0 field of struct hl_info_sec_attest to user mode which has not been initialized, resulting in leakage of ke
accel/habanalabs: fix information leak in sec_attest_info()
This function may copy the pad0 field of struct hl_info_sec_attest to user mode which has not been initialized, resulting in leakage of kernel heap data to user mode. To prevent this, use kzalloc() to allocate and zero out the buffer, which can also eliminate other uninitialized holes, if any.
Fixes: 0c88760f8f5e ("habanalabs/gaudi2: add secured attestation info uapi") Signed-off-by: Xingyuan Mo <hdthky0@gmail.com> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
7259eb7b |
| 12-Nov-2023 |
Moti Haimovski <mhaimovski@habana.ai> |
accel/habanalabs/gaudi2: add signed dev info uAPI
User will provide a nonce via the INFO ioctl, and will retrieve the signed device info generated using given nonce.
Signed-off-by: Moti Haimovski <
accel/habanalabs/gaudi2: add signed dev info uAPI
User will provide a nonce via the INFO ioctl, and will retrieve the signed device info generated using given nonce.
Signed-off-by: Moti Haimovski <mhaimovski@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
0648c4d0 |
| 09-Aug-2023 |
Hen Alon <halon@habana.ai> |
accel/habanalabs: add tsc clock sampling to clock sync info
Add tsc clock to clock sync info, to enable using this clock for sampling and sync it with device time.
Signed-off-by: Hen Alon <halon@ha
accel/habanalabs: add tsc clock sampling to clock sync info
Add tsc clock to clock sync info, to enable using this clock for sampling and sync it with device time.
Signed-off-by: Hen Alon <halon@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
ab574f6a |
| 25-Jun-2023 |
Dafna Hirschfeld <dhirschfeld@habana.ai> |
accel/habanalabs: disable events ioctls on control device
Because it is not used and also, for graceful reset to work those ioctls should run on the compute device.
Signed-off-by: Dafna Hirschfeld
accel/habanalabs: disable events ioctls on control device
Because it is not used and also, for graceful reset to work those ioctls should run on the compute device.
Signed-off-by: Dafna Hirschfeld <dhirschfeld@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
57963ff8 |
| 17-Apr-2023 |
Tomer Tayar <ttayar@habana.ai> |
accel/habanalabs: Move ioctls to the device specific ioctls range
To use drm_ioctl(), move the ioctls to the device specific ioctls range at [DRM_COMMAND_BASE, DRM_COMMAND_END).
Signed-off-by: Tome
accel/habanalabs: Move ioctls to the device specific ioctls range
To use drm_ioctl(), move the ioctls to the device specific ioctls range at [DRM_COMMAND_BASE, DRM_COMMAND_END).
Signed-off-by: Tomer Tayar <ttayar@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
fe77368c |
| 19-Feb-2023 |
Tomer Tayar <ttayar@habana.ai> |
accel/habanalabs: register compute device as an accel device
Register the compute device as an accel device, and remove the creation of the habanalabs compute char device.
The IOCTLs in this patch
accel/habanalabs: register compute device as an accel device
Register the compute device as an accel device, and remove the creation of the habanalabs compute char device.
The IOCTLs in this patch are still handled by the current driver handler. Moving to DRM IOCTL handling requires moving the IOCTLs numbers to a specific range, so it will be handled in subsequent patches.
Signed-off-by: Tomer Tayar <ttayar@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
a8ab1a81 |
| 23-May-2023 |
Ofir Bitton <obitton@habana.ai> |
accel/habanalabs: add info ioctl for engine error reports
User gets notification for every engine error report, but he still lacks the exact engine information. Hence, we allow user to query for the
accel/habanalabs: add info ioctl for engine error reports
User gets notification for every engine error report, but he still lacks the exact engine information. Hence, we allow user to query for the exact engine reported an error.
Signed-off-by: Ofir Bitton <obitton@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
7dccb064 |
| 16-May-2023 |
Tomer Tayar <ttayar@habana.ai> |
accel/habanalabs: print task name and request code upon ioctl failure
When an ioctl fails, it is useful to know what is the task command name and the full ioctl request code, in addition to the task
accel/habanalabs: print task name and request code upon ioctl failure
When an ioctl fails, it is useful to know what is the task command name and the full ioctl request code, in addition to the task pid and the ioctl number. Add the additional information to the relevant debug error prints.
Signed-off-by: Tomer Tayar <ttayar@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
ff5c7025 |
| 18-May-2023 |
Oded Gabbay <ogabbay@kernel.org> |
accel/habanalabs: move ioctl error print to debug level
We don't want to allow users to spam the kernel log and sending ioctls with bad opcodes is a sure way to do it.
Signed-off-by: Oded Gabbay <o
accel/habanalabs: move ioctl error print to debug level
We don't want to allow users to spam the kernel log and sending ioctls with bad opcodes is a sure way to do it.
Signed-off-by: Oded Gabbay <ogabbay@kernel.org> Reviewed-by: Ofir Bitton <obitton@habana.ai>
show more ...
|
#
583f12a8 |
| 09-May-2023 |
Ofir Bitton <obitton@habana.ai> |
accel/habanalabs: remove support for mmu disable
As mmu disable mode is only used for bring-up stages, let's remove this option and all code related to it.
Signed-off-by: Ofir Bitton <obitton@haban
accel/habanalabs: remove support for mmu disable
As mmu disable mode is only used for bring-up stages, let's remove this option and all code related to it.
Signed-off-by: Ofir Bitton <obitton@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
04729b41 |
| 13-Apr-2023 |
Moti Haimovski <mhaimovski@habana.ai> |
accel/habanalabs: call to HW/FW err returns 0 when no events exist
This commit modifies the call to retrieve HW or FW error events to return success when no events are pending, as done in the calls
accel/habanalabs: call to HW/FW err returns 0 when no events exist
This commit modifies the call to retrieve HW or FW error events to return success when no events are pending, as done in the calls to other events.
Signed-off-by: Moti Haimovski <mhaimovski@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
958e4797 |
| 13-Mar-2023 |
Ofir Bitton <obitton@habana.ai> |
accel/habanalabs: expose rotator mask to userspace
All engine masks are exposed to user, make sure user gets the correct rotator enabled mask in gaudi2.
Signed-off-by: Ofir Bitton <obitton@habana.a
accel/habanalabs: expose rotator mask to userspace
All engine masks are exposed to user, make sure user gets the correct rotator enabled mask in gaudi2.
Signed-off-by: Ofir Bitton <obitton@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
76e1ff37 |
| 13-Mar-2023 |
Ofir Bitton <obitton@habana.ai> |
accel/habanalabs: expose dram reserved size by kmd
We expose this in order for user applications to know how much dram is reserved for internal use.
Signed-off-by: Ofir Bitton <obitton@habana.ai> R
accel/habanalabs: expose dram reserved size by kmd
We expose this in order for user applications to know how much dram is reserved for internal use.
Signed-off-by: Ofir Bitton <obitton@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
c7ac65c8 |
| 27-Feb-2023 |
Dafna Hirschfeld <dhirschfeld@habana.ai> |
accel/habanalabs: allow getting HL_INFO_DRAM_USAGE during soft-reset
We can allow userspace to query the dram usage during soft-reset.
Signed-off-by: Dafna Hirschfeld <dhirschfeld@habana.ai> Review
accel/habanalabs: allow getting HL_INFO_DRAM_USAGE during soft-reset
We can allow userspace to query the dram usage during soft-reset.
Signed-off-by: Dafna Hirschfeld <dhirschfeld@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
4713ace3 |
| 16-Jan-2023 |
Ofir Bitton <obitton@habana.ai> |
accel/habanalabs: add support for TPC assert
In order to allow TPC engines to raise an assert, we must expose the relevant MSIX interrupt to the user so he will configure the engine correctly. In ad
accel/habanalabs: add support for TPC assert
In order to allow TPC engines to raise an assert, we must expose the relevant MSIX interrupt to the user so he will configure the engine correctly. In addition, we implement the corresponding interrupt handler that will notify the user upon such an event.
Signed-off-by: Ofir Bitton <obitton@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org> Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
show more ...
|
#
7fc0d011 |
| 22-Jan-2023 |
Ofir Bitton <obitton@habana.ai> |
accel/habanalabs: expose engine core int reg address
In order for engine cores to raise interrupts towards FW, They need to know which register the event data should be written to. Hence, we forward
accel/habanalabs: expose engine core int reg address
In order for engine cores to raise interrupts towards FW, They need to know which register the event data should be written to. Hence, we forward the relevant scratchpad register received during dynamic regs handshake with FW.
Signed-off-by: Ofir Bitton <obitton@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org> Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
show more ...
|
#
313e9f63 |
| 10-Jan-2023 |
Moti Haimovski <mhaimovski@habana.ai> |
accel/habanalabs: add critical-event bit in notifier
Enhance the existing user notifications by adding a HW and FW critical event bits to be used when a HW or FW event occur that requires both SW ab
accel/habanalabs: add critical-event bit in notifier
Enhance the existing user notifications by adding a HW and FW critical event bits to be used when a HW or FW event occur that requires both SW abort and hard-resetting the chip.
Signed-off-by: Moti Haimovski <mhaimovski@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org> Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
show more ...
|
#
72848de0 |
| 03-Jan-2023 |
farah kassabri <fkassabri@habana.ai> |
habanalabs: check pad and reserved fields in ioctls
Make sure all reserved/pad fields in uapi input structures are set to 0.
Signed-off-by: farah kassabri <fkassabri@habana.ai> Reviewed-by: Oded Ga
habanalabs: check pad and reserved fields in ioctls
Make sure all reserved/pad fields in uapi input structures are set to 0.
Signed-off-by: farah kassabri <fkassabri@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
571d1a72 |
| 23-Dec-2022 |
Koby Elbaz <kelbaz@habana.ai> |
habanalabs: protect access to dynamic mem 'user_mappings'
When HL_INFO_USER_MAPPINGS IOCTL is called, we copy_to_user from a dynamically allocated memory - 'user_mappings'. Since freeing/allocating
habanalabs: protect access to dynamic mem 'user_mappings'
When HL_INFO_USER_MAPPINGS IOCTL is called, we copy_to_user from a dynamically allocated memory - 'user_mappings'. Since freeing/allocating it happens in runtime (upon a page fault), it not unlikely to access it even before being initially allocated (i.e., accessing a NULL pointer).
The solution is to simply mark the spot when the err info has been collected, and that way to know whether err info (either page fault or RAZWI) is available to be read.
Signed-off-by: Koby Elbaz <kelbaz@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
c7d7b9ac |
| 07-Jan-2023 |
Tom Rix <trix@redhat.com> |
habanalabs: remove redundant memset
From reviewing the code, the line memset(kdata, 0, usize); is not needed because kdata is either zeroed by kdata = kzalloc(asize, GFP_KERNEL); when allocated
habanalabs: remove redundant memset
From reviewing the code, the line memset(kdata, 0, usize); is not needed because kdata is either zeroed by kdata = kzalloc(asize, GFP_KERNEL); when allocated at runtime or by char stack_kdata[128] = {0}; at compile time.
Signed-off-by: Tom Rix <trix@redhat.com> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
78baccbd |
| 25-Dec-2022 |
Koby Elbaz <kelbaz@habana.ai> |
habanalabs: refactor razwi/page-fault information structures
This refactor makes the code clearer and the new variables' names better describe their roles.
Signed-off-by: Koby Elbaz <kelbaz@habana.
habanalabs: refactor razwi/page-fault information structures
This refactor makes the code clearer and the new variables' names better describe their roles.
Signed-off-by: Koby Elbaz <kelbaz@habana.ai> Reviewed-by: Oded Gabbay <ogabbay@kernel.org> Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
e1e8e747 |
| 22-Dec-2022 |
Oded Gabbay <ogabbay@kernel.org> |
habanalabs: move some prints to debug level
When entering an IOCTL, the driver prints a message in case device is not operational. This message should be printed in debug level as it can spam the ke
habanalabs: move some prints to debug level
When entering an IOCTL, the driver prints a message in case device is not operational. This message should be printed in debug level as it can spam the kernel log and it is not an error.
Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|
#
e65e175b |
| 26-Dec-2022 |
Oded Gabbay <ogabbay@kernel.org> |
habanalabs: move driver to accel subsystem
Now that we have a subsystem for compute accelerators, move the habanalabs driver to it.
This patch only moves the files and fixes the Makefiles. Future p
habanalabs: move driver to accel subsystem
Now that we have a subsystem for compute accelerators, move the habanalabs driver to it.
This patch only moves the files and fixes the Makefiles. Future patches will change the existing code to register to the accel subsystem and expose the accel device char files instead of the habanalabs device char files.
Update the MAINTAINERS file to reflect this change.
Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
show more ...
|