Loading drivers/char/diag/diag_masks.c +8 −0 Original line number Diff line number Diff line Loading @@ -2135,6 +2135,14 @@ void diag_send_updates_peripheral(uint8_t peripheral) driver->real_time_mode[DIAG_LOCAL_PROC]); diag_send_peripheral_buffering_mode( &driver->buffering_mode[peripheral]); /* * Clear mask_update variable afer updating * logging masks to peripheral. */ mutex_lock(&driver->cntl_lock); driver->mask_update ^= PERIPHERAL_MASK(peripheral); mutex_unlock(&driver->cntl_lock); } } Loading drivers/char/diag/diagfwd_cntl.c +1 −4 Original line number Diff line number Diff line Loading @@ -40,9 +40,6 @@ static void diag_mask_update_work_fn(struct work_struct *work) for (peripheral = 0; peripheral <= NUM_PERIPHERALS; peripheral++) { if (!(driver->mask_update & PERIPHERAL_MASK(peripheral))) continue; mutex_lock(&driver->cntl_lock); driver->mask_update ^= PERIPHERAL_MASK(peripheral); mutex_unlock(&driver->cntl_lock); diag_send_updates_peripheral(peripheral); } } Loading Loading @@ -834,7 +831,7 @@ static void process_diagid(uint8_t *buf, uint32_t len, */ if (root_str) { driver->diag_id_sent[peripheral] = 1; diag_send_updates_peripheral(peripheral); queue_work(driver->cntl_wq, &driver->mask_update_work); } fwd_info = &peripheral_info[TYPE_DATA][peripheral]; diagfwd_buffers_init(fwd_info); Loading Loading
drivers/char/diag/diag_masks.c +8 −0 Original line number Diff line number Diff line Loading @@ -2135,6 +2135,14 @@ void diag_send_updates_peripheral(uint8_t peripheral) driver->real_time_mode[DIAG_LOCAL_PROC]); diag_send_peripheral_buffering_mode( &driver->buffering_mode[peripheral]); /* * Clear mask_update variable afer updating * logging masks to peripheral. */ mutex_lock(&driver->cntl_lock); driver->mask_update ^= PERIPHERAL_MASK(peripheral); mutex_unlock(&driver->cntl_lock); } } Loading
drivers/char/diag/diagfwd_cntl.c +1 −4 Original line number Diff line number Diff line Loading @@ -40,9 +40,6 @@ static void diag_mask_update_work_fn(struct work_struct *work) for (peripheral = 0; peripheral <= NUM_PERIPHERALS; peripheral++) { if (!(driver->mask_update & PERIPHERAL_MASK(peripheral))) continue; mutex_lock(&driver->cntl_lock); driver->mask_update ^= PERIPHERAL_MASK(peripheral); mutex_unlock(&driver->cntl_lock); diag_send_updates_peripheral(peripheral); } } Loading Loading @@ -834,7 +831,7 @@ static void process_diagid(uint8_t *buf, uint32_t len, */ if (root_str) { driver->diag_id_sent[peripheral] = 1; diag_send_updates_peripheral(peripheral); queue_work(driver->cntl_wq, &driver->mask_update_work); } fwd_info = &peripheral_info[TYPE_DATA][peripheral]; diagfwd_buffers_init(fwd_info); Loading