linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/16] staging: vchiq: dead code removal & misc fixes
@ 2018-11-14 12:59 Nicolas Saenz Julienne
  2018-11-14 12:59 ` [PATCH 01/16] staging: vchiq_core: rework vchiq_get_config Nicolas Saenz Julienne
                   ` (16 more replies)
  0 siblings, 17 replies; 22+ messages in thread
From: Nicolas Saenz Julienne @ 2018-11-14 12:59 UTC (permalink / raw)
  To: stefan.wahren, eric, dave.stevenson
  Cc: linux-rpi-kernel, gregkh, linux-arm-kernel, devel, linux-kernel,
	Nicolas Saenz Julienne

Hi All,

This series was written in parallel with reading and understanding the
vchiq code. So excuse me for the lack of logic in the sequence of
patches.

The main focus was to delete as much code as possible, I've counted
around 550 lines, which is not bad. Apart from that there are some
patches enforcing proper kernel APIs usage.

The only patch that really changes code is the
vchiq_ioc_copy_element_data() rewrite.

The last commit updates the TODO list with some of my observations, I
realise some of the might be a little opinionated. If anything it's
going to force a discussion on the topic, which is nice.

It was developed on top of the latest linux-next, and was tested on a
RPIv3B+ with audio, video and running vchiq_test.

Regards,
Nicolas

===

Nicolas Saenz Julienne (16):
  staging: vchiq_core: rework vchiq_get_config
  staging: vchiq_arm: rework close/remove_service IOCTLS
  staging: vchiq_shim: delete vchi_service_create
  staging: vchiq_arm: use list_for_each_entry when accessing
    bulk_waiter_list
  staging: vchiq_arm: get rid of vchi_mh.h
  staging: vchiq_arm: rework vchiq_ioc_copy_element_data
  staging: vchiq-core: get rid of is_master distinction
  staging: vchiq_core: remove unnecessary safety checks in
    vchiq_init_state
  staging: vchiq_core: do not initialize semaphores twice
  staging: vchiq_core: don't add a wmb() before remote_event_signal()
  staging: vchiq: use completions instead of semaphores
  staging: vchiq_util: get rid of unneeded memory barriers
  staging: vchiq_core: fix logic redundancy in parse_open
  staging: vchiq_arm: rework probe and init functions
  staging: vchiq_arm: fix open/release cdev functions
  staging: vchiq: add more tasks to the TODO list

 .../staging/vc04_services/interface/vchi/TODO |  42 ++
 .../vc04_services/interface/vchi/vchi.h       |   8 -
 .../vc04_services/interface/vchi/vchi_mh.h    |  42 --
 .../interface/vchiq_arm/vchiq_2835_arm.c      |  18 +-
 .../interface/vchiq_arm/vchiq_arm.c           | 598 ++++++++----------
 .../interface/vchiq_arm/vchiq_core.c          | 523 ++++-----------
 .../interface/vchiq_arm/vchiq_core.h          |  47 +-
 .../interface/vchiq_arm/vchiq_if.h            |  11 +-
 .../interface/vchiq_arm/vchiq_shim.c          |  32 -
 .../interface/vchiq_arm/vchiq_util.c          |  48 +-
 .../interface/vchiq_arm/vchiq_util.h          |   6 +-
 11 files changed, 435 insertions(+), 940 deletions(-)
 delete mode 100644 drivers/staging/vc04_services/interface/vchi/vchi_mh.h

-- 
2.19.1


^ permalink raw reply	[flat|nested] 22+ messages in thread
* [PATCH 00/16] staging: vchiq: dead code removal & misc fixes
@ 2018-11-20 14:53 Nicolas Saenz Julienne
  2018-11-20 14:53 ` [PATCH 11/16] staging: vchiq: use completions instead of semaphores Nicolas Saenz Julienne
  0 siblings, 1 reply; 22+ messages in thread
From: Nicolas Saenz Julienne @ 2018-11-20 14:53 UTC (permalink / raw)
  To: stefan.wahren, eric, dave.stevenson
  Cc: linux-rpi-kernel, gregkh, linux-arm-kernel, devel, linux-kernel,
	Nicolas Saenz Julienne

Hi All,

This series was written in parallel with reading and understanding the
vchiq code. So excuse me for the lack of logic in the sequence of
patches.

The main focus was to delete as much code as possible, I've counted
around 550 lines, which is not bad. Apart from that there are some
patches enforcing proper kernel APIs usage.

The only patch that really changes code is the
vchiq_ioc_copy_element_data() rewrite.

The last commit updates the TODO list with some of my observations, I
realise some of the might be a little opinionated. If anything it's
going to force a discussion on the topic, which is nice.

It was developed on top of the latest linux-next, and was tested on a
RPIv3B+ with audio, video and running vchiq_test.

Regards,
Nicolas

RFC -> PATCH, as per Stefan's comments:
  - Remove semaphore initialization from remove_event_create()
    (commit 9)
  - Join all three semaphore to completion patches (commit 11)
  - Update probe/init commit message (commit 14)
  - Update TODO commit message and clean up (commit 16)
  - Fix spelling on some of the patches

===

Nicolas Saenz Julienne (16):
  staging: vchiq_core: rework vchiq_get_config
  staging: vchiq_arm: rework close/remove_service IOCTLS
  staging: vchiq_shim: delete vchi_service_create
  staging: vchiq_arm: use list_for_each_entry when accessing
    bulk_waiter_list
  staging: vchiq_arm: get rid of vchi_mh.h
  staging: vchiq_arm: rework vchiq_ioc_copy_element_data
  staging: vchiq-core: get rid of is_master distinction
  staging: vchiq_core: remove unnecessary safety checks in
    vchiq_init_state
  staging: vchiq_core: do not initialize semaphores twice
  staging: vchiq_core: don't add a wmb() before remote_event_signal()
  staging: vchiq: use completions instead of semaphores
  staging: vchiq_util: get rid of unneeded memory barriers
  staging: vchiq_core: fix logic redundancy in parse_open
  staging: vchiq_arm: rework probe and init functions
  staging: vchiq_arm: fix open/release cdev functions
  staging: vchiq: add more tasks to the TODO list

 .../staging/vc04_services/interface/vchi/TODO |  42 ++
 .../vc04_services/interface/vchi/vchi.h       |   8 -
 .../vc04_services/interface/vchi/vchi_mh.h    |  42 --
 .../interface/vchiq_arm/vchiq_2835_arm.c      |  18 +-
 .../interface/vchiq_arm/vchiq_arm.c           | 598 ++++++++----------
 .../interface/vchiq_arm/vchiq_core.c          | 523 ++++-----------
 .../interface/vchiq_arm/vchiq_core.h          |  47 +-
 .../interface/vchiq_arm/vchiq_if.h            |  11 +-
 .../interface/vchiq_arm/vchiq_shim.c          |  32 -
 .../interface/vchiq_arm/vchiq_util.c          |  48 +-
 .../interface/vchiq_arm/vchiq_util.h          |   6 +-
 11 files changed, 435 insertions(+), 940 deletions(-)
 delete mode 100644 drivers/staging/vc04_services/interface/vchi/vchi_mh.h

-- 
2.19.1


^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2018-11-20 14:54 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-14 12:59 [PATCH 00/16] staging: vchiq: dead code removal & misc fixes Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 01/16] staging: vchiq_core: rework vchiq_get_config Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 02/16] staging: vchiq_arm: rework close/remove_service IOCTLS Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 03/16] staging: vchiq_shim: delete vchi_service_create Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 04/16] staging: vchiq_arm: use list_for_each_entry when accessing bulk_waiter_list Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 05/16] staging: vchiq_arm: get rid of vchi_mh.h Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 06/16] staging: vchiq_arm: rework vchiq_ioc_copy_element_data Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 07/16] staging: vchiq-core: get rid of is_master distinction Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 08/16] staging: vchiq_core: remove unnecessary safety checks in vchiq_init_state Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 09/16] staging: vchiq_core: do not initialize semaphores twice Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 10/16] staging: vchiq_core: don't add a wmb() before remote_event_signal() Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 11/16] staging: vchiq: use completions instead of semaphores Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 12/16] staging: vchiq_util: get rid of unneeded memory barriers Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 13/16] staging: vchiq_core: fix logic redundancy in parse_open Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 14/16] staging: vchiq_arm: rework probe and init functions Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 15/16] staging: vchiq_arm: fix open/release cdev functions Nicolas Saenz Julienne
2018-11-14 12:59 ` [PATCH 16/16] staging: vchiq: add more tasks to the TODO list Nicolas Saenz Julienne
2018-11-18 15:55 ` [PATCH 00/16] staging: vchiq: dead code removal & misc fixes Stefan Wahren
2018-11-20  9:57   ` Greg KH
2018-11-20 10:04     ` Nicolas Saenz Julienne
2018-11-20 10:08       ` Stefan Wahren
2018-11-20 14:53 Nicolas Saenz Julienne
2018-11-20 14:53 ` [PATCH 11/16] staging: vchiq: use completions instead of semaphores Nicolas Saenz Julienne

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).