Thread (29 messages) 29 messages, 6 authors, 2021-04-19

Re: [PATCH 1/1] mm: Fix struct page layout on 32-bit systems

From: Matthew Wilcox <willy@infradead.org>
Date: 2021-04-16 11:06:16
Also in: linux-arm-kernel, linux-mips, linux-mm, linuxppc-dev, lkml

On Fri, Apr 16, 2021 at 07:32:35AM +0000, David Laight wrote:
From: Matthew Wilcox <willy@infradead.org>
quoted
Sent: 15 April 2021 23:22

On Thu, Apr 15, 2021 at 09:11:56PM +0000, David Laight wrote:
quoted
Isn't it possible to move the field down one long?
This might require an explicit zero - but this is not a common
code path - the extra write will be noise.
Then it overlaps page->mapping.  See emails passim.
The rules on overlaps make be wonder if every 'long'
should be in its own union.
That was what we used to have.  It was worse.
The comments would need to say when each field is used.
It would, at least, make these errors less common.

That doesn't solve the 64bit dma_addr though.

Actually rather that word-swapping dma_addr on 32bit BE
could you swap over the two fields it overlays with.
That might look messy in the .h, but it doesn't require
an accessor function to do the swap - easily missed.
No.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help