Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3bb5f650 authored by David Gross's avatar David Gross Committed by Android (Google) Code Review
Browse files

Merge ""successful preparation means successful execution" guarantee neglects bad operation inputs"

parents 60b836b0 48544cc3
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -574,8 +574,8 @@ cfa81f229b69f9011c58f48264fcb552447430fe68610eac514e811e65bc306a android.hardwar
# ABI preserving changes to HALs during Android R
# ABI preserving changes to HALs during Android R
2410dd02d67786a732d36e80b0f8ccf55086604ef37f9838e2013ff2c571e404 android.hardware.camera.device@3.5::types
2410dd02d67786a732d36e80b0f8ccf55086604ef37f9838e2013ff2c571e404 android.hardware.camera.device@3.5::types
b69a7615c508acf5c5201efd1bfa3262167874fc3594e2db5a3ff93addd8ac75 android.hardware.keymaster@4.0::IKeymasterDevice
b69a7615c508acf5c5201efd1bfa3262167874fc3594e2db5a3ff93addd8ac75 android.hardware.keymaster@4.0::IKeymasterDevice
ad431c8de51c07934a068e3043d8dd0537ac4d3158627706628b123f42df48dc android.hardware.neuralnetworks@1.0::IPreparedModel
eb2fa0c883c2185d514be0b84c179b283753ef0c1b77b45b4f359bd23bba8b75 android.hardware.neuralnetworks@1.0::IPreparedModel
fb382e986c10b8fbb797a8546e8f9ea6d1107bfe6f3fb7e57f6bbbf1f807a906 android.hardware.neuralnetworks@1.2::IDevice
fb382e986c10b8fbb797a8546e8f9ea6d1107bfe6f3fb7e57f6bbbf1f807a906 android.hardware.neuralnetworks@1.2::IDevice
aafcc10cf04ab247e86d4582586c71c6b4c2b8c479241ffa7fe37deb659fc942 android.hardware.neuralnetworks@1.2::IPreparedModel
6c5081dd131eeb7eb02efece2187cd4d7d554197800bb520c92ff874cc238fa6 android.hardware.neuralnetworks@1.2::IPreparedModel
1a6e2bd289f22931c526b21916910f1d4c436b7acb9556e4243de4ce8e6cc2e4 android.hardware.soundtrigger@2.0::ISoundTriggerHwCallback
1a6e2bd289f22931c526b21916910f1d4c436b7acb9556e4243de4ce8e6cc2e4 android.hardware.soundtrigger@2.0::ISoundTriggerHwCallback
fd65298e1e09e0e3c781ab18305920d757dbe55a3b459ce17814ec5cf6dfee99 android.hardware.wifi@1.0::IWifiP2pIface
fd65298e1e09e0e3c781ab18305920d757dbe55a3b459ce17814ec5cf6dfee99 android.hardware.wifi@1.0::IWifiP2pIface
+8 −5
Original line number Original line Diff line number Diff line
@@ -49,11 +49,14 @@ interface IPreparedModel {
     * must not change the content of any of the data objects corresponding to
     * must not change the content of any of the data objects corresponding to
     * 'request' inputs.
     * 'request' inputs.
     *
     *
     * If the prepared model was prepared from a model wherein all
     * If the prepared model was prepared from a model wherein all tensor
     * tensor operands have fully specified dimensions, and the inputs
     * operands have fully specified dimensions, and the inputs to the function
     * to the function are valid, then the execution should launch
     * are valid, then:
     * and complete successfully (ErrorStatus::NONE). There must be
     * - the execution should launch successfully (ErrorStatus::NONE): There
     * no failure unless the device itself is in a bad state.
     *   must be no failure unless the device itself is in a bad state.
     * - if at execution time every operation's input operands have legal
     *   values, the execution should complete successfully (ErrorStatus::NONE):
     *   There must be no failure unless the device itself is in a bad state.
     *
     *
     * Multiple threads can call the execute function on the same IPreparedModel
     * Multiple threads can call the execute function on the same IPreparedModel
     * object concurrently with different requests.
     * object concurrently with different requests.
+18 −7
Original line number Original line Diff line number Diff line
@@ -54,11 +54,14 @@ interface IPreparedModel extends @1.0::IPreparedModel {
     * must not change the content of any of the data objects corresponding to
     * must not change the content of any of the data objects corresponding to
     * 'request' inputs.
     * 'request' inputs.
     *
     *
     * If the prepared model was prepared from a model wherein all
     * If the prepared model was prepared from a model wherein all tensor
     * tensor operands have fully specified dimensions, and the inputs
     * operands have fully specified dimensions, and the inputs to the function
     * to the function are valid, then the execution should launch
     * are valid, then:
     * and complete successfully (ErrorStatus::NONE). There must be
     * - the execution should launch successfully (ErrorStatus::NONE): There
     * no failure unless the device itself is in a bad state.
     *   must be no failure unless the device itself is in a bad state.
     * - if at execution time every operation's input operands have legal
     *   values, the execution should complete successfully (ErrorStatus::NONE):
     *   There must be no failure unless the device itself is in a bad state.
     *
     *
     * Any number of calls to the execute, execute_1_2, and executeSynchronously
     * Any number of calls to the execute, execute_1_2, and executeSynchronously
     * functions, in any combination, may be made concurrently, even on the same
     * functions, in any combination, may be made concurrently, even on the same
@@ -105,8 +108,9 @@ interface IPreparedModel extends @1.0::IPreparedModel {
     *
     *
     * If the prepared model was prepared from a model wherein all tensor
     * If the prepared model was prepared from a model wherein all tensor
     * operands have fully specified dimensions, and the inputs to the function
     * operands have fully specified dimensions, and the inputs to the function
     * are valid, then the execution should complete successfully
     * are valid, and at execution time every operation's input operands have
     * (ErrorStatus::NONE). There must be no failure unless the device itself is
     * legal values, then the execution should complete successfully
     * (ErrorStatus::NONE): There must be no failure unless the device itself is
     * in a bad state.
     * in a bad state.
     *
     *
     * Any number of calls to the execute, execute_1_2, and executeSynchronously
     * Any number of calls to the execute, execute_1_2, and executeSynchronously
@@ -145,6 +149,13 @@ interface IPreparedModel extends @1.0::IPreparedModel {
     * Configure a Burst object used to execute multiple inferences on a
     * Configure a Burst object used to execute multiple inferences on a
     * prepared model in rapid succession.
     * prepared model in rapid succession.
     *
     *
     * If the prepared model was prepared from a model wherein all tensor
     * operands have fully specified dimensions, and a valid serialized Request
     * is sent to the Burst for execution, and at execution time every
     * operation's input operands have legal values, then the execution should
     * complete successfully (ErrorStatus::NONE): There must be no failure
     * unless the device itself is in a bad state.
     *
     * @param callback A callback object used to retrieve memory resources
     * @param callback A callback object used to retrieve memory resources
     *                 corresponding to a unique identifiers ("slots").
     *                 corresponding to a unique identifiers ("slots").
     * @param requestChannel Used by the client to send a serialized Request to
     * @param requestChannel Used by the client to send a serialized Request to