[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <501F7904.4050206@linux.vnet.ibm.com>
Date: Mon, 06 Aug 2012 13:27:56 +0530
From: Anshuman Khandual <khandual@...ux.vnet.ibm.com>
To: Alexey Kardashevskiy <aik@...abs.ru>
CC: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
linuxppc-dev@...abs.org
Subject: Re: how to implement platform specific per process parameter?
> There are 4 options:
> 1. [not a kernel interface] use ptrace to execute the register changing
> command inside the specified pid. The next context switch saves the new
> value in the thread_struct. Dirty hack.
>
> 2. Add a new syscall which would receive pid + register value and do the
> job. A bit too much.
>
> 3. Add some hook in /proc filesystem but so far there were no platform
> specific bits, right?
>
> 4. Implement a static node "/sys/devices/system/cpu/dscr_control".
> write() would parse the input stream, call scanf("%d %x", &pid, &dscr)
> and do the job.
>
/sys/ interface would be appropriate I believe. But in this way we can take a new
(pid, dscr) and update thread_struct. But there should be a way to enlist all
(pid, dscr) values which are explicitly set by the user and different than that
of /sys/devices/system/cpu/dscr_default. So that we can know which process is holding
to what value of DSCR at any point of time.
> What is the correct approach? Thanks.
>
>
Regards
Anshuman
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists