[Top] [All Lists]

Re: [PATCH] MIPS: Kconfig: Add missing MODULES dependency to VPE_LOADER

To: Markos Chandras <>
Subject: Re: [PATCH] MIPS: Kconfig: Add missing MODULES dependency to VPE_LOADER
From: Ralf Baechle <>
Date: Fri, 28 Jun 2013 15:31:11 +0200
In-reply-to: <>
List-archive: <>
List-help: <>
List-id: linux-mips <>
List-owner: <>
List-post: <>
List-software: Ecartis version 1.0.0
List-subscribe: <>
List-unsubscribe: <>
Original-recipient: rfc822;
References: <>
User-agent: Mutt/1.5.21 (2010-09-15)
On Fri, Jun 28, 2013 at 01:25:27PM +0100, Markos Chandras wrote:

> The vpe.c code uses the 'struct module' which is only available if
> CONFIG_MODULES is selected.
> Also fixes the following build problem on a lantiq allmodconfig:
> In file included from arch/mips/kernel/vpe.c:41:0:
> include/linux/moduleloader.h: In function 'apply_relocate':
> include/linux/moduleloader.h:48:63: error: dereferencing pointer
> to incomplete type
> include/linux/moduleloader.h: In function 'apply_relocate_add':
> include/linux/moduleloader.h:70:63: error: dereferencing pointer
> to incomplete type
> Signed-off-by: Markos Chandras <>
> Reviewed-by: James Hogan <>

Sigh.  One more bug in the thing.  It first of all shouldn't have been
designed recycling so much code from the module loader in inapropriate

I'm going to apply the patch - but as usual whenver I have to touch the
VPE loader, kspd or rtlx I feel like a blunt chainsaw would be the right
way to fix this code.

SPUFS is a special filesystem which was designed to use the Playstation 3's
synergetic elements.  The code is in arch/powerpc/platforms/cell/spufs
and it's a far, cleaner interface to other processing thingies, be they
synergetic elements, or other cores, VPEs and TCs running bare metal
code or strage things like custom processors.

See also Documentation/filesystems/spufs.txt in the kernel code or the
spufs(7) man page.

I'm not suggesting to strictly use the same interface as SPUFS but rather
as a template.

Doing things spufs style will also mean relocation will have to be
performed in userspace again.  That code exists in modutils for the
2.4 kernel.


<Prev in Thread] Current Thread [Next in Thread>