Re: How to get rid of unused data in LKM

2 messages, 2 authors, 2002-07-24 · open the first message on its own page

Re: How to get rid of unused data in LKM

From: Wolfgang Denk <hidden>
Date: 2002-07-24 15:49:09

In message [off-list ref] you wrote:
I am writing a LKM that contains a huge constant array of data that is used
as firmware for a PCI card that is connected to the system where the LKM is loaded.

The module_init function writes the constant data array into the PCI card's RAM and triggers
a CPU on that card to jump to the firmware code. This works fine.
Why don't you load the firmware using some  ioctl()  _after_  loading
the module?
But after doing so, the firmware data is still wasting kernel memory on the host system
and is not used anymore.
How can I free that memory ? Is there a better way to handle that data ?
If you really think you must link the data with the  module:  Declare
it using "__initdata" ?

Wolfgang Denk

--
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-4596-87  Fax: (+49)-8142-4596-88  Email: wd@denx.de
This is an unauthorized cybernetic announcement.

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

Re: How to get rid of unused data in LKM

From: John Tyner <hidden>
Date: 2002-07-24 16:21:40

quoted
But after doing so, the firmware data is still wasting kernel memory on the host system
and is not used anymore.
How can I free that memory ? Is there a better way to handle that data ?
If you really think you must link the data with the  module:  Declare
it using "__initdata" ?
I was under the impression that data like this is not thrown away when
compiled as a module... only when compiled directly into the kernel. Is
this not true?

I think Wolfgang's ioctl idea is a much better way to go in this case.


** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help