mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2024-10-03 20:15:45 +00:00
devices: drop cmd field from TPM struct
There is no need to hold on to it. It is only used locally in a function. Signed-off-by: Wei Liu <liuwe@microsoft.com>
This commit is contained in:
parent
8db630763a
commit
15ace525be
@ -214,7 +214,6 @@ fn locality_from_addr(addr: u32) -> u8 {
|
|||||||
|
|
||||||
pub struct Tpm {
|
pub struct Tpm {
|
||||||
emulator: Emulator,
|
emulator: Emulator,
|
||||||
cmd: Option<BackendCmd>,
|
|
||||||
regs: [u32; TPM_CRB_R_MAX],
|
regs: [u32; TPM_CRB_R_MAX],
|
||||||
backend_buff_size: usize,
|
backend_buff_size: usize,
|
||||||
data_buff: [u8; TPM_CRB_BUFFER_MAX],
|
data_buff: [u8; TPM_CRB_BUFFER_MAX],
|
||||||
@ -227,7 +226,6 @@ impl Tpm {
|
|||||||
.map_err(|e| Error::Init(anyhow!("Failed while initializing tpm Emulator: {:?}", e)))?;
|
.map_err(|e| Error::Init(anyhow!("Failed while initializing tpm Emulator: {:?}", e)))?;
|
||||||
let mut tpm = Tpm {
|
let mut tpm = Tpm {
|
||||||
emulator,
|
emulator,
|
||||||
cmd: None,
|
|
||||||
regs: [0; TPM_CRB_R_MAX],
|
regs: [0; TPM_CRB_R_MAX],
|
||||||
backend_buff_size: TPM_CRB_BUFFER_MAX,
|
backend_buff_size: TPM_CRB_BUFFER_MAX,
|
||||||
data_buff: [0; TPM_CRB_BUFFER_MAX],
|
data_buff: [0; TPM_CRB_BUFFER_MAX],
|
||||||
@ -475,16 +473,16 @@ impl BusDevice for Tpm {
|
|||||||
{
|
{
|
||||||
self.regs[CRB_CTRL_START as usize] |= CRB_START_INVOKE;
|
self.regs[CRB_CTRL_START as usize] |= CRB_START_INVOKE;
|
||||||
|
|
||||||
self.cmd = Some(BackendCmd {
|
let cmd = BackendCmd {
|
||||||
locality: locality as u8,
|
locality: locality as u8,
|
||||||
input: self.data_buff[0..self.data_buff_len].to_vec(),
|
input: self.data_buff[0..self.data_buff_len].to_vec(),
|
||||||
input_len: cmp::min(self.data_buff_len, TPM_CRB_BUFFER_MAX),
|
input_len: cmp::min(self.data_buff_len, TPM_CRB_BUFFER_MAX),
|
||||||
output: self.data_buff.to_vec(),
|
output: self.data_buff.to_vec(),
|
||||||
output_len: TPM_CRB_BUFFER_MAX,
|
output_len: TPM_CRB_BUFFER_MAX,
|
||||||
selftest_done: false,
|
selftest_done: false,
|
||||||
});
|
};
|
||||||
|
|
||||||
let mut cmd = self.cmd.as_ref().unwrap().clone();
|
let mut cmd = cmd.clone();
|
||||||
let output = self.emulator.deliver_request(&mut cmd).map_err(|e| {
|
let output = self.emulator.deliver_request(&mut cmd).map_err(|e| {
|
||||||
Error::DeliverRequest(anyhow!(
|
Error::DeliverRequest(anyhow!(
|
||||||
"Failed to deliver tpm request. Error :{:?}",
|
"Failed to deliver tpm request. Error :{:?}",
|
||||||
|
Loading…
Reference in New Issue
Block a user