mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v2 0/3] mcb-pci: fix memory overlapping on MCB devices
@ 2023-03-28 14:34 Rodríguez Barbarin, José Javier
  2023-03-28 14:34 ` [PATCH v2 1/3] mcb: Return actual parsed size when reading chameleon table Rodríguez Barbarin, José Javier
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Rodríguez Barbarin, José Javier @ 2023-03-28 14:34 UTC (permalink / raw)
  To: morbidrsa, linux-kernel
  Cc: jth, Sanjuán García, Jorge, Rodríguez Barbarin,
	José Javier

mcb-pci driver is allocating the memory region for the "chameleon table"
with a fixed size of 0x200. This region is only use to do a initial
parsing to discover the devices implemented as IP Cores.

If the "chameleon table" is actually smalled than 0x200 and the first
device offset happen to be within 0x200, a memory overlapping can ocurr.

Here an extract of the memory overlapping when registering a 16z125 IP Core:

[   31.016972] 8250_men_mcb mcb0-16z125-0:0:0: can't request region for resource [mem 0xa8200100-0xa820010f]
[   31.016994] 8250_men_mcb: probe of mcb0-16z125-0:0:0 failed with error -16
[   31.017010] 8250_men_mcb mcb0-16z125-1:0:0: can't request region for resource [mem 0xa8200110-0xa820011f]

And here, the memory allocated for the chameleon table parsing:

user@host:$ sudo /proc/iomem
...
a8200000-a82001ff : mcb_pci
...

This patch solves this problem by dropping/reallocating the memory region of the
"chamelon table" with the actual size once it has been parsed.

This patch is based on linux-next (next-20230323)

Changes for V2:
 * make parsing function return the size of "chameleon table".
 * reallocate instead of not requesting the memory region.

Javier Rodriguez (3):
  mcb: Return actual parsed size when reading chameleon table
  mcb-pci: Reallocate memory region to avoid memory overlapping
  mcb-lpc: Reallocate memory region to avoid memory overlapping

 drivers/mcb/mcb-lpc.c   | 35 +++++++++++++++++++++++++++++++----
 drivers/mcb/mcb-parse.c | 10 +++++++---
 drivers/mcb/mcb-pci.c   | 27 +++++++++++++++++++++++++--
 3 files changed, 63 insertions(+), 9 deletions(-)

-- 
2.34.1

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

end of thread, other threads:[~2023-03-28 19:16 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-28 14:34 [PATCH v2 0/3] mcb-pci: fix memory overlapping on MCB devices Rodríguez Barbarin, José Javier
2023-03-28 14:34 ` [PATCH v2 1/3] mcb: Return actual parsed size when reading chameleon table Rodríguez Barbarin, José Javier
2023-03-28 19:16   ` Johannes Thumshirn
2023-03-28 14:35 ` [PATCH v2 2/3] mcb-pci: Reallocate memory region to avoid memory overlapping Rodríguez Barbarin, José Javier
2023-03-28 14:35 ` [PATCH v2 3/3] mcb-lpc: " Rodríguez Barbarin, José Javier

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®