KVM Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH v2 0/9] s390: vfio-ccw code rework
@ 2019-06-06 20:28 Eric Farman
  2019-06-06 20:28 ` [PATCH v2 1/9] s390/cio: Squash cp_free() and cp_unpin_free() Eric Farman
                   ` (10 more replies)
  0 siblings, 11 replies; 22+ messages in thread
From: Eric Farman @ 2019-06-06 20:28 UTC (permalink / raw)
  To: Cornelia Huck, Farhan Ali; +Cc: Halil Pasic, linux-s390, kvm, Eric Farman

Now that we've gotten a lot of other series either merged or
pending for the next merge window, I'd like to revisit some
code simplification that I started many moons ago.

In that first series, a couple of fixes got merged into 4.20,
a couple more got some "seems okay" acks/reviews, and the rest
were nearly forgotten about.  I dusted them off and did quite a
bit of rework to make things a little more sequential and
providing a better narrative (I think) based on the lessons we
learned in my earlier changes.  Because of this rework, the
acks/reviews on the first version didn't really translate to the
code that exists here (patch 1 being the closest exception), so
I didn't apply any of them here.  The end result is mostly the
same as before, but now looks like this:

Patch summary:
1:   Squash duplicate code
2-4: Remove duplicate code in CCW processor
5-7: Remove one layer of nested arrays
8-9: Combine direct/indirect addressing CCW processors

Using 5.2.0-rc3 as a base plus the vfio-ccw branch of recent fixes,
we shrink the code quite a bit (8.7% according to the bloat-o-meter),
and we remove one set of mallocs/frees on the I/O path by removing
one layer of the nested arrays.  There are no functional/behavioral
changes with this series; all the tests that I would run previously
continue to pass/fail as they today.

Changelog:
 v1/RFC->v2:
  - [Eric] Dropped first two patches, as they have been merged
  - [Eric] Shuffling of patches for readability/understandability
  - [Halil] Actually added meaningful comments/commit messages
    in the patches
 v1/RFC: https://patchwork.kernel.org/cover/10675251/

Eric Farman (9):
  s390/cio: Squash cp_free() and cp_unpin_free()
  s390/cio: Refactor the routine that handles TIC CCWs
  s390/cio: Generalize the TIC handler
  s390/cio: Use generalized CCW handler in cp_init()
  vfio-ccw: Rearrange pfn_array and pfn_array_table arrays
  vfio-ccw: Adjust the first IDAW outside of the nested loops
  vfio-ccw: Remove pfn_array_table
  vfio-ccw: Rearrange IDAL allocation in direct CCW
  s390/cio: Combine direct and indirect CCW paths

 drivers/s390/cio/vfio_ccw_cp.c | 313 +++++++++++----------------------
 1 file changed, 102 insertions(+), 211 deletions(-)

-- 
2.17.1


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

end of thread, back to index

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-06 20:28 [PATCH v2 0/9] s390: vfio-ccw code rework Eric Farman
2019-06-06 20:28 ` [PATCH v2 1/9] s390/cio: Squash cp_free() and cp_unpin_free() Eric Farman
2019-06-12 11:07   ` Cornelia Huck
2019-06-06 20:28 ` [PATCH v2 2/9] s390/cio: Refactor the routine that handles TIC CCWs Eric Farman
2019-06-12 11:17   ` Cornelia Huck
2019-06-06 20:28 ` [PATCH v2 3/9] s390/cio: Generalize the TIC handler Eric Farman
2019-06-12 11:18   ` Cornelia Huck
2019-06-06 20:28 ` [PATCH v2 4/9] s390/cio: Use generalized CCW handler in cp_init() Eric Farman
2019-06-12 11:18   ` Cornelia Huck
2019-06-06 20:28 ` [PATCH v2 5/9] vfio-ccw: Rearrange pfn_array and pfn_array_table arrays Eric Farman
2019-06-13 16:02   ` Cornelia Huck
2019-06-06 20:28 ` [PATCH v2 6/9] vfio-ccw: Adjust the first IDAW outside of the nested loops Eric Farman
2019-06-13 16:02   ` Cornelia Huck
2019-06-06 20:28 ` [PATCH v2 7/9] vfio-ccw: Remove pfn_array_table Eric Farman
2019-06-13 16:03   ` Cornelia Huck
2019-06-06 20:28 ` [PATCH v2 8/9] vfio-ccw: Rearrange IDAL allocation in direct CCW Eric Farman
2019-06-14  9:42   ` Cornelia Huck
2019-06-06 20:28 ` [PATCH v2 9/9] s390/cio: Combine direct and indirect CCW paths Eric Farman
2019-06-14 10:01   ` Cornelia Huck
2019-06-14 10:30     ` Eric Farman
2019-06-14 10:03 ` [PATCH v2 0/9] s390: vfio-ccw code rework Cornelia Huck
2019-06-17 13:32 ` Cornelia Huck

KVM Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/kvm/0 kvm/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 kvm kvm/ https://lore.kernel.org/kvm \
		kvm@vger.kernel.org kvm@archiver.kernel.org
	public-inbox-index kvm


Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.kvm


AGPL code for this site: git clone https://public-inbox.org/ public-inbox